APM (QR/WALLET) API
This endpoint processes a payment using a customer-provided authorization code (often from a QR code or barcode on their device). This is typically used in a "merchant-scan" scenario where the merchant's point-of-sale system scans the customer's payment code.
{{ecommerceToken}}signtextYour unique developer ID.
The unique order ID generated by your system.
The payment channel associated with the auth code.
The total transaction amount.
10.5The authorization code scanned from the customer's device.
The 3-letter ISO currency code for the transaction.
USDA brief description of the product(s) or service(s).
The type of payer identifier. Required when scanChannel is MOMO.
MSISDNThe callback URL where you will receive the final transaction result notification.
POST /ovstrade/openPay/microPay HTTP/1.1
Host:
jwt-token: text
sign: text
Content-Type: application/json
Accept: */*
Content-Length: 189
{
"clientId": "825429536610058240",
"transIndexCode": "20250401123534801",
"scanChannel": "M_PAY",
"amount": "10.5",
"authCode": "awrawfsfegojpenmfkapowngpawngpgrigawfnrtujgpsn",
"tranCurrency": "USD"
}{
"code": 200,
"msg": "success",
"timestamp": "2024-08-12 14:45:54",
"data": {
"mid": "10800000003",
"paywizardId": "1000000011",
"checkoutId": "768878984749514752",
"transIndexCode": "202504011341223232135",
"state": 0,
"amount": "100.21"
}
}This endpoint allows you to generate a QR code for a "customer-scan" payment scenario. The customer scans the generated QR code with their device to complete the payment.
{{ecommerceToken}}{{ecommerceToken}}signtextYour unique developer ID.
The unique order ID generated by your system.
The payment channel to be used.
The total transaction amount.
10.5The 3-letter ISO currency code for the transaction amount. For PIX transactions, this must be BRL.
BRLThe currency code for settlement. Valid values: BRL, USD, EUR. Required for PIX transactions. Currently only BRL is supported.
BRLThe customer's tax identification number (e.g., CPF or CNPJ). Required for PIX transactions.
The full name of the customer. Required for PIX transactions.
The expiration timestamp for a dynamic PIX QR code in ISO 8601 format: YYYY-MM-DDTHH:mm:ssZ.
A brief description of the product(s) or service(s).
The callback URL where you will receive the transaction result notification.
POST /ovstrade/openPay/generateQrCode HTTP/1.1
Host:
jwt-token: text
sign: text
Content-Type: application/json
Accept: */*
Content-Length: 256
{
"clientId": "825429536610058240",
"amount": "0.01",
"payChannel": "PIX",
"transIndexCode": "12313254654120",
"notifyUrl": "https://oversea.hs1c.cn/xxx/thirdNotify/callback",
"dynamicPixExpiresAt": "2025-06-25T16:30:09.845Z",
"currency": "BRL",
"exchangeCurrency": "USD"
}{
"code": 200,
"msg": "success",
"timestamp": "2024-08-12 14:45:54",
"data": {
"mid": "10800000003",
"paywizardId": "1000000011",
"checkoutId": "768878984749514752",
"transIndexCode": "202504011341223232135",
"qrCode": "00020101021226990014br.gov.bcb.pix2577pix.bancogenial.com/qrs1/v2/017si5czJTt4zOys319ukH9l1UD8m94JJ0xnElX3Bc6rMK3ug52040000530398654041.005802BR5923FACILITA PAGAMENTOS S/A6009SAO PAULO62070503***6304B8B8",
"amount": "100.21"
}
}This endpoint allows you to query the status and details of a specific transaction using either the platform's checkoutId or your original transIndexCode.
{{ecommerceToken}}signtextYour unique developer ID.
The unique transaction ID generated by the payment platform.
The unique order ID that was generated by your system.
POST /ovstrade/openPay/queryOrder HTTP/1.1
Host:
jwt-token: text
sign: text
Content-Type: application/json
Accept: */*
Content-Length: 107
{
"clientId": "825429536610058240",
"checkoutId": "202504011341223232135",
"transIndexCode": "20250401123534801"
}{
"code": 200,
"msg": "success",
"timestamp": "2024-08-12 14:45:54",
"data": {
"mid": "10800000003",
"paywizardId": "1000000011",
"checkoutId": "768878984749514752",
"transIndexCode": "202504011341223232135",
"state": 2,
"amount": "100.21",
"tranTime": "2025-06-04 17:03:21"
}
}This endpoint is used to issue a full or partial refund for a previously completed transaction.
Note: Partial refunds are not supported by all payment channels. Please check the documentation for your specific channel.
{{ecommerceToken}}signtextYour unique developer ID.
A new, unique order ID for this specific refund request, generated by your system.
The original checkoutId of the transaction you want to refund.
The original transIndexCode of the transaction you want to refund.
The amount to be refunded.
The callback URL where you will receive the final refund result notification.
POST /ovstrade/openPay/refundOrder HTTP/1.1
Host:
jwt-token: text
sign: text
Content-Type: application/json
Accept: */*
Content-Length: 127
{
"clientId": "825429536610058240",
"transIndexCode": "202506091432000000013",
"oriCheckoutId": "917121926164512768",
"amount": "0.01"
}{
"code": 200,
"msg": "success",
"timestamp": "2025-06-09 15:32:00",
"data": {
"mid": "007889-3-006",
"paywizardId": "10280000002",
"checkoutId": "917122074735149056",
"transIndexCode": "202506091432000000015",
"amount": "0.01",
"result": 0,
"oriCheckoutId": "917121926164512768",
"oriTransIndexCode": "202506091432000000012"
}
}This endpoint is used to reverse (or void) a transaction. A reversal is typically used to cancel a transaction on the same day it was made, before the funds have settled.
Note: Partial reversals are not supported by all payment channels.
{{ecommerceToken}}signtextYour unique developer ID.
A new, unique order ID for this specific refund request, generated by your system.
The original checkoutId of the transaction you want to refund.
The original transIndexCode of the transaction you want to refund.
The amount to be refunded.
The callback URL where you will receive the final refund result notification.
POST /ovstrade/openPay/reversalOrder HTTP/1.1
Host:
jwt-token: text
sign: text
Content-Type: application/json
Accept: */*
Content-Length: 127
{
"clientId": "825429536610058240",
"transIndexCode": "202506091432000000013",
"oriCheckoutId": "917121926164512768",
"amount": "0.01"
}{
"code": 200,
"msg": "success",
"timestamp": "2025-06-09 15:32:00",
"data": {
"mid": "007889-3-006",
"paywizardId": "10280000002",
"checkoutId": "917122074735149056",
"transIndexCode": "202506091432000000014",
"amount": "0.01",
"result": 0,
"oriCheckoutId": "917121926164512768",
"oriTransIndexCode": "202506091432000000012"
}
}This endpoint is used to close an order that has been created but has not yet been paid. This action prevents the customer from completing the payment for the specified transaction.
{{ecommerceToken}}signtextYour unique developer ID.
The unique transaction ID generated by the payment platform.
The unique order ID that was generated by your system.
POST /ovstrade/openPay/closeOrder HTTP/1.1
Host:
jwt-token: text
sign: text
Content-Type: application/json
Accept: */*
Content-Length: 107
{
"clientId": "825429536610058240",
"checkoutId": "202504011341223232135",
"transIndexCode": "20250401123534801"
}{
"code": 200,
"msg": "success",
"timestamp": "2024-08-12 14:45:54"
}