Peru

Learn about the dLocal supported payment methods in Peru.

Market specifications

Take a look of all the payment methods available.

Country reference Cards supported Alternative Payment Method supported

Cards

Find all the information about the card supported capabilities.

Capabilities Process Card Payments

Alternative Payments

Learn how to integrate cash, bank transfer or wallet payment.

Pago Efectivo BCP PayCash Payvalida Yape


Market specifications

Do you want to know more information about Peru's market? Go to the Peru’s economy and eCommerce market article.

Country reference

country codecurrency codedocument namedocument formatdocument required?
PEPENDNIBetween 8 to 9 digitsYes

Cards supported

payment_method_idBrand IDNamepayment_method_typeDetailsAllowed FlowsLogo
CARDVIVisaCARDCredit Card ​DIRECT REDIRECT
CARDVDVisa Debit ​CARDDebit Card ​DIRECT REDIRECT
CARDMCMastercardCARDCredit Card ​DIRECT REDIRECT
CARDMDMastercard Debit ​CARDDebit Card ​DIRECT REDIRECT
CARDAEAmerican ExpressCARDCredit Card ​DIRECT REDIRECT
CARDDCDiners ClubCARDCredit Card ​DIRECT REDIRECT

ℹ️

To offer all the card options that may be available in your integration, send the payment_method_id as CARD.

Alternative Payment Method supported

payment_method_idNamepayment_method_typeDetailsAllowed FlowsLogo
EFPago EfectivoTICKETCash PaymentsDIRECT REDIRECT
BCBCPBANK_TRANSFERBank TransferDIRECT REDIRECT
CYPayCashTICKETCash PaymentsDIRECT REDIRECT
IOPayvalidaBANK_TRANSFERBank TransferREDIRECT
YPYapeWALLETeWalletREDIRECT


Cards

Capabilities

Visa CreditVisa DebitMastercard CreditMastercard DebitAmerican ExpressDiners Club
Minimum amount5 PEN5 PEN5 PEN5 PEN5 PEN1 PEN
RefundsYesYesYesYesYesYes
RecurringYesYesYesYesYesYes
Chargeback optionYesYesYesYesYesYes
Chargeback Dispute optionYesYesYesYesYesYes
DescriptorCan be personalized, depending on the provider.Can be personalized, depending on the provider.Can be personalized, depending on the provider.Can be personalized, depending on the provider.Can be personalized, depending on the provider.Can be personalized, depending on the provider.

How to process Card Payments?

Learn how to process payments with credit and debit cards with dLocal in our Card Payments section.



Alternative Payment Method

Pago Efectivo

Pago Efectivo was created with the aim to be the payment method to buy online and pay without a card. They created the CIP payment code to have the freedom to choose where and how to pay using the code.

Pago Efectivo is now widely used in Peru to pay their utility bills and purchases online, giving the user the ability to pay in cash, through bank transfers or with eWallets.

Capabilities

Pago Efectivo
Min. amount5 PEN
Max. expiration time supported5 days
Notification delayImmediate
RefundsYes
FlowDIRECT
REDIRECT

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPEN

Transaction currency in ISO 4217.
Yes
countryStringPE

Transaction country in ISO 3166.
Yes
payment_method_idStringEF

ID of the selected payment method.
Yes
payment_method_flowStringDIRECT or REDIRECTYes
payer.nameStringName of the payer.Yes
payer.emailStringEmail of the payer.Yes
payer.documentNumberDocument of the payer.Yes
order_idNumberID of the capture given by the merchant in their system. Think of it as an external ID of the capture.No
notification_urlStringNotifications will be sent in every change of status of a payment to the notification_url specified by the merchant.No

Examples

{
    "amount": 1000,
    "currency": "PEN",
    "country": "PE",
    "payment_method_id": "EF",
    "payment_method_flow": "DIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "[email protected]",
        "address": {
            "country": "PE",
            "state": "Lima",
            "city": "Lima",
            "zip_code": "88058",
            "street": "Av. Principal",
            "number": "5940"
        }
    },
    "order_id": "34545sk3483kqw0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "callback_url": "http://merchantsite.com/success_page"
}
{
    "id": "D-4-8f95110c-4fac-43q1-b0b1-8078165a385f",
    "amount": 1000,
    "currency": "PEN",
    "payment_method_id": "EF",
    "payment_method_type": "TICKET",
    "payment_method_flow": "DIRECT",
    "country": "PE",
    "bank_transfer": {},
    "ticket": {
        "type": "CUSTOM",
        "number": "165816703",
        "expiration_date": "2023-06-17T11:59:00.000+0000",
        "id": "EF-144059474",
        "barcode": "",
        "company_name": "DEMERGE PERU SAC",
        "image_url": "https://pay.dlocal.com/gmf-apm/payments/M-76d9d7bb-d3f8-40fb-befc-1cf5609de3fd",
        "amount": 1000,
        "currency": "PEN"
    },
    "created_date": "2023-06-14T15:38:09.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "34545sk3483kqw0",
    "notification_url": "http://merchantsite.com/notification/new"
}

