Philippines

Learn about the dLocal supported payment methods in Philippines.

Market specifications

Take a look of all the payment methods available.

Country reference Cards supported APM 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.

GCash GrabPay Maya Direct Debit Recurring Payments Static Virtual Account


Market specifications

Do you want to know more information about the Philippines' market? Go to the APAC: The world’s leader in eCommerce market sales article.

Country reference

country codecurrency codedocument namedocument formatdocument required?
PHPHPPSN12 digitsYes

Cards supported

payment_method_idBrand IDNamepayment_method_typeDetailsAllowed FlowsLogo
CARDVIVisaCARDCredit Card ​DIRECT REDIRECT
CARDVDVisa DebitCARDCredit Card ​DIRECT REDIRECT
CARDMCMastercardCARDCredit Card ​DIRECT REDIRECT
CARDMDMastercard DebitCARDDebit 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
GCGCashWALLETWallet ​REDIRECT
GYGrabPayWALLETWallet ​REDIRECT
PMMayaWALLETWallet ​REDIRECT
GWDirect DebitWALLETWallet ​REDIRECT
XURecurring PaymentsWALLETWalletREDIRECT
VSStatic Virtual Account ( Via Instapay or PESONet)BANK_TRANSFERBank TransferREDIRECT


Cards

Capabilities

Visa CreditMastercard CreditVisa DebitMastercard Debit
RefundsYesYesYesYes
RecurringNoNoNoNo
Chargeback optionNoNoNoNo
Chargeback Dispute optionNoNoNoNo
DescriptorMerchant nameMerchant nameMerchant nameMerchant name

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

GCash

GCash, the leading e-wallet in the Philippines, is a reloadable prepaid card co-branded with Mastercard that enables shoppers to pay by text message, or on their mobile or desktop.

Capabilities

GCash
Hard expiration15 minutes
Notification delayImmediate
RefundsYes
FlowREDIRECT

UX Flow

The screenshots illustrate a generic GCash redirect flow.

The screenshots illustrate a generic GCash redirect flow.

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPHP

Transaction currency in ISO 4217.
Yes
countryStringPH

Transaction country in ISO 3166.
Yes
payment_method_idStringGC

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": 500,
    "currency": "PHP",
    "country": "PH",
    "payment_method_id": "GC",
    "payment_method_flow": "REDIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "janedoe@mymail.com",
        "document": "123456789012",
        "address": {
            "country": "PH",
            "state": "Manila",
            "city": "Manila",
            "zip_code": "8858",
            "street": "Main St.",
            "number": "540"
        }
    },
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "callback_url": "http://merchantsite.com/success_page"
}
{
    "id": "R-4-39983e50-jhy1-47ed-96fe-d1aa9f799495",
    "amount": 500,
    "currency": "PHP",
    "payment_method_id": "GC",
    "payment_method_type": "TICKET",
    "payment_method_flow": "REDIRECT",
    "country": "PH",
    "created_date": "2023-01-30T19:33:43.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "notification_url": "http://merchant.com/notification/new",
    "redirect_url": "https://pay.dlocal.com/gmf-apm/payments-redirect/M-0e0b5d31-2714-49a1-9987-e4b50d14397c"
}

GrabPay

GrabPay (among the top 4 digital wallets) allows payments for rides, food deliveries, in-store purchases and online shopping, convenient and hassle-free.

Capabilities

GrabPay
Hard expiration15 minutes
Notification delayImmediate
RefundsYes
FlowREDIRECT

UX Flow

The screenshots illustrate a generic GrabPay redirect flow.

The screenshots illustrate a generic GrabPay redirect flow.

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPHP

Transaction currency in ISO 4217.
Yes
countryStringPH

