Skip to main content
POST
/
v1
/
deposits
Create a new Deposit transaction
curl --request POST \
  --url https://sandbox-api.borderless.xyz/v1/deposits \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "fiat": "USD",
  "country": "US",
  "asset": "BTC",
  "amount": "100.00",
  "accountId": "cm2c4x3cc000019stwv7um4zl",
  "paymentMethod": "ACH",
  "developerFee": "5.00",
  "source": {
    "phone": "+1234567890",
    "networkSlug": "<string>",
    "accountHolderName": "John Doe"
  },
  "redirectUrl": "<string>",
  "counterPartyIdentityId": "cm2c4x3cc000019stwv7um4zl"
}
'
{
  "id": "<string>",
  "type": "AssetDeposit",
  "status": "Submitted",
  "source": {
    "asset": "POL",
    "amount": "<string>",
    "fiatCurrency": "<string>",
    "accountId": "<string>"
  },
  "destination": {
    "asset": "POL",
    "amount": "<string>",
    "fiatCurrency": "<string>",
    "imad": "<string>",
    "omad": "<string>",
    "traceNumber": "<string>",
    "externalAddress": "<string>",
    "accountId": "<string>",
    "paymentInstructionId": "<string>"
  },
  "instructions": {},
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z",
  "txHash": [
    "<string>"
  ],
  "feeAmount": {},
  "failureReason": {},
  "depositInstruction": {
    "paymentMethod": "ACH",
    "details": {
      "depositMessage": "<string>",
      "bankAccountNumber": "<string>",
      "bankRoutingNumber": "<string>",
      "bankBeneficiaryName": "<string>",
      "bankBeneficiaryAddress": "<string>",
      "bankName": "<string>",
      "bankAddress": "<string>"
    }
  },
  "counterPartyIdentityId": "<string>",
  "developerFeeAmount": {}
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
fiat
enum<string>
required

The fiat currency used for the deposit or withdrawal operation. Learn more about supported currencies at Currency Guide.

Available options:
USD,
EUR,
BRL,
ARS,
MXN,
COP,
CLP,
PEN,
BWP,
CDF,
GHS,
KES,
MWK,
NGN,
RWF,
ZAR,
TZS,
UGX,
ZMW,
XOF,
XAF
Example:

"USD"

country
enum<string>
required

The country code in ISO-3166-2 format for the region where the deposit or withdrawal operation is performed. See ISO-3166-2 documentation.

Available options:
AF,
AL,
DZ,
AS,
AD,
AO,
AI,
AQ,
AG,
AR,
AM,
AW,
AU,
AT,
AZ,
BS,
BH,
BD,
BB,
BY,
BE,
BZ,
BJ,
BM,
BT,
BO,
BQ,
BA,
BW,
BV,
BR,
IO,
BN,
BG,
BF,
BI,
CV,
KH,
CM,
CA,
KY,
CF,
TD,
CL,
CN,
CX,
CC,
CO,
KM,
CD,
CG,
CK,
CR,
HR,
CU,
CW,
CY,
CZ,
CI,
DK,
DJ,
DM,
DO,
EC,
EG,
SV,
GQ,
ER,
EE,
SZ,
ET,
FK,
FO,
FJ,
FI,
FR,
GF,
PF,
TF,
GA,
GM,
GE,
DE,
GH,
GI,
GR,
GL,
GD,
GP,
GU,
GT,
GG,
GN,
GW,
GY,
HT,
HM,
VA,
HN,
HK,
HU,
IS,
IN,
ID,
IR,
IQ,
IE,
IM,
IL,
IT,
JM,
JP,
JE,
JO,
KZ,
KE,
KI,
KP,
KR,
KW,
KG,
LA,
LV,
LB,
LS,
LR,
LY,
LI,
LT,
LU,
MO,
MG,
MW,
MY,
MV,
ML,
MT,
MH,
MQ,
MR,
MU,
YT,
MX,
FM,
MD,
MC,
MN,
ME,
MS,
MA,
MZ,
MM,
NA,
NR,
NP,
NL,
NC,
NZ,
NI,
NE,
NG,
NU,
NF,
MP,
NO,
OM,
PK,
PW,
PS,
PA,
PG,
PY,
PE,
PH,
PN,
PL,
PT,
PR,
QA,
MK,
RO,
RU,
RW,
RE,
BL,
SH,
KN,
LC,
MF,
PM,
VC,
WS,
SM,
ST,
SA,
SN,
RS,
SC,
SL,
SG,
SX,
SK,
SI,
SB,
SO,
ZA,
GS,
SS,
ES,
LK,
SD,
SR,
SJ,
SE,
CH,
SY,
TW,
TJ,
TZ,
TH,
TL,
TG,
TK,
TO,
TT,
TN,
TR,
TM,
TC,
TV,
UG,
UA,
AE,
GB,
UM,
US,
UY,
UZ,
VU,
VE,
VN,
VG,
VI,
WF,
EH,
YE,
ZM,
ZW,
AX
Example:

"US"

asset
enum<string>
required

The token tied to a specific blockchain for the operation. See the list of supported deposit assets and supported Withdrawal Assets.

Available options:
POL,
USDT_POLYGON,
USDC_POLYGON,
USDM_POLYGON,
ETH,
USDT_ETHEREUM,
USDC_ETHEREUM,
USDM_ETHEREUM,
TRX,
USDT_TRON,
ETH_BASE,
USDC_BASE,
USDM_BASE,
ETH_OPTIMISM,
USDT_OPTIMISM,
USDC_OPTIMISM,
USDM_OPTIMISM,
BTC,
CELO,
CUSD_CELO,
USDC_CELO,
SOL,
USDC_SOLANA,
USDT_SOLANA
Example:

"BTC"

amount
string
required

The amount for the operation. For deposits, this is the fiat amount the user must contribute. For withdrawals, this is the amount of the asset to be withdrawn.

Example:

"100.00"

accountId
string
required

The id of the account associated with the operation. For withdrawals, this is the account from which assets will be withdrawn. For deposits, this is the account where assets will be deposited.

Example:

"cm2c4x3cc000019stwv7um4zl"

paymentMethod
enum<string>
required

The payment method used for the deposit transaction. Learn more at Payment Methods Documentation.

Available options:
ACH,
Wire,
Sepa,
Swift,
Card,
MobileMoney,
PIX,
PSE,
SPEI,
COELSA,
SPAV,
CCE,
NIP,
GhIPSS,
BankTransfer,
EFT
Example:

"ACH"

developerFee
string

An optional developer fee for the operation, if applicable

Example:

"5.00"

source
MobileMoney source. · object

The details of the deposit source. Some deposit payment methods (e.g. mobile money) require you to specify source account info.

redirectUrl
string<uri>

The URL to redirect the user after the deposit is completed. This url is used only by mobile money and EFT (South Africa) payment methods.

counterPartyIdentityId
string

The ID of the identity on whose behalf the deposit is being initiated. Provide this only if the deposit should be linked to a different identity than the one associated with the account. If not specified, the deposit will be initiated for the identity tied to the account by default.

Example:

"cm2c4x3cc000019stwv7um4zl"

Response

Successfully created Deposit transaction data.

id
string
required
type
enum<string>
required
Available options:
AssetDeposit,
Deposit,
Withdrawal,
Transfer,
TransferToExternalWallet,
Swap,
Approval
status
enum<string>
required
Available options:
Submitted,
Verifying,
Orchestrating,
Pending,
Processing,
Completed,
Failed,
Cancelled
source
object
required
destination
object
required
instructions
object
required
createdAt
string<date-time>
required
updatedAt
string<date-time>
required
txHash
string[]
required
feeAmount
object
required
failureReason
object
required
depositInstruction
object
required
counterPartyIdentityId
string | null
required
developerFeeAmount
object
required