Data Export
Overview
API Data Export memungkinkan merchant untuk mengekspor dataset dalam jumlah besar seperti payments, dan disbursement untuk keperluan pelaporan operasional, rekonsiliasi, atau analisis data.
Proses ekspor dilakukan secara asynchronous (tidak langsung) untuk menghindari timeout dan memastikan performa sistem tetap optimal. Merchant dapat membuat job ekspor yang berjalan di background, kemudian mengambil file hasil ekspor setelah proses selesai.
Format yang Didukung: Saat ini hanya format CSV yang didukung.
Fitur Utama
| Fitur | Deskripsi |
|---|---|
| Asynchronous Processing | Ekspor diproses di background tanpa blocking API call |
| Job Tracking | Monitoring status ekspor melalui report id |
| Flexible Filtering | Filter berdasarkan tanggal dan status |
| Secure Access | Hanya user yang ter-autentikasi dapat mengakses file ekspor mereka |
Authentication
API Data Export menggunakan mekanisme autentikasi yang sama dengan SNAP API lainnya. Pastikan Anda sudah memiliki Bearer Token sebelum melakukan request. Lihat Authentication untuk detailnya.
Endpoints
1. Create Export Job
Endpoint ini digunakan untuk membuat job ekspor data secara asynchronous.
- Method: POST
- Development: https://sandbox.kirimo.co/v1.0/data/export
- Production: https://api.kirimo.co/v1.0/data/export
- Content-Type: application/json
Headers
| Parameter | Tipe | Mandatori | Keterangan | Contoh |
|---|---|---|---|---|
| Content-Type | string | ✓ | Tipe media yang digunakan | application/json |
| Authorization | string | ✓ | Bearer token dari endpoint Get Token | Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9... |
| X-TIMESTAMP | string | ✓ | Timestamp format ISO-8601 | 2025-10-27T13:00:00+07:00 |
| X-SIGNATURE | string | ✓ | Signature HMAC_SHA512 | Lihat Signature Formula |
| X-CLIENT-KEY | string | ✓ | Client Key | DXXXX |
Request Body
| Parameter | Tipe | Mandatori | Keterangan | Contoh |
|---|---|---|---|---|
| resourceType | string | ✓ | Tipe data | transactions |
| format | string | ✓ | Format file | csv |
| filters | object | ✓ | Filter data | |
| filters.startDate | string | ✓ | Tanggal mulai | 2025-10-01 |
| filters.endDate | string | ✓ | Tanggal akhir | 2025-10-27 |
| filters.status | string | Status transaksi | SUCCESS | |
| filters.businessId | int | x | Child business | 1 |
| callbackUrl | string | x | Callback HTTPS | https://callback-url.com/receive |
Validation Rules
| Field | Aturan Validasi | Contoh Valid | Contoh Invalid |
| resourceType | Harus salah satu dari: qris, va, ewallet, cc, disbursement, transaction, unified_cash_in, unified_cash_out | ✅ transaction | ❌ invalid_type |
| format | Hanya csv yang didukung | ✅ csv | ❌ pdf, xlsx |
| startDate | Harus dalam format ISO 8601 (YYYY-MM-DD) | ✅ 2025-10-01 | ❌ 01-10-2025 |
| endDate | Harus dalam format ISO 8601 (YYYY-MM-DD) | ✅ 2025-10-27 | ❌ 27/10/2025 |
| Date Range | startDate harus lebih kecil atau sama dengan endDate | ✅ start: 2025-10-01, end: 2025-10-27 | ❌ start: 2025-10-27, end: 2025-10-01 |
| Date Range Length | Maksimal 1 bulan (31 hari) | ✅ start: 2025-10-01, end: 2025-10-31 | ❌ start: 2025-10-01, end: 2025-11-25 |
| Past Data Only | endDate harus kurang dari tanggal hari ini (UTC) | ✅ 2025-10-26 (jika hari ini 27 Okt) | ❌ 2025-10-27 (jika hari ini 27 Okt) |
| Date Range To Long | Tidak boleh melebihi dari 1 bulan | ||
| Minimum Data Age | Data yang diekspor minimal berumur 1 hari | ✅ Data hingga kemarin | ❌ Data hari ini |
| callbackUrl | Jika terisi wajib menggunakan https | ✅ https | ❌ http only, url only |
Example Request
{
"resourceType": "transactions",
"format": "csv",
"filters": {
"startDate": "2025-10-01",
"endDate": "2025-10-27",
"status": "SUCCESS",
"businessId": 994
}
}
Response
Success Response (200)
{
"responseCode": "2000000",
"responseMessage": "Publish job successfully",
"reportId": "exp_01J9Y4V34ZKFG5Q7E9YNM9W22R"
}
Validation Error (422)
{
"responseCode": "422000",
"responseMessage": "Date Range Required"
}
2. Get Export Job Status
Endpoint ini digunakan untuk mengambil status job ekspor dan file hasil ekspor jika sudah selesai.
- Method: GET
- Development: https://sandbox.kirimo.co/v1.0/data/export/{reportId}
- Production: https://api.kirimo.co/v1.0/data/export/{reportId}
Headers
| Parameter | Tipe | Mandatori | Keterangan | Contoh |
| Authorization | string | ✓ | Bearer token dari endpoint Get Token | Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9... |
| X-TIMESTAMP | string | ✓ | Timestamp dalam format ISO-8601 | 2025-10-27T13:00:00+07:00 |
| X-SIGNATURE | string | ✓ | Signature menggunakan HMAC_SHA512 (symmetric) | Lihat Signature Formula |
| X-CLIENT-KEY | string | ✓ | Client Key dari Menu Setting | DXXXX |