Transaction country in ISO 3166.
Yes
payment_method_idStringGY

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": 500,
    "currency": "PHP",
    "country": "PH",
    "payment_method_id": "GY",
    "payment_method_flow": "REDIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "janedoe@mymail.com",
        "document": "123456789012",
        "address": {
             "country": "PH",
            "state": "Manila",
            "city": "Manila",
            "zip_code": "8858",
            "street": "Main St.",
            "number": "540"
        }
    },
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "callback_url": "http://merchantsite.com/success_page"
}
{
    "id": "R-4-c90cc244-230b-4a87-jhaq-bb2f2c6cacc8",
    "amount": 500,
    "currency": "PHP",
    "payment_method_id": "GY",
    "payment_method_type": "TICKET",
    "payment_method_flow": "REDIRECT",
    "country": "PH",
    "created_date": "2023-01-30T19:35:43.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "notification_url": "http://merchant.com/notification/new",
    "redirect_url": "https://pay.dlocal.com/gmf-apm/payments-redirect/M-e795ab1d-9597-4afd-7uy6-296ee820e72a"
}

Maya

Maya is also a very popular e-wallet, with millions of users.

Capabilities

Maya
Hard expiration30 minutes
Notification delayImmediate
RefundsYes
FlowREDIRECT

UX Flow

The screenshots illustrate a generic Maya redirect flow.

The screenshots illustrate a generic Maya redirect flow.

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPHP

Transaction currency in ISO 4217.
Yes
countryStringPH

Transaction country in ISO 3166.
Yes
payment_method_idStringPM

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": 500,
    "currency": "PHP",
    "country": "PH",
    "payment_method_id": "PM",
    "payment_method_flow": "REDIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "janedoe@mymail.com",
        "document": "123456789012",
        "address": {
            "country": "PH",
            "state": "Manila",
            "city": "Manila",
            "zip_code": "8858",
            "street": "Main St.",
            "number": "540"
        }
    },
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "callback_url": "http://merchantsite.com/success_page"
}
{
    "id": "R-4-f700d58b-hj76-4dbd-85df-cb8b10060418",
    "amount": 500,
    "currency": "PHP",
    "payment_method_id": "PM",
    "payment_method_type": "TICKET",
    "payment_method_flow": "REDIRECT",
    "country": "PH",
    "created_date": "2023-01-30T19:38:40.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "notification_url": "http://merchant.com/notification/new",
    "redirect_url": "https://pay.dlocal.com/gmf-apm/payments-redirect/M-4b94635e-5070-7uyt-8179-3ac2f3787c61"
}

Direct Debit

Direct Debit is a payment method where end users can register their debit cards or online bank login with a merchant or marketplace to pay for their purchases by making one-time payments.

The recurring option is also available: After a one-time authorization, merchants can pull funds directly from an end user’s bank account.

Capabilities

Direct Debit
Max. expiration time supportedDepends on the provider.
Notification delayImmediate
RefundsYes
FlowREDIRECT

UX Flow

The recurring payments option will not require any user interaction besides initial authorization.

The screenshots illustrate a generic Direct Debit redirect flow.  
The specifics of the flow can change depending on the payment method selected to complete the transaction.

The screenshots illustrate a generic Direct Debit redirect flow.

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPHP

Transaction currency in ISO 4217.
Yes
countryStringPH

Transaction country in ISO 3166.
Yes
payment_method_idStringGW

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
payer.phoneNumberUser's phone number.Yes
wallet.nameStringName of the payer's wallet.No
wallet.saveBooleanDetermines whether you want to receive a wallet token for future payments.No
wallet.captureBooleanDetermines if you want to capture the payment funds or not.No
wallet.verifyBooleanUsed if you want to enroll the wallet and a token.No
wallet.usernameStringUsername of the payer's wallet account.Yes
wallet.emailStringEmail of the payer's wallet account.Yes
wallet.tokenStringToken of a previous payment from the same wallet.For recurring payments, 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": 500,
    "currency": "PHP",
    "country": "PH",
    "payment_method_id": "GW",
    "payment_method_flow": "REDIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "janedoe@mymail.com",
        "phone": "+628050976593",
        "document": "123456789012",
        "address": {
           "country": "PH",
            "state": "Manila",
            "city": "Manila",
            "zip_code": "88058",
            "street": "Main St.",
            "number": "5940"
        }
    },
    "wallet": {
        "name": "Jane Doe",
        "save": true,
        "capture": true,
        "verify": false,
        "username": "Jane2002",
        "email": "janedoe@mymail.com",
        "expiration": 60,
        "label": "label",
        "state": "state",
        "token": ""
    },
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "callback_url": "http://merchantsite.com/notification/new",
    "notification_url": "http://merchantsite.com/success_page"
}
{
    "id": "F-4-44b12e48-d414-f5r5-8a86-91c7bcfca86b",
    "amount": 500,
    "currency": "PHP",
    "payment_method_id": "GW",
    "payment_method_type": "WALLET",
    "payment_method_flow": "REDIRECT",
    "country": "PH",
    "created_date": "2023-02-15T14:32:37.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "notification_url": "http://merchant.com/success_page",
    "redirect_url": "https://pay.dlocal.com/gmf-apm/payments-redirect/M-3b84b016-9o0s-4ba1-9cf7-3d53423f89f8"
}

