Korea – Bank Transfer

Korea Bank is a payment method that represents 20% of the local market share. Recurring payments are supported.

Create a Bank Transfer payment method for your app or website in two easy steps:

Supported geographies

Bank Transfer supports the following geographies and currencies.

Supported Geographies

South Korea

Supported Currencies

KRW

Step 1. Build the Bank Transfer objects

Build a Bank Transfer Source Request and Details objects.

Bank Transfer Source Request object

The Bank Transfer Source Request object requires the following fields.

Field

Value

type

bankTransfer

amount

The total value of the transaction.

currency

The currency of the transaction. When using the Bank Transfer element, the currency must be KRW.

owner

An Owner object.

bankTransfer

A Bank Transfer Source Details object.

Bank Transfer Source Details object

The Bank Transfer Source Details object requires the following fields.

{
"returnUrl": "https://example.com"
}

Field

Required/Optional

Description

returnUrl

Required

If you choose to use the full redirect flow, this is where you will redirect your Customer to after authorizing or canceling within the Bank Transfer experience.

Step 2. Create the Bank Transfer source using DigitalRiver.js

To create a Bank Transfer payment source, you must use the createSource method exposed via DigitalRiver.js.

let paymentData = {
"type": "bankTransfer",
"amount": 100,
"currency": "KRW",
"owner": {
firstName: "Fred",
lastName: "Flintstone",
email: "test@digitalriver.com",
address: {
line1: "1234 Fake Street",
line2: "Yaum-dong",
city: "Ulsan-si",
state: "Kyongsangnamdo",
postalCode: "100-011",
country: "KR"
}
},
"bankTransfer": {
"returnUrl": "https://example.com/?action=paymentSuccess"
}
}
digitalriver.createSource(paymentData).then(function(result) {
console.log(result);
if (result.error) {
//handle errors as something went wrong
} else {
var source = result.source;
//do something to use the source
}
});

Bank Transfer Source example

{
"clientId": "gc",
"channelId": "drdod15",
"liveMode": false,
"id": "bdcf5832-fc2c-4c79-92e0-85b261s18ae0",
"clientSecret": "bdcf5832-fc2c-4c79-92e0-85b261s18ae0_bdcf5832-fc2c-4c79-92e0-85b261s18ae0",
"type": "bankTransfer",
"reusable": false,
"owner": {
"firstName": "Justina",
"lastName": "VonRueden",
"email": "Sammy5@gmail.com",
"phoneNumber": "000-000-0000",
"address": {
"line1": "1-16-24 Minami-gyotoku",
"line2": "Ichikawa-shi",
"city": "Chiba",
"state": "Kyongsangnamdo",
"postalCode": "272-0138",
"country": "JP"
}
},
"amount": "100.00",
"currency": "KRW",
"state": "pending_redirect",
"creationIp": "209.87.178.4",
"createdTime": "2019-05-22T02:40:53.631Z",
"updatedTime": "2019-05-22T02:40:53.631Z",
"flow": "redirect",
"redirect": {
"redirectUrl": "https://api.digitalriver.com:443/payments/redirects/06e428cf-e23e-4ee9-b64f-ce17de062fd1?apiKey=pk_test_6cb0fe9ce312d093a9ad906f6c589e2d",
"returnUrl": "https://example.com"
},
"bankTransfer": {}
}

Step 3. Authorize a Bank Transfer source

When you create a Bank Transfer source, the customer is required to authorize the charge through their payment provider. You can accomplish this by redirecting the customer to their payment provider.

Redirecting the customer for Bank Transfer authorization

To redirect your customer to the payment provider for authorization, use the redirectUrl parameter in your createSource response.

window.location.href = sourceResponse.redirect.redirectUrl;

The payment provider will present the customer with the transaction details where they can authorize, or cancel the transaction. A successful authorization redirects the customer to the Bank Transfer Return URL parameter you specified when you created the source.

Once authorized, the source state will change to chargeable.

{
"clientId": "gc",
"channelId": "drdod15",
"liveMode": false,
"id": "bdcf5832-fc2c-4c79-92e0-85b261s18ae0",
"clientSecret": "bdcf5832-fc2c-4c79-92e0-85b261s18ae0_bdcf5832-fc2c-4c79-92e0-85b261s18ae0",
"type": "bankTransfer",
"reusable": false,
"owner": {
"firstName": "Justina",
"lastName": "VonRueden",
"email": "Sammy5@gmail.com",
"phoneNumber": "000-000-0000",
"address": {
"line1": "1-16-24 Minami-gyotoku",
"line2": "Ichikawa-shi",
"city": "Chiba",
"state": "Kyongsangnamdo",
"postalCode": "272-0138",
"country": "JP"
}
},
"amount": "100.00",
"currency": "KRW",
"state": "chargeable",
"creationIp": "209.87.178.4",
"createdTime": "2019-05-22T02:40:53.631Z",
"updatedTime": "2019-05-22T02:40:53.631Z",
"flow": "redirect",
"redirect": {
"redirectUrl": "https://api.digitalriver.com:443/payments/redirects/06e428cf-e23e-4ee9-b64f-ce17de062fd1?apiKey=pk_test_6cb0fe9ce312d093a9ad906f6c589e2d",
"returnUrl": "https://example.com"
},
"bankTransfer": {}
}

Step 4. Use the Authorized source

Once authorized, you can use the source by attaching it to a checkout.

Attach the source to a checkout

POST /checkouts/{id}
{
"customerId": "5774321008",
"sourceId": "src_a78cfeae-f7ae-4719-8e1c-d05ec04e4d37"
}