API Name Pendaftaran Merchant DANA Function API ini digunakan untuk mendaftarkan entitas bisnis baru ke sistem DANA atau mitra resminya, mencakup detail divisi, logo, dokumen bisnis, dan data pemilik. Service Code 49 Method POST URL /snap/v1.0/registration/dana 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.merchantCriteria String Variable, 16 max Wajib – Criteria Merchant 5 merchantData.merchantType String Variable, 10 max Wajib – Merchant Type 6 merchantData.merchantEmail String Variable, 12 max Wajib – Email Merchant 7 merchantData.merchantDescription String Variable, 1024 max Optional – Deskripsi singkat mengenai profil atau jenis usaha merchant 8 merchantData.merchantGoodsType String Variable Wajib – Jenis usaha 9 merchantData.merchantUsecase String Variable, 12 max Wajib – Tujuan penggunaan layanan oleh merchant 10 merchantData.merchantDirectorPic Array of Object Variable Wajib – Direktur bertindak sebagai PIC (Penanggung Jawab) untuk sub-merchant 11 merchantData.merchantNonDirectorPic Array of Object Variable Wajib – Individu yang bukan direktur namun ditunjuk sebagai PIC (Penanggung Jawab) 12 merchantData.merchantDocs Array of Object Variable Wajib – dokumen identitas atau legalitas usaha 13 merchantData.merchantLogo Array of Object Variable Wajib – berisi string data gambar yang telah diencode dalam Base64, dan format gambarnya harus PNG. 14 merchantData.storeData JSON Object Variable Wajib – Data Merchant 15 merchantData.storeData.storeAplicationName String Variable, 512 max Wajib – Aplikasi Merchant 16 merchantData.storeData.storeWebsite Array of Object Variable, 512 max Wajib – Website Merchant 17 merchantData.storeData.storeType String Variable, 50 max Wajib – Email Merchant 18 merchantData.storeData.storeName String Variable, 30 max Wajib – Nama Merchant 19 merchantData.storeData.omzet String Variable, 5 max Wajib – Omzet Merchant 20 merchantData.storeData.storeAddress JSON Object Variable, 50 max Wajib – Merchant Address 21 ownerData JSON Object Variable Wajib – Owner Data Merchant 22 ownerData.firstName String Variable, 50 max Wajib – Nama Awal Owner Data Merchant 23 ownerData.lastName String Variable, 50 max Wajib – Nama Akhir Owner Data Merchant 24 ownerData.email String Variable, 50 max Wajib – Email Owner Data Merchant 25 ownerData.phoneNumber String Variable, 50 max Wajib – Nomor Hp Owner Data Merchant 26 ownerData.idNumber String Variable, 50 max Wajib – Nomor KTP Owner Data Merchant
Contoh Request
POST /snap/v1.0/registration/dana 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-PARTNER-ID: 0000000000
X-EXTERNAL-ID: 1160854306
X-SIGNATURE: AaE7rxaiIFPQYryj+JxwOi826dQG4e8RbzagEBaAywS4ETa490Cy/3b1/Ljqput67EF+OgE0V1GDw2t/lxqEJw==
CHANNEL-ID: 95221
{
"partnerReferenceNo": "000000000000",
"merchantData": {
"merchantName": "Toko Roti Enak Jaya 19",
"merchantCriteria": "UMKM",
"merchantCategoryCode": [
"5462"
],
"merchantType": "UMI",
"merchantEmail": "admin@tokoenakjaya.com",
"merchantDescription": "Menjual aneka roti dan kue basah",
"merchantGoodsType": "DIGITAL",
"merchantUsecase": "Online Payment Digital Goods",
"merchantDirectorPic": [
{
"picName": "test",
"picPosition": "test"
}
],
"merchantNonDirectorPic": [
{
"picName": "test",
"picPosition": "test"
}
],
"merchantDocs": [
{
"docId": "12323412341234",
"docType": "KTP",
"docFile":"+PgpzdHJlYW0KZW5kc3RyZWFtCmVuZG9iago="
}
],
"merchantLogo": {
"logo": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAG==",
"pcLogo": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAG==",
"mobileLogo": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAG=="
}
"merchantBussinesType": "B2B",
"merchantBussinesEntities": "individu",
"pgDivisionFlag": "true",
"storeData": {
"storeAplicationName": "Toko Enak Jaya App",
"storeWebsite": "https://www.tokoenakjaya.com",
"storeType": "OFFLINE",
"storeName": "Toko Roti Enak Jaya - Cabang Pusat",
"omzet": "<2BIO",
"avgTransaction": "50000",
"storeAddress": {
"address": "Jl. Pahlawan No. 123",
"area": "BANDAR BARU",
"city": "PIDIE JAYA",
"postalCode": "24184",
"province": "ACEH",
"country": "Indonesia",
"subDistrict": "ABAH LUENG"
}
}
},
"ownerData": {
"firstName": "Budi",
"lastName": "Santoso",
"email": "budi.santoso@example.com",
"phoneNumber": "081234567890",
"idNumber": "3578012345670001",
"idType": "KTP",
"mobileId": "081234567890",
"address": {
"address": "Jl. Pahlawan No. 123",
"area": "BANDAR BARU",
"city": "PIDIE JAYA",
"postalCode": "24184",
"province": "ACEH",
"country": "Indonesia",
"subDistrict": "ABAH LUENG"
}
}
}
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 Object variabel Wajib – merupakan objek respons yang memuat informasi hasil pemrosesan
Contoh Response
{
"responseCode": "2004900",
"responseMessage": "Successful",
"detailData": {
"merchantName": "Toko Roti Enak Jaya 19",
"merchantCriteria": "UMKM",
"merchantCategoryCode": [
"5462"
],
"merchantType": "UMI",
"merchantEmail": "admin@tokoenakjaya.com",
"merchantDescription": "Menjual aneka roti dan kue basah",
"merchantGoodsType": "DIGITAL",
"merchantUsecase": "Online Payment Digital Goods",
"merchantDirectorPic": [
{
"picName": "test",
"picPosition": "test"
}
],
"merchantNonDirectorPic": [
{
"picName": "test",
"picPosition": "test"
}
],
"merchantDocs": [
{
"docId": "12323412341234",
"docType": "KTP",
"docFile":"+PgpzdHJlYW0KZW5kc3RyZWFtCmVuZG9iago="
}
],
"merchantLogo": {
"logo": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAG==",
"pcLogo": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAG==",
"mobileLogo": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAG==",
"merchantBussinesType": "B2B",
"merchantBussinesEntities": "individu",
"pgDivisionFlag": "true",
"storeData": {
"storeAplicationName": "Toko Enak Jaya App",
"storeWebsite": "https://www.tokoenakjaya.com",
"storeType": "OFFLINE",
"storeName": "Toko Roti Enak Jaya - Cabang Pusat",
"omzet": "<2BIO",
"avgTransaction": "50000",
"storeAddress": {
"address": "Jl. Pahlawan No. 123",
"area": "BANDAR BARU",
"city": "PIDIE JAYA",
"postalCode": "24184",
"province": "ACEH",
"country": "Indonesia",
"subDistrict": "ABAH LUENG"
}
}
}
}
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 7 5004902 Backend system failure Kesalahan yang terjadi di server saat mencoba memproses request
☰