Axiym
Implementation Guides

Deposit funds

A deposit is initiated outside the Trade API. Send funds from an active registered external account using the deposit instructions returned for the intended Axiym account. Use the API to identify, track, and reconcile the resulting deposit.

Complete Register an external account before initiating the payment.

Every request uses /clients/{clientId}. Keep the registered external account, Axiym account, deposit, and statement in the same client context.

1. Confirm the registered source

Confirm that the bank account or wallet from which the payment will originate:

  • belongs to the same client as the receiving Axiym account;
  • is registered and ACTIVE;
  • uses the intended currency; and
  • for a wallet, uses the intended blockchain network.

Do not send funds from an unregistered or third-party account.

2. Select the Axiym account

List Axiym accounts and select the accountId whose currency and payment rail match the funds you will send.

curl "https://partner-api.sandbox.axiym.io/api/v1/clients/$CLIENT_ID/accounts" \
  --header "Authorization: Bearer $AXIYM_ACCESS_TOKEN"

Do not infer receiving details from paymentRails.

3. Retrieve deposit instructions

curl \
  "https://partner-api.sandbox.axiym.io/api/v1/clients/$CLIENT_ID/accounts/$ACCOUNT_ID/deposit-instructions" \
  --header "Authorization: Bearer $AXIYM_ACCESS_TOKEN"

Bank instructions return beneficiary and receiving-bank details plus an account-specific reference. Wallet instructions return a walletAddress and network.

Testing deposits in sandbox

The conversion quickstart does not require a deposit because Axiym provides a funded sell-side Axiym account.

When specifically testing deposits:

  • use only the registered external-account fixture and bank simulation process confirmed by Axiym; never send a real bank payment to sandbox details;
  • use only the registered test wallet, test asset, and blockchain test network confirmed for the sandbox workflow; and
  • verify the deposit, notification, account credit, and statement entry in the same way you would in production.

4. Send the funds

In production, initiate the bank or blockchain payment from the registered external account using the exact instructions returned for the Axiym account. Include the returned reference on a bank transfer, and use the returned network for a wallet transfer.

In sandbox, use the test process agreed with Axiym. Never reuse payment details from another environment or resource scope.

5. Find and track the deposit

curl \
  "https://partner-api.sandbox.axiym.io/api/v1/clients/$CLIENT_ID/deposits?accountId=$ACCOUNT_ID" \
  --header "Authorization: Bearer $AXIYM_ACCESS_TOKEN"

Store the matching depositId, then retrieve that deposit when you need its current status or complete details.

curl \
  "https://partner-api.sandbox.axiym.io/api/v1/clients/$CLIENT_ID/deposits/$DEPOSIT_ID" \
  --header "Authorization: Bearer $AXIYM_ACCESS_TOKEN"

Do not rely on the Axiym account balance until the deposit is COMPLETED. HELD is non-terminal; CANCELED and REJECTED mean the deposit did not complete.

6. Reconcile the credit

Retrieve the Axiym account statement after completion:

curl \
  "https://partner-api.sandbox.axiym.io/api/v1/clients/$CLIENT_ID/accounts/$ACCOUNT_ID/statement" \
  --header "Authorization: Bearer $AXIYM_ACCESS_TOKEN"

Use relatedResourceType: DEPOSIT and depositId to join the posted credit to the deposit record and resulting running balance.