LogiSense Billing supports a default currency ("system currency") at the main business level. This default is used as the account currency if a currency code is not provided during account creation. The system will also define a system wide set of currencies that can be enabled. All items can only use currencies that are configured in this list. Once a default currency has been established and is in use (i.e. invoice items created) it cannot be modified. As an example the administrator can toggle the following currencies: British Pound, Euro, US Dollar.
An exchange rate must be configured when setting up a currency. The exchange rate is configured as a multiplier. As an example if the default currency is pounds, the rates for the other currencies get multiplied by the exchange rate to derive those currencies. Up to 11 decimal places of rounding can be used when setting up exchange rates. Customers can configure rates between 1 and 11 places of precision.
All new accounts default to the currency of the base system. The account currency can be changed to a different currency as long as it is in the list of owner supported currencies. When configuring the product catalog or rates, LogiSense will allow the admin to configure subscriptions and rates in multiple currencies. The system will use the configured exchange rates to convert between amounts. The user can explicitly override the subscription charge which has the effect of customizing the exchange rate for that product or service. As an example, the Canadian to US dollar is 0.78. A service provider configures a service A subscription of $1. The US price will show up as 78 cents based on the exchange rate. The user can change the US price for that service to 80 cents if desired.
An account will be restricted to purchasing a services in the currency of the account. For instance, if the price in British pounds of a service was 5.00 and the Euro pricing 5.75. Account A is set up in pounds and would be offered the service at 5.00. Account B (Euro based account) will be offered the service at 5.75. This is illustrated in the figure below. Let's say we have a new account C that is set up in Canadian dollars but the service does not offer pricing in Canadian dollars. Account C will not be able to purchase that service. The currency that an account purchases a service in will be the same currency it is billed and invoiced in. No currency conversion is necessary in this scenario.
Invoices will always show all amounts in the invoicer (account) currency. Since exchange rates can and will change from time to time, the system will maintain a history of the exchange rate that was used when billing and invoicing the customer.
The currency on an account cannot be changed once a transaction has been applied to it. All reporting will be done in the currency of the base system. If the account currency is different from the system currency, exchange rate conversions will be performed to report on charges related to that account. The admin will select the rate to use for reporting purposes.
Rate groups can be set up in multiple currencies. A customer that needs to set up rates in different currencies will set up multiple rate groups - each rate group will be defined in a currency - so you could have a US dollar rate group, Canadian dollar rate group etc. When applying usage charges, the rating system will use the rate group in the currency of the account. So if we have two rate groups A and B in British Pounds and US dollars. Account A is in British Pounds and account B in US dollars.
Account A will be charged usage based on the rate in British Pounds and Account B will be charged usage based on the rate in US dollars. The rating engine will process and generate all usage amounts in the account currency and send aggregated daily amounts to the billing engine. At billing time, the billing engine will apply the aggregated amounts to an invoice. No currency conversion is necessary since the billing and rating processes compute amounts in the currency of the account as shown above.