On this page
No Headings
Last updated: May 20, 2026
Important: Adaptive Payments is not available for new integrations. PayPal provides this documentation to support existing integrations. If you're starting an integration, we recommend our latest solutions.
Requests the current foreign exchange (FX) rate for a specific amount and currency.
TheConvertCurrencyRequest message enables you to have your application get an estimated exchange rate for a list of amounts. This API operation does not affect PayPal balances.
The table below describes the fields for the ConvertCurrencyRequest message.
| Field | Description |
|---|---|
baseAmountList | ap:CurrencyList(Required) A list of amounts with associated currencies to be converted. |
convertToCurrencyList | ap:CurrencyCodeList(Required) A list of currencies to convert to. |
requestEnvelope | common:RequestEnvelope(Required) Information common to each API operation, such as the language in which an error message is returned. |
countryCode | xs:string*(Optional)*The two-character ISO code for the country where the function is supposed to happen. The default value is US. |
conversionType | xs:string*(Optional)*The conversion type allows you to determine the converted amounts for a PayPal user in different currency conversion scenarios, e.g., sending a payment in a different currency than what this user holds, accepting payment in a different currency than what the user holds, or converting a balance to a different currency than the user holds. The default value is SENDER_SIDE . |
| Field | Description |
|---|---|
amount | xs:decimal(Required) The amount to be converted. |
code | xs:string(Required) The currency code. Allowable values are:
|
| Field | Description |
|---|---|
currency | ap:CurrencyType(Required) The currency code. Allowable values are:
|
| Field | Description |
|---|---|
currencyCode | xs:string*(Required)* The currency code. Allowable values are:
|
| Field | Description |
|---|---|
detailLevel | common:DetailLevelCode(Optional) Level of detail required by the client application for components. The default value is ReturnAll which provides the maximum level of detail. |
errorLanguage | xs:string(Required) RFC 3066 language in which error messages are returned; by default it is en_US, which is the only language currently supported. |
The table below describes the ConversionType field.
| Field | Description |
|---|---|
conversionType | xs:string(Optional) The conversion type allows you to determine the converted amounts for a PayPal user in different currency conversion scenarios. Value is:
|
The ConvertCurrencyResponse message returns the following information to the application in response to the ConvertCurrencyRequest message.
| Field | Description |
|---|---|
estimatedAmountTable | ap:CurrencyConversionTableA list of the requested amounts converted to the requested currencies. |
responseEnvelope | common:responseEnvelopeInformation common to each API operation, such as the language in which an error message is returned. |
| Field | Description |
|---|---|
currencyConversionList | ap:CurrencyConversionListThe list of converted currencies. |
| Field | Description |
|---|---|
baseAmount | ap:CurrencyTypeThe base amount and currency code. |
currencyList | ap:CurrencyListThe list of amounts converted to the requested currencies, and the currency codes. |
| Field | Description |
|---|---|
amount | xs:decimalThe converted amount. |
code | xs:stringThe currency code for the converted amount. Value is:
|
| Field | Description |
|---|---|
currency | ap:CurrencyTypeThe list of converted amounts with their target currency codes. |
| Field | Description |
|---|---|
ack | common:AckCodeAcknowledgment code. Value is:
|
build | xs:stringBuild number. It is used only by PayPal Merchant Technical Support. |
correlationId | xs:stringCorrelation identifier. It is a 13-character, alphanumeric string (for example, db87c705a910e) that is used only by PayPal Merchant Technical Support. Note: You must log and store this data for every response you receive. PayPal Technical Support uses the information to assist with reported issues. |
timestamp | xs:datetimeDate on which the response was sent, for example: 2012-04-02T22:33:35.774-07:00 Note: You must log and store this data for every response you receive. PayPal Technical Support uses the information to assist with reported issues. |
The PPFaultMessage returns ErrorData and the ResponseEnvelope information to your application if an error occurs.
| Field | Description |
|---|---|
error | common:ErrorDataDetailed error information. |
responseEnvelope | common:ResponseEnvelopeCommon response information, including a timestamp and the response acknowledgment status. |
| Field | Description |
|---|---|
category | common:ErrorCategoryThe location where the error occurred. Value is:
|
domain | xs:stringThe domain to which this service belongs. |
errorId | xs:longA 6-digit number that uniquely identifies a particular error. |
exceptionID | This field is not used. |
message | xs:stringA description of the error. |
parameter | common:ErrorParameterRepresents contextual information about the error. |
severity | common:ErrorSeverityThe severity of the error encountered. Value is:
|
subdomain | This field is not used. |
| Field | Description |
|---|---|
ack | common:AckCodeAcknowledgment code. Value is:
|
build | xs:stringBuild number. It is used only by PayPal Merchant Technical Support. |
correlationId | xs:stringCorrelation identifier. It is a 13-character, alphanumeric string (for example, db87c705a910e) that is used only by PayPal Merchant Technical Support. Note: You must log and store this data for every response you receive. PayPal Technical Support uses the information to assist with reported issues. |
timestamp | xs:datetimeDate on which the response was sent, for example: 2012-04-02T22:33:35.774-07:00 Note: You must log and store this data for every response you receive. PayPal Technical Support uses the information to assist with reported issues. |
| Code | Message | Additional Information |
|---|---|---|
| 520002 | Internal error | |
| 580022 | Your request was invalid. Check the parameter of the error to see which is invalid | |
| 580027 | The argument is unsupported |