Call this API to book a spot contract with the rate ID retrieved from Spot Rate API Call.
Request URL #
https://api-sandbox.smartcurrencyexchange.com/v4/Trade/BookSpotDeal
Field | In | Format | Description | Required |
Authorization | header | string | Authentication token | Mandatory |
rateId | body | number | Id retrieved from Spot Rate quote | Mandatory |
extRefID | body | string | Client can add an external reference for each payment | Mandatory |
force | body | boolean | Allow the contract to be booked when similar contracts have been booked recently | Optional – defaults to false |
transferReasonId | body | int | To specify the reason for booking the Fx. | Transfer Reasons) |
Request Sample #
{
"rateId": 3534627,
"extRefID": “FROM: Last Name, First Name”,
"force": true
}
Response Sample #
{
"status": "OK",
"message": "fxContract has been saved successfully",
"singleObject": {
"fxContractId": "FX2022-35698",
"fxId": 1418228,
"sourceCurrency": "GBP",
"targetCurrency": "EUR",
"sourceAmount": 500.0000000,
"targetAmount": 564.4700000,
"status": "NEW",
"extRefID": "FROM Last Name, First Name"
},
"objectCollection": []
}
Response codes #
HTTP Status | Description | Message |
200 | Success | Success |
401 | Token Expired or invalid token | Token is no longer valid, please login again. |
401 | Missing token | Please add ‘Authorization’ to your request header. |
400 | Booking a contract that is similar to another that has been booked recently without force | Existing contracts have been found with similar parameters that were booked recently. Please Confirm you wish to book this contract by resending the request with ‘force’ set to true, Similar contract(s) found: FX2022-35698 |
400 | Reusing an external reference | There is already an FxContract on this account with this ExtRefID: FROM Last name, First Name – FX2022-35698 |
400 | Source amount is lower than minimum contract amount | Error: Source amount you entered is less than the minimum contract amount GBP 3000.00 |
400 | Invalid rate Id | Couldn’t fetch the rate for the given rateId or the rate you are trying to fetch doesnt belong to your account |