Payments

  1. 1. What is necessary to try the API and how do I get the sandbox credentials?

    You do not need to be a customer to try our API! Just contact our team at econnect@ebury.com to get a free-of-charge credential and instant access to our sandbox environment.

  2. 2. What is the API authentication method?

    The access to the Ebury Bank API is available using industry standard OAuth2 authentication methods for transparent and secure access to user data.

    Token Generator for oAuth2:
    In order to have access to your token, you need to make a request to this endpoint using HTTP Basic Authentication
    (HTTP/1.0 - 11.1 Basic Authentication Scheme)

    The token will expire in 24 hours after being generated, we strongly suggest replacing it 1 hour before the expiration time. Making another token request.

  3. 3. Why am I receiving a 401 error during my tests?

    Due our authentication method, you need to have access to a token, which is reponsible for check your credentials. If you already got a token and the error persists, please note that a token could be expired. Call authentication service again to receive a new one. Check our API page.

  4. 4. Should I pass empty strings for optional values?

    If you don’t want to pass fields that are optional, your handler should not pass empty strings

  5. 5. I’m getting errors while using the REST APIs. What do I do?

    You can read about REST API errors in the REST API reference. This list can help you anticipate and account for most errors. You can also learn how to handle common REST Payment API errors.

  6. 6. Who do I contact if I have questions or need support?

    You can contact us by e-mail econnect@ebury.com or being part of our Slack channel. Our timezone is BRT

  7. 7. What are the status of a typical payment transaction?

    • WAITING_CONSUMER: occurs when the payment is waiting some confirmation or authentication by the consumer. Generally, occurs on transactions of debit, on banking slips that is waiting payment or when the issuer has two authentication factors enabled because of risk.
    • AUTHORIZED: the payment was authorized by issuer. On that status, the consumer's balance was checked but the payment is not confirmed. The payment is pending of confirmation.You can confirm a payment automatically by the parameter "confirm: true".
    • CONFIRMED: the payment was authorized by issuer and is confirmed.
    • CANCELED: the payment was canceled.
    • DECLINED_BY_ISSUER: the payment was declined by issuer and the reason is described on response
    • DECLINED_BY_BUSINESS_RULE: the payment was declined by some business rule from Ebury Bank and the reason is described on response
  8. 8. What are the local payments methods in Brazil?

    • Brazilian Bank Slip: Also knows as Boleto Bancario or voucher, is a very popular method that allows sell to consumers without a credit or debit card. It can be paid online or offline, in cash, mobile or online banking using a barcode. It is a method with zero risk of fraud or chargeback and can take until three days to be settled.
    • Brazilian Domestic Cards: Only a few percentage of brazilians have cards that works on international transactions. Our platform is ready to offer access to the whole universe of credit and debit cards of brazilians consumers.
    • Online Banking (TEF): Also knows online debit, is a method that connects our platform direct to a online bank account with instantaneous response, without dependence of a card. It is a method with zero risk of fraud or chargeback.

    Please , note that this support will be available soon.

  9. 9. What are the use cases of late confirmation function?

    Represented as the “confirm” property on a payment request, it indicates that payment will check and block the amount on consumer’s balance but is awaiting the confirmation message. It is a useful function when you have to run business rules before product shipping.

  10. 10. What are the card brands and payment types available?

    General availability by Card Brand
    Card Payment TypeMastercardVisaAmexEloHipercardDiners
    Credit cardAvailableAvailableAvailableAvailableAvailableAvailable
    Credit card with installmentsAvailableAvailableAvailableAvailableAvailableAvailable
    Credit with authenticationAvailableAvailableUnavailableUnavailableUnavailableUnavailable
    Debit with authenticationAvailableAvailableUnavailableUnavailableUnavailableUnavailable
    Soft DescriptorAvailableAvailableAvailableAvailableAvailableUnavailable

    We are increasing new card brands and payment types every month.

  11. 11. What are local payment methods available?

    We have local support to bank slip (Boleto Bancario). Please check our API guide to know more about it.

    Soon, we will have support to Online Debit (Bank Transfers) to main issuers in Brazil.

  12. 12. How a payment cancellation works?

    Our platform is ready to process cancellation of payments, including partial amount and with more than one cancellation, limited to total amount from payment. You can decide what rules are better to your business model.

    The amount will be available on consumer bank account until 10 business days.

    Partial cancellations can only be made from the next day onwards (D+N, where N is greater than 0). The limit for partial cancellations is 1 per day for each transaction (it is an acquirer limitation).

    We are able to communicate consumer by e-mail about cancellation rules and events on payments. Please, let us know to activate this feature and communicate with consumer on your behalf.

  13. 13. What are the available options for allocating fees for payment links, and how does the choice affect the possibility of partial cancellation via PIX?

    We offer two options for allocating fees in payment links:

    1. Consumer Fee Allocation: In this method, we calculate the net amount to be received by the merchant, and the remaining amount (including fees) is paid by the consumer. For this consumer fee allocation method, we do not offer the option of partial payment via PIX.

    2. Merchant Fee Allocation: In this modality, the merchant assumes the cost of the fees.

    Therefore, the partial PIX cancellation functionality is not available when the fee allocation option is directed to the consumer.

  14. 14. Card numbers and general information for testing

    While testing, use only the test credit card numbers on table bellow. Other numbers produce an error.

    The expiration date must be a valid date in the future and the secure code is not validated on test environment.

    Observation: To be able to use Debit Card Without Authenticate, it is necessary to have a contract with the card issuer.

    Card number and scenarios for test
    Card NumberPayment TypeInstallmentsHttp CodeResult
    4556897654968402Credit3200 OKSuccess
    6550393682603873Credit1200 OKSuccess
    6550430681715066Credit1422Denied
    4929785925958759Credit3200 OKSuccess
    4024007129267307Credit1200 OKSuccess
    4024007159375863Credit3200 OKSuccess
    5121116960598636Credit3200 OKSuccess
    342398203700310Credit3200 OKSuccess
    342091561592540Credit3200 OKSuccess
    6011652830881662Credit1200 OKSuccess
    6370950000000006Credit1200 OKSuccess
    6370950000000006Credit3200 OKSuccess
    6370950000000006Credit6200 OKSuccess
    4024007117676337Credit3422Denied
    6370950000000005Credit2422Denied
    4532882971768528Debit1200 OKSuccess
    4716071517283162Debit1422 Denied
    5532882971768528Debit1200 OKSuccess
    5716071517283162Debit1422 Denied
    5200000000001096Debit Without Authenticate1200 OKSuccess
    4000000000001000Debit Without Authenticate1200 OKSuccess
    2221000601734667Debit Without Authenticate1422 Denied
    4000000000001109Debit Without Authenticate1422 Denied

    National IDs for test

    Please, as national id is a mandatory field on API, please use one described on table bellow:

    47418692021, 31188623001 or 32027006001

  15. 15. Expected scenarios for TSP payments (Sandbox environment)

    As TSP is a specialization of payments with card numbers and a service not provided by Ebury Bank, in the sandbox environment, it have to use the below pattern to inform the tokenized card number.

    token-brand-card_number

    Where:

    • token - fixed
    • brand - card brand
    • card_number - card numbers and their scenarios listed at FAQ #13


    All other rules at FAQ #13 are valid.

    Some examples of tokenized card number following above pattern:

    Tokenized card numbers and scenarios for TSP tests
    TokenPayment TypeInstallmentsHttp CodeResult
    token-elo-4556897654968402Credit3200 OKSuccess
    token-elo-4024007129267307Credit1200 OKSuccess
    token-elo-6550430681715066Credit1422Denied
    token-mastercard-6550393682603873Credit1200 OKSuccess
    token-mastercard-6370950000000006Credit1200 OKSuccess
    token-mastercard-4024007117676337Credit3422Denied
    token-visa-4929785925958759Credit3200 OKSuccess
    token-visa-6370950000000006Credit1200 OKSuccess
    token-visa-6370950000000006Credit3200 OKSuccess
    token-visa-6370950000000005Credit2422Denied
    token-visa-6370950000000012Credit1200 OKSuccess
    token-visa-6370950000000012Credit2200 OKSuccess
    token-visa-6370950000000012Credit3200 OKSuccess
    token-visa-6370950000000012Credit4200 OKSuccess
    token-visa-6370950000000012Credit5200 OKSuccess
    token-visa-6370950000000012Credit6200 OKSuccess
    token-visa-6370950000000012Credit7200 OKSuccess
    token-visa-6370950000000012Credit8200 OKSuccess
    token-visa-6370950000000012Credit9200 OKSuccess
    token-visa-6370950000000012Credit10200 OKSuccess
    token-visa-6370950000000012Credit11200 OKSuccess
    token-visa-6370950000000012Credit12200 OKSuccess
    token-visa-6370950000000112Credit1422Denied
    token-visa-6370950000000112Credit2422Denied
    token-visa-6370950000000112Credit3422Denied
    token-visa-6370950000000112Credit4422Denied
    token-visa-6370950000000112Credit5422Denied
    token-visa-6370950000000112Credit6422Denied
    token-visa-6370950000000112Credit7422Denied
    token-visa-6370950000000112Credit8422Denied
    token-visa-6370950000000112Credit9422Denied
    token-visa-6370950000000112Credit10422Denied
    token-visa-6370950000000112Credit11422Denied
    token-visa-6370950000000112Credit12422Denied
  16. 16. Expected scenarios for Pix payments (Sandbox environment)

    Pix payments are asynchronous and depend on the final user to finalize the payment in his own bank. This scenario cannot be replicated in the sandbox environment.

    Therefore to simulate some expected scenarios for Pix payments it is necessary to send the last number of the amount field value following the payload below:

    {
      "amount": 1.01
    }

    We will be consider behavior as the table below:


    Scenario DescriptionBRL amount “cent”Status after creationStatus after 3 seconds
    QR Code generated sucessfully and after the creation approved*.*1WAITING_CONSUMERCONFIRMED
    Transaction denied on creation*.*2DECLINED_BY_ISSUERDECLINED_BY_ISSUER
    Transaction denied after the creation*.*3WAITING_CONSUMERCANCELED
    QR Code generated succesfully and payment does not receive any updates after*.*4WAITING_CONSUMERWAITING_CONSUMER
  17. 17. Expected scenarios for Slip payments (Sandbox environment)

    Slip payments are asynchronous and depend on the final user to finalize the payment in his own bank. This scenario cannot be replicated in the sandbox environment.

    Therefore to simulate some expected scenarios for Slip payments it is necessary to send the last number of the amount field value following the payload below:

    {
      "amount": 1.01
    }

    We will be consider behavior as the table below:


    Scenario DescriptionBRL amount “cent”Status after creationStatus after 3 seconds
    Bank slip generated sucessfully and after the creation was paid*.*1WAITING_CONSUMERCONFIRMED
    Bank slip denied on creation*.*2DECLINED_BY_BUSINESS_RULESDECLINED_BY_BUSINESS_RULES
    Bank slip expired after the creation*.*3WAITING_CONSUMERCANCELED
  18. 18. Expected scenarios for Electronic Bank Transfer payments (Sandbox environment)

    Electronic Bank Transfer payments are asynchronous and depend on the final user to finalize the payment in his own bank. This scenario cannot be replicated in the sandbox environment.

    Therefore to simulate some expected scenarios for Electronic Bank Transfer payments it is necessary to send the last number of the amount field value following the payload below:

    {
      "amount": 1.01
    }

    We will be consider behavior as the table below:


    Scenario DescriptionBRL amount “cent”Status after creationStatus after 3 seconds
    TED generated sucessfully and after the creation was paid*.*1WAITING_CONSUMERCONFIRMED
    TED expired after the creation*.*3WAITING_CONSUMERCANCELED
  19. 19. Expected scenarios for payments with 3DS authentication (Sandbox environment)

    In payments with 3DS authentication, it is necessary to send the ECI field, which indicates the authentication result of the cardholder's card, and according to it, it is decided whether the transaction will be approved or not.

    Therefore, to simulate some expected scenarios for payments with 3DS authentication, let's consider the behavior according to the table below:

    ECI codeTransaction MeaningHttp CodeResult
    02 or 05Success in 3DS authentication by the Issuing Bank200Success
    01 or 06Success in 3DS authentication by Brand200Success
    00 or 07Authentication failed for various card-related reasons422Denied
    04Data Only - No Authentication200Success
  20. 20. Expected scenarios for Nupay payments (Sandbox environment)

    Nupay payments are asynchronous and depend on the final user to finalize the payment. This scenario cannot be replicated in the sandbox environment.

    Therefore to simulate some expected scenarios for Nupay payments it is necessary to send the two last numbers of the amount field value following the payload below

    {
      "amount": 1.01
    }

    We will be consider behavior as the table below:


    Scenario DescriptionBRL amount “cent”Status after creationStatus after 3 seconds
    Payment created successfully in app and approved by client*.01WAITING_CONSUMERCONFIRMED
    Transaction denied on creation*.02DECLINED_BY_ISSUERDECLINED_BY_ISSUER
    Transaction denied after the creation*.03WAITING_CONSUMERCANCELED
    Payment generated successfully in app and payment does not receive any updates after*.04WAITING_CONSUMERWAITING_CONSUMER
    Transaction denied on creation because is canceled by Nubank (national id is not client)*.11DECLINED_BY_ISSUERDECLINED_BY_ISSUER
    Payment created successfully in app and canceled by Nubank (national id is not client)*.12WAITING_CONSUMERCANCELED
    Payment created successfully in app and canceled after client not confirm (timeout)*.19WAITING_CONSUMERCANCELED
  21. 21. Cards verification (Sandbox environment)

    In card verification, All test cards listed at FAQ #13 are valid. Otherwise, the responses are based on the last number of the card sent in request.

    The card brand in response will be always MASTERCARD.


    We will be consider behavior as the table below:


    Scenario DescriptionLast card numberResponse in status
    The card present in Card number and scenarios for test table-VERIFIED
    The card was checked and denied0DENIED
    The card was not checked1NOT_VERIFIED
    The card was checked successfull2VERIFIED
    The card was checked successfull with tokenize2VERIFIED + Card Token
    Error on checking cardother valueERROR
  22. 22. What are the types of report available?

    There are three types of reports that we provide through our REST API and/or via our web portals. Each report contains specific details offering payments, conciliation and transaction statements insights.

    Below you will find the available reports, along with their descriptions and the list of available fields to help you better understand the structure and usage of each report.

    PAYIN-CONCILIATION

    This report provides details about payments released for conciliation, including settlements, chargebacks and refunds. It helps merchants align transactions with financial records and ensure data accuracy.

    It is generated automatically on a daily basis, around 4:00 AM UTC, and contains all events and updates that occurred during the previous day.

    FieldDescription
    total_settlement_amountTotal sum of settled transactions’ gross amounts
    total_settlement_net_amountTotal sum of settled transactions’ net amounts
    iof_totalTotal IOF amount of all transactions
    settlement_iof_totalTotal IOF amount of settled transactions
    settlement_currencyCurrency used for settled transactions
    settlement_dateDate when the transaction was settled
    transfer_dateDate when the transaction was transferred
    PAYMENTS SECTION
    payment_idUnique payment transaction identifier
    merchant_idUnique merchant identifier
    correlation_idCorrelation identifier
    order_idUnique Order identifier
    currency_codeCurrency used for settled transaction
    settlement_amountSettled transaction's net amount
    transaction_fee_fixedFixed fee deducted from the transaction
    transaction_fee_variableVariable fee deducted from the transaction
    iof_by_merchantMerchar IOF to be deducted from the transaction
    amount_iofIOF amount deducted from the transaction
    amount_iof_brIOF amount deducted from the transaction in BRL
    amount_br_wo_iofTransaction amount without IOF in BRL
    amount_brTransaction amount with IOF deducted in BRL
    payment_type_codePayment transaction type identifier code
    anticipation_feeFee amount charged for transaction's anticipation
    installments_total_noTotal number of payment transaction's installments
    transaction_dateDate and time when the transaction was created
    CHARGEBACKS SECTION
    payment_idUnique payment transaction identifier
    merchant_idUnique merchant identifier
    correlation_idCorrelation identifier
    order_idUnique Order identifier
    debit_creditIndicates whether the transaction is debit or credit
    settlement_currency_codeCurrency used for the transaction
    chargeback_amount_brChargeback amount in BRL
    chargeback_settlement_amountPayment transaction's settlement amount
    payment_type_codePayment transaction type code
    acquirerAcquiring bank or processor handling the chargeback
    chargeback_dateDate when the chargeback was registered
    chargeback_reason_codeCode indicating the reason for the chargeback
    chargeback_descriptionDescription indicating the reason for the chargeback
    purchase_dateDate when the payment transaction was created
    REFUNDS SECTION
    payment_idUnique payment transaction identifier
    merchant_idUnique merchant identifier
    correlation_idCorrelation identifier
    order_idUnique Order identifier
    settlement_currency_codeCurrency used for the transaction
    settlement_amountSettled transaction's net amount
    amount_brSettled transaction's amount in BRL
    refund_amountRefund gross amount
    refund_net_amountRefund net amount
    payment_type_codePayment transaction type identifier code
    refund_request_dateDate when the refund was requested
    fx_rateExchange rate applied to the refund
    installmentsNumber of installments refunded

    PAYMENT-VIEW

    This report provides a clear overview of payments, including identification data, payer details, transaction amounts, statuses, and key dates, making it easier to track and validate individual payments.

    It can be requested either through the API or via the Portal by selecting a start and end date (up to a maximum range of 31 days). The report always retrieves the most recent status of each transaction within the selected period.

    FieldDescription
    dateDate when payment was created
    correlation_idUnique correlation identifier
    documentCustomer document number
    nameCustomer name
    gross_amountGross amount of the payment transaction in local currency
    gross_foreign_amountGross amount of the payment transaction in foreign currency
    net_amountNet amount of the payment transaction in local currency
    net_foreign_amountNet amount of the payment transaction in foreign currency
    payment_dateDate when payment was confirmed
    statusLast status of the payment transaction
    payment_idPayment transaction identifier

    STATEMENT-TRANSACTIONS-BY-REMITTANCE

    This report provides a detailed view of transactions grouped by remittance. It contains transaction amounts, card details, statuses, and exchange rate information, allowing merchants to review and reconcile remittances with greater accuracy.

    FieldDescription
    idPayment transaction identifier
    nsuUnique sequential number identifying(NSU)
    dateDate when the transaction was created
    nameCustomer name
    net_amountNet amount of the payment transaction in local currency
    foreign_net_amountNet amount of the payment transaction in foreign currency
    gross_amountGross amount of the payment transaction in local currency
    foreign_gross_amountGross amount of the payment transaction in foreign currency
    typePayment transaction type
    installments_totalTotal number of the payment transaction's installments
    installments_currentCurrent payment transaction's installment number
    card_numberMasked card number
    card_brandCard brand
    transaction_statusCurrent payment transaction's status
    chargeback_statusPayment transactionm chargeback status
    payment_statusCurrent payment transaction status
    correlation_idCorrelation identifier
    exchange_rateExchange rate applied
    exchange_rate_currencyCurrency of the exchange rate applied

Previous

banking
Ebury Partners UK Ltd © 2025