Skip to main content

ESPAY Integration

Introduction#

Online Payment Solution Espay provides a secure and convenient online payment solution, by providing a variety of payment channels that make your online and and offline business easier.


Supported Countries#

  • Indonesia ๐Ÿ‡ฎ๐Ÿ‡ฉ

Available Payment Methods#

Payment TypePayment Method KeyCurrencyStatusSandbox Availability
Credit CardsESPAY_CREDIT_CARDIDRโœ…โœ…
BRI Virtual AccountESPAY_BRI_VAIDRโœ…โœ…
BRI E-PayESPAY_BRI_EPAYIDRโœ…โŒ
BRI Direct DebitESPAY_BRI_DIRECT_DEBITIDRโœ…โŒ
Mandiri Virtual AccountESPAY_MANDIRI_VAIDRโœ…โœ…
Permata Virtual AccountESPAY_PERMATA_VAIDRโœ…โœ…
Permata NetPayESPAY_PERMATA_NETPAYIDRโœ…โŒ
Danamon Virtual AccountESPAY_DANAMON_VAIDRโœ…โœ…
Maybank Virtual AccountESPAY_MAYBANK_VAIDRโœ…โœ…
BNI Virtual AccountESPAY_BNI_VAIDRโœ…โŒ
CIMB Niaga Virtual AccountESPAY_CIMB_NIAGA_VAIDRโœ…โœ…
Maspion Virtual AccountESPAY_MASPION_VAIDRโœ…โœ…
Artha Graha Virtual AccountESPAY_ARTHA_GRAHA_VAIDRโœ…โœ…
BTN Virtual AccountESPAY_BTN_VAIDRโœ…โœ…
BTPN Virtual AccountESPAY_BTPN_VAIDRโœ…โŒ
LinkAja walletESPAY_LINKAJAIDRโœ…โœ…
DANA WalletESPAY_DANAIDRโœ…โŒ
Ovo WalletESPAY_OVOIDRโœ…โœ…
ShopeePay WalletESPAY_SHOPEEPAYIDRโœ…โŒ
CIMB ClickESPAY_CIMB_CLICKIDRโœ…โŒ
CIMB Direct DebitESPAY_CIMB_DIRECT_DEBITIDRโœ…โŒ
AkulakuESPAY_AKULAKUIDRโœ…โŒ
QRISESPAY_QRISIDRโœ…โœ…

Refund Details#

  • Multiple Partial Refunds are not supported for ESPAY transactions.
  • Only Credit Card Refund (full/partial) can be initialized from the merchant portal. For other payment method refunds please check ESPAY portal.
  • For international cards, the refund time will be from 7-14 days, depending on each bank SLA.

Miscellaneous Details#

  • To integrate with ESPAY QRIS, merchants are required to whitelist the PortOne IP and get both the PortOne and ESPay Public keys configured from ESPay team for their ESPay MID.

  • Inquiry URL Settings : Share https://api.portone.cloud/inquire/espay/{PortOne_Key} as Inquiry URL with ESPAY team to configure the Inquiry URL for your account.

  • Webhook Settings : Copy the Webhook URL provided in the PortOne Admin Dashboard & share it with ESPAY team to configure the Webhook URL for your account.

  • In Billing details following fields are mandatory:

    • Billing Name
    • Billing Surname
    • Billing Email
    • Billing Phone
  • In Shipping details following fields are mandatory:

    • Shipping Name
    • Shipping Surname
    • Shipping Phone
    • Shipping Address - Line 1
    • Shipping Address - Line 2
    • Shipping Address - City
    • Shipping Address - Postal Code
    • Shipping Address - Country Code

Sandbox#

Use following values in embedded JS code to pay via ESPAY channel#

"pmt_channel": "ESPAY",
"pmt_method": { Any of above given payment method keys },

Credentials#

Merchant CodeMerchant NameAPI KeySignaturePassword
SGWCHAIPAYCHAIPAYaa56978e5564934bce81433b9c2dcc846w61yuqltr3qh1ejIMFVI^|T?G

Test card data for Credit Card payment method#

TypeCard number
Credit Card4546335124562623
Credit Card5104812441261692
Credit Card4111111111111111
Credit Card5500296757021801
Credit Card3566111111111113
Credit Card378282246310005
Credit Card4055778918139848
Credit Card5188287781273814
Credit Card4687407712737112

Test Phone details for OVO wallet#

Mobile Number
081211111111

User login details for accessing ESPAY sandbox dashboard - VA Simulator and Linkaja Wallet Sandbox#

URLCust IDUser IDUser NameUser Password
ESPAY sandbox dashboardCHAIPAY0016287654445CHAIPAY@PortOne123

Sample payload for initiatePayment#

{
"key": {portone_key},
"merchant_order_id": {merchant_order_id},
"amount": 20000,
"currency": "IDR",
"signature_hash": {signature_hash},
"billing_details": {
"billing_name": "Firstwewq",
"billing_surame": "LAst21223",
"billing_email": "test23@gmail.com",
"billing_phone": "+34324324",
},
"shipping_details": {
"shipping_name": "First232",
"shipping_surname":"LAst21223",
"shipping_email": "test33@gmail.com",
"shipping_phone": "89359893980",
"shipping_address": {
"city": "City3",
"country_code": "ID",
"line_1": "Line 1",
"line_2":"Line 2"
"postal_code": "400202",
}
},
"success_url": "https://dev-checkout.portone.cloud/success.html",
"failure_url": "https://dev-checkout.portone.cloud/failure.html",
"pending_url": "https://dev-checkout.portone.cloud/pending.html",
"pmt_channel": "ESPAY",
"pmt_method": { Any of above given payment method keys },
"description":"Payment for the order #42140324",
"environment":"sandbox"
}

Sample payload for paymentLink#

{
"portone_key": {portone_key},
"merchant_details": {
"name": "Test Company",
"back_url": "https://dev-admin.portone.io",
"promo_code": "NA",
"promo_discount": 0,
"shipping_charges": 0
},
"signature_hash": {signature_hash},
"amount": 100000,
"currency": "IDR",
"country_code": "ID",
"merchant_order_id": {merchant_order_id},
"billing_details": {
"billing_name": "First Middle Last",
"billing_surame": "LAst21223",
"billing_email": "test@portone.com",
"billing_phone": "+8959893980"
},
"shipping_details": {
"shipping_name": "First Middle Last",
"shipping_surname":"LAst21223",
"shipping_email": "test33@gmail.com",
"shipping_phone": "8959893980",
"shipping_address": {
"line_1": "Line 1",
"line_2":"Line 2",
"city": "City",
"postal_code": "400202",
"country_code": "ID"
}
},
"success_url": "https://dev-checkout.portone.cloud/success.html",
"failure_url": "https://dev-checkout.portone.cloud/failure.html",
"pending_url": "https://dev-checkout.portone.cloud/pending.html",
"expiry_hours": 48,
"source": "api",
"description": "Payment for the order #42140324",
"show_shipping_details": false,
"show_back_button": false,
"default_guest_checkout": true,
"is_checkout_embed": false,
"environment": "sandbox"
}

Reference links#