Skip to main content
POST
/
sender
/
orders
curl --request POST \ --url https://api.paycrest.io/v2/sender/orders \ --header 'API-Key: <api-key>' \ --header 'Content-Type: application/json' \ --data ' { "amount": "100", "source": { "type": "crypto", "currency": "USDT", "network": "base", "refundAddress": "0xYourAddress" }, "destination": { "type": "fiat", "currency": "NGN", "recipient": { "institution": "GTBINGLA", "accountIdentifier": "1234567890", "accountName": "John Doe", "memo": "Payment" } } } '
{
  "status": "success",
  "message": "Payment order created successfully",
  "data": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "status": "<string>",
    "timestamp": "2023-11-07T05:31:56Z",
    "amount": "<string>",
    "rate": "<string>",
    "senderFee": "<string>",
    "senderFeePercent": "<string>",
    "transactionFee": "<string>",
    "reference": "<string>",
    "providerAccount": {
      "network": "<string>",
      "receiveAddress": "<string>",
      "validUntil": "2023-11-07T05:31:56Z"
    },
    "source": {
      "type": "crypto",
      "currency": "<string>",
      "refundAddress": "<string>"
    },
    "destination": {
      "type": "fiat",
      "currency": "<string>",
      "recipient": {
        "institution": "<string>",
        "accountIdentifier": "<string>",
        "accountName": "<string>",
        "memo": "<string>",
        "institutionName": "<string>",
        "metadata": {
          "businessNumber": "<string>"
        }
      },
      "country": "<string>",
      "providerId": "<string>",
      "kyc": {}
    }
  }
}
{
  "status": "error",
  "message": "Error message",
  "data": [
    {
      "field": "<string>",
      "message": "<string>"
    }
  ]
}
{
  "status": "error",
  "message": "Error message",
  "data": [
    {
      "field": "<string>",
      "message": "<string>"
    }
  ]
}
{
  "status": "error",
  "message": "Error message",
  "data": [
    {
      "field": "<string>",
      "message": "<string>"
    }
  ]
}

Authorizations

API-Key
string
header
required

Body

application/json
amount
string
required

Payment amount. Denomination is determined by amountIn (defaults to crypto units).

Example:

"100"

source
object
required

Polymorphic source — set type: "crypto" for offramp or type: "fiat" for onramp.

destination
object
required

Polymorphic destination — set type: "fiat" for offramp or type: "crypto" for onramp.

amountIn
enum<string>

Specifies whether amount is denominated in crypto or fiat. Defaults to crypto.

Available options:
crypto,
fiat
rate
string

Quoted exchange rate (fiat per crypto unit). Optional — protocol uses best available rate if omitted.

senderFee
string

Fixed sender fee in crypto units.

senderFeePercent
string

Sender fee as a percentage of the order amount (alternative to senderFee).

reference
string

Your internal reference ID for this order.

Response

Order created

status
string
Example:

"success"

message
string
Example:

"Payment order created successfully"

data
object

Response returned when creating an order