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.

POST/openapi/payout/orders

Header

KolomTipeWajibDeskripsi
x-api-keystringYaPedagang API Key. Gunakan nilai yang diawali dengan mch_ dari halaman pengaturan API pedagang.
x-merchant-uidstringYaMerchant UID.
x-timestampstringYa13 digit milidetik timestamp. Penyimpangan jam yang diperbolehkan secara default adalah 5 menit.
x-noncestringYaString acak unik untuk setiap permintaan, hingga 128 karakter. Penggunaan kembali ditolak.
x-signaturestringYaTanda tangan hex dihasilkan dengan HMAC-SHA256. Payload berisi Merchant UID, timestamp, nonce, metode, jalur, query kanonik, dan body kanonik.

Parameter

KolomTipeWajibDeskripsi
chainCodestringYaKode rantai. Nilai yang didukung: TRON / BSC / SOL.
tokenSymbolstringYaSimbol token.
fromAddressstringTIDAKAlamat pengirim yang ditentukan. Jika dihilangkan, sistem akan menetapkannya secara otomatis.
toAddressstringYaAlamat penerimaan.
amountstringYaJumlah pembayaran, hingga 6 tempat desimal.
deleteSourceAfterSuccessbooleanTIDAKBoolean 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.
merchantOrderNostringYaNomor pesanan sisi pedagang.
notifyUrlstringYaPanggilan 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

KolomTipeWajibDeskripsi
orderNostringYaNomor pesanan pembayaran platform.
merchantOrderNostring | nullYaNomor pesanan pedagang.
fromAddressstring | nullYaAlamat pengirim sebenarnya.
toAddressstringYaAlamat penerimaan.
amountstringYaJumlah pembayaran.
txHashstring | nullYaHash on-chain dikembalikan setelah siaran.
statusstringYadiserahkan / disiarkan / confirmed / failed.
submittedAtstring | nullYaWaktu yang diserahkan.
broadcastedAtstring | nullYaWaktu siaran.
confirmedAtstring | nullYaWaktu konfirmasi.
failedAtstring | nullYaWaktu gagal.
createdAtstring | nullYaWaktu 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.