| API Name | Pendaftaran Merchant Qris |
|---|
| Function | Dokumen ini menjelaskan detail endpoint, header, dan payload untuk mendaftarkan merchant QRIS dengan data dasar personal dan usaha. |
| Service Code | 49 |
| Method | POST |
| URL | /snap/v1.0/registration/qris |
| Content Type | application/json |
Request
Header
| No | Name | Type | Length | Required | Condition | Remarks |
|---|
| 1 | Content-Type | String | Variable, 127 max | Wajib | – | Tipe konten, nilai selalu application/json |
| 2 | Authorization | String | Variable | Wajib | – | Berisikan B2B Bearer JWT Token, yang didapatkan dari Access Token B2B |
| 3 | X-TIMESTAMP | String | Fixed, 25 max | Wajib | – | Waktu transaksi, dalam format YYYY-MM-DDTHH:mm:ss+07:00. Zona waktu harus GMT+7 (Jakarta time) |
| 4 | X-PARTNER-ID | String | Variable, 36 max | Wajib | – | ID untuk mitra yang dihasilkan oleh PakaiLink. Unique ID untuk mitra |
| 5 | X-EXTERNAL-ID | String | Variable, 5 max | Wajib | – | Messaging reference ID unik yang dihasilkan oleh merchant. Numeric String. Nomor referensi harus unik di hari yang sama. |
| 6 | CHANNEL-ID | String | Variable, 5 max | Wajib | – | Identifikasi perangkat dimana API Service ini sedang diakses oleh pengguna. Daftar Channel ID dapat dilihat di sini. |
| 7 | X-SIGNATURE | String | Variable | Wajib | – | Signature harus dihasilkan dengan metode Symmetric Signature |
Body
| No | Name | Type | Length | Required | Condition | Remarks |
|---|
| 1 | partnerReferenceNo | String | Variable, 64 max | Wajib | – | Pengidentifikasi unik di sistem mitra untuk setiap transaksi. |
| 2 | merchantData | JSON Object | Variable | Wajib | – | alamat lengkap yang digunakan untuk mengidentifikasi lokasi fisik dari suatu divisi |
| 3 | merchantData.merchantName | String | Variable, 16 max | Wajib | – | Nama Merchant |
| 4 | merchantData.merchantEmail | String | Variable, 12 max | Wajib | – | Email Merchant |
| 5 | merchantData.storeData | JSON Object | Variable | Wajib | – | Data Merchant |
| 6 | merchantData.storeData.storeAplicationName | String | Variable, 512 max | Wajib | – | Aplikasi Merchant |
| 7 | merchantData.storeData.storeWebsite | Array of Object | Variable, 512 max | Wajib | – | Website Merchant |
| 8 | merchantData.storeData.storeType | String | Variable, 50 max | Wajib | – | Email Merchant |
| 9 | merchantData.storeData.storeName | String | Variable, 30 max | Wajib | – | Nama Merchant |
| 10 | merchantData.storeData.omzet | String | Variable, 5 max | Wajib | – | Omzet Merchant |
| 11 | merchantData.storeData.storeAddress | JSON Object | Variable, 50 max | Wajib | – | Merchant Address |
| 12 | ownerData | JSON Object | Variable | Wajib | – | Owner Data Merchant |
| 13 | ownerData.firstName | String | Variable, 50 max | Wajib | – | Nama Awal Owner Data Merchant |
| 14 | ownerData.lastName | String | Variable, 50 max | Wajib | – | Nama Akhir Owner Data Merchant |
| 15 | ownerData.email | String | Variable, 50 max | Wajib | – | Email Owner Data Merchant |
| 16 | ownerData.phoneNumber | String | Variable, 50 max | Wajib | – | Nomor Hp Owner Data Merchant |
| 17 | ownerData.idNumber | String | Variable, 50 max | Wajib | – | Nomor KTP Owner Data Merchant |
| 18 | ownerData.taxId | String | Variable, 50 max | Optional | – | Nomor NPWP Owner Data Merchant |
| 19 | ownerData.dateOfBirth | String | Variable, 50 max | Wajib | – | Tanggal Lahir Owner Data Merchant |
| 20 | ownerData.placeOfBirth | String | Variable, 50 max | Wajib | – | Tempat Lahir Owner Data Merchant |
Contoh Request
POST /snap/v1.0/registration/qris HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpc3MiOiJQQUtBSUxJTksiLCJqdGkiOiIyNDc0NzdlNjk0ZGM3N2FhZDU5YzA4MjA1NzdmZmViNyIsImV4cCI6MTE3NDAyOTc2NzgsImFzIjoicGFydG5lciIsImlkIjoiUFRSMDAwMDAwMyJ9.XmUxHExWILJCHJG74Af8TPJljX2aOmUz4UwJXumxkqxW9uDsIrSX_M_j0uRzPOmaBkk2_rQiHIo_OX_qxv45Mg
Content-Type: application/json
X-TIMESTAMP: 2025-01-30T12:38:12+07:00
X-Signature: 0000000000
X-Origin-ID: 1160854306
{
"partnerReferenceNo": "0000000000000",
"merchantData": {
"merchantName": "Warung Kopi Jaya 4",
"merchantType": "STATIS",
"merchantEmail": "budi.santoso@example.com",
"storeData": {
"storeAplicationName": "MyAplikasi",
"storeWebsite": "www.MyAplikasi.test",
"storeType": "toko baju - store chlotes",
"storeName": "Warung Kopi Jaya 4",
"omzet":"100000",
"storeAddress": {
"address": "Jl. Sudirman No. 10",
"city": "Bandung",
"postalCode": "40201",
"province": "Jawa Barat",
"country": "ID"
}
}
},
"ownerData": {
"firstName": "Budi",
"lastName": "Santoso",
"email": "budi.santoso@example.com",
"phoneNumber": "081234567890",
"idNumber": "320123457891011121",
"taxId": "001234567890000",
"dateOfBirth": "1990-05-15",
"placeOfBirth": "Bandung"
}
}
Response
Body
| No | Name | Type | Length | Required | Condition | Remarks |
|---|
| 1 | responseCode | String | Variable, 7 max | Wajib | – | Lihat daftar kode respons. |
| 2 | responseMessage | String | Variable, 150 max | Wajib | – | Lihat daftar kode respons. |
| 3 | detailData | Json of Object | Variable, 16 max | Wajib | – | Response Data Merchant |
Contoh Response
{
"responseCode": "2004900",
"responseMessage": "Successful",
"detailData": {
"merchantName": "Warung Kopi Jaya 9",
"merchantCriteria": "U",
"merchantCategoryCode": "5699",
"merchantType": "STATIS",
"merchantEmail": "budi.santoso@example.com",
"storeData": {
"storeAplicationName": "MyAplikasi",
"storeWebsite": "www.MyAplikasi.test",
"storeType": "toko baju - store chlotes",
"storeName": "Warung Kopi Jaya 4",
"omzet": "100000",
"storeAddress": {
"address": "Jl. Sudirman No. 10",
"area": "Bandung",
"city": "Bandung",
"postalCode": "40201",
"province": "Jawa Barat",
"country": "ID"
}
}
}
}
Kode dan Pesan Response
| No | Response Kode | Response Pesan | Keterangan |
|---|
| 1 | 2004900 | Successful | Request telah berhasil diproses tanpa ada masalah |
| 2 | 4004901 | Invalid Field Format | Panjang informasi tidak boleh melebihi 150 karakter |
| 3 | 4004902 | Invalid Wajib Field | Kolom atau field yang wajib diisi tidak lengkap atau formatnya tidak sesuai dengan yang diharapkan |
| 4 | 4014900 | Unauthorized. [reason] | Kesalahan umum yang terjadi ketika pengguna atau sistem tidak memiliki izin untuk mengakses tindakan tertentu |
| 5 | 4014901 | Invalid Token (B2B) | Token akses yang digunakan untuk otentikasi tidak sah atau sudah kedaluwarsa |
| 6 | 4034901 | Transaction Not Found | Transaksi tidak ditemukan |
| 7 | 5004902 | Backend system failure | Kesalahan yang terjadi di server saat mencoba memproses request |