Axiym

Events

View Markdown

Client Trade API webhooks cover client onboarding and availability, withdrawals, deposits, conversions, address book entries, and posted Axiym account balance movements. Each event is delivered as a webhook envelope with a type and a compact data payload.

Webhooks are notifications, not state transfer: the payload carries just enough to route the event and correlate it with your records. Fetch the corresponding resource from the Client Trade API when you need its complete or latest state. For an unconfirmed conversion, use the retained create response; conversion reads are available only after confirmation.

Event envelope

FieldDescription
idUnique webhook event identifier. Use this for de-duplication.
timestampTime when Axiym created the event.
typeEvent name.
dataCompact event payload.

The exact data schema and a full payload example for every event are in the Events reference — it is the source of truth for webhook payloads.

Client events

EventMeaning
client.createdAxiym created a client record for the partnership.
client.updatedAxiym updated a client record. A disabled or archived update also emits client.disabled.
client.onboarding-finishedDeprecated. Legacy activation event, emitted alongside client.activated during migration.
client.activatedA client became available for Client Trade API operations, initially or after being disabled.
client.disabledA client is no longer available for new Client Trade API operations.

Use client.activated as the asynchronous signal that a client became available, including after reactivation. Fetch GET /clients/{clientId} to check current availability and start business operations only when its status is ACTIVE. Use GET /onboardings/{clientId} for the onboarding outcome and any available rejection reason.

Withdrawal events

EventMeaning
withdrawal.createdA withdrawal was confirmed and accepted for execution.
withdrawal.heldWithdrawal processing is temporarily on hold.
withdrawal.completedA withdrawal completed successfully.
withdrawal.canceledA withdrawal was canceled before completion. Carries reasonCode.
withdrawal.rejectedA withdrawal was rejected and will not complete. Carries reasonCode.

Axiym account events

EventMeaning
account.creditedA posted movement credited the Axiym account. Carries the movement amount.
account.debitedA posted movement debited the Axiym account. Carries the movement amount.
account.activatedThe Axiym account became active, initially or after a suspension.
account.suspendedThe Axiym account was suspended.
account.closedThe Axiym account was closed.

account.credited / account.debited describe immutable posted movements, so the amount is part of the event; the current balance is not — fetch it via GET /clients/{clientId}/accounts/{accountId}. Movements linked to an API resource carry relatedResourceType / relatedResourceId so you can correlate them with the deposit, conversion, or withdrawal you already track. A PAYOUT movement originates from the Payment API; retrieve the payout there.

Deposit events

EventMeaning
deposit.createdAn incoming payment was detected and is awaiting crediting.
deposit.heldDeposit processing is temporarily on hold.
deposit.completedA deposit completed and credited the receiving Axiym account.
deposit.canceledA deposit was canceled before the Axiym account was credited. Carries reasonCode.
deposit.rejectedA deposit was rejected and will not credit the Axiym account. Carries reasonCode.

Conversion events

EventMeaning
conversion.createdA conversion was confirmed and execution has begun.
conversion.completedA conversion completed; the sell-side Axiym account was debited and the buy-side Axiym account was credited.
conversion.canceledA conversion was canceled, expired, or could not complete. Carries reasonCode.

Address book entry events

The API contract retains the destination.* event names for address book entries. These events describe the lifecycle of the owned bank account or wallet used as a deposit source and withdrawal recipient; they do not represent a separate destination-only resource.

EventMeaning
destination.createdAn address book entry was created and is awaiting review.
destination.activatedThe address book entry became available as a permitted deposit source and withdrawal recipient.
destination.suspendedThe address book entry became temporarily unavailable for deposits and withdrawals.
destination.closedThe address book entry was permanently retired.

See Address Book for the ownership model and account lifecycle.

Processing guidance

  • Verify the webhook signature before processing the payload.
  • De-duplicate deliveries by the event id.
  • Use the resource identifier and externalReference where present to correlate the event with your records.
  • Dispatch by event type first. Require clientId for Client Trade resource events and use it with your stored resource ownership mapping to route them. The subscription.test payload is { "test": "OK" } and has no clientId; other product events may also use a different shape. Handle test deliveries separately and ignore unknown event types safely.
  • Treat webhooks as at-least-once delivery. Duplicate events can occur.
  • Fetch the corresponding resource from the API if ordering matters or if you need the latest state before continuing.