Developers
V1
V2

Paymentwall

Learn how to set up Paymentwall.

Widget (payment window) payment

What is Paymentwall widget?

Paymentwall is an overseas PG with a different payment environment than domestic PGs. Unlike the domestic environment where authenticated payments are common, non-authenticated payments are more common overseas. Non-authenticated payments are made in the Paymentwall payment window called a widget.

Test environment setup

  1. iโ€™mport Admin consoleโ†’ Payment integration โ†’ Test settings โ†’ Select PG (Paymentwall) โ†’ Paymentwall -> Add
  2. Check the auto-generated test MID value and click Save
Payment integration โ†’ Test settings โ†’ Select PG (Paymentwall) โ†’ Paymentwall -> Add
Payment integration โ†’ Test settings โ†’ Select PG (Paymentwall) โ†’ Paymentwall -> Add
Check the auto-generated test MID value and click Save
Check the auto-generated test MID value and click Save
  • Test payments incur real payment on the actual credit card number, and you must cancel the transaction afterwards.
  • Depending on each countryโ€™s payment method policy, there may be countries/payment methods that cannot be cancelled (refunded).

Note - Paymentwall payment integration flow

Result response for all payment requests through Paymentwall must be processed through iโ€™mport webhook because Paymentwall transaction flow is different from domestic PGs. In the payment flow, the final result response for all transactions requested to Paymentwall is sent to iโ€™mport via pingback (webhook), and iโ€™mport sends it to the merchant via webhook.

The cancellation request processing flow is also different from domestic PGs due to Paymentwallโ€™s unique cancellation processing logic. The flow is identical to that of direct integration with Paymentwall without using iโ€™mport. Unlike domestic PGs, Paymentwall does not immediately send the result of the cancellation request. It first creates a cancellation ticket for the request and processes each ticket one by one. Once processed, the result is sent to iโ€™mport via pingback and iโ€™mports sends it to the merchant via webhook.

Even if you integrate Paymentwall directly by registering a cancellation ticket in Paymentwall, you must process the final result received via pingback (webhook) from Paymentwall.

When using iโ€™mport, you must update the โ€œWaiting for cancellationโ€ payment status in your database when you receive the final result via webhook notification.

Widget Version Configuration

Currently, PortOne supports widget codes pw_1 and t3_1. To use the pw_1 widget, the version must be 1.2 to function properly.

  1. Go to Paymentwall Console โ†’ My Projects, select the relevant project โ†’ Widgets

  2. Select Version 1.2 and then save changes (SAVE CHANGES)

My Projects โ†’ Select relevant project โ†’ Widgets
My Projects โ†’ Select relevant project โ†’ Widgets
Select 1.2 from the top left Version โ†’ SAVE CHANGES
Select 1.2 from the top left Version โ†’ SAVE CHANGES

User country code

You can know the user country code as a pingback upon completion of a paymentwall checkout. To get this, you need to add the parameter provided by the paymentwall as a pingback parameter.

  1. Go to Paymentwall Console โ†’ My Projects, select the relevant project โ†’ Settings

  2. Go to Custom Pingback parameters section

  3. Add Name as country_code and select Value as COUNTRY_CODE

Add COUNTRY_CODE at Custom Pingback parameters
Add COUNTRY_CODE at Custom Pingback parameters

You can check this result by adding the extension=true query parameter when querying payment.

GET http://api.iamport.kr/payments/{imp_uid}?extension=true
{
  // ...
  "vbank_name": null,
  "vbank_num": null,
  "extension": {
    "country_code": "KR" // User Country Code(alpha-2)
    // ...
  }
}

API Payment

Preparing for service