PrimeiroPay
Search
⌃K

Oxxo

Oxxo is a Mexican voucher-based payment method. Shoppers order items online, select Oxxo at checkout and receive a voucher. Then, they pay in cash for their purchase with that voucher at one of the over 13,000 OXXO stores in the country. Because many people in Mexico don't have a bank account or credit card, this is a popular eCommerce payment method.
Oxxo is a server to server only payment method to increase conversion
Transaction Types
Meaning
Success return codes
PA
Successful generation of the Oxxo payment slip. The shopper can go and pay for it at any Oxxo store in Mexico.
000.000.000 000.100.112 (on staging)
RC
Successful payment of the Oxxo payment slip. The payment of the Oxxo slip is asynchronous and hence the confirmation will usually come in within 1-3 business days
000.000.000

Initial Request

//send POST to [https://test.oppwa.com/v1/payments](https://test.oppwa.com/v1/payments)
//Header -H "Authorization: Bearer OGE4Mjk0MTg0ZTczNjAxMj1234E2YTE1YjB8ZjJGRUtacXRCUA=="
//API credentials
entityId=8a8294174ae8145684aedfd75aa1d79 //entityId without authentication"
//API credentials end
amount=10.00
paymentType=PA
currency=MXN
merchantTransactionId=123456
paymentBrand=OXXO
billing.country=MX
shopperResultUrl=[http://google.com](http://google.com/) //Although there is no re-direct back from the Boleto to your shop, our API requires this parameter to be present`
testMode=EXTERNAL

Successful Response

Successful Response
{
"id":"8ac7a49f6855fc58016858092e4d6e26",
"paymentType":"PA",
"paymentBrand":"OXXO",
"amount":"10.00",
"currency":"MXN",
"descriptor":"9201.9521.3874 BoletosTest_Mexico",
"merchantTransactionId":"123456",
"result": {
"code":"000.100.112",
"description":"Request successfully processed in 'Merchant in Connector Test Mode'"
},
"resultDetails": {
"ExtendedDescription":"Transaction succeeded",
"AuthCode":"700000000001431901201900010005",
"ConnectorTxID1":"8ac7a49f6855fc58016858092e4d6e26",
"AcquirerResponse":"00"
},
"billing": {
"country":"MX"
},
"redirect": {
"url":"[https://serti.io/primeiro/v1/payments/oxxo/beda6dbe14f845e2a2e30658b437b32432"](https://serti.io/primeiro/v1/payments/oxxo/beda6dbe14f845e2a2e30658b437b32432%22),
"method":"POST",
"parameters": [
]
},
"buildNumber":"[email protected] 12:29:51 +0000",
"timestamp":"2019-01-16 19:00:25+0000",
"ndc": "8a82941865d7e66c0165e76a6d861c1e_171ecf9107ae48a4a751bb85490c94fe"
}

Re-directing the shopper

From the success response you will be able to extract the URL to where you re-direct the shopper to in order to display the Oxxo slip itself. Please note that the staging environment of the bank may show an error from time to time instead of the actual payment slip.

Retrieve notifications when the Oxxo slip is paid

Please refer to section webhooks
Sample webhook of a paid Boleto
{
"type":"PAYMENT",
"payload":{
"id":"8ac7a49f6855fc58016858092e4d6e26",
"paymentType":"PA",
"paymentBrand":"OXXO",
"amount":"10.0",
"currency":"MXN",
"presentationAmount":"10.0",
"presentationCurrency":"MXN",
"descriptor":"9201.9521.3874 BoletosTest_Mexico ",
"merchantTransactionId":"123456",
"result":{
"code":"000.100.112",
"description":"Request successfully processed in 'Merchant in Connector Test Mode'",
"randomField983954327":"Please allow for new unexpected fields to be added"
},
"resultDetails":{
"ExtendedDescription":"Transaction succeeded",
"AcquirerResponse":"00",
"AuthCode":"700000000001431901201900010005",
"ConnectorTxID1":"8ac7a49f6855fc58016858092e4d6e26"
},
"billing":{
"country":"MX"
},
"authentication":{
"entityId":"8a82941865d7e66c0165e76a6d861c1e"
},
"redirect":{
"url":"[https://serti.io/primeiro/v1/payments/oxxo/beda6dbe14f845e2a2e30658b437b323",
"method":"POST",
"parameters":[
{
"name":"barcode",
"value":"700000000001431901201900010005"
}
]
},
"risk":{
"score":""
},
"timestamp":"2019-01-16](https://serti.io/primeiro/v1/payments/oxxo/beda6dbe14f845e2a2e30658b437b323%22,%22method%22:%22POST%22,%22parameters%22:[%7B%22name%22:%22barcode%22,%22value%22:%22700000000001431901201900010005%22%7D]%7D,%22risk%22:%7B%22score%22:%22%22%7D,%22timestamp%22:%222019-01-16) 19:00:25+0000",
"ndc":"8a82941865d7e66c0165e76a6d861c1e_171ecf9107ae48a4a751bb85490c94fe",
"merchantAccountId":"8a82941865d7e66c0165e76c483f1c26"
}
}
Description
Format
Example
amount
Amount of the payment request. The dot is used as a decimal separator.
N13
0- 9{1,10}.0 -9{2}
1.00
currency
Currency Code according to ISO 4217 specifications of the payment request’s amount
A3 a-zA-Z{3}
MXN
paymentBrand
The brand specifies the method for the request
AN32 a-zA-Z0- 9_ {1,32}
BOLETO
paymentType
The payment type for the request
A2
PA
Authentication.userID
The userId for the entity. Required for a server-to-server request
AN32 a-zA-Z0- 9{32}
8a8294174ae82ada014 aedf7fb151d5f
Authentication.password
The password for the entity (channel). Required for a server-to-server request
AN32 a-zA-Z0- 9{8,32}
AKdx7nmH
authentication.entityId
The entity for the request. (e.g. channel)
AN32 a-zA-Z0- 9{32}
8a8294174ae82ada014 aedfd75aa1d79
merchantTransactionID
Merchant-provided reference number
AN255 \s\S{1,25 5}
1234
billing.country
Billing Country (has to be MX for Oxxo to work.)
A2
MX
Oxxo.rar
747B
Binary
Oxxo Json Request
Last modified 1yr ago