Skip to Content
APIsTransactions

Transactions

The Transactions API allows you to efficiently manage and retrieve orders associated with your account.

Pre-Requisites

Before you can POST transactions, you need to have the following:

  1. Get KYC approved by Adesic . Please note - if you get redirected to the home page, you are already KYC approved.
  2. POST your bank account & retrieve your bank account ID
  3. POST your wallet & retrieve your wallet ID

Introduction

Creating and managing transactions with the Transactions API is a straightforward process:

  • Create Transaction (POST):
    • Use the /v2/transactions endpoint.
    • Provide essential details like blockchain type, currency pairs, quantities, and associated wallet and bank account information in the request body. More on this below.
    • Results in successful order creation with timestamp and transaction type details.
  • Retrieve All Orders (GET):
    • Utilize the /v2/transactions endpoint with a GET request.
    • Retrieve all orders linked to the provided apiKey.
    • Access detailed information such as IDs, blockchain specifics, currencies involved, and timestamps.
    • Upcoming filtering options allow you to refine results.
  • Retrieve Specific Order (GET):
    • Access details of a specific order using the /v2/transactions/:id endpoint.
    • Provide the order’s ID and apiKey.
    • Retrieve comprehensive details, including transaction types, completion status, and precise currency exchange specifics.

Transactions API Endpoints

Post Transaction

POSThttps://api.adesic.com/v2/transactions

Returns a 201 status code upon successful query. Then returns the successful order. Requires user to have associated bank account and wallet.

Headers

NameTypeDescription
apiKey*stringBlockchain ID

Request Body

The transaction request body contains a top-level transaction object. The transaction object contains the three fields in the following table. The next level contains the information inside the transaction.sourceOrder and transaction.destinationOrder objects.

Field NameTypeDescription
transaction*objectTransaction details.
transaction.paymentRail*stringHow the fiat-side of the transaction will be settled.
transaction.sourceOrder*objectInformation about where you are sending the currency from.
transaction.destinationOrder*objectInformation about where you are sending the currency to.

The transaction.sourceOrder and transaction.destinationOrder objects are identical in structure. It is worth noting that not all fields are required for each destination and source order. However, a combination of all fields are required amongst the entire transaction. Please reference transaction customization for more information. The fields for source and destination order request objects are outlined below.

Order Field NameTypeDescription
walletId*stringThe user’s wallet ID associated with the order.
blockchain*stringBlockchain used for the order.
currency*stringCurrency of the order.
quantity*stringQuantity of the currency in the order.
bankAccountId*stringThe user’s bank ID which the fiat will be sent or received.
{ "id": "txn-123456815", "type": "OFF_RAMP", "createdAt": "2025-02-02T01:40:48.492", "completedAt": null, "updatedAt": "2025-02-02T01:40:48.487", "feeUsd": "0.5", "priceUsd": "50", "sourceOrder": { "bankAccountId": null, "blockchain": "ethereum", "currency": "USDC", "quantity": "50", "walletId": "wal-123456790" }, "destinationOrder": { "bankAccountId": "bac-123456788", "blockchain": null, "currency": "USD", "quantity": "49.5", "walletId": null, "walletAddress": "0x065149eab6eFa05F4639Da6305B58C91BD92d456" } }

Transaction Customization

Selecting a Payment Rail

Adesic supports ACH and WIRE as payment rails. You can select the payment rail by providing one of the former values in the transaction.paymentRail field. Please note that for on ramping, we only support WIRE transactions. This means that if you would like to buy crypto with a fiat currency, you must send Adesic a wire transfer. For off ramping, we support both ACH and WIRE transactions. This means that if you would like to sell crypto for a fiat currency, you can choose to receive USD directly in your bank account via either WIRE or ACH.

WIRES: Cost $25 when OFF RAMPing. We do not charge for WIRES when ON RAMPing, however, your bank may charge you a wire fee. When off ramping via wire, you will receive your funds in your bank account within 1-2 business days.

ACH: Transactions are completely free on the Adesic network. ACH transactions can take 2-5 business days to settle. ACH transactions are only available for off ramping.

Selecting a Blockchain

Please ensure that when selecting a blockchain, that you are using a wallet address that has been registered to that blockchain. For example, if you are using the Ethereum blockchain, you must use an Ethereum wallet address. If you are using the Avalanche blockchain, you must use an Avalanche wallet address. For wallet addresses that are usable across multiple blockchains, you must register the wallet address to each blockchain that you would like to use it with.

Off Ramp Transaction

Off ramp transactions are inferred from the request. If the source order contains wallet and blockchain information and the destination order contains bank account information, then the transaction is an off-ramp transaction. Off ramp transactions may be settled in your bank account via ACH or WIRE.

On Ramp Transaction

On ramp transactions are inferred from the request. If the source order contains bank account information and the destination order contains wallet and blockchain information, then the transaction is an on-ramp transaction. On ramp transactions are settled directly in your wallet.

Get Transactions

GEThttps://api.adesic.com/v2/transactions

Returns an array of all the orders for an associated apiKey.

Headers

