Pendaftaran Merchant Dana

API NamePendaftaran Merchant DANA
FunctionAPI ini digunakan untuk mendaftarkan entitas bisnis baru ke sistem DANA atau mitra resminya, mencakup detail divisi, logo, dokumen bisnis, dan data pemilik.
Service Code49
MethodPOST
URL/snap/v1.0/registration/dana
Content Typeapplication/json

Request​

Header​

NoNameTypeLengthRequiredConditionRemarks
1Content-TypeStringVariable, 127 maxWajibTipe konten, nilai selalu application/json
2AuthorizationStringVariableWajibBerisikan B2B Bearer JWT Token, yang didapatkan dari Access Token B2B
3X-TIMESTAMPStringFixed, 25 maxWajibWaktu transaksi, dalam format YYYY-MM-DDTHH:mm:ss+07:00. Zona waktu harus GMT+7 (Jakarta time)
4X-PARTNER-IDStringVariable, 36 max WajibID untuk mitra yang dihasilkan oleh PakaiLink. Unique ID untuk mitra
5X-EXTERNAL-IDStringVariable, 5 maxWajibMessaging reference ID unik yang dihasilkan oleh merchant. Numeric String. Nomor referensi harus unik di hari yang sama.
6CHANNEL-IDStringVariable, 5 maxWajibIdentifikasi perangkat dimana API Service ini sedang diakses oleh pengguna. Daftar Channel ID dapat dilihat di sini.
7X-SIGNATUREStringVariableWajibSignature harus dihasilkan dengan metode Symmetric Signature

Body

NoNameTypeLengthRequiredConditionRemarks
1partnerReferenceNoStringVariable, 64 maxWajibPengidentifikasi unik di sistem mitra untuk setiap transaksi.
2merchantDataJSON ObjectVariableWajibalamat lengkap yang digunakan untuk mengidentifikasi lokasi fisik dari suatu divisi
3merchantData.merchantNameStringVariable, 16 maxWajibNama Merchant
4merchantData.merchantCriteriaStringVariable, 16 maxWajibCriteria Merchant
5merchantData.merchantTypeStringVariable, 10 maxWajibMerchant Type
6merchantData.merchantEmailStringVariable, 12 maxWajibEmail Merchant
7merchantData.merchantDescriptionStringVariable, 1024 maxOptionalDeskripsi singkat mengenai profil atau jenis usaha merchant
8merchantData.merchantGoodsTypeStringVariableWajibJenis usaha
9merchantData.merchantUsecaseStringVariable, 12 maxWajibTujuan penggunaan layanan oleh merchant
10merchantData.merchantDirectorPicArray of ObjectVariableWajibDirektur bertindak sebagai PIC (Penanggung Jawab) untuk sub-merchant
11merchantData.merchantNonDirectorPicArray of ObjectVariableWajibIndividu yang bukan direktur namun ditunjuk sebagai PIC (Penanggung Jawab)
12merchantData.merchantDocsArray of ObjectVariableWajibdokumen identitas atau legalitas usaha
13merchantData.merchantLogoArray of ObjectVariableWajibberisi string data gambar yang telah diencode dalam Base64, dan format gambarnya harus PNG.
14merchantData.storeDataJSON ObjectVariableWajibData Merchant
15merchantData.storeData.storeAplicationNameStringVariable, 512 maxWajibAplikasi Merchant
16merchantData.storeData.storeWebsiteArray of ObjectVariable, 512 maxWajibWebsite Merchant
17merchantData.storeData.storeTypeStringVariable, 50 maxWajibEmail Merchant
18merchantData.storeData.storeNameStringVariable, 30 maxWajibNama Merchant
19merchantData.storeData.omzetStringVariable, 5 maxWajibOmzet Merchant
20merchantData.storeData.storeAddressJSON ObjectVariable, 50 maxWajibMerchant Address
21ownerDataJSON ObjectVariableWajibOwner Data Merchant
22ownerData.firstNameStringVariable, 50 maxWajibNama Awal Owner Data Merchant
23ownerData.lastNameStringVariable, 50 maxWajibNama Akhir Owner Data Merchant
24ownerData.emailStringVariable, 50 maxWajibEmail Owner Data Merchant
25ownerData.phoneNumberStringVariable, 50 maxWajibNomor Hp Owner Data Merchant
26ownerData.idNumberStringVariable, 50 maxWajibNomor 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

NoNameTypeLengthRequiredConditionRemarks
1responseCodeStringVariable, 7 maxWajibLihat daftar kode respons
2responseMessageStringVariable, 150 maxWajibLihat daftar kode respons
3detailDataJSON ObjectvariabelWajibmerupakan 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

NoResponse KodeResponse PesanKeterangan
12004900SuccessfulRequest telah berhasil diproses tanpa ada masalah
24004901Invalid Field FormatPanjang informasi tidak boleh melebihi 150 karakter
34004902Invalid Wajib FieldKolom atau field yang wajib diisi tidak lengkap atau formatnya tidak sesuai dengan yang diharapkan
44014900Unauthorized. [reason]Kesalahan umum yang terjadi ketika pengguna atau sistem tidak memiliki izin untuk mengakses tindakan tertentu
54014901Invalid Token (B2B)Token akses yang digunakan untuk otentikasi tidak sah atau sudah kedaluwarsa
75004902Backend system failureKesalahan yang terjadi di server saat mencoba memproses request