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.


Supported Exchange rates sources

As of Sippy2021 the following sources for exchange rates are supported:

  • CurrencyLayer (old)

  • APILayer (new CurrencyLayer)

  • AlphaVantage

  • Custom Script

  • Manual Entry

 

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, CurrencyLayer or APILayer. As of Dec 2022 all three providers require API key to be supplied. More details on how to get an API key for specific provider are described later in this article.


 



NOTE: When the 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 Pound Sterling, GBP) is added and would populate the Currency drop down boxes for Tariff, Destination Sets, Vendors, CDRs, Payment Processors, TopUp Vouchers, etc.

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

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


Manual Entry

This Exchange Rates source allows to enter rate manually. Note, that update of the entered rate should also be done manually.


CurrencyLayer 

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.

Note - registration of new accounts on CurrencyLayer is closed, and new users are redirected to APILayer instead.


APILayer

Ex-CurrencyLayer. Provides more flexibility regarding tools that are available, and a market to add subscription for desired modules to your Account. Limitations for free version vary depending on selected Subscription, could be from 100 requests per month for example. Sippy supports the following exchange rate module:

https://apilayer.com/marketplace/currency_data-api

It’s required to subscribe to this module, after that the API key would become available


AlphaVantage

Alpha Vantage provides free stock APIs through which users can access a wide range of data like real-time updates, and historical data on equities, currencies, and cryptocurrencies.

Some of the API methods are free, other require the paid subscription. Particularly, Exchange Rates was free for ages, then became paid one. As of Sippy 2021 it’s possible to specify the own API key that could be retrieved here: https://www.alphavantage.co/support/#api-key 

Current status on Dec 2022 - any API key is valid for Alpha Vantage to work. 


Custom Script:

Exchange rates can be set using an external, custom script. The script should be created (or uploaded) on the server as /var/envX/scripts/xrate_update_custom.sh where envX should be replaced with proper i_environment, e.g. env123 or env1. When the script is available on the server, customers can set source of exchange rate update as Custom Script.

The script gets 2 arguments: 

1. currency (string)

2. base_currency (string)

Returned values

rate (float)


Returned value should be read as:

rate N base_currency units per 1 currency unit (float)


An example of such script that re-uses existing Exchange rate source and scales it twice - api_access_key should be replaced with a valid one.


#!/bin/sh

#

# To activate custom exchange rates feature

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

#

# Scale AlphaVantage rate.

#

# Input arguments:

#       base currency

#       currency

# Returns:

#       exchange rate


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

SCALE=2


RATE=`/home/ssp/scripts/python_exec.sh "${SCRIPT}" 1 AlphaVantage ${1} ${2} '{"api_access_key": "123"}'`

echo "${RATE} * ${SCALE}" | /usr/bin/bc -q