Recurring - Payment API Credit Card
Tentang Recurring - Payment API Credit Card
Pembayaran tipe Recurring adalah fitur lain dari Kartu Kredit yang dapat melakukan pembayaran suatu tagihan dari Pelanggan Anda secara berkala dengan nominal yang sama seperti yang ditagihkan pada awal pembayaran.
API yang digunakan pada tahap pembayaran ini sama dengan API untuk pembayaran tipe Full Payment & Installment dan Pre-Auth & Capture. Namun, terdapat perbedaan pada request parameter yang dikirimkan.
NICEPAY akan memberikan sebuah recurringToken sebagai parameter Payment API response yang disebut sebagai recurring token making. Merchant dapat menggunakan recurringToken pada Payment API request selanjutnya tanpa menggunakan cardNo dan cardExpYymm.
Recurring - Payment API Credit Card (First Payment)
Untuk dapat mengaktifkan transaksi Kartu Kredit dengan jenis Recurring, Anda wajib membayarkan transaksi yang sudah dibuat untuk mendapatkan recurringToken terlebih dahulu.
API Endpoint | /nicepay/direct/v2/payment |
|---|---|
Method application/x-www-form-urlencoded | POST |
Description | Recurring Payment Credit Card |
Merchant Token | SHA256(timeStamp+iMid+referenceNo+amt+merchantKey) |
Spesifikasi API yang digunakan sama dengan API Recurring Token Credit Card.
Request Parameter for Recurring - Payment API Credit Card (First Payment)
Berikut adalah request payment pada Recurring untuk mendapatkan recurringToken yang di mana Anda diperlukan untuk menyelesaikan Recurring - Registration API Credit Card terlebih dahulu.
Anda masih membutuhkan cardNo, cardExpYymm, cardCvv, cardHolderNm& cardHolderEmail dari Pelanggan pada pembayaran pertama dalam skema Recurring ini.
Parameter | Tipe | Ukuran | Deskripsi | Contoh / Catatan |
|---|---|---|---|---|
timeStamp Required | N | 14 | Request Timestamp (YYYYMMDDHH24MISS) | 20230522080502 |
tXid Required | AN | 30 | Transaction ID | IONPAYTEST01202305220041509298 |
referenceNo Required | ANS | 40 | Merchant Order Number | MerchantReferenceNumber001 |
merchantToken Required | AN | 255 | Merchant Token | ff139e49606387091cd9baeadff3161aff6afd9406e1f481e0fdb8b46d1ae5ae |
cardNo Required | N | 20 | Credit Card Number | 51234500****0000 |
cardExpYymm Required | A | 4 | Card Expiry (YYMM) | 3901 |
cardCvv Required | N | 4 | Card CVV | 100 |
cardHolderNm Required | AN | 45 | Card Holder Name | John Doe Only alphabet allowed |
cardHolderEmail Required | ANS | 100 | Card Holder Email | |
callBackUrl Required | ANS | 255 | Payment Result URL | https://www.nicepay.co.id/IONPAY_CLIENT/paymentResult.jsp |
Response Parameter for Recurring - Payment API Credit Card (First Payment)
Berikut adalah rincian response yang Anda dapatkan. Mohon untuk melakukan save & store recurringToken yang sudah didapat demi menjalankan proses fitur Recurring pada transaksi selanjutnya dengan Kartu Kredit Pelanggan yang sama.
Parameter | Tipe | Ukuran | Deskripsi | Contoh / Catatan |
|---|---|---|---|---|
timeStamp | N | 14 | Response Date (YYYYMMDDHH24MISS) | 20230520135959 |
resultCd | N | 4 | Result Code | 0000 |
resultMsg | AN | 255 | SUCCESS | |
tXid | AN | 30 | Transaction ID | IONPAYTEST01202305161007570327 |
referenceNo | ANS | 40 | Merchant Order Number | MerchantReferenceNumber001 |
payMethod | N | 2 | 01 When Success | |
amount | N | 12 | Payment Amount | 10000 When Success |
currency | AN | 3 | Currency | IDR When Success |
goodsNm | AN | 100 | Goods Name | Merchant Goods 1 When Success |
billingNm | AN | 100 | Buyer Name | John Doe When Success |
transDt | N | 8 | Transaction Date (YYYYMMDD) | 20230516 When Success |
transTm | N | 6 | Transaction Time (HH24MISS) | 135959 When Success |
description | AN | 100 | Transaction Description | This Is The Description Of The Payment When Success |
authNo | N | 10 | Approval Number | 123456 When Success |
issuBankCd | A | 4 | CENA (Refer Bank Code) When Success | |
acquBankCd | A | 4 | BNIA (Refer Bank Code) When Success | |
cardNo | AN | 20 | Card Number (Masked) | 51234500****0008 When Success |
cardExpYymm | N | 4 | Card Expiry (YYMM) | 3901 When Success |
instmntMon | N | 1 | Installment Month | 1 When Success |
instmntType | N | 2 | 1 When Success | |
ccTransType | AN | 2 | 2 When Success | |
vat | N | 12 | Value Added Tax ( VAT) | 0 When Success |
fee | N | 12 | Service Fee | 0 When Success |
notaxAmt | N | 12 | Tax Free Amount | 0 When Success |
recurringToken | AN | 64 | Token That Using Recurring Payment | f19e3128784d0b33c189d5df21321c781b5bd107b185587fd8a54781aa845c84 |
acquBankNm | A | 255 | Acquiring Bank Name | CIMB |
issuBankNm | A | 255 | Issuing Bank Name | BCA |
Sample Parameter for Recurring - Payment API Credit Card (First Payment)
Request Parameter
let secondVersion = new SecondApiVersion(config);
let parameterPayment = {
amt: "1000",
referenceNo: "ordNo20250930150915",
tXid: "RECURRTEST01202509301555563979",
cardNo: "5123450000000008",
callBackUrl: "https://dev.nicepay.co.id/IONPAY_CLIENT/paymentResult.jsp?order_id=RECURRTEST01202509301555563979",
cardExpYymm: "3106",
cardCvv: "100",
recurringToken: "", // Leave empty for first payment
cardHolderNm: "Nicepay Test",
preauthToken: "",
cardHolderEmail: "[email protected]",
};
let response = secondVersion.requestPayment(parameterPayment);Response Parameter
<!-- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 5.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -->
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<script type="text/javascript" src="/nicepay/js/bootstrap.js"></script>
<link rel="stylesheet" type="text/css" href="/nicepay/css/bootstrap.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/bootstrap_backup.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/form.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/bootstrap-responsive.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/basic.css" />
<link rel="shortcut icon" href="https://www.nicepay.co.id/favicon.ico" type="image/x-icon" />
<link rel="icon" href="https://www.nicepay.co.id/favicon.ico" type="image/x-icon" />
<script type="text/javascript" src="/nicepay/js/jquery.js"></script>
<script type="text/javascript" src="/nicepay/js/jquery.min.js"></script>
<script type="text/javascript" src="/nicepay/js/common.js"></script>
</head>
<body>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script type="text/javascript">
function setAcsInfo(){
if ('01' != '05') {
document.tranMgr.action = $("#callbackUrl").val();
} else if ('01' == '05' && '' != null && '' == 'OVOE') {
document.tranMgr.action = $("#callbackUrl").val();
}
if (document.tranMgr.cardBrand.value == null || document.tranMgr.cardBrand.value == "")
document.tranMgr.cardBrand.setAttribute("disabled", true);
document.tranMgr.submit();
}
</script>
</head>
<style>
body {
min-width: 100%;
height: auto;
min-height: 500px;
overflow: none;
border: none;
}
.wrapper {
position: absolute;
top: 0;
left: 0;
background-color: transparent;
display: flex;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
z-index: 10;
}
.loader {
color: #79CDBD;
font-size: 10px;
width: 1em;
height: 1em;
border-radius: 50%;
position: relative;
text-indent: -9999em;
animation: mulShdSpin 1.3s infinite linear;
transform: translateZ(0);
}
@keyframes mulShdSpin {
0%,
100% {
box-shadow: 0 -3em 0 0.2em,
2em -2em 0 0em, 3em 0 0 -1em,
2em 2em 0 -1em, 0 3em 0 -1em,
-2em 2em 0 -1em, -3em 0 0 -1em,
-2em -2em 0 0;
}
12.5% {
box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em,
3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em,
-2em 2em 0 -1em, -3em 0 0 -1em,
-2em -2em 0 -1em;
}
25% {
box-shadow: 0 -3em 0 -0.5em,
2em -2em 0 0, 3em 0 0 0.2em,
2em 2em 0 0, 0 3em 0 -1em,
-2em 2em 0 -1em, -3em 0 0 -1em,
-2em -2em 0 -1em;
}
37.5% {
box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em,
-2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
}
50% {
box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em,
-2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
}
62.5% {
box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0,
-2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
}
75% {
box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em,
3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em,
-2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
}
87.5% {
box-shadow: 0em -3em 0 0, 2em -2em 0 -1em,
3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em,
-2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
}
}
</style>
<body onLoad="javascript:setAcsInfo();">
<div class="wrapper" id="loader">
<span class="loader"></span>
</div>
<form name="tranMgr" method="post" action="">
<input type="hidden" id="callbackUrl" value="https://dev.nicepay.co.id/IONPAY_CLIENT/paymentResult.jsp?order_id=RECURRTEST01202509301555563979">
<input type="hidden" name="resultCd" value="0000">
<input type="hidden" name="resultMsg" value="SUCCESS">
<input type="hidden" name="tXid" value="RECURRTEST01202509301555563979">
<input type="hidden" name="referenceNo" value="ordNo20250930150915">
<input type="hidden" name="payMethod" value="01">
<input type="hidden" name="amt" value="1000">
<input type="hidden" name="transDt" value="20250930">
<input type="hidden" name="transTm" value="155556">
<input type="hidden" name="description" value="">
<input type="hidden" name="authNo" value="563979">
<input type="hidden" name="issuBankCd" value="BTPN">
<input type="hidden" name="acquBankCd" value="BMRI">
<input type="hidden" name="cardNo" value="51234500****0008">
<input type="hidden" name="receiptCode" value="">
<input type="hidden" name="mitraCd" value="">
<input type="hidden" name="recurringToken" value="20b50427bc05cba305b0d580bf403e3c8487db29454459a920b6af358e435035">
<input type="hidden" name="preauthToken" value="">
<input type="hidden" name="currency" value="IDR">
<input type="hidden" name="goodsNm" value="Goods">
<input type="hidden" name="billingNm" value="Nicepay test RECURRTEST">
<input type="hidden" name="ccTransType" value="1">
<input type="hidden" name="mRefNo" value="">
<input type="hidden" name="instmntType" value="1">
<input type="hidden" name="instmntMon" value="1">
<input type="hidden" name="cardExpYymm" value="3106">
<input type="hidden" name="issuBankNm" value="BTPN">
<input type="hidden" name="acquBankNm" value="Mandiri">
<input type="hidden" name="timeStamp" value="20250930155726">
<input type="hidden" name="merchantToken" value="2a826d3285de0d09d7fa92cb788dfcb35a1656af15b81b97a0b42c5115510983">
<input type="hidden" name="cardBrand" value="">
</form>
</body>
</html>
</body>
</html>
Continual Recurring - Payment API Credit Card
Setelah melakukan pembayaran pertama dan telah mendapatkan recurringToken pada Recurring - Payment API Credit Card (First Payment).
Anda dapat menggunakan recurringToken tersebut untuk melakukan pembayaran tagihan lain menggunakan kredensial Kartu Kredit Pelanggan yang sama demi menerapkan mekanisme pembayaran secara berkala atau Recurring (subscription). Namun, untuk menjalankan proses payment continual recurring ini, Anda tetap diperlukan untuk melakukan registrasi transaksi terlebih dahulu pada Recurring - Registration API Credit Card.
Berikut adalah rincian request dan response yang digunakan pada pembayaran berikutnya menggunakan recurring token yang sama.
API Endpoint | /nicepay/direct/v2/payment |
|---|---|
Method application/x-www-form-urlencoded | POST |
Description | Recurring Continual Payment Credit Card |
Merchant Token | SHA256(timeStamp+iMid+referenceNo+amt+merchantKey) |
Spesifikasi API yang digunakan sama dengan API Recurring Token Credit Card.
Request Payment for Continual Recurring - Payment API Credit Card
Anda hanya perlu menggunakan recurringToken pada Payment API Recurring untuk request selanjutnya ini tanpa menggunakan parameter cardNo dan cardExpYymm.
Parameter | Tipe | Ukuran | Deskripsi | Contoh / Catatan |
|---|---|---|---|---|
timeStamp Required | N | 14 | Request Timestamp (YYYYMMDDHH24MISS) | 20230522080502 |
tXid Required | AN | 30 | Transaction ID | IONPAYTEST01202305220041509298 |
referenceNo Required | ANS | 40 | Merchant Order Number | MerchantReferenceNumber001 |
merchantToken Required | AN | 255 | Merchant Token | ff139e49606387091cd9baeadff3161aff6afd9406e1f481e0fdb8b46d1ae5ae |
recurringToken Required | AN | 64 | Token That Using Recurring Payment | When Success f19e3128784d0b33c189d5df21321c781b5bd107b185587fd8a54781aa845c84 |
cardCvv Required | N | 4 | Card CVV | 100 |
cardHolderNm Required | AN | 45 | Card Holder Name | John Doe Only alphabet allowed |
cardHolderEmail Required | ANS | 100 | Card Holder Email | |
callBackUrl Required | ANS | 255 | Payment Result URL | https://www.nicepay.co.id/IONPAY_CLIENT/paymentResult.jsp |
Mencantumkan cardCVV pada setiap transaksi bergantung dari MID tipe CVV atau Non-CVV.
Response Payment for Continual Recurring - Payment API Credit Card
Parameter | Tipe | Ukuran | Deskripsi | Contoh / Catatan |
|---|---|---|---|---|
timeStamp | N | 14 | Response Date (YYYYMMDDHH24MISS) | 20230520135959 |
resultCd | N | 4 | Result Code | 0000 |
resultMsg | AN | 255 | SUCCESS | |
tXid | AN | 30 | Transaction ID | IONPAYTEST202206230959067259 |
referenceNo | ANS | 40 | Merchant Order Number | MerchantReferenceNumber001 |
payMethod | N | 2 | 01 When Success | |
amt | N | 12 | Payment Amount | 10000 When Success |
currency | AN | 3 | Currency | IDR When Success |
goodsNm | AN | 100 | Goods Name | Merchant Goods 1 When Success |
billingNm | AN | 100 | Buyer Name | John Doe When Success |
transDt | N | 8 | Transaction Date (YYYYMMDD) | 20230516 When Success |
transTm | N | 6 | Transaction Time (HH24MISS) | 135959 When Success |
description | AN | 100 | Transaction Description | This Is The Description Of The Payment When Success |
authNo | N | 10 | Approval Number | 123456 When Success |
issuBankCd | A | 4 | CENA (Refer Bank Code) When Success | |
acquBankCd | A | 4 | CENA (Refer Bank Code) When Success | |
cardNo | AN | 20 | Card Number (Masked) | 51234500****0008 When Success |
cardExpYymm | N | 4 | Card Expiry (YYMM) | 3901 When Success |
instmntMon | N | 1 | Installment Month | 1 When Success |
instmntType | N | 2 | 1 When Success | |
ccTransType | AN | 2 | 2 When Success | |
vat | N | 12 | Value Added Tax (VAT) | 0 When Success |
fee | N | 12 | Service Fee | 0 When Success |
notaxAmt | N | 12 | Tax Free Amount | 0 When Success |
acquBankNm | A | 255 | Acquiring Bank Name | CIMB |
issuBankNm | A | 255 | Issuing Bank Name | BCA |
Sample Parameter for Continual Recurring - Payment API Credit Card
Request Parameter
let secondVersion = new SecondApiVersion(config);
let parameterPayment = {
amt: "1000",
referenceNo: "ordNo20250930170928",
tXid: "RECURRTEST01202509301729488790",
callBackUrl: "https://dev.nicepay.co.id/IONPAY_CLIENT/paymentResult.jsp?order_id=RECURRTEST01202509301555563979",
cardHolderNm: "Nicepay Test",
recurringToken: "20b50427bc05cba305b0d580bf403e3c8487db29454459a920b6af358e435035",
cardHolderEmail: "[email protected]",
};
let response = secondVersion.requestPayment(parameterPayment);Response Parameter
<!-- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 5.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -->
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<script type="text/javascript" src="/nicepay/js/bootstrap.js"></script>
<link rel="stylesheet" type="text/css" href="/nicepay/css/bootstrap.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/bootstrap_backup.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/form.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/bootstrap-responsive.css" />
<link rel="stylesheet" type="text/css" href="/nicepay/css/basic.css" />
<link rel="shortcut icon" href="https://www.nicepay.co.id/favicon.ico" type="image/x-icon" />
<link rel="icon" href="https://www.nicepay.co.id/favicon.ico" type="image/x-icon" />
<script type="text/javascript" src="/nicepay/js/jquery.js"></script>
<script type="text/javascript" src="/nicepay/js/jquery.min.js"></script>
<script type="text/javascript" src="/nicepay/js/common.js"></script>
</head>
<body>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script type="text/javascript">
function setAcsInfo(){
if ('01' != '05') {
document.tranMgr.action = $("#callbackUrl").val();
} else if ('01' == '05' && '' != null && '' == 'OVOE') {
document.tranMgr.action = $("#callbackUrl").val();
}
if (document.tranMgr.cardBrand.value == null || document.tranMgr.cardBrand.value == "")
document.tranMgr.cardBrand.setAttribute("disabled", true);
document.tranMgr.submit();
}
</script>
</head>
<style>
body {
min-width: 100%;
height: auto;
min-height: 500px;
overflow: none;
border: none;
}
.wrapper {
position: absolute;
top: 0;
left: 0;
background-color: transparent;
display: flex;
justify-content: center;
align-items: center;
height: 100%;
width: 100%;
z-index: 10;
}
.loader {
color: #79CDBD;
font-size: 10px;
width: 1em;
height: 1em;
border-radius: 50%;
position: relative;
text-indent: -9999em;
animation: mulShdSpin 1.3s infinite linear;
transform: translateZ(0);
}
@keyframes mulShdSpin {
0%,
100% {
box-shadow: 0 -3em 0 0.2em,
2em -2em 0 0em, 3em 0 0 -1em,
2em 2em 0 -1em, 0 3em 0 -1em,
-2em 2em 0 -1em, -3em 0 0 -1em,
-2em -2em 0 0;
}
12.5% {
box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em,
3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em,
-2em 2em 0 -1em, -3em 0 0 -1em,
-2em -2em 0 -1em;
}
25% {
box-shadow: 0 -3em 0 -0.5em,
2em -2em 0 0, 3em 0 0 0.2em,
2em 2em 0 0, 0 3em 0 -1em,
-2em 2em 0 -1em, -3em 0 0 -1em,
-2em -2em 0 -1em;
}
37.5% {
box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em,
-2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
}
50% {
box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em,
-2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
}
62.5% {
box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0,
-2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
}
75% {
box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em,
3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em,
-2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
}
87.5% {
box-shadow: 0em -3em 0 0, 2em -2em 0 -1em,
3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em,
-2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
}
}
</style>
<body onLoad="javascript:setAcsInfo();">
<div class="wrapper" id="loader">
<span class="loader"></span>
</div>
<form name="tranMgr" method="post" action="">
<input type="hidden" id="callbackUrl" value="https://dev.nicepay.co.id/IONPAY_CLIENT/paymentResult.jsp?order_id=RECURRTEST01202509301729488790">
<input type="hidden" name="resultCd" value="0000">
<input type="hidden" name="resultMsg" value="SUCCESS">
<input type="hidden" name="tXid" value="RECURRTEST01202509301729488790">
<input type="hidden" name="referenceNo" value="ordNo20250930170928">
<input type="hidden" name="payMethod" value="01">
<input type="hidden" name="amt" value="1000">
<input type="hidden" name="transDt" value="20250930">
<input type="hidden" name="transTm" value="172948">
<input type="hidden" name="description" value="">
<input type="hidden" name="authNo" value="488790">
<input type="hidden" name="issuBankCd" value="BTPN">
<input type="hidden" name="acquBankCd" value="BMRI">
<input type="hidden" name="cardNo" value="51234500****0008">
<input type="hidden" name="receiptCode" value="">
<input type="hidden" name="mitraCd" value="">
<input type="hidden" name="recurringToken" value="">
<input type="hidden" name="preauthToken" value="">
<input type="hidden" name="currency" value="IDR">
<input type="hidden" name="goodsNm" value="Goods">
<input type="hidden" name="billingNm" value="Nicepay test RECURRTEST">
<input type="hidden" name="ccTransType" value="2">
<input type="hidden" name="mRefNo" value="">
<input type="hidden" name="instmntType" value="1">
<input type="hidden" name="instmntMon" value="1">
<input type="hidden" name="cardExpYymm" value="3106">
<input type="hidden" name="issuBankNm" value="BTPN">
<input type="hidden" name="acquBankNm" value="Mandiri">
<input type="hidden" name="timeStamp" value="20250930173145">
<input type="hidden" name="merchantToken" value="898c48420ac413ce6cd86bde6a29203b017e8476fc0f2f3f7f92d866adfdfc5a">
<input type="hidden" name="cardBrand" value="">
</form>
</body>
</html>
</body>
</html>
CallBack Handling for Full Payment & Installment - Payment API Credit Card
tXid tidak akan sama dengan request hold. Proses Capture akan memastikan bahwa nilai amount yang di-capture tidak melebihi dana yang dimiliki
Saat Callback telah diterima callbackUrl Anda, kami sangat menganjurkan Merchant untuk melakukan verifikasi status menggunakan Status Inquiry - API Credit Card.
CallBack Handling dapat sangat membantu untuk meminimalisir terjadinya Fraud, kami sangat merekomendasikan untuk melakukan verifikasi CallBack Handling.
{
"resultCd":"0000",
"resultMsg":"SUCCESS",
"tXid":"IONPAYTEST01202212141112221428",
"referenceNo":"",
"payMethod":"01",
"amt":"10000",
"transDt":"20221212",
"transTm":"121212",
"description":"Testing Credit Card Transaction",
"authNo":"080623",
"issuBankCd":"OTHR"
"acquBankCd":"BMRI",
"cardNo":"453211*****1111",
"goodsNm":"Test Transaction Nicepay"
"billingNm":"John Doe",
"currency":"IDR",
"timeStamp":"20221212121212",
"merchantToken":"2035d2295d9578fffb40137186f0203474142ae3e57992d4847826c5fcaffce6",
"cardExpYymm":"2712",
"instmntMon":"1",
"instmntType":"1",
"ccTransType":"1"
}