Integrasi Backend•Webhook Callback

Spesifikasi Callback Payment

Callback Payment dipicu setelah transaksi pembayaran melalui kanal **SSO Payment**, **Payment Direct**, atau **Transfer Out** selesai diproses oleh core gateway Qoin.

HTTP Callback & Headers

CALLBACKPOST {UrlCallback}
HTTP Request Headers
POST {UrlCallback} HTTP/1.1
Content-Type: application/json; charset=utf-8
Accept: application/json
Accept-Charset: utf-8
Signature: {RSA_SIGNATURE_BASE64}
Header Spesifikasi Callback Payment
ParameterTipe DataStatusDeskripsi & Contoh
Content-TypestringWajib
Format konten body. Bernilai 'application/json; charset=utf-8'.
SignaturestringWajib
Tanda tangan digital RSA-SHA256 dari Raw HTTP Body (Base64 string).

Model & Kamus Data Payment

Model C# rujukan: SsoPaymentCallbak (Models/SsoModels.cs)

Data Field Payload Payment
ParameterTipe DataStatusDeskripsi & Contoh
RefferenceNostringWajib
Nomor referensi transaksi unik yang digenerate oleh sistem gateway.
Contoh: SSO240930123456ABC
OrderNostringWajib
Nomor order pesanan unik dari pihak merchant.
Contoh: INV-2026-0001
ReceiptNostringWajib
Nomor struk/bukti transaksi resmi dari sistem core Qoin.
Contoh: SSO240930123456ABC
AmountdecimalWajib
Total nominal pembayaran yang berhasil diproses.
Contoh: 50000.0
StatusintWajib
Kode status pembayaran numerik (1 = Sukses, selain 1 = Gagal).
Contoh: 1
Descriptionarray / nullOpsional
Rincian produk/item pembayaran. Bernilai null pada transaksi Transfer Out.
Description[].ProductstringOpsional
Nama produk atau layanan yang dibeli pengguna.
Contoh: Pembelian Token Listrik
Description[].PricedecimalOpsional
Harga per unit produk atau layanan.
Contoh: 50000.0

Contoh Payload Callback Payment

A. Pembayaran SSO / QRIS (Dengan Rincian Produk)

payment_sso_success.json
{
  "RefferenceNo": "SSO240930123456ABC",
  "OrderNo": "INV-2026-0001",
  "ReceiptNo": "SSO240930123456ABC",
  "Amount": 50000.0,
  "Description": [
    {
      "Product": "Pembelian Token Listrik",
      "Price": 50000.0
    }
  ],
  "Status": 1
}

B. Transfer Out / Payout (Tanpa Rincian Produk)

payment_transfer_out.json
{
  "RefferenceNo": "TRX240930789012XYZ",
  "OrderNo": "OUT-2026-0099",
  "ReceiptNo": "TRX240930789012XYZ",
  "Amount": 100000.0,
  "Description": null,
  "Status": 1
}
Penanganan Field Description
Perhatikan bahwa field Description pada Callback Payment dapat bernilai array of object atau null. Pastikan model parser di backend merchant mengakomodasi kedua tipe tersebut.