Buat pesanan payout
Membuat perintah pembayaran. Setelah sukses, platform membekukan jumlah pembayaran dan biaya jaringan, lalu mengembalikan detail pesanan.
Jika fromAddress tidak disediakan, sistem secara otomatis memilih alamat dengan saldo yang cukup. Jika tidak ada yang tersedia, saldo alamat tidak mencukupi.
Header
| Kolom | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| x-api-key | string | Ya | Pedagang API Key. Gunakan nilai yang diawali dengan mch_ dari halaman pengaturan API pedagang. |
| x-merchant-uid | string | Ya | Merchant UID. |
| x-timestamp | string | Ya | 13 digit milidetik timestamp. Penyimpangan jam yang diperbolehkan secara default adalah 5 menit. |
| x-nonce | string | Ya | String acak unik untuk setiap permintaan, hingga 128 karakter. Penggunaan kembali ditolak. |
| x-signature | string | Ya | Tanda tangan hex dihasilkan dengan HMAC-SHA256. Payload berisi Merchant UID, timestamp, nonce, metode, jalur, query kanonik, dan body kanonik. |
Parameter
| Kolom | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| chainCode | string | Ya | Kode rantai. Nilai yang didukung: TRON / BSC / SOL. |
| tokenSymbol | string | Ya | Simbol token. |
| fromAddress | string | TIDAK | Alamat pengirim yang ditentukan. Jika dihilangkan, sistem akan menetapkannya secara otomatis. |
| toAddress | string | Ya | Alamat penerimaan. |
| amount | string | Ya | Jumlah pembayaran, hingga 6 tempat desimal. |
| deleteSourceAfterSuccess | boolean | TIDAK | Boolean JSON opsional, default false. Jika true, nonaktifkan sumber hanya setelah pembayaran ini dikonfirmasi on-chain; kegagalan atau pembatalan tidak menghapusnya. Pembayaran tidak mewajibkan cadangan saldo. |
| merchantOrderNo | string | Ya | Nomor pesanan sisi pedagang. |
| notifyUrl | string | Ya | Panggilan balik khusus pesanan URL. Direkomendasikan HTTPS URL publik yang dimiliki oleh pedagang. |
Contoh permintaan
{
"chainCode": "TRON",
"tokenSymbol": "USDT",
"fromAddress": "TNjBrNq2a9FK2vwu4W9C1QdLKSZ42Yx5YY",
"toAddress": "TS7b7iD8G2PaPqK1TqSmLJ9nrrYH4oKX1S",
"amount": "35.50",
"deleteSourceAfterSuccess": false,
"merchantOrderNo": "PO202604150001",
"notifyUrl": "https://merchant.example.com/api/uugate/payout-notify"
}Kolom respons
| Kolom | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| orderNo | string | Ya | Nomor pesanan pembayaran platform. |
| merchantOrderNo | string | null | Ya | Nomor pesanan pedagang. |
| fromAddress | string | null | Ya | Alamat pengirim sebenarnya. |
| toAddress | string | Ya | Alamat penerimaan. |
| amount | string | Ya | Jumlah pembayaran. |
| txHash | string | null | Ya | Hash on-chain dikembalikan setelah siaran. |
| status | string | Ya | diserahkan / disiarkan / confirmed / failed. |
| submittedAt | string | null | Ya | Waktu yang diserahkan. |
| broadcastedAt | string | null | Ya | Waktu siaran. |
| confirmedAt | string | null | Ya | Waktu konfirmasi. |
| failedAt | string | null | Ya | Waktu gagal. |
| createdAt | string | null | Ya | Waktu yang diciptakan. |
Contoh respons
{
"orderNo": "PO1776193200A1B2C3D4",
"merchantOrderNo": "PO202604150001",
"fromAddress": "TNjBrNq2a9FK2vwu4W9C1QdLKSZ42Yx5YY",
"toAddress": "TS7b7iD8G2PaPqK1TqSmLJ9nrrYH4oKX1S",
"amount": "35.500000",
"txHash": "b3d4fb0cb11eb86bb906d1e0ee3b84e17f40d5441d1e4c651ea46920a48a9a01",
"status": "broadcasted",
"submittedAt": "2026-04-15T03:00:00Z",
"broadcastedAt": "2026-04-15T03:00:08Z",
"confirmedAt": null,
"failedAt": null,
"createdAt": "2026-04-15T03:00:00Z"
}Contoh kode
cURL Contoh Permintaan
curl -X POST 'https://api.uugate.com/openapi/payout/orders' \
-H 'Content-Type: application/json' \
-H 'x-api-key: mch_xxxxxxxxxxxxxxxxxxxx' \
-H 'x-merchant-uid: 880001' \
-H 'x-timestamp: 1776193200000' \
-H 'x-nonce: 2f5c7b147c3748f0a8b3d9bb38aa91a4' \
-H 'x-signature: <SIGNATURE_HEX>' \
-d '{
"chainCode": "TRON",
"tokenSymbol": "USDT",
"fromAddress": "TNjBrNq2a9FK2vwu4W9C1QdLKSZ42Yx5YY",
"toAddress": "TS7b7iD8G2PaPqK1TqSmLJ9nrrYH4oKX1S",
"amount": "35.50",
"deleteSourceAfterSuccess": false,
"merchantOrderNo": "PO202604150001",
"notifyUrl": "https://merchant.example.com/api/uugate/payout-notify"
}'Catatan
- API publik hanya mendukung pembayaran tunggal. Pembayaran batch hanya tersedia di dashboard merchant.
- Pembayaran 10 memerlukan saldo tersedia sumber minimal 10, tanpa cadangan tambahan, apa pun nilai deleteSourceAfterSuccess. Jumlah pembayaran tidak dikurangi; akun biaya tetap harus mencukupi biaya jaringan.
- Kirim true / false, bukan string. Percobaan ulang dengan merchantOrderNo yang sama harus mempertahankan parameter ini. Penghapusan sumber tidak dapat dipilih jika transfer lain belum selesai.
- Pembuatan atau broadcast berhasil bukan konfirmasi on-chain. Penghapusan nonpermanen mempertahankan riwayat, pembukuan, dan referensi kunci. Kegagalan atau pembatalan mempertahankan sumber.
- The create API automatically attempts submission. Use status from the response or a later query; an HTTP 2xx alone is not on-chain success.