Update checkout settings
Turn coins and card payments on or off, and change the quote window, tolerance and redirect.
Send only what changes. New settings apply to checkouts opened afterward: a quote that's already open keeps its address, amount and expiry. You receive checkout_settings.updated.
Body
accepted_assetsarrayPairs to turn on or off, each{ asset, network, enabled }. Pairs you leave out keep their setting, and at least one must stay on. See supported networks.accepted_railsarrayMust includecrypto. Addcardto take card payments, or leave it out to stop.fee_payerstringbusinessorcustomer.quote_minutesinteger5, 10, 15, 30 or 60.underpayment_tolerance_pctnumber0, 0.5, 1, 2 or 5.success_redirect_enabledbooleanWhether to send customers tosuccess_redirect_urlafter paying.success_redirect_urlstringAnhttps://URL, ornullto clear it.collect_emailbooleanWhether checkout asks crypto customers for an email.
Errors
- 400
invalid_requestA field is unknown or has a value it can't take, such asaccepted_railswithoutcrypto.fieldnames it.
Any request can also fail on its key or its body. See errors.
Request
curl -X PATCH "https://api.402pay.co/api/v1/settings/checkout" \
-H "Authorization: Bearer $PAY402_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"accepted_assets": [
{
"asset": "BTC",
"network": "bitcoin",
"enabled": true
}
],
"quote_minutes": 15
}'const response = await fetch("https://api.402pay.co/api/v1/settings/checkout", {
method: "PATCH",
headers: {
Authorization: `Bearer ${process.env.PAY402_SECRET_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
accepted_assets: [
{
asset: "BTC",
network: "bitcoin",
enabled: true
}
],
quote_minutes: 15
}),
});
const { data } = await response.json();import os
import requests
response = requests.patch(
"https://api.402pay.co/api/v1/settings/checkout",
headers={
"Authorization": f"Bearer {os.environ['PAY402_SECRET_KEY']}",
},
json={
"accepted_assets": [
{
"asset": "BTC",
"network": "bitcoin",
"enabled": True
}
],
"quote_minutes": 15
},
)
data = response.json()["data"]Response200 OK
{
"data": {
"kind": "checkout_settings",
"accepted_assets": [
{
"asset": "USDC",
"network": "ethereum",
"enabled": true,
"offered": true
},
{
"asset": "USDC",
"network": "solana",
"enabled": true,
"offered": true
},
{
"asset": "USDT",
"network": "tron",
"enabled": true,
"offered": true
},
{
"asset": "USDT",
"network": "ethereum",
"enabled": true,
"offered": true
},
{
"asset": "USDT",
"network": "solana",
"enabled": true,
"offered": true
},
{
"asset": "BTC",
"network": "bitcoin",
"enabled": true,
"offered": true
},
{
"asset": "ETH",
"network": "ethereum",
"enabled": true,
"offered": true
},
{
"asset": "SOL",
"network": "solana",
"enabled": true,
"offered": true
},
{
"asset": "LTC",
"network": "litecoin",
"enabled": true,
"offered": true
},
{
"asset": "TRX",
"network": "tron",
"enabled": true,
"offered": true
}
],
"accepted_rails": ["crypto", "card"],
"fee_payer": "business",
"quote_minutes": 15,
"underpayment_tolerance_pct": 0.5,
"success_redirect_enabled": false,
"success_redirect_url": null,
"collect_email": true,
"card_available": true
}
}