curl --request POST \
--url https://api.example.com/api/v1/balance/payin/quote \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"currency": "<string>"
}
'import requests
url = "https://api.example.com/api/v1/balance/payin/quote"
payload = { "currency": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({currency: '<string>'})
};
fetch('https://api.example.com/api/v1/balance/payin/quote', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"quoteId": "<string>",
"paymentChannel": "<string>",
"fromAmount": 123,
"fromCurrency": "<string>",
"toAmount": 123,
"toCurrency": "<string>",
"provider": "<string>",
"documentIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"paymentReference": "<string>",
"minToAmount": 123,
"slippageBps": 123,
"depositMemo": "<string>",
"feeAmount": 123,
"fixedFee": 123,
"flatFee": 123,
"feeCurrency": "<string>",
"rate": 123,
"expiresAt": "2023-11-07T05:31:56Z",
"depositAddress": "<string>",
"recipientAddress": "<string>",
"originChainId": "<string>",
"destinationChainId": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Get cross-chain payin quote
Price a deposit from any chain into the wallet’s Base USDC. Send either amount in the origin token or amountTo in USDC. The quote is recorded; POST /balance/payin/quote/submit opens it.
curl --request POST \
--url https://api.example.com/api/v1/balance/payin/quote \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"currency": "<string>"
}
'import requests
url = "https://api.example.com/api/v1/balance/payin/quote"
payload = { "currency": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({currency: '<string>'})
};
fetch('https://api.example.com/api/v1/balance/payin/quote', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"quoteId": "<string>",
"paymentChannel": "<string>",
"fromAmount": 123,
"fromCurrency": "<string>",
"toAmount": 123,
"toCurrency": "<string>",
"provider": "<string>",
"documentIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"paymentReference": "<string>",
"minToAmount": 123,
"slippageBps": 123,
"depositMemo": "<string>",
"feeAmount": 123,
"fixedFee": 123,
"flatFee": 123,
"feeCurrency": "<string>",
"rate": 123,
"expiresAt": "2023-11-07T05:31:56Z",
"depositAddress": "<string>",
"recipientAddress": "<string>",
"originChainId": "<string>",
"destinationChainId": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Body
Price a cross-chain deposit into the Base smart wallet.
Which side is pinned is said by which amount is sent, exactly as on the
payout: amount in the origin token the user will send, amountTo in
the USDC the wallet must receive.
1click chain codes.
eth, bsc, avax, op, arb, pol, sol, base, gnosis, tron, xrp, zec, doge, ltc, btc, cardano, bera, sui, near, near_intents, xlayer, plasma, ton, stellar, monad, starknet, aptos, adi, bch Response
Successful Response
What a quote prices, and nothing else.
Rail rules — whether a reference is accepted, the floor on the amount, the
fee schedule behind it — belong to
POST /balance/payout/recipient/capabilities, which the client reads
before it prices anything. Repeating them here only gave two sources for
one fact.
What this price is, on the other hand, includes how far it can move:
minToAmount and slippageBps are not rail rules but this quote's own
worst case, and only the provider that priced it knows them.
Was this page helpful?