Note: You should be fully PCI compliant if you want to use the Server-to-Server api (as it requires that you collect the card data). If you are not fully PCI compliant, you can use COPYandPAY to collect the payment data securely.
You can perform different types of initial payments using our server-to-server REST API.
A PA is created by sending a POST request over HTTPS to the /v1/payments resource. The request should include all required information such as your authentication credentials, the type of transaction, the amount and the payment information such as card details. A capture may be sent against a successful PA to request the funds being sent for clearing. See backoffice operations for more details.
{"id":"8ac7a4a26a977d95016a99b9c15b00c8","referencedId":"8ac7a4a06a00f56b016a03df1f6b5754","paymentType":"CP","amount":"1.00","currency":"BRL","descriptor":"123 Usage","merchantTransactionId":"Order Number 123","result": {"code":"000.100.112","description":"Request successfully processed in 'Merchant in Connector Test Mode'" },"customer": {"merchantCustomerId":"12345678909" },"buildNumber":"e61441a649f53ee436210a78b3c5a713f3e54e8a@2019-05-08 08:36:44 +0000","timestamp":"2019-05-08 23:14:09+0000","ndc":"8a8294174e918ca6014e9c6f5ae12a9c_f9b9ee0131494621a93d186cbf8cca03"}
Debit (DB)
A DB is created by sending a POST request over HTTPS to the /v1/payments resource. The request should include all required information such as your authentication credentials, the type of transaction, the amount and the payment information such as card details. A DB request effectively combines a PA and capture (CP) request, automatically requesting that the funds are cleared if the authorization was successful.
Please note that for a HTTP POST request all the parameters are expected to go into the message body and not into the URL.
For a full list of parameters that can be sent in the initial payment request, please see the API Reference.
Boleto (PP) - (Brazil only)
Boleto Bancário is a PrePayment (PP) method (invoice/slip/voucher), which is widely used in Brazil to pay offline and online. Boleto represents 20% of payments in e-Commerce.
Boletos are payment slips, issued by sending a PA to the PPRO system. A Boleto is displayed at end customer’s browser where the Boleto can be printed out and paid in any bank in Brazil.
Clearing could take up to D+3.
PPRO matches bank return and generates a payment confirmation transaction type (RC) in the system. The merchant receives a report including Receipts (RC) for paid Boletos through a pre-defined SFTP server or webhook.
Advantage: Boleto payments are not subject to chargebacks. Once the payment has been made it is final and may only be refunded via bank transfer.
Boletos have due dates, up to which a payment is possible. Please discuss the optimal due dates (expiry dates) with your Account Manager, as it depends on the industry. Reminder emails sent to the customer up to 3 days before due date improve conversion significantly.
Preauthorization (PA) - Issue the Boleto
1. Send an Initial Payment
The first step is to send a Server-to-Server initial payment request with the paymentBrand and shopperResultUrl. The shopperResultUrl must be url-encoded.
Brazilian banks do not support special characters for Boletos. i.e: !, @, #, $, %, ¨, &, , (, ), _ , +, = , ´ , “ , ‘ , ] ,[ , ^,? ,: , >, <, TM, ®, º, °, /, |, \, {, }, ª, ¢, ¬, £, etc, then you must ensure that the customer does not enter special character in these fields.
Expiry date. Payment of the Boleto is possible up to this date. At least 3 days from issuing date is recommended, so that the customer has enough time to conclude the payment.
2. Redirect the shopper
The boleto can be displayed both on desktop and mobile devices. Typically the user will expect to receive an email containing the order information and the link to display the boleto.
Important: Not every boleto will in fact be paid by your customer. Depending on the industry, up to 50% of the issued boletos will not receive a payment. Note that these will remain on the platform, even if already overdue.
Most boletos are paid with cash at any of the acceptance places in Brazil (post offices, gas stations etc). Since the boleto does not have a native method to refund a transaction, PPRO enables the merchant to refund these transactions via bank transfer. For that it is required for the merchant to collect and provide the customers bank account data, either: programmatically via API or manually via Business Intelligence Platform (BIP).
Boleto RF via API
A refund is performed against a previous payment (RC), referencing its payment.id by sending a POST request over HTTPS to the /v1/payments/{id} endpoint.
{"id":"8ac7a4a06cf2812c016cfda0c3a216ed","referencedId":"8ac7a4a16cf27265016cfd9d00e9293f","paymentType":"RF","amount":"1.00","currency":"BRL","descriptor":"3460.2304.5751 Produto 1","merchantInvoiceId":"ADB065957000B","result":{"code":"000.100.112","description":"Request successfully processed in 'Merchant in Connector Test Mode'" },"customer":{"merchantCustomerId":"56359439000160" },"buildNumber":"26c2d6b9c96c447b626bf1480d38a81508aefd69@2019-09-04 09:39:42 +0000","timestamp":"2019-09-04 18:54:27+0000","ndc":"8a8294185b674555015b7ce34a9a17d3_46f0168f2e80436997c285ca8acc8636"}
Boleto RF via Business Intelligence Platform (BIP)
Required data from the customer:
NameBrazilian CPF (see compliance (Customer ID number by country))Bank nameBank agency numberBank account data
Oxxo (PP) - (Mexico only)
Oxxo is a PrePayment (PP) method (invoice/slip/voucher), which is widely used in Mexico to pay offline (Oxxo store).
Oxxo are payment slips, issued by sending a PA request to PPRO’s system. The slip is displayed on the end customer’s browser where it can be either printed out or scanned off a mobile device.
The Oxxo slip has two important elements: barcode & reference number (numerical representation of the barcode). The customer is able to pay by either of them. It is a question of which design fits your checkout better. In addition, PPRO provides a hosted page containing both elements.
Clearing usually happens the next day, but can be delayed (in case of weekends and public holidays in Mexico).
Oxxo due dates are configurable. Please discuss the optimal due dates (expiry dates) with your Account Manager. Reminder emails sent to the customer up to 3 days before due date improve conversion significantly.
Preauthorization (PA) - Issue the payment slip
1. Send an Initial Payment
The first step is to send a Server-to-Server initial payment request with the paymentBrand .
ConnectorDetails.EXTERNAL_SYSTEM_LINK: PPRO hosted complete page containing all elements (barcode, reference number)
ConnectorDetails.EXTERNAL_SYSTEM_BARCODE_IMAGE: barcode url of PPRO hosted png.
ConnectorDetails.EXTERNAL_SYSTEM_BARCODE_NUMBER: reference number (can be used equally for paying the oxxo slip). The first option is a complete solution, options 2&3 offer the merchant full flexibility to build his own oxxo page by using the elements to this end.
2. Redirect the shopper
The Oxxo slip can be displayed both on desktop and mobile devices. Typically the user will expect to receive an email containing the order information and the link to display the Oxxo slip.
Most slips are paid with cash at any of the acceptance places in Mexico (Oxxo stores). Since the slip does not have a native method to refund a transaction, PPRO enables the merchant to refund these transactions via bank transfer. For that it is required for the merchant to collect and provide the customers bank account data, via Business Intelligence Platform (manual):
Oxxo RF via BIP
PayPal (VA) - (Brazil)
PayPal is one of the most popular alternative payment methods. In an asynchronous workflow a redirect takes place to allow the account holder to complete/verify the payment. After this the account holder is redirected back to the shopperResultUrl and the status of the payment can be queried.
Debit (DB)
In an asynchronous workflow a redirect takes place to allow the account holder to complete/verify the payment. After this the account holder is redirected back to the shopperResultUrl and the status of the payment can be queried.
1. Send an Initial Payment
The first step is to send a Server-to-Server initial payment request with the paymentBrand and shopperResultUrl. The shopperResultUrl must be url-encoded.
The next step is to redirect the account holder. To do this you must parse the redirect.url from the Initial Payment response along with any parameters. If parameters are present they should be POST in the redirect, otherwise a straight forward redirect to the redirect.urlis sufficient.
Then, to get the status of the payment, you make a GET request to the baseUrl + resourcePath, including your authentication parameters.
Example of a resourcePath:
Response:{"id":"8a8294495baf2abe015bb603a5036098","paymentType":"DB","paymentBrand":"PAYPAL","amount":"1.00","currency":"BRL","descriptor":"9226.4459.5362 BR_Paypal","merchantTransactionId":"100","merchantInvoiceId":"ORDERID 123","result":{"code":"000.100.112","description":"Request successfully processed in 'Merchant in Connector Test Mode'"},"resultDetails":{"PAYERID":"4UNBGJQE9AUX6","TAXIDTYPE":"BR_CPF","AcquirerResponse":"Success","ConnectorTxID1":"0GY99688DD5155316","SHIPTOSTATE":"SP","TAXID":"30949017787"},"customer":{"givenName":"Paulo","surname":"Souza","merchantCustomerId":"12345678909","email":"buyer@allpago.com","ip":"127.0.0.1"},"billing":{"street1":"Rua um,123","city":"São Paulo","state":"SP","postcode":"01332000","country":"BR"},"customParameters":{"product":"produc description","merchant_sitename":"http://www.yourstore.com"},"buildNumber":"660cde0fae70ab0b5deb72d13560b661be0706de@2017-04-27 08:46:08 +0000","timestamp":"2017-04-28 19:29:59+0000","ndc":"8a8294174e918ca6014e9c77fe772acb_c68f93a382da4bd6b45220b56ecbe4a2","virtualAccount":{"accountId":"buyer@allpago.com","holder":"Paulo Souza"}}
PIX - (Brazil only)
PIX is the first instant payment system available to Brazilian consumers, developed by the Central Bank of Brazil.
PIX is a PrePayment (PP) method, which allows transfers and payments between different financial institutions in up to 10 seconds, 24 hours a day and every day of the year, including weekends and holidays (funds are transferred in real-time from the customer’s account to the payee).
PIX is issued by sending a PA to the PPRO system. PPRO can offer two different PIX solutions:
A complete solution: PPRO generates and hosts a complete page containing all elements (dynamic QR code image, EMV code - including the Copy EMV code button and merchant logo);
QR Code (dynamic) URL/Image: gives to merchant full flexibility to build its own PIX checkout page based on a QR code image.
PPRO receives the bank confirmation and generates a payment confirmation transaction type (RC) in the system. The merchant receives via webhook a notification about the payment confirmation. (The merchant should provide its webhook URL).
{"type":"PAYMENT","payload":{"id":"8ac7a4a180f46dd40180f64fff9758f4","referencedId":"8ac7a49f80f46dd40180f64ffd575919","paymentType":"RC","paymentBrand":"PIX","amount":"2.99","currency":"BRL","presentationAmount":"2.99","presentationCurrency":"BRL","descriptor":"4665.9054.5519 BR_PIX CNL-T331 Test PIX Transaction","merchantTransactionId":"d58580f6-4dca-4a7f-8629-81784352df5d","result":{"code":"000.100.112","description":"Request successfully processed in 'Merchant in Connector Test Mode'","randomField958178183":"Please allow for new unexpected fields to be added" },"customer":{"givenName":"P","surname":"PRO - IT" },"billing":{"street1":"Rua Nenhuma **** Bloco 29","city":"Fortaleza","state":"CE","postcode":"12345678","country":"BR" },"authentication":{"entityId":"8a8294186242c2be01624d0416f620ed" },"redirect":{"parameters": [] },"risk":{"score":"" },"timestamp":"2022-05-24 13:44:39+0000","ndc":"8a8294186242c2be01624d0416f620ed_c0e0eadf0f7b4c00ab08e546a7474642","merchantAccountId":"8ac7a4c8675ffec1016779db30f325ef","channelName":"BR_PIX","source":"OPP" }}
Advantage: Besides the instant confirmation, PIX payments are not subject to chargebacks. Once the payment has been made it is final and can be refunded only by the merchant.
PIX has due dates, up to which a payment is possible. Please discuss the optimal due dates (expiry dates) with your Account Manager, as it depends on the industry. Reminder emails sent to the customer up to 3 days before the due date improve conversion significantly.
List of mandatory fields:
--data-urlencode 'authentication.entityId=8ac9a4cb7859e48801785f9debcd53af' \
--data-urlencode 'amount=0.01' \
--data-urlencode 'currency=BRL' \
--data-urlencode 'paymentBrand=PIX' \
--data-urlencode 'paymentType=PA' \
--data-urlencode 'billing.country=BR'
--data-urlencode customParameters[referencedTxUuid]=(Parente UUID)' {ONLY FOR RF}
Note:
Brazilian banks do not support special characters. i.e: !, @, #, $, %, ¨, &, , (, ), _ , +, = , ´ , “ , ‘ , ] ,[ , ^,? ,: , >, <, TM, ®, º, °, /, |, \, {, }, ª, ¢, ¬, £, etc, then you must ensure that the customer does not enter a special character in these fields.
2. Redirect the shopper
The PIX QR Code can be displayed both on desktop and mobile devices. Typically the user will expect to receive an email containing the order information and the link to display the PIX QR Code.
PIX has its native Refund solution that can be triggered via API.
PIX RF via API
A refund is performed against a previous payment (RC), referencing its e2e id by sending a POST request over HTTPS to the /v1/payments/{id} endpoint.
REMARK: To perform the Refund correctly, it is very important the information customParameters[referencedTxUuid] should be filled with the preauthorization’s (PA) UUID.
As well as the RF, PIX has its native Reversal solution that can be triggered via API, to be used to invalidate a QR Code that has not been paid yet. In this case, the PA uuid should be used to reference the QR Code to be reversed.
Rapipago is an Argentinian offline payment method used for online purchases. Shoppers buy their goods and services online and pay offline at one of the 6,000+ Rapipago payment locations.
The customer is presented with a payment slip including a barcode, which can be paid in cash at the payment locations by scanning the slip at the terminal.
Different from other cash based PMs, Rapipago offers realtime payment confirmations.
After successful payment, the customer is handed a printed receipt for the operation.
PPRO receives the payment confirmation and generates a payment confirmation transaction type (RC) in the system. The merchant receives via webhook a notification about the payment confirmation. (The merchant should provide its webhook URL).
{"type":"PAYMENT","payload":{"id":"8ac7a4a180f46dd40180f64fff9758f5","referencedId":"8ac7a49f80f46dd40180f64ffd575910","paymentType":"RC","paymentBrand":"RAPI_PAGO","amount":"100.99","currency":"ARS","presentationAmount":"100.99","presentationCurrency":"ARS","descriptor":"4665.9054.5519 AR_RAPIPAGO CNL-T331 Test Rapipago Transaction","merchantTransactionId":"d58580f6-4dca-4a7f-8629-81784352df5e","result":{"code":"000.100.112","description":"Request successfully processed in 'Merchant in Connector Test Mode'","randomField958178183":"Please allow for new unexpected fields to be added" },"customer":{"givenName":"P","surname":"PRO - IT" },"billing":{"street1":"Calle florida","city":"Buenos aires","state":"BA","postcode":"12345678","country":"AR" },"authentication":{"entityId":"8a8294186242c2be01624d0416f620ee" },"redirect":{"parameters": [] },"risk":{"score":"" },"timestamp":"2022-05-23 13:44:39+0000","ndc":"8a8294186242c2be01624d0416f620ed_c0e0eadf0f7b4c00ab08e546a7474642","merchantAccountId":"8ac7a4c8675ffec1016779db30f325ef","channelName":"AR_RAPIPAGO","source":"OPP" }}
Advantage: Besides the instant confirmation, Rapipago payments are not subject to chargebacks. Once the payment has been made it is final and can be refunded only by the merchant (Rapipago does not have any native Refund functionality. Therefore a refund can only be performed via a bank transfer.).
Rapipago has due dates, up to which a payment is possible. Please discuss the optimal due dates (expiry dates) with your Account Manager, as it depends on the industry. Reminder emails sent to the customer up to 3 days before the due date improve conversion significantly.
Preauthorization (PA) - Issue the Rapipago voucher
2. Redirect the shopper
The Rapipago voucher can be displayed both on desktop and mobile devices. Typically the user will expect to receive an email containing the order information and the link to display the Rapipago voucher. The voucher has to be printed, but there is an ongoing development in order to scan the payment slip directly from the mobile screen.
PagoFácil is a payment service in Argentina that allows its users to send money, top up their cell phone and payments. PagoFácil can be used for online purchases and for offline payment at 4,000 locations.
The customer is presented with a payment slip including a barcode, which can be paid in cash at the payment locations by scanning the slip at the terminal.
Different from other cash based PMs, PagoFácil offers realtime payment confirmations.
After successful payment, the customer is handed a printed receipt for the operation.
PPRO receives the payment confirmation and generates a payment confirmation transaction type (RC) in the system. The merchant receives via webhook a notification about the payment confirmation. (The merchant should provide its webhook URL).
{"type":"PAYMENT","payload":{"id":"8ac7a4a180f46dd40180f64fff9758f5","referencedId":"8ac7a49f80f46dd40180f64ffd575910","paymentType":"RC","paymentBrand":"PAGO_FACIL","amount":"100.99","currency":"ARS","presentationAmount":"100.99","presentationCurrency":"ARS","descriptor":"4665.9054.5519 AR_PAGOFACIL CNL-T331 Test Pagofacil Transaction","merchantTransactionId":"d58580f6-4dca-4a7f-8629-81784352df5f","result":{"code":"000.100.112","description":"Request successfully processed in 'Merchant in Connector Test Mode'","randomField958178183":"Please allow for new unexpected fields to be added" },"customer":{"givenName":"P","surname":"PRO - IT" },"billing":{"street1":"Calle florida","city":"Buenos aires","state":"BA","postcode":"12345678","country":"AR" },"authentication":{"entityId":"8a8294186242c2be01624d0416f620ee" },"redirect":{"parameters": [] },"risk":{"score":"" },"timestamp":"2022-05-23 13:44:39+0000","ndc":"8a8294186242c2be01624d0416f620ed_c0e0eadf0f7b4c00ab08e546a7474642","merchantAccountId":"8ac7a4c8675ffec1016779db30f325ef","channelName":"AR_PAGOFACIL","source":"OPP" }}
Advantage: Besides the instant confirmation, PagoFácil payments are not subject to chargebacks. Once the payment has been made it is final and can be refunded only by the merchant (PagoFácil does not have any native Refund functionality. Therefore a refund can only be performed via a bank transfer.).
PagoFácil has due dates, up to which a payment is possible. Please discuss the optimal due dates (expiry dates) with your Account Manager, as it depends on the industry. Reminder emails sent to the customer up to 3 days before the due date improve conversion significantly.
Preauthorization (PA) - Issue the PagoFácil voucher
2. Redirect the shopper
The PagoFácil voucher can be displayed both on desktop and mobile devices. Typically the user will expect to receive an email containing the order information and the link to display the PagoFácil voucher. The voucher has to be printed, but there is an ongoing development in order to scan the payment slip directly from the mobile screen.