Skip to content
coinkun Docs API v1
Coinkun home Dashboard

Account

Create multi-currency accounts, generate receiving addresses, check balances and send payments.

Examples use LTC unless stated otherwise. Use IDs and addresses for the selected currency.

On this page

#Create Account

POST /accounts Available

Create an account and receive its Account ID and Transfer Key. No authentication is required. Profile metadata is optional.

URL
https://coinzaka.com/api/v1/accounts
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
profileobject | nullOptional merchant metadata: first_name, last_name, email, country (ISO 3166-1 alpha-3), org_type are strings; send_updates is a boolean. Null and empty profile objects are accepted. Individual fields cannot be null. Nonempty email must be a valid email address; nonempty country must be a registered uppercase ISO 3166-1 alpha-3 code.Optional
curl --request POST "https://coinzaka.com/api/v1/accounts" \
  --header 'Content-Type: application/json' \
  --data-binary @- <<JSON
{}
JSON

Responses are illustrative.

#Account Info

GET /accounts/{account} Available

Retrieve public account settings for one or all enabled currencies. No authentication is required.

URL
https://coinzaka.com/api/v1/accounts/{account}
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}" \
  --get \
  --data-urlencode "currency=ltc"

Bash: set ACCOUNT_ID before running. Responses are illustrative.

#Account Balance

GET /accounts/{account}/balance Available

Retrieve total and available balances by currency. Use addresses to restrict the result to selected receiving addresses.

URL
https://coinzaka.com/api/v1/accounts/{account}/balance
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Optional
addressesstringComma-separated owned receiving addresses; an explicit currency is required when supplied. At most 100 entries before deduplication; duplicate addresses count once. Empty entries, spaces and malformed filters return 400; any missing, foreign or change address returns 404.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/balance" \
  --get \
  --data-urlencode "currency=ltc"

Bash: set ACCOUNT_ID before running. Responses are illustrative.

#Generate Address

POST /accounts/{account}/addresses Available

Generate a receiving address for the selected currency. No authentication is required. An optional callback overrides the account default for this address.

URL
https://coinzaka.com/api/v1/accounts/{account}/addresses
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
Idempotency-KeystringRequired for XMR; retry the same identical address intent.Optional
accountstringAccount ID returned by Create Account.Required
currencystringAllowed: btc, ltc, trx, usdt@trx, xmr.Required
addr-typestringReceiving address format. BTC defaults to p2sh-p2wpkh and also supports p2wpkh; LTC uses p2wpkh; TRX/USDT use generic (tron is accepted as an alias). Allowed: p2sh-p2wpkh, p2wpkh, generic, tron, monero.Optional
callbacknull | object | objectMaximum 4096 canonical JSON bytes and nesting depth 8. HTTP(S) URL without credentials or fragment; method defaults to POST. Omitted or explicit-null data is stored and returned as null; receipt notification payloads use an empty object in that case. Explicit data objects are preserved. A null or omitted address callback inherits the current account or wallet default; an empty callback object disables it.Optional
curl --request POST "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/addresses" \
  --header 'Content-Type: application/json' \
  --data-binary @- <<JSON
{
  "currency": "ltc",
  "addr-type": "p2wpkh"
}
JSON

Bash: set ACCOUNT_ID before running. Responses are illustrative.

#Address Info

GET /accounts/{account}/addresses/{address} Available

Retrieve the receiving address, creation date, address type and balance snapshot. No authentication is required.

URL
https://coinzaka.com/api/v1/accounts/{account}/addresses/{address}
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
addressstringReceiving address belonging to the account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/addresses/${ADDRESS:?Set ADDRESS}" \
  --get \
  --data-urlencode "currency=ltc"

Bash: set ACCOUNT_ID, ADDRESS before running. Responses are illustrative.

#Address Balance

GET /accounts/{account}/addresses/{address}/balance Available

Retrieve total and available balances for one receiving address. No authentication is required.

URL
https://coinzaka.com/api/v1/accounts/{account}/addresses/{address}/balance
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
addressstringReceiving address belonging to the account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/addresses/${ADDRESS:?Set ADDRESS}/balance" \
  --get \
  --data-urlencode "currency=ltc"

Bash: set ACCOUNT_ID, ADDRESS before running. Responses are illustrative.

#Account Addresses

GET /accounts/{account}/addresses Available

List receiving addresses and their balances for one currency, newest first. Filter by address prefix or exclude empty addresses.

