4. Cancel a crypto payout

PUT/payout/withdraw/{payout_reference}/local/crypto/cancel

Cancel the crypto payout. If you decide not to proceed with the payout after the creation, you MUST make this call in order to return the funds to your merchant balance (else they remain reserved and unavailable for others to spend).

Path Parameters

payout_referencestringrequired

Unique payout reference number given when initiating the crypto payout

Response

Success

order_idstring

The merchant’s system unique order id.

payout_referencestring

Unique payout reference number

type"refund" | "withdraw"

The type of payout:

  1. refund - A partial or complete refund of a prior successful payment.

  2. withdraw - A withdrawal (or payout) of the merchant’s accumulated local currency balance in cryptocurrency.

account_type"local"

Account type the funds are drawn from: local - Funds are drawn from a local currency account

convert_type"local-local" | "local-crypto"

Type of conversion the funds underwent:

  1. local-local - Funds are drawn from a local currency account and paid out as local currency.

  2. local-crypto - Funds are drawn from a local currency account and paid out as cryptocurrency.

payout_destination_type"onchain-wallet" | "binance"

This indicates the type of wallet the payout goes to, either a Binance wallet or other onchain-wallet.

local_currencystring

The local currency equivalent of the payout. This should be a 3-character ISO 4217 currency code. Please ignore if the payout is in cryptocurrency.

local_amountnumber<float>

The local currency amount to be paid out. Please ignore if the payout is in cryptocurrency.

crypto_currencystring

Cryptocurrency that will be paid out. Please ignore if the payout is in local currency.

crypto_amountnumber<float>

Amount of cryptocurrency to be paid out if the payout is in cryptocurrency.

network_fee_crypto_amountnumber<float>

Amount of cryptocurrency representing the network fee. This is denominated in crypto_currency.

net_crypto_amountnumber<float>

Amount of cryptocurrency after deduction of the network_fee_crypto_amount.

crypto_addressstring

Address that recipient will receive the payout at. This could either be a unique wallet address hash or Binance ID, depending on the field - payout_destination_type.

exchange_ratenumber<float>

The exchange rate that will be used to exchange local currency to cryptocurrency or vice-versa.

status"new" | "confirm" | "cancel" | "done"

The current status of the payout:

  1. new - The payout has just been created or refreshed, but has not been confirmed or cancelled yet. This status will appear if you call the Create Crypto Payout via API.

  2. confirm - The payout has been confirmed. This status will appear if you call the Confirm Crypto Payout via API.

  3. done - The payout has been broadcasted to the blockchain and successfully paid out to the recipient.

  4. cancel - The payout has been cancelled. This status will appear if you call the Cancel Crypto Payout via API and successfully cancel the payout.

status_datestring<date-time>

Date and time the status was updated

merchant_namestring

Name of the merchant

remarksstring

Remarks for the payout

notify_urlstring<uri>

The URL to send the webhook notification. The webhook URL given in your account setup will be used if this is not provided. For testing you can use webhook.site

notify_secretstring

The shared secret that will be used to sign the notification. This secret can be at most 64 characters long. If this is not provided in the payment request, the system will create a random secret just for that payment.

No permission to cancel the payout

messagestring

no_permission - refers to when trying to confirm, cancel or refresh the payout that has been confirmed or cancelled. Or access token has expired.

Request
curl -X PUT "https://api.triple-a.io/api/v2/payout/withdraw/<payout_reference>/local/crypto/cancel" \
  -H "Authorization: Bearer <token>"
Response
{
  "order_id": "<your_order_id>",
  "payout_reference": "AGJ-937870-PYT",
  "type": "withdraw",
  "account_type": "local",
  "convert_type": "local-crypto",
  "payout_destination_type": "onchain-wallet",
  "local_currency": "SGD",
  "local_amount": 10,
  "crypto_currency": "testBTC",
  "crypto_amount": 0.001067203,
  "network_fee_crypto_amount": 0.000007203,
  "net_crypto_amount": 0.00106,
  "crypto_address": "1NcAyv8YVCnQGCrDb4kiUm1jj6GLyowxER",
  "exchange_rate": 10277.49,
  "status": "new",
  "status_date": "2020-01-26T03:57:22Z",
  "merchant_name": "A to Z Toys and Games",
  "remarks": "Refund for a water pistol",
  "notify_url": "https://webhook.site/1a2d24e8-1594-4569-bc35-079049e4d805",
  "notify_secret": "Cf9mx4nAvRuy5vwBY2FCtaKr"
}