Registration - API QRIS
In the QRIS payment method, Customers can use the same QR code for recurring payments by customers. QR codes can also be used by cross-channel payment methods, such as for example, issuance of QR codes by NICEPAY in collaboration with Shopee Pay.
Customer can use other e-Wallet application (OVO, Gopay, and DANA) or mobile banking other than ShopeePay to proceed the payment with QR code. Real-time notification will sent after Customer finish the payment.
QR Code recommends using white background for easy scanning.
Please visit the QRIS section to learn general information about the QRIS payment method.
The QRIS Registration API aims to enable merchants to register the API system for payments on the merchant system and integrate it with the system from NICEPAY. This step is carried out first so that the system knows that the merchant in question has been officially registered and can be connected to the QRIS payment method from NICEPAY.
API url | /nicepay/direct/v2/registration |
Request Method | POST |
Description | QRIS payment API |
Merchant Token | SHA256(timeStamp+iMid+referenceNo+amt+merchantKey) |
Request Format | application/x-www-form-urlencoded |
The following is a list of parameters for requesting registration of the QRIS payment method. This parameter is used through the API testing platform as one of the stages so that the merchant's system can be connected to services from NICEPAY. Learn more about the general explanation of QRIS.
Parameter | Type | Size | Description | Example / Notes |
timeStamp Required | N | 14 | Request Timestamp (YYYYMMDDHH24MISS) | 20230423100505 |
iMid Required | AN | 10 | Merchant ID | IONPAYTEST |
payMethod Required | N | 2 | 08 | |
currency Required | A | 3 | Currency | IDR |
amt Required | N | 12 | Amount | 5 |
referenceNo Required | ANS | 40 | Merchant's RefNo. | ORD54321 |
goodsNm Required | AN | 100 | Goods Name | Test Transaction Nicepay |
billingNm Required | A | 100 | Buyer Name | Andi pamungkas |
billingPhone Required | N | 15 | Buyer Phone No. | 081234567890 |
billingEmail Required | ANS | 40 | Buyer E-mail | |
billingCity Required | A | 50 | Buyer City | Jakarta |
billingState Required | A | 50 | Billing State | DKI Jakarta |
billingPostCd Required | N | 10 | Billing Post Number | 12345 |
billingCountry Required | A | 10 | Billing Country | Indonesia |
paymentExpDt | N | 6 | QR Payment Expiry Date (YYYYMMDD) | |
paymentExpTm | N | N | QR Payment Expiry Time (HH24MISS) | |
cartData | JSONstring | 4000 | Cart Data | {"count":1,"item":[{"img_url":"http:\/\/www.jamgora.com\/media\/avatar\/noimage.png","goods_name":"Hoodie","goods_detail":"Hoodie","goods_amt":"5"}]} |
mitraCd Required for CVS, E-Wallet, Payloan,QRIS | A | 4 | QSHP | |
userIP Required for CC, E-Wallet, Payloan,QRIS | AN | 15 | User IP | 127.0.0.1 |
dbProcessUrl Required | ANS | 255 | Notification URL | https://merchant.com/dbProcessUrl |
merchantToken Required | AN | 255 | Merchant Token | 14b2d810fd2c2725bde0e747392bdd6353b5dcfd3807ccc7a0b5106bdd4af099 |
shopId Required for QRIS | AN | 32 | Shop Id | NICEPAY |
Parameter | Type | Size | Description | Example / Notes |
mitraCd Required | A | 4 | QSHP | |
shopId Required | N | 12 | Shop Id | NICEPAY |
paymenExpDt | N | 6 | QR Expiry Date | QR Payment Expiry Date (YYYYMMDD) |
paymenExpTm | N | 6 | QR Expiry Time | QR Payment Expiry Time (HH24MISS) |
Parameters paymentExpDt and paymentExpTm can be set on the Merchant side with a length of time of 5 - 20 minutes.
Following are the response parameters from the results of the request parameters to register the QRIS payment method.
Parameter | Type | Size | Description | Example / Notes |
resultCd | N | 4 | 0000 | |
resultMsg | AN | 255 | Result Message: Error Code | SUCCESS |
tXid | AN | 30 | Transaction ID | IONPAYTEST08202212071126251707 |
referenceNo | ANS | 40 | Merchant Ref. No | ORD54321 |
payMethod | N | 2 | 08 | |
amt | N | 12 | Payment Amount | 5 |
transDt | N | 8 | Transaction Date (YYYYMMDD) | 20230423 |
transTm | N | 6 | Transction Time (HH24MISS) | 112625 |
description | AN | 100 | Transaction Description | null |
bankCd | A | 4 | null | |
vacctNo | N | 20 | VA Number | null |
currency | A | 3 | Currency | IDR |
goodsNm | AN | 100 | Goods Name | Test Transaction Nicepay |
billingNm | A | 100 | Buyer Name | John Doe |
vacctValidDt | N | 8 | VA Expiry Date (YYYYMMDD) | null |
vacctValidTm | N | 6 | VA Expiry Time (HH24MISS) | null |
payNo | N | 12 | Payment Number | null |
mitraCd | AN | 4 | QSHP | |
payValidDt | N | 8 | Expiry Date (YYYYMMDD) | null |
payValidTm | N | 6 | Expiry Time (HH24MISS) | null |
requestURL | ANS | 360 | Request URL | null |
paymentExpDt | N | 6 | QR Payment Expiry Date (YYYYMMDD) | 20221207 |
paymentExpTm | N | 6 | QR Payment Expiry Time (HH24MISS) | 144135 |
qrContent | ANS | 360 | QR String in Plain Text | 00020101021226590016ID.CO.SHOPEE.WWW011893600918000041566602064156660303UME52045399530336054045.005802ID5913NICEPAY dummy6015KOTA JAKARTA SE61051287062360520082022120711262558370708T00000016304740D |
qrUrl | ANS | 360 | URL for QR Image, Valid for 5 minutes | https://mapi.gw.airpay.co.id/v3/merchant-host/qr/download?qr=un74au2lzvWXiv9LpBQGPG21CaTMhNgP0rvBeb9V6h |
Parameter | Type | Size | Description |
mitraCd | A | 4 | Mitra Code |
cancelAmt | N | 12 | Cancel amount |
paymentTrxSn | AN | 32 | QR Payment Expiry Date (YYYYMMDD) |
paymenExpDt | N | 6 | QR Payment Expiry Date (YYYYMMDD) |
shopId | AN | 32 | Shop Id |
paymenExpTm | N | 6 | QR Payment Expiry Time (HH24MISS) |
cancelTrxSn | AN | 32 | Cancel Transaction Number |
userId | AN | 128 | QRIS User ID Hash |
CartData in QRIS Registration is useful for declaring what items will be checked out along with item details and the price per item.
Parameter | Description | Example / Notes |
Count | The total number of all card data | 2 |
Item | It is divided into 4 kinds of parameters, namely img_url, goods_name, goods_detail and goods_amt | - |
Detailed explanation on Item parameters
Parameter | Description | Example / Notes |
img_url | Item Image URL (Size 50px x 50px) | htttps://www.merchant.com/image_goods1.jpg |
goods_name | Name of goods | Nama Item-1 |
goods_detail | Detailed Description of Goods | Detail Item-1 |
goods_amt | Price of goods | 1000 |