URL
https://coinzaka.com/api/v1/accounts/{account}/addresses
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Required
limitintegerItems per page. Default 10; range 1 to 100.Optional
offsetintegerMatching items to skip. Default 0; maximum 10000.Optional
qstringOptional case-sensitive address prefix filter, for example address:rltc1. The prefix contains 1 to 90 ASCII letters or digits; an empty q means no filter. empty:false excludes addresses whose saved total balance is zero, including when available is zero. empty:true applies no balance filter. Both filters may be combined once each, separated by a comma, in either order. Unknown filters, duplicate names, wildcards and other empty values are rejected with 400.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/addresses" \
  --get \
  --data-urlencode "currency=ltc" \
  --data-urlencode "limit=10" \
  --data-urlencode "offset=0"

Bash: set ACCOUNT_ID before running. Responses are illustrative.

#Estimate Transfer

GET /accounts/{account}/transfer Available

Preview recipient amounts, network fees and service fees before sending a payment. An estimate does not reserve funds.

URL
https://coinzaka.com/api/v1/accounts/{account}/transfer
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Required
destinationsstring1..100 comma-separated address:amount pairs. Amount is integer atomic units or a percentage (up to eight decimal places) of verified available source funds before fees.Required
addressesstringUp to 100 owned source addresses, comma-separated. BTC/LTC accept receiving and change addresses. The payment and fees use only selected funds; insufficient funds never widen the selection. TRX/USDT spend own receiving addresses: without addresses one recipient is paid by the smallest address that covers it alone (ties by address creation); otherwise, the given or all own addresses pay in order of available funds, the largest first, each part a separate transaction (at most 20 parts). A percentage is a share of the available balance of those addresses.Optional
feestringNetwork fee strategy. Default normal. TRX/USDT accept priority, custom and fee-rate and price, save and answer them as normal. Allowed: normal, priority, custom.Optional
fee-rateintegerRequired only for custom; integer atomic/vbyte, at most 99999 (Core accepts below one coin per 1,000 vbytes).Optional
subtract-fee-from-amountbooleanDeduct network and service fees from recipient amounts. Default false.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/transfer" \
  --get \
  --data-urlencode "currency=ltc" \
  --data-urlencode "destinations=${DESTINATION_ADDRESS:?Set DESTINATION_ADDRESS}:100000"

Bash: set ACCOUNT_ID, DESTINATION_ADDRESS before running. Responses are illustrative.

#Transfer

POST /accounts/{account}/transfer Available

Send a payment from the account balance. Authorize with a Transfer Key or access token. BTC/LTC and TRX/USDT support multiple recipients; TRX/USDT pay each part from one source address, chosen automatically when addresses is omitted.

URL
https://coinzaka.com/api/v1/accounts/{account}/transfer
Content type
application/json
Authorization
Account transfer-key in the JSON body, or an Authorization: Bearer access token from Login.

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
Idempotency-KeystringOptional request identifier of 16 to 128 letters, digits, underscores or hyphens. Reuse only for an identical request.Optional
currencystringAllowed: btc, ltc, trx, usdt@trx, xmr.Required
transfer-keystringRequired unless an Authorization Bearer access token is sent.Optional
fee-limitinteger | stringMaximum network fee in atomic units of the payment currency, including USDT for USDT TRC20. Must be positive. Omit to use the fresh estimate. BTC/LTC also enforce a non-overridable network fee ceiling per transaction of 100000 satoshi / 1000000 litoshi, respectively; a lower client limit remains binding.Optional
processing-fee-limitinteger | stringMaximum service fee in atomic units of the payment currency. Omitted means freeze the current tariff quote; zero disallows a service fee.Optional
destinationsarrayRecipient address and amount pairs. Amounts are atomic integers or percentages. Up to 100 recipients; a TRX/USDT payment pays them in parts, one per source and recipient, at most 20 (see addresses).Required
addressesarray | stringOwned source addresses as an array or comma-separated string. BTC/LTC accept receiving and change addresses. The payment and fees use only selected funds; insufficient funds never widen the selection. TRX/USDT spend own receiving addresses: without addresses one recipient is paid by the smallest address that covers it alone (ties by address creation); otherwise, the given or all own addresses pay in order of available funds, the largest first, each part a separate transaction (at most 20 parts). A percentage is a share of the available balance of those addresses.Optional
feestringNetwork fee strategy. Default normal. TRX/USDT accept priority, custom and fee-rate and price, save and answer them as normal. Allowed: normal, priority, custom.Optional
fee-rateinteger | stringPositive integer atomic/vbyte, at most 99999 (Core accepts below one coin per 1,000 vbytes). Required only for custom.Optional
subtract-fee-from-amountbooleanDeduct both fees from recipient amounts. Default false.Optional
curl --request POST "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/transfer" \
  --header 'Content-Type: application/json' \
  --data-binary @- <<JSON
{
  "currency": "ltc",
  "transfer-key": "${TRANSFER_KEY:?Set TRANSFER_KEY}",
  "destinations": [
    {
      "address": "${DESTINATION_ADDRESS:?Set DESTINATION_ADDRESS}",
      "amount": 100000
    }
  ],
  "fee": "normal",
  "subtract-fee-from-amount": false
}
JSON

