Generate QR MPM
Spesifikasi
Tabel berikut adalah spesifikasi dari API ini :
API Name | Generate QR MPM |
---|---|
Function | API ini digunakan untuk membuat QRIS dari pedagang ke Paydia sebagai akquirer |
Service Code | 47 |
Method | POST |
URL | /snap/v1.0/qr/qr-mpm-generate |
Accept | application/json |
Content Type | application/json |
Related Service | QRIS MPM (Acquirer) |
Request
Bagian berikut akan menjelaskan tentang parameter permintaan dalam API ini:
Request Params
Tabel berikut adalah daftar parameter permintaan dalam API ini:
Header
Tabel berikut adalah Header dari Parameter Permintaan :
No | Name | Type | Length | Required | Condition | Remarks |
---|---|---|---|---|---|---|
1 | Content-Type | String | Variabel, maksimal 127 karakter | Mandatory | - | Jenis konten, nilai selalu application/json |
2 | Authorization | String | Variabel | Opsional | Jika opsi Signature menggunakan pendekatan asimetris | Mengandung Token B2B Bearer JWT, Anda mendapatkannya dari Access Token B2B |
3 | X-TIMESTAMP | String | Tetap, maksimal 25 karakter | Mandatory | - | Waktu tanggal transaksi, dalam format YYYY MM-DDTHH:mm:ss+07:00. Waktu harus dalam GMT+7 (waktu Jakarta) |
4 | X-SIGNATURE | String | Variabel | Mandatory | - | Signature akan dihasilkan secara otomatis dengan metode symmetricSignature atau asymmetricSignature |
5 | X-PARTNER-ID | String | Variabel, maksimal 36 karakter | Mandatory | - | ID untuk mitra yang dihasilkan oleh Paydia. ID unik untuk seorang mitra |
6 | X-EXTERNAL-ID | String | Variabel, maksimal 36 karakter | Mandatory | - | ID referensi pesan unik yang dihasilkan oleh pedagang. String numerik. Nomor referensi yang harus unik dalam satu hari yang sama |
7 | CHANNEL-ID | String | Variabel, maksimal 5 karakter | Mandatory | - | Identifikasi perangkat di mana layanan API saat ini diakses oleh pengguna akhir (pelanggan) |
Header
Tabel berikut adalah isi dari Parameter Permintaan:
No | Name | Type | Length | Required | Condition | Remarks |
---|---|---|---|---|---|---|
1 | merchantid | String | Variabel, maksimal 64 karakter | Mandatory | - | Identifier pedagang yang unik untuk setiap pedagang |
2 | storeId | String | Variabel, maksimal 64 karakter | Opsional | - | ID toko unik di sisi pedagang |
3 | terminalId | String | Variabel, maksimal 16 karakter | Opsional | - | Identifier yang unik untuk setiap pedagang |
4 | partnerReferenceNo | String | Variabel, maksimal 64 karakter | Mandatory | - | ID transaksi dari pedagang |
5 | amount | Money | Variabel | Mandatory | - | Mengandung dua sub-field:
|
6 | feeAmount | Money | Variabel | Opsional | - | Mengandung dua sub-field:
|
7 | validityPeriod | String | Tetap, maksimal 25 karakter | Opsional | - | Waktu kapan QRIS berlaku, dalam format YYYY-MM-DDTHH:mm:ss+07:00. Waktu harus dalam GMT+7 (waktu Jakarta) |
8 | additionalInfo | Objek JSON | Variabel | Opsional | - | Informasi tambahan yang mungkin Paydia kirimkan ke bank |
9 | additionalInfo.callback | String | Variabel | Opsional | - | URL untuk menerima pemberitahuan pembayaran setelah pembayaran dilakukan oleh pelanggan |
Contoh Request
Berikut ini adalah contoh permintaan dari API ini:
POST .../snap/v1.0/qr/qr-mpm-generate
X-TIMESTAMP: 2022-09-22T10:30:00+07:00
X-PARTNER-ID: 7c357677e7e02547ef33fafca165a574
X-SIGNATURE: I+dY/VYNhIT0+uJH+448GORGVSEG3LA43J9+U1JCxOcPxBPNxNoeXsFTN/oxnGxuEJfNC3J3aU2R3ZXHG/MT8pZM/uxSoR3TV1OUf2GdrNAeyT3zPQdNbIYTxcRmAJJUTGcr8vf132HhX+XLgi5pGyricngz11a5hlQOSprErlnGjnPvscEvhdhGku2hEo3zELEjIIxufU0jeOZlFVov6xZkrnCR03KR7R4h3erygTvQ1UhDspTDPYK/9w38d3uTCd1Siafol0HU9KcMkehu0IL2MiZDRnWtY6GPbDSHgHUkDrWt7RHV1yC0ZeGa1G4Kg/dk6hkzgk65Jlbo2vaTZg==
X-EXTERNAL-ID: 1663836108
CHANNEL-ID: 12345
Authorization: Bearer c21c6d65050592f401644b25c154f2c07eb2301eb1014f584ad216ee50ef6047
Content-Type: application/json
{
"merchantId": "220901002000000",
"storeId": "1663836108",
"terminalId": "Mevvah Komputer",
"partnerReferenceNo": "1663836108",
"amount": {
"value": "10000.00",
"currency": "IDR"
},
"feeAmount": {
"value": "0.00",
"currency": "IDR"
},
"validityPeriod": "2022-09-25T08:31:11+07:00",
"additionalInfo": {
"callback": "https://callback.site/"
}
}
Response
Bagian berikut akan menjelaskan tentang parameter Respon dalam API ini:
Response ParamsRespon
Tabel berikut adalah daftar parameter Respon dalam API ini:
Isi
Tabel berikut adalah isi Parameter Body Respon:
No | Name | Type | Length | Required | Condition | Remarks |
---|---|---|---|---|---|---|
1 | responseCode | String | Tetap, maksimal 7 karakter | Mandatory | - | Lihat daftar kode Respon |
2 | responseMessage | String | Variabel, maksimal 150 karakter | Mandatory | - | Lihat daftar kode Respon |
3 | referenceNo | String | Variabel, maksimal 64 karakter | Opsional | - | Identifier transaksi Paydia |
4 | partnerReferenceNo | String | Variabel, maksimal 64 karakter | Opsional | - | ID transaksi dari pedagang |
5 | qrContent | String | Variabel, maksimal 512 karakter | Mandatory | - | QR String MPM |
6 | merchantName | String | Variabel, maksimal 25 karakter | Opsional | - | Nama pedagang |
7 | storeId | String | Variabel, maksimal 64 karakter | Opsional | - | ID toko unik di sisi pedagang |
8 | terminalId | String | Variabel, maksimal 16 karakter | Opsional | - | Identifier yang unik untuk setiap pedagang |
Contoh Response
Berikut ini adalah contoh Respon dari API ini:
{
"responseCode": "2004700",
"responseMessage": "Successful",
"referenceNo": "220922000003",
"partnerReferenceNo": "2020102900000000000001",
"qrContent": "00020101021226650013ID.PAYDIA.WWW011893600818022090100202152209010020000000303UBE5204573453033605405100005802ID5917 MEVVAH KOMPUTER6013JAKARTA PUSAT610510710624201122209220000030715Mevvah Komputer0803api6304FAE0",
"merchantName": " Mevvah Komputer",
"storeId": "12345",
"terminalId": "Mevvah Komputer"
}
Response Code dan Response Message
Tabel berikut adalah daftar kode dan pesan Respon dari API Generate QR MPM:
No | Response Code | Response Message | Remarks |
---|---|---|---|
1 | 2004700 | Successful | Berhasil diproses |
2 | 4004701 | Invalid Field Format | Format tidak valid untuk bidang tertentu |
3 | 4004702 | Invalid Mandatory Field | Hilang atau format tidak valid pada bidang Mandatory |
4 | 4014700 | Unauthorized {reason} | Kesalahan umum yang tidak diizinkan |
5 | 4014701 | Invalid Token (B2B) | Token otorisasi tidak valid, mungkin karena kadaluarsa untuk B2B |
6 | 4034702 | Exceeds Transaction Amount Limit | Jumlah melebihi batas |
7 | 4044708 | Invalid Merchant | Pedagang tidak ada atau status abnormal |
8 | 4094700 | Conflict | Tidak dapat menggunakan X-EXTERNAL-ID yang sama dalam satu hari yang sama |
9 | 4094701 | Duplicate partnerReferenceNo | partnerReferenceNo ganda |
10 | 5004702 | Backend system failure | Kesalahan server internal 500 |