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}}
signtext
Your unique developer ID.
The unique order ID generated by your system.
The payment channel associated with the auth code.
The total transaction amount.
10.5
The authorization code scanned from the customer's device.
The 3-letter ISO currency code for the transaction.
USD
A brief description of the product(s) or service(s).
The type of payer identifier. Required when scanChannel is MOMO.
MSISDN
The 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}}
signtext
Your unique developer ID.
The unique order ID generated by your system.
The payment channel to be used.
The total transaction amount.
10.5
The 3-letter ISO currency code for the transaction amount. For PIX transactions, this must be BRL.
BRL
The currency code for settlement. Valid values: BRL, USD, EUR. Required for PIX transactions. Currently only BRL is supported.
BRL
The 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}}
signtext
Your 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}}
signtext
Your 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}}
signtext
Your 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}}
signtext
Your 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"
}