Preview net receipt on an existing incoming SWIFT account
curl --request POST \
--url https://api.platform.dakota.xyz/accounts/{account_id}/incoming-fx-estimate \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"source_amount": "100"
}
'const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({source_amount: '100'})
};
fetch('https://api.platform.dakota.xyz/accounts/{account_id}/incoming-fx-estimate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.platform.dakota.xyz/accounts/{account_id}/incoming-fx-estimate"
payload = { "source_amount": "100" }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.platform.dakota.xyz/accounts/{account_id}/incoming-fx-estimate"
payload := strings.NewReader("{\n \"source_amount\": \"100\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"account_id": "3JyvsbaOW929vLbatXEkrUMq1YC",
"mode": "indicative",
"amount_state": "estimated",
"source_currency": "EUR",
"source_amount": "100",
"destination_asset": "USDC",
"destination_network": "eip155:8453",
"destination_decimals": 6,
"estimated_gross_usd_amount": "118.4",
"estimated_net_usd_amount": "118.1",
"estimated_destination_amount": "118.1",
"estimated_destination_smallest_units": "118100000",
"developer_fee_usd": "0.3",
"developer_fee_bps": "25",
"developer_fee_fixed_usd": "0",
"valuation_usd_per_unit": "1",
"valuation_reference": "provider:usd-dollar-fulfillment:v1",
"valuation_source": "usd_fulfillment_policy",
"valuation_policy_checked_at": "2026-09-29T04:00:00Z",
"rate_observed_at": "2026-09-29T03:59:00Z",
"estimated_at": "2026-09-29T04:00:00Z",
"valid_until": "2026-09-29T04:05:00Z",
"pricing_reference": "bid",
"pricing_rate": "1.19",
"customer_rate": "1.18405",
"spread_bps": "50",
"policy_version_id": "11111111-1111-4111-8111-111111111111",
"observation_id": "22222222-2222-4222-8222-222222222222",
"fee_basis": "usd_deposit_fees_v1:developer_deducted:dakota_invoiced"
}transactions
Preview net receipt on an existing incoming SWIFT account
Returns an indicative estimate for an enabled foreign-currency SWIFT onramp owned by the authenticated client. The account determines the input currency and destination token/network; only the source amount is supplied. The estimated net amount includes the developer fee deducted from proceeds. Client invoice charges are not deducted. This read creates no account, transaction, fixed quote or credit hold. Final bank execution and settlement-time pricing determine delivery; valid_until denotes data freshness, not a rate lock.
POST
/
accounts
/
{account_id}
/
incoming-fx-estimate
Preview net receipt on an existing incoming SWIFT account
curl --request POST \
--url https://api.platform.dakota.xyz/accounts/{account_id}/incoming-fx-estimate \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"source_amount": "100"
}
'const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({source_amount: '100'})
};
fetch('https://api.platform.dakota.xyz/accounts/{account_id}/incoming-fx-estimate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.platform.dakota.xyz/accounts/{account_id}/incoming-fx-estimate"
payload = { "source_amount": "100" }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.platform.dakota.xyz/accounts/{account_id}/incoming-fx-estimate"
payload := strings.NewReader("{\n \"source_amount\": \"100\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"account_id": "3JyvsbaOW929vLbatXEkrUMq1YC",
"mode": "indicative",
"amount_state": "estimated",
"source_currency": "EUR",
"source_amount": "100",
"destination_asset": "USDC",
"destination_network": "eip155:8453",
"destination_decimals": 6,
"estimated_gross_usd_amount": "118.4",
"estimated_net_usd_amount": "118.1",
"estimated_destination_amount": "118.1",
"estimated_destination_smallest_units": "118100000",
"developer_fee_usd": "0.3",
"developer_fee_bps": "25",
"developer_fee_fixed_usd": "0",
"valuation_usd_per_unit": "1",
"valuation_reference": "provider:usd-dollar-fulfillment:v1",
"valuation_source": "usd_fulfillment_policy",
"valuation_policy_checked_at": "2026-09-29T04:00:00Z",
"rate_observed_at": "2026-09-29T03:59:00Z",
"estimated_at": "2026-09-29T04:00:00Z",
"valid_until": "2026-09-29T04:05:00Z",
"pricing_reference": "bid",
"pricing_rate": "1.19",
"customer_rate": "1.18405",
"spread_bps": "50",
"policy_version_id": "11111111-1111-4111-8111-111111111111",
"observation_id": "22222222-2222-4222-8222-222222222222",
"fee_basis": "usd_deposit_fees_v1:developer_deducted:dakota_invoiced"
}Authorizations
Path Parameters
Body
application/json
Maximum string length:
21Pattern:
^[0-9]{1,18}(\.[0-9]{1,2})?$Response
Indicative estimate; no account or financial state changed
Read-only indicative net preview, without a hold or guaranteed rate. Valid until denotes freshness only.
Available options:
indicative Available options:
estimated Required range:
1 <= x <= 18Available options:
usd_fulfillment_policy, rd_redemption_policy, market Was this page helpful?

