Exchange Rates

 

Sippy supports 170+ Currencies (supported currencies).  You can build your customer base as globally as you need.  You can regulate your Currency value manually or use one of the integrated third party Currency exchange services to manage the conversion process.  

 

About 3rd party integrations.

If you choose to use one of the third party integrations to manage your exchange rates, it's important to note that these are maintained by the third party and not by Sippy Software.  Changes to the third party application by the third party may negatively impact your business.  It is possible that our support and development teams might not be aware of any problems until they occur.

We will try to maintain two free options for currency exchanges so if a third party integration discontinues their exchange rate services, you will always have more than one option for live data.

 

Adding a new Exchange Rate

  • Navigate to the Exchange Rate window on your Sippy User Interface. Your current list of available currencies will be listed in the table, such as Australian Dollar (AUD), Canadian Dollar (CAD) and Euro (EUR) in the image below. Click Add to configure additional currencies.



  • When adding additional Exchange Rates, select the Currency Unit you require from the drop-down menu.  Manually configure the rate as listed, or change Source to Alpha Vantage or Currency Layer.  If you choose to use Currency Layer then you will also need to save an API Access Key.  More details on how to get a Currency Layer API key are described later in this article.



 



NOTE: When exchange is set as automatic through the web source, the balances displayed will change with the market value of each currency in direct relation to your base currency setting.  This may have a minor change in invoicing.


  • Select, Save & Close to add the currency configured to your Exchange Rates list. The currency selected (in the example above the Afghan, Afghani) is added and would populate the Currency drop down boxes for Customers, Accounts and Payment Processors

  • The Timestamp column displays date and time of the last rate update.  Sippy automatically updates exchange rates at set intervals.  Alpha Vantage updates every 15 minutes.  Currency Layer updates hourly using the free Subscription.

  • All Currencies displaying a    are not currently assigned to an entity, and therefore can be deleted



Get Exchange Rate using an External Script


Exchange rates can be set using an external, custom script. The script should be created (or uploaded) on the server as /home/ssp/private/scripts/xrate_update_custom.sh. When the script is available on the server, customers can set source of exchange rate update as Custom Script.  


The script gets 2 arguments: 

currency (string)

base_currency (string)


and returns: 

rate N base_currency units per 1 currency unit (float)


Here is an example of a custom script.  The script gets the rate from Google Online Converter and scales it by 1.05: 



#!/bin/sh


#

# To activate custom exchange rates feature

# copy this script into /var/envX/scripts/xrate_update_custom.sh

#


#

# Scale Google Finance rate.

#

# Input arguments:

#base currency

#currency

# Returns:

#exchange rate


SCALE=1.05


SCRIPT="/home/ssp/scripts/xrate_update.py"


RATE=`/home/ssp/scripts/python_exec.sh "${SCRIPT}" GoogleFinance "${@}"`


echo "scale=12; ${RATE} * ${SCALE}" | /usr/bin/bc -q



Notes about Currency Layer - (Version 5.1 and later)

Currency Layer is a new Exchange rate service brought in to replace google finance when the API service was deprecated.  Currency layer requires you to sign up for an API key and select a subscription plan.  You will need to create an account here.


The free option comes with some minor caveats.  Users are limited to 1000 requests for exchange rate data a month and the base currency used for conversion is USD.  On the request side, a single API key will be sufficient as at a polling rate of 1 per hour the switch will likely only reach 744 requests in a month (minus any additional requests that may take place if you are doing some intensive testing.  The free version also requires USD to be selected as your base currency.


The $10 USD plan offers some additional flexibility for customers.  Any supported currency could be used as a base currency. Requests to Currency Layer are also handled through https instead of http and are more secure as a result.  Currency Layer will update currencies once per hour.  Paid subscriptions should be enabled on the Softswitch side if you are paying for this service. There is currently no way for Sippy to tell a paid API key from a free API key.