Skenario Pengujian
Pada bagian ini akan dijelaskan bagaimana melakukan simulasi transaksi Retail Outlet mulai dari pembuatan Fixed Payment Code (FPC), melakukan pembayaran, dan mendapatkan notifikasi / callback dari transaksi yang berhasil melalui API Retail Outlet. Untuk panduan simulasi Outlet Ritel dengan xenInvoice, silakan kunjungi halaman berikut.
Pra Testing
Pastikan Anda telah melakukan langkah-langkah berikut sebelum melakukan simulasi:
- Daftar akun Xendit.
- Pastikan Anda telah mengaktifkan metode pembayaran Retail Outlet di pengaturan.
- Anda berada dalam mode pengujian dan mendapatkan secret API key yang dapat Anda buat dari dasbor. Harap perhatikan bahwa Anda memerlukan akses write.
- Unduh Postman dan Koleksi Xendit. Untuk panduan lebih lanjut tentang Postman, silakan kunjungi artikel berikut.
- Pelajari API Outlet Ritel dengan mengunjungi Referensi API.
- Setelah Anda menyelesaikan langkah-langkah di atas, Anda siap untuk memulai pengujian!
Test 1: Membuat Fixed Payment Code
Untuk Retail Outlet ID
Kirim POST request ke https://api.xendit.co/fixed_payment_code
menggunakan secret API key. Masukkan parameter sesuai dengan panduan pada Referensi API.
Contoh Request
{
"external_id": "FPC-{{$timestamp}}",
"retail_outlet_name": "ALFAMART",
"name": "Ismail Rabbanii",
"expected_amount": 25000
}
Contoh Response
{
"is_single_use": false,
"status": "ACTIVE",
"owner_id": "5fd1c319b9986239d7ec5567",
"external_id": "FPC-1619132067",
"retail_outlet_name": "ALFAMART",
"prefix": "TEST",
"name": "Ismail Rabbanii",
"payment_code": "TEST163412",
"type": "USER",
"expected_amount": 25000,
"expiration_date": "2052-04-22T17:00:00.000Z",
"id": "6081fea334850277649bc2a3"
}
Untuk Retail Outlet/Over-the-Counter PH
Kirim POST request ke https://api.xendit.co/payment_codes
menggunakan secret API key. Masukkan parameter sesuai dengan panduan pada Referensi API.
Contoh Request
{
"reference_id": "123",
"channel_code": "7ELEVEN",
"customer_name": "Reinaldy Gultom",
"amount": 50,
"currency": "PHP",
"market": "PH"
}
Contoh Response
{
"id": "pcode-69196f15-4685-4d6e-84a4-234837e3237c",
"business_id": "61359238d852f3401b86014d",
"reference_id": "123",
"customer_name": "Reinaldy Gultom",
"payment_code": "PSTESTVG53A7FM",
"currency": "PHP",
"amount": 50,
"channel_code": "7ELEVEN",
"description": null,
"is_single_use": true,
"market": "PH",
"status": "ACTIVE",
"metadata": null,
"created_at": "2021-09-06T05:04:17.052998115Z",
"updatedAt": "2021-09-06T05:04:17.052998115Z",
"expires_at": "2021-09-08T05:04:17.016958771Z"
}
Test 2: Simulasi Pembayaran Fixed Payment Code
Untuk Retail Outlet ID
Kirim POST request ke https://api.xendit.co/fixed_payment_code/simulate_payment
menggunakan secret API key.
INFO
Anda harus telah membuat FPC sebelum melakukan test ini. Pastikan Anda menggunakan FPC yang telah dibuat untuk melakukan simulasi pembayaran
Contoh Request
{
"retail_outlet_name": "ALFAMART",
"payment_code": "TEST163412",
"transfer_amount": 25000
}
Contoh Response
{
"status": "COMPLETED",
"message": "Payment for the Fixed Payment Code was successfully simulated"
}
Untuk Retail Outlet/Over-the-Counter PH
Kirim POST request ke https://api.xendit.co/payment_codes/simulate_payment
menggunakan secret API key.
WARNING
Anda harus telah membuat payment code sebelum melakukan test ini. Pastikan Anda menggunakan payment code yang telah dibuat untuk melakukan simulasi pembayaran.
Contoh Request
{
"payment_code": "PSTESTVG53A7FM",
"channel_code": "7ELEVEN",
"market": "PH",
"reference": "random",
"amount": 50,
"currency": "PHP"
}
Contoh Response
{
"id": "pymt-295e4d64-b7a5-4537-b5d4-4e558eb3dd91",
"reference_id": "random",
"payment_code": "PSTESTVG53A7FM",
"amount": 50,
"currency": "PHP",
"remarks": "payment simulation",
"created": "2021-09-06T05:24:29.579364458Z"
}
Test 3: Update Fixed Payment Code
Untuk Retail Outlet ID
Kirim PATCH request ke https://api.xendit.co/fixed_payment_code/{fixed_payment_code_id}
menggunakan secret API key. Masukkan parameter sesuai dengan panduan pada Referensi API.
INFO
Anda dapat mendapatkan ID dari response pada saat membuat Kode Pembayaran
Contoh Request
{
"name": "Ismail Rabbanii Update",
"expected_amount": 28000
}
Contoh Response
{
"is_single_use": false,
"status": "ACTIVE",
"owner_id": "5fd1c319b9986239d7ec5567",
"external_id": "FPC-1619132067",
"retail_outlet_name": "ALFAMART",
"prefix": "TEST",
"name": "Ismail Rabbanii Update",
"payment_code": "TEST163412",
"type": "USER",
"expected_amount": 28000,
"expiration_date": "2052-04-22T17:00:00.000Z",
"id": "6081fea334850277649bc2a3"
}
Untuk Retail Outlet/Over-the-Counter PH
Kirim PATCH request ke https://api.xendit.co/payment_codes/{payment_code_id}
menggunakan secret API key. Masukkan parameter sesuai dengan panduan pada Referensi API
INFO
Anda dapat mendapatkan ID dari response pada saat membuat Kode Pembayaran
Contoh Detail Payment Code
{
"id": "pcode-dd901436-6c63-4fce-94f3-278edf265e42",
"business_id": "61359238d852f3401b86014d",
"reference_id": "TesT08",
"customer_name": "Reinaldy",
"payment_code": "PSTESTC7HBF9DG",
"currency": "PHP",
"amount": 50,
"channel_code": "CEBUANA",
"description": "this is test",
"is_single_use": true,
"market": "PH",
"status": "ACTIVE",
"metadata": null,
"created_at": "2021-09-08T07:06:40.450295189Z",
"updatedAt": "2021-09-08T07:06:40.450295189Z",
"expires_at": "2021-09-09T01:48:52Z"
}
Contoh Request
{
"customer_name": "Test",
"expires_at": "2021-09-08T01:48:52Z"
}
Contoh Response
{
"id": "pcode-dd901436-6c63-4fce-94f3-278edf265e42",
"business_id": "61359238d852f3401b86014d",
"reference_id": "TesT08",
"customer_name": "Test",
"payment_code": "PSTESTC7HBF9DG",
"currency": "PHP",
"amount": 50,
"channel_code": "CEBUANA",
"description": "this is test",
"is_single_use": true,
"market": "PH",
"status": "EXPIRED",
"metadata": null,
"created_at": "2021-09-08T07:06:40.450295Z",
"updatedAt": "2021-09-08T07:08:46.310392Z",
"expires_at": "2021-09-08T01:48:52Z"
}
Test 4: Mendapatkan Detail Fixed Payment Code
Untuk Retail Outlet ID
Terkadang Anda perlu mengetahui detail untuk kode pembayaran tetap Anda. Anda dapat menggunakan end-point ini dengan mengirimkan request GET ke https://api.xendit.co/fixed_payment_code/{fixed_payment_code_id
.
Contoh Response
{
"is_single_use": false,
"status": "ACTIVE",
"owner_id": "5fd1c319b9986239d7ec5567",
"external_id": "FPC-1619132067",
"retail_outlet_name": "ALFAMART",
"prefix": "TEST",
"name": "Ismail Rabbanii Update",
"payment_code": "TEST163412",
"type": "USER",
"expected_amount": 28000,
"expiration_date": "2052-04-22T17:00:00.000Z",
"id": "6081fea334850277649bc2a3"
}
Untuk Retail Outlet/Over-the-Counter PH
Jika anda perlu mengetahui informasi detail dari kode pembayaran, anda bisa menggunakan endpoint berikut ini dengan cara mengirimkan request GET ke https://api.xendit.co/payment_codes/{payment_code_id}
.
Contoh Response
{
"id": "pcode-4f6d78e5-add4-43ea-b9da-9e6c6ae4b9e7",
"business_id": "61359238d852f3401b86014d",
"reference_id": "Test",
"customer_name": "Reinaldy",
"payment_code": "PSTESTFWL22HMK",
"currency": "PHP",
"amount": 100,
"channel_code": "7ELEVEN",
"description": null,
"is_single_use": true,
"market": "PH",
"status": "ACTIVE",
"metadata": null,
"created_at": "2021-09-06T07:00:29.049822Z",
"updatedAt": "2021-09-06T07:00:29.049822Z",
"expires_at": "2021-09-08T01:48:52Z"
}
Last Updated on 2023-05-21