Bash: set ACCOUNT_ID, TRANSFER_KEY, DESTINATION_ADDRESS before running. Replace placeholders in the JSON Request tab. Responses are illustrative. Keep credentials on your server and out of shared code.

#Service Fees Reference

Incoming payments have no service fee. Outgoing payments incur a service fee and a separate network fee. The transfer estimate shows the applicable charges.

CurrencyPercentage policyFixed policyFree below
BTC0.5%0.00025 BTC0.00060 BTC
LTC0.5%0.15 LTC0.1 LTC
TRX1%100 TRX30 TRX (fixed only)
USDT TRC201%50 USDT20 USDT (fixed only)

#Automatic Payment Activity

GET /accounts/{account}/auto-transfers Available

Read paginated Instant, Recurring and Threshold activity for one currency, including wait or skip reasons, next checks and payment links. Authentication is required.

URL
https://coinzaka.com/api/v1/accounts/{account}/auto-transfers
Content type
application/json
Authorization
Account transfer-key in the query string, or an Authorization: Bearer access token from Login.

Parameters

ParameterTypeDescriptionRequired
accountstringRequired
transfer-keystringOptional
currencystringAllowed: btc, ltc, trx, usdt@trx, xmr.Required
limitintegerOptional
offsetintegerOptional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/auto-transfers" \
  --get \
  --data-urlencode "transfer-key=${TRANSFER_KEY:?Set TRANSFER_KEY}" \
  --data-urlencode "currency=ltc" \
  --data-urlencode "limit=10" \
  --data-urlencode "offset=0"

Bash: set ACCOUNT_ID, TRANSFER_KEY before running. Responses are illustrative. Keep credentials on your server and out of shared code.

#Account History

GET /accounts/{account}/history Available

List incoming receipts and outgoing payments. Omit currency to combine enabled currencies in one page, or filter by currency, item type, address and date.

URL
https://coinzaka.com/api/v1/accounts/{account}/history
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Optional
qstringComma-separated item-type (receipt or payment), address, date-from and date-to filters, each once. Address is a case-sensitive substring of 1 to 90 letters or digits and selects whole items. A TRON group matches any part's source or recipient. Dates are inclusive ISO 8601 timestamps; an omitted timezone means UTC. Encode plus signs as %2B. Underscore aliases are accepted; duplicate and unknown filters return 400.Optional
addressesstringComma-separated list of 1–100 exact owned addresses. Selects whole receipt groups and payments spending from these addresses, preserving original amounts. Any TRON group part may match. Intersects q at whole-item level (the filters may match different parts); applied before count and pagination without duplicating groups. Unknown or foreign addresses match no items.Optional
limitintegerItems per page. Default 10; maximum 100.Optional
offsetintegerMatching items to skip. Default 0; maximum 10000.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/history" \
  --get \
  --data-urlencode "currency=ltc" \
  --data-urlencode "q=item-type:receipt,date-from:2026-09-16T00:00:00Z" \
  --data-urlencode "limit=10" \
  --data-urlencode "offset=0"

Bash: set ACCOUNT_ID before running. Responses are illustrative.

#Account History Item

GET /accounts/{account}/history/{HistoryItemID} Available

Retrieve a receipt's receiving outputs or a payment's recipients, fees and transaction IDs using its 64-character hexadecimal ID.

URL
https://coinzaka.com/api/v1/accounts/{account}/history/{HistoryItemID}
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
HistoryItemIDstringReceipt transaction hash or payment ID, as 64 hexadecimal characters.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/history/${HISTORY_ITEM_ID:?Set HISTORY_ITEM_ID}" \
  --get \
  --data-urlencode "currency=ltc"

