Skip to main content
POST
/
partners
/
marketplace
/
express
/
quote
Create Express Quote
curl --request POST \
  --url https://api.hyperrails.io/api/v1/partners/marketplace/express/quote \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "sourceCurrency": "NGN",
  "destinationCurrency": "USDT",
  "amount": 50000
}
'
[
  {
    "quoteId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "status": "pending",
    "source": "NGN",
    "destination": "USDT",
    "chain": "BASE",
    "amount": 50000,
    "totalSourceAmount": 50000,
    "totalDestinationAmount": 31.65,
    "clientId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "mode": "live",
    "ttl": 300,
    "allocationResult": {
      "totalSourceAmount": 50000,
      "weightedAverageRate": 1580.5,
      "totalDestinationAmount": 31.65,
      "allocations": [
        {
          "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "clientId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "poolId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "poolAccountId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "allocatedAmount": 31.65,
          "sourceAmount": 50000,
          "rate": 1580.5,
          "reference": "REF-001",
          "metadata": {}
        }
      ]
    },
    "metadata": {
      "bankPayIn": {
        "accountName": "Spotflow Ltd",
        "accountNumber": "0123456789",
        "bankName": "Access Bank",
        "reference": "PAY-REF-001"
      },
      "cryptoPayIn": {
        "addressId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "address": "0x95222290dd7278aa3ddd389cc1e1d165cc4bafe5",
        "chain": "BASE",
        "token": "USDT",
        "addressType": "deposit",
        "expectedAmount": 50000,
        "externalReference": "<string>",
        "status": "active",
        "createdAt": "2026-04-01T10:55:46.254Z",
        "expiresAt": "2026-04-01T10:55:46.256Z",
        "virtualAccountId": "<string>",
        "derivationIndex": 0,
        "warningMessage": "<string>"
      }
    },
    "chatMetadata": {
      "conversationId": "<string>",
      "chatQuoteId": "<string>",
      "listingId": "<string>",
      "initialListingRate": "<string>",
      "negotiationStartedAt": "2023-11-07T05:31:56Z",
      "quoteSentAt": "2023-11-07T05:31:56Z",
      "acceptedAt": "2023-11-07T05:31:56Z"
    }
  }
]

Documentation Index

Fetch the complete documentation index at: https://docs.hyperrails.io/llms.txt

Use this file to discover all available pages before exploring further.

Adding Test Funds

On test mode with your test keys, you can easily add fake funds to the jollof bank account number created for you to fulfil an order using our Funds Simulator AppSee the full guide on Funding in test mode.

Authorizations

Authorization
string
header
required

API key authentication using Bearer token

Body

application/json
sourceCurrency
string
required

Source currency code (NGN, GHS)

Example:

"NGN"

destinationCurrency
string
required

Destination currency code (USDT, USDC)

Example:

"USDT"

amount
number
required

Amount to exchange

Required range: x >= 1
Example:

50000

Response

Express quote created successfully

quoteId
string<uuid>

Unique quote identifier

Example:

"3fa85f64-5717-4562-b3fc-2c963f66afa6"

status
enum<string>

Quote status

Available options:
pending,
awaiting_payment,
completed,
expired,
cancelled
Example:

"pending"

source
string

Source currency

Example:

"NGN"

destination
string

Destination currency

Example:

"USDT"

chain
string

Blockchain network

Example:

"BASE"

amount
number

Requested amount

Example:

50000

totalSourceAmount
number

Total amount in source currency

Example:

50000

totalDestinationAmount
number

Total amount in destination currency

Example:

31.65

clientId
string<uuid>

Client identifier

mode
enum<string>

Operating mode

Available options:
live,
sandbox
Example:

"live"

ttl
integer

Time to live in seconds

Example:

300

allocationResult
object
metadata
object
chatMetadata
object

Metadata for chat-based quote negotiation