Example ticket

Page Efectivo UI built with the information in the example above.

Page Efectivo UI built with the information in the example above.

User Interface Tips UI

Provider's voucher

We strongly recommend using the ticket on the ticket.image_url. Peruvian users are very familiar with this ticket (example above) made by the provider itself, for every kind of purchase paid through Pago Efectivo. It includes:

  • Many payment options instructions.
  • Capability of sending the payment code through SMS.
  • Provider’s store locator.

If you still need to design your own ticket and you are using this payment method through a DIRECT integration, follow the tips below in order to make it easier for your customers to complete payments, boosting your conversion rates.

ElementTip
Ticket NumberName it as "Código de Pago (CIP)".
Provider's NameShow the ticket.provider_name, as it is useful at the moment of paying through home banking.
Currency and AmountShould be relevant elements in the ticket. Users need to have that information very clearly.
Currency SymbolS/
Expiration dateDisplay this element clearly and visible enough. In Perú, the date format is DD/MM/YYYY.
Payment instructionsAlthough most users are familiarized with Pago Efectivo, it is a good practice to help those who are not. In the image above there is an example of instructions, but if needed, our team will be happy to help you with more personalized instructions.
Save buttonIt helps users to have their tickets always on their phones, making it needless to take notes or keep the browser open.
Print buttonIt is useful for some users who need to have their tickets printed.

BCP

BCP is the main bank in Peru with almost half of the market share. With this integration we allow users to make transfers with instant release.

Capabilities

BCP
Min. amount5 PEN
Max. expiration time supported5 days
Notification delayImmediate
RefundsYes
FlowDIRECT
REDIRECT

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPEN

Transaction currency in ISO 4217.
Yes
countryStringPE

Transaction country in ISO 3166.
Yes
payment_method_idStringBC

ID of the selected payment method.
Yes
payment_method_flowStringDIRECT or REDIRECTYes
payer.nameStringName of the payer.Yes
payer.emailStringEmail of the payer.Yes
payer.documentNumberDocument of the payer.Yes
order_idNumberID of the capture given by the merchant in their system. Think of it as an external ID of the capture.No
notification_urlStringNotifications will be sent in every change of status of a payment to the notification_url specified by the merchant.No

Examples


{
    "amount": 1000,
    "currency": "PEN",
    "country": "PE",
    "payment_method_id": "BC",
    "payment_method_flow": "DIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "[email protected]",
        "address": {
            "country": "PE",
            "state": "Lima",
            "city": "Lima",
            "zip_code": "88058",
            "street": "Av. Principal",
            "number": "5940"
        }
    },
    "order_id": "34545sk3483kqw0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "callback_url": "http://merchantsite.com/success_page"
}
{
    "id": "D-4-192c9fe0-df89-4652-9074-26c4ce246c9f",
    "amount": 1000,
    "currency": "PEN",
    "payment_method_id": "BC",
    "payment_method_type": "BANK_TRANSFER",
    "payment_method_flow": "DIRECT",
    "country": "PE",
    "bank_transfer": {},
    "ticket": {
        "type": "CUSTOM",
        "number": "234592",
        "expiration_date": "2023-06-17T04:59:00.000+0000",
        "provider_logo": "https://static.dlocal.com/images/providers/bcp.png",
        "image_url": "https://pay.dlocal.com/gmf-apm/payments/M-3d6a968f-4432-4a64-8c44-c1947de21ec6",
        "amount": 1000,
        "currency": "PEN"
    },
    "created_date": "2023-06-12T15:39:23.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "34545sk3483kqw0",
    "notification_url": "http://merchantsite.com/notification/new"
}

Example ticket

BCP UI built with the information in the example above.

BCP UI built with the information in the example above.

PayCash

PayCash is a payment system enabled in the main commercial chains and banks in Latin America, which allows customers to receive and process cash payments and transfers immediately.

Capabilities

PayCash
Min. amount1 PEN
Max. expiration time supported5 days
Notification delayImmediate
RefundsYes
FlowDIRECT
REDIRECT

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPEN

Transaction currency in ISO 4217.
Yes
countryStringPE

Transaction country in ISO 3166.
Yes
payment_method_idStringCY

ID of the selected payment method.
Yes
payment_method_flowStringDIRECT or REDIRECTYes
payer.nameStringName of the payer.Yes
payer.emailStringEmail of the payer.Yes
payer.documentNumberDocument of the payer.Yes
order_idNumberID of the capture given by the merchant in their system. Think of it as an external ID of the capture.No
notification_urlStringNotifications will be sent in every change of status of a payment to the notification_url specified by the merchant.No

Examples

