Skip to main content
POST
/
api
/
v2
/
ramps
Create Ramps
curl --request POST \
  --url https://sandbox.killb.app/api/v2/ramps \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "quotationId": "e8d74b2f-86df-43b0-a9d9-72055a6b0432",
  "userId": "e8d74b2f-86df-43b0-a9d9-72055a6b0432",
  "accountId": "e8d74b2f-86df-43b0-a9d9-72055a6b0432",
  "accounts": [
    {
      "id": "e8d74b2f-86df-43b0-a9d9-72055a6b0432",
      "amount": 8000
    }
  ],
  "refundInstructions": {
    "clabe": "032180000118359719",
    "beneficiary": "Bruce Wayne"
  },
  "externalId": "my-external-ref-001",
  "details": null
}
'
{
  "id": "e8d74b2f-86df-43b0-a9d9-72055a6b0432",
  "active": true,
  "fromCurrency": "COP",
  "toCurrency": "USDC",
  "fromAmount": 8000,
  "toAmount": 2.5,
  "quotationId": "e8d74b2f-86df-43b0-a9d9-72055a6b0432",
  "userId": "e8d74b2f-86df-43b0-a9d9-72055a6b0432",
  "cashInMethod": "PSE",
  "cashOutMethod": "POLYGON",
  "accountId": "e8d74b2f-86df-43b0-a9d9-72055a6b0432",
  "status": "CREATED",
  "type": "ON",
  "createdAt": "2026-04-23T00:38:08.439Z",
  "updatedAt": "2026-04-23T00:38:08.439Z",
  "accounts": [
    {
      "id": "e8d74b2f-86df-43b0-a9d9-72055a6b0432",
      "amount": 8000
    }
  ],
  "isPreFunded": false,
  "paymentInfo": [
    {
      "network": "SPEI",
      "Bank": "BBVA Mexico",
      "Beneficiary": "KillB Fintech SA de CV",
      "CLABE": "032180000118359719",
      "concepto": "KILLB-REF-00123"
    }
  ],
  "details": "Insufficient funds",
  "transferProof": "0xabc123def456abc123def456abc123def456abc123def456abc123def456abc1",
  "externalId": "my-external-ref-001",
  "isFastPay": false,
  "documents": [
    {
      "documentType": "SOURCE_OF_FUNDS",
      "filePath": "ramps/e8d74b2f-86df-43b0-a9d9-72055a6b0432/SOURCE_OF_FUNDS.pdf",
      "uploadedAt": "2026-04-23T00:38:08.439Z"
    }
  ]
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Body

application/json
quotationId
string
required
Example:

"e8d74b2f-86df-43b0-a9d9-72055a6b0432"

userId
string
required
Example:

"e8d74b2f-86df-43b0-a9d9-72055a6b0432"

accountId
string
Example:

"e8d74b2f-86df-43b0-a9d9-72055a6b0432"

accounts
object[]
refundInstructions
SPEI · object

You have to use the same method used in the quotation for the deposit

externalId
string

You can send an external id to avoid duplicate ramps

Example:

"my-external-ref-001"

details
object
Example:

null

Response

id
string
required
Example:

"e8d74b2f-86df-43b0-a9d9-72055a6b0432"

active
boolean
required
Example:

true

fromCurrency
enum<string>
required
Available options:
MXN,
COP,
USD,
USDC,
USDT
Example:

"COP"

toCurrency
enum<string>
required
Available options:
MXN,
COP,
USDC,
USDT,
HKD,
EUR,
USD,
PEN,
BRL,
ARS,
CLP,
CRC,
GTQ,
HNL,
NIO,
PAB,
DOP,
BOB,
GYD,
PYG,
UYU
Example:

"USDC"

fromAmount
number
required
Example:

8000

toAmount
number
required
Example:

2.5

quotationId
string
required
Example:

"e8d74b2f-86df-43b0-a9d9-72055a6b0432"

userId
string
required
Example:

"e8d74b2f-86df-43b0-a9d9-72055a6b0432"

cashInMethod
enum<string>
required
Available options:
SPEI,
POLYGON,
ERC20,
PSE,
PRE_FUND,
PRE_FUND_POLYGON,
PRE_FUND_ERC20,
PRE_FUND_SOLANA,
PRE_FUND_TRON,
PRE_FUND_ARBITRUM,
TRANSFIYA,
SOLANA,
BSC,
TRON
Example:

"PSE"

cashOutMethod
enum<string>
required
Available options:
SPEI,
POLYGON,
ERC20,
PSE,
TRANSFIYA,
SOLANA,
BSC,
TRON,
WIRE,
ACH,
ACH_BO,
SPI_DO,
ACH_PA,
ACH_GT,
ACH_HN,
ACH_NI,
ACH_SV,
CCI,
COELSA,
PIX,
SINPE,
SPI,
SPI_PY,
SWIFT,
BREB
Example:

"POLYGON"

accountId
string
required
Example:

"e8d74b2f-86df-43b0-a9d9-72055a6b0432"

status
enum<string>
required
Available options:
CREATED,
CASH_IN_REQUEST,
CONVERSION_REQUEST,
CASH_OUT_REQUEST,
CASH_IN_REQUESTED,
CONVERSION_REQUESTED,
CASH_OUT_REQUESTED,
CASH_IN_PENDING,
CONVERSION_PENDING,
CASH_OUT_PENDING,
CASH_IN_PROCESSING,
CONVERSION_PROCESSING,
CASH_OUT_PROCESSING,
CASH_IN_COMPLETED,
CONVERSION_COMPLETED,
CASH_OUT_COMPLETED,
COMPLETED,
CANCELED,
FAILED,
REJECTED,
ERROR,
REVIEW_NEEDED,
EXPIRED
Example:

"CREATED"

type
enum<string>
required
Available options:
ON,
OFF
Example:

"ON"

createdAt
string<date-time>
required
Example:

"2026-04-23T00:38:08.439Z"

updatedAt
string<date-time>
required
Example:

"2026-04-23T00:38:08.439Z"

accounts
object[]
isPreFunded
boolean
Example:

false

paymentInfo
(MXN · object | COP · object | Crypto · object)[]
details
string

complement information about a transfer, like: Code error

Example:

"Insufficient funds"

transferProof
string

Proof of transfer, like: TxHash, url, etc.

Example:

"0xabc123def456abc123def456abc123def456abc123def456abc123def456abc1"

externalId
string

External id to avoid duplicate ramps

Example:

"my-external-ref-001"

isFastPay
boolean
Example:

false

documents
object[]