**Last updated**: 05 June 2025 | [**Change log**](/products/fx/changelog/)

# Create an FX quote

Account Payout customers only

Lock the FX rate for a specific currency pairing.

## Get started

Start using our FX API by [setting your headers](/products/fx#set-your-headers).


```
Authorization: {your_credentials}
Content-Type: application/vnd.worldpay.foreignexchange-v1+json
```

## Request

`POST` `https://try.access.worldpay-bsh.securedataplatform.com/foreignExchange/quote/`

### Request body


```json
{
  "entity": "000055",
  "intent": "PAYOUT",
  "sourceCurrency": "EUR",
  "targetCurrency": "ARS"
}
```

## Mandatory parameters

| Field name | Description | Data type/format | Min-max length | Validation criteria |
|  --- | --- | --- | --- | --- |
| `entity` | 6-digit reference given to you by your Worldpay Implementation Manager during the onboarding process. | AN | 6 | Must be six characters. |
| `intent` | Transaction type (intention) for which rates should be retrieved.**Available values**:`PAYOUT`- (FX rate for single account payout request)`FX DEAL` - (FX rate for internal transfer requests between two consumer accounts)`PAYOUT LIVE RATE` - (real-time FX rate) | String | 1-50 |  |
| `sourceCurrency` | Source currency. | ISO 4217Valid [currency codes](/products/reference/supported-countries-currencies). | 1-3 | Must be all upper-case. |
| `targetCurrency` | Target currency. | ISO 4217Valid [currency codes](/products/reference/supported-countries-currencies). | 1-3 | Must be uppercase. |


## Response

### Successful response example


```json
{
  "entity": "000696",
  "intent": "PAYOUT",
  "quote": {
    "quoteId": "Q000000BCS",
    "sourceCurrency": "EUR",
    "targetCurrency": "GBP",
    "rateId": "R42813061",
    "rate": 0.77182584,
    "quoteExpiryTime": "2025-03-24T16:07:38.406Z"
  }
}
```

### Successful response fields

| Field name | Description | Data type/format |
|  --- | --- | --- |
| `entity` | 6-digit reference given to you by your Worldpay Implementation Manager during the onboarding process. | AN |
| `intent` | Transaction type (intention) for which rates are retrieved. | AN |
| `quoteId` | Unique ID of the quote. | AN |
| `sourceCurrency` | Debiting currency code | [ISO 4217currency codes](/products/reference/supported-countries-currencies#iso-currency-codes). |
| `targetCurrency` | Crediting currency code | [ISO 4217 currency codes](/products/reference/supported-countries-currencies#iso-currency-codes). |
| `rateId` | ID of the rate request. | AN |
| `rate` | The quoted rate. | N |
| `quoteStartTime` | Datetime representation in UTC of when the quote starts. | datetime (UTC) |
| `quoteExpiryTime` | Datetime representation in UTC of when the quote expires. | datetime (UTC) |
| `status` | Status of the quote. | AN |


### Error response example


```json
{
    "errorName": "bodyDoesNotMatchSchema",
    "message": "The json body provided does not match the expected schema",
    "validationErrors": [
        {
            "errorName": "fieldIsMissing",
            "message": "Missing TargetCurrency value",
            "jsonPath": "TargetCurrency"
        }
    ]
}
```

### Error response codes

| Error | Message | Query | Scenario |
|  --- | --- | --- | --- |
| `unauthorizedRequest` | The request is unauthorized |  | Unauthorised request |
| `forbidden` |  |  | Forbidden |
| `fieldHasInvalidValue` | Invalid SourceCurrency value | SourceCurrency | sourceCurrency is invalid |
| `fieldHasInvalidValue` | Invalid TargetCurrency value | TargetCurrency | targetCurrency is invalid |
| `fieldIsMissing` | Missing Intent value | Intent | Missing intent |
| `urlContainsInvalidValue` | The URL contains a value or values that are invalid |  | Query string parameters are invalid |
| `stringIsTooLong` | The length must be 50 characters or fewer | Intent | Length of intent query string parameter is more than 50 characters |
| `fieldHasInvalidValue` | Intent is not valid for the current Consumer | Intent | Invalid value of intent |
| `notFound` |  |  | Wrong URL |
| `internalErrorOccurred` | Something went wrong |  | Internal error |


**Next steps**

[Make a payout using FX quote](/products/account-payouts/)
[Get FX rates](/products/fx/fxrate)
[Get FX quote](/products/fx/retrieve-fxquote)