Indicative FX Rates - Migration Guide
If you currently use Verto to fetch data via our bulk or historical 'getRates' endpoints, please note an important change regarding how those quotes are treated
Authentication and Authorization Changes
Before interacting with any updated v1.1 endpoints, all Atlas clients must update their Authentication setup, as the new Login API endpoint requires a certificated based authentication and different URL.
Why is this a breaking change?
If you try to send your plain, raw API key from the Legacy Login method to the new system, the connection will be rejected.
Additionally, because a live timestamp is mixed into the package during encryption, the login request automatically expires after 30 seconds.
Your backend must create this encrypted package dynamically right before making the login call. To get started on migrating the login:
- Change your login URL:
- Old Endpoint:
POSThttps://api-v3-sandbox.vertofx.com/users/login - New Endpoint:
POSThttps://api-company-sandbox.vertofx.com/users/login
- Swap the Value:
In your JSON request body, keep the parameter name exactly as "apiKey", but replace your plain text key with your newly encrypted text block.
{
"clientId": "YOUR_28_DIGIT_CLIENT_ID",
"apiKey": "RAW_STATIC_API_KEY_STRING",
"mode": "apiKey"
}{
"clientId": "YOUR_28_DIGIT_CLIENT_ID",
"apiKey": "eyJKdW5lMTg...[Encrypted Base64 String Input]...",
"mode": "apiKey"
}For more technical examples, required encryption settings, and instructions on how to download your digital certificate from the dashboard, please see the Authentication Guide and the Certificate-Based Authentication Guide.
FX Logic Changes
🛠️ API Reference Endpoint: POST https://api-exchange-now-sandbox.vertofx.com/fx/rate
The behavior of the POST /fx/rate endpoint for bulk FX quotes is changing from a firm quote to an indicative quote.
Note: There are zero breaking changes to the API contract. Your existing code, endpoints, payload structures, and headers remain exactly the same.
The endpoint continues to provide the current actual FX rate for a given currency pair based on your selected paymentMode. In the response, you will still receive a vfx_token valid for 30 seconds to lock in and execute your trade.
Recommended Next Steps
Depending on how your system consumes this data, you should update your logic to handle indicative pricing:
- For Informational Use: If you use
getRatessimply to display estimated conversion prices or run internal analytics, no changes are required on your end. - For Execution-Critical Systems: If you use these rates to automatically trigger or commit live funds, ensure your system expects final execution prices to vary slightly from the fetched getRates payload based on live market liquidity.