NameTypeDescription
apiKey*stringYour Adesic API Key
[ { "id": "txn-123456804", "type": "ON_RAMP", "paymentRail": "WIRE", "priceUsd": "100.00", "feeUsd": "2.50", "createdAt": "2025-02-13T23:21:05.666", "completedAt": null, "updatedAt": "2025-02-13T23:21:05.665", "userId": "usr-123456788", "sourceOrder": { "id": "ord-123456887", "bankAccountId": "bac-123456788", "blockchain": null, "createdAt": "2025-02-13T23:21:05.666", "currency": "USD", "quantity": "100.00", "updatedAt": "2025-02-13T23:21:05.659", "walletId": null }, "destinationOrder": { "id": "ord-123456884", "bankAccountId": null, "blockchain": "ethereum", "createdAt": "2025-02-13T23:21:05.666", "currency": "ETH", "quantity": "0.03647559689040861", "updatedAt": "2025-02-13T23:21:05.659", "walletId": "wal-123456788" } }, { "id": "txn-123456807", "type": "OFF_RAMP", "paymentRail": "WIRE", "priceUsd": "100.00", "feeUsd": "27.50", "createdAt": "2025-02-13T23:21:24.592", "completedAt": null, "updatedAt": "2025-02-13T23:21:24.589", "userId": "usr-123456788", "sourceOrder": { "id": "ord-123456881", "bankAccountId": null, "blockchain": "ethereum", "createdAt": "2025-02-13T23:21:24.592", "currency": "ETH", "quantity": "0.03740792973294478", "updatedAt": "2025-02-13T23:21:24.589", "walletId": "wal-123456788" }, "destinationOrder": { "id": "ord-123456886", "bankAccountId": "bac-123456788", "blockchain": null, "createdAt": "2025-02-13T23:21:24.592", "currency": "USD", "quantity": "72.5", "updatedAt": "2025-02-13T23:21:24.589", "walletId": null } } ]

Get Transaction by ID

GEThttps://api.adesic.com/v2/transactions/{transactionId}

Returns an object for the transactionId for an associated apiKey.

Query Parameters

NameTypeDescription
transactionId*stringTransaction ID

Headers

NameTypeDescription
apiKey*stringYour Adesic API Key
{ "id": "txn-123456815", "type": "OFF_RAMP", "createdAt": "2024-02-02T01:40:48.492", "completedAt": null, "updatedAt": "2024-02-02T01:40:48.487", "sellOrder": { "id": "ord-123456870", "bankAccountId": null, "blockchain": "avalanche", "createdAt": "2024-02-02T01:40:48.492", "currency": "AVAX", "feeUsd": null, "priceUsd": "6.85", "quantity": ".2004", "updatedAt": "2024-02-02T01:40:48.486", "walletId": "wal-123456790" }, "buyOrder": { "id": "ord-123456871", "bankAccountId": "bac-123456788", "blockchain": null, "createdAt": "2024-02-02T01:40:48.492", "currency": "USD", "feeUsd": "0.17", "priceUsd": "6.85", "quantity": "6.67", "updatedAt": "2024-02-02T01:40:48.486", "walletId": null, } }

Copy & Paste Code

POST Transactions

post_transaction.sh
curl -X POST -H "api-key: YOUR_API_KEY" https://api.adesic.com/v2/transactions \ -H "Content-Type: application/json" \ -d '{ "transaction": { "sourceOrder": { "walletId": "wal-123456790", "blockchain": "avalanche", "currency": "AVAX", "quantity": ".2004" }, "destinationOrder": { "bankAccountId": "bac-123456788", "currency": "USD" } } }'

GET Transactions

get_transactions.sh
curl -H "api-key: YOUR_API_KEY" "https://api.adesic.com/v2/transactions"

Transactions Response Object

Example URL: https://api.adesic.com/v2/transactions 

{ "id": "txn-123456815", "type": "OFF_RAMP", "createdAt": "2024-02-02T01:40:48.492", "completedAt": null, "updatedAt": "2024-02-02T01:40:48.487", "sellOrder": { "id": "ord-123456870", "bankAccountId": null, "blockchain": "avalanche", "createdAt": "2024-02-02T01:40:48.492", "currency": "AVAX", "feeUsd": null, "priceUsd": "6.85", "quantity": ".2004", "updatedAt": "2024-02-02T01:40:48.486", "walletId": "wal-123456790" }, "buyOrder": { "id": "ord-123456871", "bankAccountId": "bac-123456788", "blockchain": null, "createdAt": "2024-02-02T01:40:48.492", "currency": "USD", "feeUsd": "0.17", "priceUsd": "6.85", "quantity": "6.67", "updatedAt": "2024-02-02T01:40:48.486", "walletId": null, "walletAddress": "0x065149eab6eFa05F4639Da6305B58C91BD92d456" } }

Transactions Response Attributes

Attribute NameData TypeDescription
idstringUnique identifier for the transaction.
typestringType of transaction (OFF_RAMP, ON_RAMP).
createdAtstringTimestamp indicating when the transaction was created.
completedAtstringTimestamp indicating when the transaction was completed.
updatedAtstringTimestamp indicating when the transaction was last updated
sellOrderobjectInformation about the sell order.
buyOrderobjectInformation about the buy order.
idstringUnique identifier for the order.
bankAccountIdstringID of the bank account associated with the order.
blockchainstringBlockchain used for the order.
createdAtstringTimestamp indicating when the order was created.
currencystringCurrency to be sold or bought.
feeUsdstringFee in USD for the order.
priceUsdstringPrice in USD for the order.
quantitystringQuantity of the currency to be bought or sold.
updatedAtstringTimestamp indicating when the order was last updated.
walletIdstringID of the wallet associated with the order.

© Adesic LLC. All Rights Reserved