{
    "amount": 1000,
    "currency": "PEN",
    "country": "PE",
    "payment_method_id": "CY",
    "payment_method_flow": "DIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "[email protected]",
        "address": {
            "country": "PE",
            "state": "Lima",
            "city": "Lima",
            "zip_code": "88058",
            "street": "Av. Principal",
            "number": "5940"
        }
    },
    "order_id": "34545sk3483kqw0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "callback_url": "http://merchantsite.com/success_page"
}
{
    "id": "D-4-ebb1004e-2235-482d-4re3-9bfaa76329d9",
    "amount": 1000,
    "currency": "PEN",
    "payment_method_id": "CY",
    "payment_method_type": "TICKET",
    "payment_method_flow": "DIRECT",
    "country": "PE",
    "bank_transfer": {},
    "ticket": {
        "type": "CUSTOM",
        "reference": 7041683843228415,
        "expiration_date": "2023-05-16T23:59:59.000+0000",
        "provider_name": "apm-paycash",
        "provider_logo": "logo",
        "image_url": "https://pay.dlocal.com/gmf-apm/payments/M-587ee067-rr43-42ed-a7ee-7221fe382163",
        "amount": 1000,
        "currency": "PEN"
    },
    "created_date": "2023-05-11T22:12:50.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "34545sk3483kqw0",
    "notification_url": "http://merchantsite.com/notification/new"
}

Example ticket

PayCash UI built with the information in the example above.

PayCash UI built with the information in the example above.

Payvalida

Payvalida is a platform specializing in collections and online payments. It has a wide collection agent network throughout the country.

Capabilities

Payvalida
Min. amount5 PEN
Max. expiration time supported5 days
Notification delayImmediate
RefundsYes
FlowREDIRECT

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPEN

Transaction currency in ISO 4217.
Yes
countryStringPE

Transaction country in ISO 3166.
Yes
payment_method_idStringIO

ID of the selected payment method.
Yes
payment_method_flowStringREDIRECTYes
payer.nameStringName of the payer.Yes
payer.emailStringEmail of the payer.Yes
payer.documentNumberDocument of the payer.Yes
order_idNumberID of the capture given by the merchant in their system. Think of it as an external ID of the capture.No
notification_urlStringNotifications will be sent in every change of status of a payment to the notification_url specified by the merchant.No

Examples

{
    "amount": 1000,
    "currency": "PEN",
    "country": "PE",
    "payment_method_id": "IO",
    "payment_method_flow": "REDIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "[email protected]",
        "address": {
            "country": "PE",
            "state": "Lima",
            "city": "Lima",
            "zip_code": "88058",
            "street": "Av. Principal",
            "number": "5940"
        }
    },
    "order_id": "34545sk3483kqw0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "callback_url": "http://merchantsite.com/success_page"
}
{
    "id": "R-4-50733a71-49fe-494a-556t-60f702e1369b",
    "amount": 1000,
    "currency": "PEN",
    "payment_method_id": "IO",
    "payment_method_type": "BANK_TRANSFER",
    "payment_method_flow": "REDIRECT",
    "country": "PE",
    "created_date": "2023-07-10T19:33:11.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "34545sk3483kqw0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "redirect_url": "https://pay.dlocal.com/gmf-apm/payments-redirect/M-8a290793-0afb-4946-er32-74f65baab83d"
}

Example ticket

Payvalida UI built with the information in the example above.

Payvalida UI built with the information in the example above.

Yape

Yape is a mobile application used to transfer money using a mobile phone number.

Capabilities

Yape
Min. amount1 PEN
Max. expiration time supported5 days
Notification delayImmediate
RefundsYes
FlowREDIRECT

UX Flow

The screenshots illustrate a generic Yape redirect flow.

The screenshots illustrate a generic Yape redirect flow.

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPEN

Transaction currency in ISO 4217.
Yes
countryStringPE

Transaction country in ISO 3166.
Yes
payment_method_idStringYP

ID of the selected payment method.
Yes
payment_method_flowStringREDIRECTYes
payer.nameStringName of the payer.Yes
payer.emailStringEmail of the payer.Yes
order_idNumberID of the capture given by the merchant in their system. Think of it as an external ID of the capture.No
notification_urlStringNotifications will be sent in every change of status of a payment to the notification_url specified by the merchant.No

Examples

{
    "amount": 10,
    "currency": "PEN",
    "country": "PE",
    "payment_method_id": "YP",
    "payment_method_flow": "REDIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "[email protected]",
        "address": {
            "country": "PE",
            "state": "Lima",
            "city": "Lima",
            "zip_code": "88058",
            "street": "Av. Principal",
            "number": "5940"
        }
    },
    "order_id": "34545sk3483kqw0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "callback_url": "http://merchantsite.com/success_page"
}
{
    "id": "R-4-ed6de9d9-ee61-4cc0-6t54-86c2e0dfab99",
    "amount": 10,
    "currency": "PEN",
    "payment_method_id": "YP",
    "payment_method_type": "TICKET",
    "payment_method_flow": "REDIRECT",
    "country": "PE",
    "created_date": "2023-10-24T13:29:55.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "34545sk3483kqw0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "redirect_url": "https://pay.dlocal.com/gmf-apm/payments-continue/M-eecd4467-7uy6-4e7c-a907-25f7f94582c0"
}