Recurring Payments

Direct Debit product enables merchants to provide seamless payment flows for their customers and true auto-debit (subsequent payments without OTP) for recurring payments using wallets or bank accounts, reducing drop-off rates from customers.

Capabilities

Recurring Payments
Max. expiration time supportedDepends on the provider.
Notification delayImmediate
RefundsYes
FlowREDIRECT
Supported walletsGrabPay, ShopeePay, PayMaya, BPI, Union Bank.

UX Flow

One-time authorization flow

The screenshots illustrate a generic Recurring Payment redirect flow. The specifics of the flow can change depending on the payment method selected to complete the transaction.

The screenshots illustrate a generic Recurring Payment redirect flow. The specifics of the flow can change depending on the payment method selected to complete the transaction.

Request parameters

PropertyTypeDescriptionMandatory?
amountNumberAmount to be charged.Yes
currencyStringPHP

Transaction currency in ISO 4217.
Yes
countryStringPH

Transaction country in ISO 3166.
Yes
payment_method_idStringXU

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
payer.phoneNumberUser's phone number.Yes
wallet.nameStringName of the payer's wallet.No
wallet.saveBooleanDetermines whether you want to receive a wallet token for future payments.No
wallet.captureBooleanDetermines if you want to capture the payment funds or not.No
wallet.usernameStringUsername of the payer's wallet account.Yes
wallet.emailStringEmail of the payer's wallet account.Yes
wallet.tokenStringToken of a previous payment from the same wallet.For Recurring Payments, 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": 500,
    "currency": "PHP",
    "country": "PH",
    "payment_method_id": "XU",
    "payment_method_flow": "REDIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "janedoe@mymail.com",
        "phone": "+638050976593",
        "document": "123456789012",
        "address": {
            "country": "PH",
            "state": "Manila",
            "city": "Manila",
            "zip_code": "88058",
            "street": "Main St.",
            "number": "5940"
        }
    },
    "wallet": {
        "name": "Jane Doe",
        "save": true,
        "capture": true,
        "username": "Jane2002",
        "email": "janedoe@mymail.com",
        "expiration": 60,
        "label": "label",
        "state": "state",
        "token": ""
    },
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "callback_url": "http://merchantsite.com/notification/new",
    "notification_url": "http://merchantsite.com/success_page"
}
{
    "id": "F-4-3eeed8d5-69cb-4c40-34er-e5667f0804f0",
    "amount": 500,
    "currency": "PHP",
    "payment_method_id": "XU",
    "payment_method_type": "WALLET",
    "payment_method_flow": "REDIRECT",
    "country": "PH",
    "created_date": "2023-02-15T14:04:38.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "345453483kqws0",
    "description": "Tshirt",
    "notification_url": "http://merchant.com/success_page",
    "redirect_url": "https://pay.dlocal.com/gmf-apm/payments-continue/M-61acbfe4-c53c-3e42-8968-0011de348568"
}

Static Virtual Account

Static Virtual Accounts (SVA) in the Philippines are fixed account numbers linked to specific merchants or customers, ideal for recurring payments and long-term relationships in B2B and B2C contexts. These accounts do not expire.

Customers can transfer funds from their bank accounts to Static Virtual Accounts using Instapay or PESONet.

Instapay allows real-time fund transfers up to Php50,000 per transaction, while PESONet has no maximum limit and posts transactions after the end of the business day.

Capabilities

Direct Debit
Min. amount1 PHP
Max. expiration time supportedNo expiry
Notification delayImmediate
FlowREDIRECT

How to process Static Virtual Account payments?

Learn how to process Static Virtual Accounts with dLocal in our Static Virtual Accounts section.