Bash: set ACCOUNT_ID, HISTORY_ITEM_ID before running. Responses are illustrative.

#Address History

GET /accounts/{account}/addresses/{address}/history Available

List incoming and outgoing transactions for one receiving address, newest first. Amounts show the net movement at that address in atomic units.

URL
https://coinzaka.com/api/v1/accounts/{account}/addresses/{address}/history
Content type
application/json

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
addressstringReceiving address belonging to the account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Optional
limitintegerItems per page. Default 10; maximum 100.Optional
offsetintegerMatching items to skip. Default 0; maximum 10000.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/addresses/${ADDRESS:?Set ADDRESS}/history" \
  --get \
  --data-urlencode "currency=ltc" \
  --data-urlencode "limit=10" \
  --data-urlencode "offset=0"

Bash: set ACCOUNT_ID, ADDRESS before running. Responses are illustrative.

#Account Callback

GET /accounts/{account}/callback Available

Retrieve the account's callback configuration for the selected currency. Authentication is required.

URL
https://coinzaka.com/api/v1/accounts/{account}/callback
Content type
application/json
Authorization
Account transfer-key in the query string, or an Authorization: Bearer access token from Login.

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Required
transfer-keystringRequired unless an Authorization Bearer access token is sent.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/callback" \
  --get \
  --data-urlencode "currency=ltc" \
  --data-urlencode "transfer-key=${TRANSFER_KEY:?Set TRANSFER_KEY}"

Bash: set ACCOUNT_ID, TRANSFER_KEY before running. Responses are illustrative. Keep credentials on your server and out of shared code.

#Address Callback

GET /accounts/{account}/addresses/{address}/callback Available

Retrieve the effective callback configuration for a receiving address, including any account default. Authentication is required.

URL
https://coinzaka.com/api/v1/accounts/{account}/addresses/{address}/callback
Content type
application/json
Authorization
Account transfer-key in the query string, or an Authorization: Bearer access token from Login.

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
addressstringReceiving address belonging to the account.Required
currencystringPayment currency code. Allowed: btc, ltc, trx, usdt@trx, xmr.Optional
transfer-keystringRequired unless an Authorization Bearer access token is sent.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/addresses/${ADDRESS:?Set ADDRESS}/callback" \
  --get \
  --data-urlencode "currency=ltc" \
  --data-urlencode "transfer-key=${TRANSFER_KEY:?Set TRANSFER_KEY}"

Bash: set ACCOUNT_ID, ADDRESS, TRANSFER_KEY before running. Responses are illustrative. Keep credentials on your server and out of shared code.

#Callback Log

GET /accounts/{account}/addresses/{address}/callback-log Available

List callback delivery attempts for a receiving address, newest first. Authentication is required.

URL
https://coinzaka.com/api/v1/accounts/{account}/addresses/{address}/callback-log
Content type
application/json
Authorization
Account transfer-key in the query string, or an Authorization: Bearer access token from Login.

Parameters

ParameterTypeDescriptionRequired
accountstringAccount ID returned by Create Account.Required
addressstringReceiving address belonging to the account.Required
currencystringPayment currency code; selects the asset for rows and total. Omitted on a shared TRON address it selects native TRX; required when the address exists on several networks. Allowed: btc, ltc, trx, usdt@trx, xmr.Optional
transfer-keystringRequired unless an Authorization Bearer access token is sent.Optional
limitintegerItems per page. Default 10; maximum 100.Optional
offsetintegerMatching items to skip. Default 0; maximum 10000.Optional
curl --request GET "https://coinzaka.com/api/v1/accounts/${ACCOUNT_ID:?Set ACCOUNT_ID}/addresses/${ADDRESS:?Set ADDRESS}/callback-log" \
  --get \
  --data-urlencode "currency=ltc" \
  --data-urlencode "transfer-key=${TRANSFER_KEY:?Set TRANSFER_KEY}" \
  --data-urlencode "limit=10" \
  --data-urlencode "offset=0"

Bash: set ACCOUNT_ID, ADDRESS, TRANSFER_KEY before running. Responses are illustrative. Keep credentials on your server and out of shared code.

Coinkun API v1

Turning a preference off removes its saved values from this browser. It does not delete an account, change a payment or lock your current session. Read the storage details.

Type to search the documentation

↑↓ navigate↵ openesc close