PayU Brazil

Follow the standard PaymentsOS integration procedure, and then apply the relevant extra specifications described below.

API Version

Minimum required API version: 1.0.0

Payment Methods

The following table lists all supported payment methods.

Payment MethodPayment Method TypeNotes
American ExpressCards
EloCardsThis is a local card vendor.
HipercardCardsThis is a local card vendor.




The following table provides an overview of all supported and non-supported features.

3DS 1.0 ExternalNo
3DS 1.0 InternalNo
3DS 2.0 ExternalNo
3DS 2.0 InternalNo
Level 2 and 3 DataNo
Retrieve Supported Payment MethodsNo
Statement Soft DescriptorYes
Stored Credentials FlagNo
Transaction Processing without CVVYes



The PaymentsOS test environment only supports Authorize and Capture requests (this is a limitation of the PayU Latam sandbox environment).

The following table lists all supported requests. Use the bodybuilder to create a sample request body for each request type.

Supported requests for card transactions.
AuthorizePartial and multiple are not supportedAsynchronous or Synchronous
  • The request can be synchronous or asynchronous, depending on your setup.
  • Only supported for the local currency, USD is not supported.
CapturePartial and multiple are not supportedAsynchronous or Synchronous
  • The request can be synchronous or asynchronous, depending on your setup.
  • Only supported for the local currency, USD is not supported.
  • Partial Capture is not supported. Sending less than the full amount will generate an error.
Charge Not ApplicableAsynchronous or SynchronousThe request can be synchronous or asynchronous, depending on your setup.
Refund Partial is supportedAsynchronousPartial refund is only supported for the following payment methods: VISA, MASTERCARD, AMEX, DINERS.
Void Not ApplicableAsynchronous
Supported requests for cash transactions.
Charge Not ApplicableAsynchronous

Partial Refund Limitations

While partial refunds are supported, the following limitations apply:

  • You can send any amount for the partial refund as long as the value doesn’t exceed the initial or actual amount.

  • You can send as many as partial refund request as you require. The sum of the partial refund amounts cannot not exceed the total value of the transaction.

  • A partial refund request will always get a status of pending in the response. Partial refunds are processed manually by a PayU representative. The refund may take 2 to 6 calendar days to be processed. Once done, depending on the acquirer, the amount will appear in the extract in the next 1 to 30 days after the partial refund is processed.

  • If a partial refund is pending or is being processed, you cannot send a new request until the last one is processed.

Setup Procedures

The following table lists the setup procedures that are specific to this provider.

In the PaymentsOS Control Center, configure the following credentials:
  • apiLogin: The user name supplied by PayU Brazil
  • apiKey: The password name supplied by PayU Brazil
  • accountId: The identifier of the account in PayU Brazil
  • paymentCountry: BRA
  • merchantId: The merchant ID in PayU Brazil
When creating a new provider configuration in the PaymentsOS Control Center, select PayU Latam as the provider.
In the PaymentsOS Control Center, register webhooks to be notified when a transaction changes its status.

Note: Some API requests in the payment flow may remain in a pending status for some time.
In your PayU Brazil account, enable the validate unique. This will validate that each payment reference sent to the PayU Latam system is unique.Required
In your PayU Brazil account, enable the 'Process without a cvv2 security code' feature if you intend to use it.Optional
Contact PayU Latam Support to get a list of the minimum payment amounts required by the payment methods that you intend to use.

To avoid unnecessary request failures, we recommend that you include some 'minimum value' validation for the transaction payment.amount in your system.

Integration Procedures

The following sections list the integration procedures that are specific to this provider.

Handling the Charge Request Response for Cash Transactions

If the charge request is successful, then the provider will return a charge response containing:

  • A status of pending.
  • The expiration date of the Payment Receipt.
  • A provider_data.document object with href links to the Payment Receipt in HTML format and possibly the Payment Receipt in PDF format.

Note that the provider_data.additional_information field may contain a barcode, for receipt tracking purposes.

Now direct your customer to one, or both of the transaction payment receipts, so that they can print the receipt. Your customer should then take the payment receipt to the relevant Payment Office and pay for their purchase, before the expiration date.

When the provider notifies us that your customer has paid, we will update the transaction status. If no payment notification is received by the expiration date then the transaction will be considered as failed.


Follow the steps in the PayU integration testing page.

The transaction may be declined with the following responseCode: DECLINED_TEST_MODE_NOT_ALLOWED. For testing, try one of these workarounds:

  • When creating the Token, set the token.holder_name to "APPROVED".

  • Your test account may be configured in "test mode". To disable it, log into your administrative module Then navigate to Settings tab > Settings Accounts, select the account and check off "transaction in test mode". Save your settings when done.

Test Cards

You can use the following cards for testing:

Card Number
AMEX Credit Card 376611000000000
DINERS Credit Card 36213800000009
ELO Credit Card 5067310000000002
HIPERCARD Credit Card 6062820000000003
MASTER Credit Card 5123740000000002
VISA Credit Card 4422120000000008 - 4984460000000008

results matching ""

    No results matching ""