Skip to main content

Transactions

Overview

In the Business API, a Transaction represents a record of any financial activity, including deposits, withdrawals, buys, and sells.

The Transaction enables you to track and manage the details of the activities, once they have occurred.

You can find an overview of all transactions against your Business account in the Business Dashboard and subscribe to Transaction events for updates on the status.

The Hosted Checkout experience guides your customers through Noah's user interface to complete transactions. To use this as a payment gateway for your customers, visit the Hosted Checkout Journey.

Transaction Lifecycle

Status Transitions

A transaction progresses through the following statuses:

Pending --> Settled    (success - transaction is final)
Pending --> Failed (failure - may trigger a refund)
StatusMeaningFinality
PendingTransaction has been created and is being processed. For payouts, this means the crypto-to-fiat conversion is underway. For payins, this means the fiat deposit has been received and compliance screening has started.Not final - status will change.
SettledTransaction completed successfully. Funds have been delivered to the destination.Final - no further status changes under normal circumstances.
FailedTransaction could not be completed. For payins, a refund is initiated automatically. For payouts, funds are returned to your account. Check the Refunds array in the webhook payload for refund tracking.Final - check refund status for fund recovery.
tip

Settled represents transaction finality. Once a transaction reaches Settled, it is complete. Reversals occur in rare cases, typically where regulatory or banking-level intervention has occurred. This case is handled manually, where your team will be notified via email, not via the API.

Transaction Types

Transactions are classified by Direction and Network:

DirectionNetworkWhat It Represents
InOffNetworkFiat-to-crypto conversion - fiat was received and crypto was credited to your account
InChain nameOn-chain crypto deposit received from an external wallet
OutOffNetworkCrypto-to-fiat payout - crypto was sold and fiat was sent to a bank account
OutChain nameOn-chain crypto withdrawal to an external wallet address

In orchestrated flows (e.g., a payin that triggers automatic conversion and withdrawal), multiple transactions and webhooks are generated. Use these fields to correlate them:

FieldPurpose
Orchestration.RuleExecutionIDLinks all webhooks in a single orchestrated flow
FiatPayment.FiatDepositIDLinks a conversion transaction to its originating fiat deposit
AdjustmentFor.AdjustedTransactionIDLinks a refund transaction to the original

For full webhook payload details, see Transaction Event and FiatDeposit Event.

Using Transactions

Get Details of a Transaction

To retrieve details of a specific transaction, use the GET /transactions/:TransactionID endpoint in the Business API. This endpoint provides information about individual transactions, including their status and transaction details.

curl -L 'https://api.sandbox.noah.com/v1/transactions/:TransactionID' \
-H 'Accept: application/json' \
-H 'X-Api-Key: <X-Api-Key>'

To use this endpoint, supply the TransactionID obtained from the /transactions/sell or /transactions/buy endpoints, the Transactions events, or from the Business Dashboard.

Get All Transactions

Additionally, to view a list of all the transactions on your account, the GET /transactions endpoint offers paginated transaction history.

curl -L 'https://api.sandbox.noah.com/v1/transactions' \
-H 'Accept: application/json' \
-H 'X-Api-Key: <X-Api-Key>'

As described in the GET /transactions documentation, you can finetune the returned payload, such as by overriding the default sort order, as shown below.

curl -L 'https://api.sandbox.noah.com/v1/transactions?SortDirection=ASC' \
-H 'Accept: application/json' \
-H 'X-Api-Key: <X-Api-Key>'
tip

For updates on transaction status, you are strongly recommended to subscribe to Transactions events.