Boleto Bancario is a server to server only payment method to increase conversion
Payment Types | Meaning | Success return codes |
---|---|---|
PA | Successful generation of th Boleto. The shopper can go and pay for it online or at any POS such as a bank | 000.000.000 000.100.112 (on staging) |
RC | Successful payment of the Boleto. The payment of the Boleto is asynchronous and hence the confirmation will usually come in within 2-3 business days | 000.000.000 |
Initial Request
//send POST to https://test.oppwa.com/v1/payments -H "Authorization: Bearer OGE4Mjk0MTg0ZTczNjAxMjAxNGU3OGExN2E2YTE1YjB8ZjJGRUtacXRCUA==" amount=10.00 currency=BRL paymentBrand=BOLETO paymentType=PA //API credentials authentication.entityId=8a8294174ae82ada014aedfd75aa1d79 //API credentials end //Dummy data, replace with your shopper`s details customer.identificationDocType=TAXSTATEMENT billing.street1=Av Brigadeiro Faria Lima 3729 billing.city=Sao Paulo billing.state=SP // State with 2 digits billing.postcode=04538905 //postcode with 8 numeric digits, no dashes, spaces or slashes. billing.country=BR //Country with 2 digits customer.givenName=Gustavo customer.surname=Santos customer.ip=1.1.1.1 customer.email=test@test.com customer.identificationDocId=70383053102 //CPF number of end customer //end of shopper details customParameters[CUSTOM_due_date]=21012018 //Due date of the Boleto. We recommend 3 days of the issuance date merchantTransactionId=1234 shopperResultUrl=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 // only required on staging. Please remove on production environment
The collection of the CPF (Tax Identification number) is mandatory for all payments in Brazil. It is also mandatory to verify the CPF via this Java Script: https://gist.github.com/cauerego/873308
Successful Response
{ "id":"8a82944964ea186c0164ecbf445f7385", "paymentType":"PA", "paymentBrand":"BOLETO", "amount":"10.00", "currency":"BRL", "descriptor":"Test Merchant 2460.0146.3970 Virtual Goods", "merchantTransactionId":"1234", "result":{ "code":"000.100.112", "description":"Request successfully processed in 'Merchant in Connector Test Mode'" }, "resultDetails":{ "ExtendedDescription":"Payment method ready to be captured", "BarCodeNumber":"00094666000000010009999252460014639799999990", "connectorId":"beb52023-ea89-4750-9a82-75525d189249", "ConnectorTxID2":"1234", "DigitableLine":"00099.99921 52460.014633 97999.999903 4 66600000001000", "AcquirerResponse":"1", "reconciliationId":"1234" }, "customer":{ "givenName":"Pagador", "surname":"Pagador", "email":"test@test.com", "identificationDocType":"TAXSTATEMENT", "identificationDocId":"11111111111", "ip":"1.1.1.1" }, "billing":{ "street1":"Av Brigadeiro Faria Lima 3729 ", "city":"Sao Paulo", "state":"SP", "postcode":"04538905", "country":"BR" }, "customParameters":{ "CUSTOM_due_date":"21012018" }, "redirect":{ "url":"https://transactionsandbox.pagador.com.br/post/pagador/reenvia.asp/beb52023-ea89-4750-9a82-75525d189249", "parameters":[ ] }, "buildNumber":"ff2430ab706f7ca0b5b903b11604719f5424d21c@2018-07-27 10:29:18 +0000", "timestamp":"2018-07-30 19:51:58+0000", "ndc":"8a8294174ae82ada014aedfd75aa1d79_dca6a0b62dc44d0e81195603af6f39a7" }
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 Boleto itself. Please note that the staging environment of the bank may show an error from time to time instead of the actual Boleto.
Retrieve notifications when the Boleto is paid
Please refer to section webhooks
[2018-07-30][19:57:13,046]Notification b8d00c6a-276b-4816-a423-a7996e376834 message: {"type":"PAYMENT","payload": {"id":"8a82944a64ea2a060164ecc41d671606","referencedId":"8a82944a64ea2a060164ecc06db70bce","paymentType":"RC", "amount":"10.0","currency":"BRL","presentationAmount":"10.0","presentationCurrency":"BRL", "descriptor":"Test Merchant 6086.5776.5026 Virtual Goods","merchantTransactionId":"****", "result":{"code":"000.100.112","description":"Request successfully processed in 'Merchant in Connector Test Mode'", "randomField621972632":"Please allow for new unexpected fields to be added"}, "customer":{"givenName":"Pagador","surname":"Pagador","email":"test@test.com", "identificationDocType":"TAXSTATEMENT","identificationDocId":"11111111111","ip":"1.1.1.1"}, "billing":{"street1":"Av Brigadeiro Faria Lima ****","city":"Sao Paulo","state":"SP","postcode":"04538905","country":"BR"}, "authentication":{"entityId":"8a8294174ae82ada014aedfd75aa1d79"},"customParameters":{"INFO_matchingAlgorithm":"MANUAL_MATCH"}, "redirect":{"parameters":[]}, "risk":{"score":""},"timestamp":"2018-07-30 19:57:12+0000","ndc":"DFCAD1AC1C0E00977B5A9FFE0E85AB3D.sbg-vm-bip01_1234_rand3cd6e14412f83147"}}
Field specifications
Name | 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} | BRL |
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 |
customer.email | The (internal) email address of the customer | AN128 [\s\S]{6,12 8} | |
customer.ip | AN255 [\s\S]{1,25 5} | AN255 [\s\S]{1,25 5} | 1.1.1.1 |
customer.identificationDocId | CPF number of customer | N11 | 70383053102 |
merchantTransactionID | Merchant-provided reference number | AN255 [\s\S]{1,25 5} | 1234 |
customParameters[CUSTOM_due_date] | Due Date of the Boleto. Recommended: 3 days in the future. Format: DDMMYYYY | AN10 {19|20}([0-9]{2})-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1]) | 21012016 |