Multiple Currencies in Organization
The multi-currency support in Zoho CRM helps you to handle business and transactions in the global market effortlessly. With the multi-currency feature you can:
- Estimate the value of a deal in your home currency as well as in your customer's local currency
- Generate and view any report (with figures in other currencies) in your home currency
- Import reports with figures in multiple currencies.
Using Multiple Currencies
The Administrator of your organization's CRM account must add the home currency and other currencies before other profile users start using them. The system stores the currency specified in input JSON as your home currency. Although you can edit the properties of your home currency, you cannot change it. To know how to update currencies refer to Update Currencies.
Purpose
To enable multiple currencies for your organization.
Endpoints
- POST /org/currencies/actions/enable
Request Details
Request URL
{api-domain}/crm/{version}/org/currencies/actions/enable
Header
Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52
Scope
ZohoCRM.settings.currencies.CREATE
Sample Request
Copiedcurl "https://www.zohoapis.com/crm/v8/org/currencies/actions/enable"
-X POST
-d "input.json"
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"
CopiedformatMap = Map();
formatMap.put("decimal_separator", "Period");
formatMap.put("thousand_separator", "Comma");
formatMap.put("decimal_places", "2");
currencyMap = Map();
currencyMap.put("format", formatMap);
currencyMap.put("prefix_symbol", true);
currencyMap.put("name", "Algerian Dinar-ADN");
currencyMap.put("iso_code", "DZD");
currencyMap.put("symbol", "DA");
currencyMap.put("exchange_rate", "1.0000000");
params = Map();
params.put("base_currency", currencyMap);
response = invokeurl
[
url :"https://www.zohoapis.com/crm/v8/org/currencies/actions/enable"
type :POST
parameters: params.toString()
connection:"crm_oauth_connection"
];
info response;
Show full
Show less
In the request, "@input.json" contains the sample input data.
Request JSON Keys
- namestring, mandatory
Represents the name of the currency. You can get the available currencies from the CRM UI at Setup > General > Company Settings > Currencies.
- iso_codestring, mandatory
Represents the ISO code of the currency. You can get the currency code from the CRM UI at Setup > General > Company Settings > Currencies.
- exchange_ratestring, mandatory
Represents the rate at which the currency has to be exchanged with home currency. Accepts positive decimal numbers up to nine digits and nine decimal places. Example: 123456789.123456789.
- prefix_symbolBoolean, optional
Represents the position of the ISO code in the currency.
Possible Values:
- true - Display ISO code before the currency value. This is the default value.
- false - Display ISO code after the currency value.
- symbolstring, optional
Represents the symbol of the currency.
- is_activeBoolean, optional
Represents the status of the currency.
Possible Values:- true - The currency is active. This is the default value.
- false - The currency is inactive.
- formatJSON object, optional
Represents the format of the base currency with details like decimal_separator, thousand_separator, and decimal_places.
Keys in the "format" JSON Object
- decimal_separatorstring, optional
The decimal separator separates the integer part of the currency from its fractional part. It can be a Period or Comma, depending on the currency.
- thousand_separatorstring, optional
The thousand separator separates groups of thousands in a currency. It can be a Period, Comma, or Space, depending on the currency.
- decimal_placesinteger, optional
Represents the number of decimal places allowed for the currency. It can be 0, 2, and 3.
Sample Input
Copied{
"base_currency": {
"format": {
"decimal_separator": "Period",
"thousand_separator": "Comma",
"decimal_places": "2"
},
"prefix_symbol": true,
"name": "Algerian Dinar - DZD",
"iso_code": "DZD",
"symbol": "DA",
"exchange_rate": "1.0000000"
}
}
Possible Errors
- ALREADY_ENABLEDHTTP 400
The multi-currency is already enabled
Resolution: The multi-currency feature has already been enabled for your organization. You cannot enable it again. - INVALID_DATAHTTP 400
You have specified either an invalid currency name or ISO code.
Resolution: Go to Setup > General > Company Details> Currencies > Click Add. The Currency picklist will have valid currency names and ISO codes. - INVALID_DATAHTTP 400
You have specified an invalid currency symbol.
Resolution: Input a valid symbol for the currency. - MANDATORY_NOT_FOUNDHTTP 400
You have not specified one or more mandatory fields in the input.
Resolution: Refer to the Request JSON for all the mandatory keys in the input. - INVALID_REQUEST_METHODHTTP 400
The request method is incorrect.
Resolution: Use the HTTP POST method to make this API call. Any other request method will result in this error. - AUTHORIZATION_FAILEDHTTP 400
You do not have sufficient permission to add currencies.
Resolution: Contact your system administrator. - OAUTH_SCOPE_MISMATCHHTTP 401
The access token you have used to make this API call does not have the required scope.
Resolution: Generate a new access token with the scope ZohoCRM.settings.currencies.CREATE. - NO_PERMISSIONHTTP 403
You do not have permission to enable multi-currencies.
Resolution: Contact your system administrator. - FEATURE_NOT_SUPPORTEDHTTP 403
The multi-currency feature is not available except in the Enterprise and higher editions.
Resolution: Upgrade your edition or contact your system administrator. - INVALID_URL_PATTERNHTTP 404
The request URL is incorrect.
Resolution: Specify a valid request URL. Refer to the Request URL section for the right URL. - INTERNAL_ERRORHTTP 500
Unexpected and unhandled exception in the server.
Resolution: Contact the support team at support@zohocrm.com.
Sample Response
Copied{
"base_currency": {
"code": "SUCCESS",
"details" {
"id": "111113000000038990"
},
"message": "The multi-currency feature is enabled and given currency is created as the base currency.",
"status": "success"
}
}