# Getting Started

Product: Direct Trade API
Guides follow API reference 0.1.0 and event reference 0.1.0.
Canonical page: https://docs.axiym.io/direct-trade-api/integration-guide

Use this guide to build and operate a Direct Trade API integration. It assumes
you already understand Axiym accounts, address book entries, deposits,
conversions, and withdrawals as described in
[Concepts & Workflows](/direct-trade-api/concepts/overview).

Every API resource belongs to your organization. The same integration may
support your own activity, client services, or both, but Direct Trade does not
create a separate Axiym client context for each customer. Keep customer
attribution in your own system.

## Recommended path

### 1. Prepare access

Complete
[Access and environments](/direct-trade-api/integration-guide/access-setup)
to obtain sandbox credentials, provide your egress addresses, and confirm the
Axiym accounts, conversion pairs, and external-account test fixtures available
for testing.

### 2. Understand sandbox testing

Read [Sandbox testing](/direct-trade-api/integration-guide/sandbox-testing)
before moving funds. It covers test balances, wallet transfers on testnet,
and bank scenarios coordinated with Axiym.

### 3. Complete the quickstart

[Make your first conversion](/direct-trade-api/integration-guide/quick-start)
takes you from authentication to a confirmed conversion. It is the shortest
way to validate credentials, Axiym account access, permissions, idempotency,
and the quote-and-confirm workflow.

### 4. Implement the workflows you need

| Guide                                                                              | Use it to                                                                                                     |
| ---------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| [Add to the address book](/direct-trade-api/integration-guide/add-to-address-book) | Add an owned bank account or wallet to the address book for use as a deposit source and withdrawal recipient. |
| [Deposit funds](/direct-trade-api/integration-guide/deposit-funds)                 | Send funds from an address book entry, identify the resulting deposit, and confirm the Axiym account credit.  |
| [Execute a conversion](/direct-trade-api/integration-guide/execute-a-conversion)   | Select a permitted pair, create a locked quote, confirm it, and track execution.                              |
| [Withdraw funds](/direct-trade-api/integration-guide/withdraw-funds)               | Create and confirm a withdrawal from an Axiym account to an active address book entry.                        |
| [Reconcile activity](/direct-trade-api/integration-guide/reconcile-activity)       | Join API resources to account statement entries and verify period balances.                                   |

Add the account or wallet to the address book and wait until the entry is
`ACTIVE` before testing a deposit or withdrawal.

### 5. Apply the shared conventions

The fundamentals apply across Direct Trade API operations:

* [Authentication](/direct-trade-api/integration-guide/fundamentals/authentication)
* [Common Headers](/direct-trade-api/integration-guide/fundamentals/common-headers)
* [Idempotency](/direct-trade-api/integration-guide/fundamentals/idempotency)
* [Pagination and List Filters](/direct-trade-api/integration-guide/fundamentals/pagination-and-query-parameters)
* [Error Handling and Retries](/direct-trade-api/integration-guide/fundamentals/error-handling-and-retries)
* [Rate Limits](/direct-trade-api/integration-guide/fundamentals/rate-limits)
* [Data Formats and Constants](/direct-trade-api/integration-guide/fundamentals/data-formats-and-constants)
* [Payment Rails](/direct-trade-api/integration-guide/fundamentals/payment-rails)
* [Blockchain Networks](/direct-trade-api/integration-guide/fundamentals/blockchain-networks)

## Definition of a production-ready integration

Before moving production funds, your integration should be able to:

* obtain new access tokens before expiry without exposing client secrets;
* attach request IDs and idempotency keys correctly;
* handle asynchronous deposit, conversion, address book entry, and
  withdrawal states;
* distinguish simulated sandbox bank activity from real external settlement;
* retry only requests that are safe to retry;
* follow cursor pagination until `hasNextPage` is false; and
* reconcile completed operations against Axiym account statements and the
  corresponding treasury or customer records in your system.
