Toss Pay
Integrate Toss Pay wallet and allow consumers to pay via bank transfer or credit card in South Korea.
Payment Method Properties
Available country codes | KR |
Processing (Presentation) currencies | KRW |
Settlement currencies | USD |
Consumer currencies | KRW |
Channel member tag | tosspay |
Scheme name in the settlement file | Tosspay |
Minimum transaction amount | 100 KRW |
Maximum transaction amount | Linked credit card: Customer credit limit Linked bank account: 2M KRW |
Session timeout | 20 minutes |
Refund | Full Partial Multiple |
Refund Validity | 365 days |
Chargeback | Yes |
Integration Type | Asynchronous |
Sandbox | Scheme-hosted |
Transaction Flow
- On the merchant's checkout page, the consumer selects to pay with Toss Pay.
- The PSP sends a Transaction request to PPRO, which triggers a Transaction request to Toss Pay.
- If the consumer is paying from a desktop browser:
- The consumer enters their Toss-registered mobile number and date-of-birth.
- Alternatively, the consumer uses the Toss Pay app to scan the QR code that is displayed on the payment page and confirms the transaction in the Toss Pay app.
- If the consumer is paying from a mobile device
- The consumer is redirected to the Toss Pay app on their mobile device.
- The consumer completes the authentication process and confirms the payment in the Toss mobile app.
Toss Pay Integration
Specific input parameters for the TRANSACTION call
Field Name | M/O | Type | RegEx | Description |
---|---|---|---|---|
specin.email | O | ascii | [\w-\.]+@([\w-]+\.)+ | The consumer's email address |
For standard input parameters, see Input parameters for the TRANSACTION call.
This payment method supports the dynamic descriptor field (see The dynamic descriptor).
Specific output parameters for the TRANSACTION call
Field Name | Type | Description |
---|---|---|
SPECOUT.CARDMASKEDPAN | ascii | Masked card number of the card used by the customer. |
SPECOUT.APPROVALCODE | ascii | Approval code of the card payment if payment succeeded |
For standard output parameters, see Output parameters for the TRANSACTION call.
TRANSACTION call input
tag=koreancard
&txtype=TRANSACTION
&countrycode=KR
¤cy=KRW
&amount=15000
&merchanttxid=mCYaU22CeZWh
&login=johndoe
&password=wXBrpVporFVjGO4R
&contractid=JOHNDOECONTRACT
&channel=testchannel&merchantredirecturl=https%3A%2F%2Fmerchant.com%2Fwork%2Fppro2%2Flanding.php¬ificationurl=https%3A%2F%2Fmerchant.com%2Fwork%2Fppro2%2Fnotification.php&specin.dynamicdescriptor=%ED%86%A0%EC%8A%A4+%ED%8B%B0%EC%85%94%EC%B8%A0+%EC%99%B8+2%EA%B0%9C+%EC%95%84%EC%9D%B4%ED%85%9C&[email protected] &specin.cardissuer=VISA&accountholdername=John%20Doe&returnmode=urlencodeext
TRANSACTION call output
REQUESTSTATUS=SUCCEEDED
&STATUS=SUCCEEDED
&FUNDSTATUS=WAITING
&TXID=1266924844
&MERCHANTID=mCYaU22CeZWh
&ERRMSG=
&CHANNEL=testchannel
&TAG=tosspay
&REDIRECTSECRET=OTzp0pFUOGPMsW3KQSPhzrgHEa4h1DNw
&REDIRECTURL=https%3A%2F%2Fmerchant.com%2Fwork%2Fppro2%2Flanding.php
&SPECOUT.APPROVALCODE=00000000
&SPECOUT.CARDMASKEDPAN=41231234****123*
&amount=10000
Specific input parameters for the REFUND call
Field Name | Type | Description |
---|---|---|
specin.refundreason | M | Used to indicate why a refund is needed |
Specific output parameters for the REFUND call
Field Name | Type | Description |
---|---|---|
SPECOUT.REFUNDEDAT | ascii | Refund accepted timestamp from Toss |
Updated about 1 year ago