Along side handling transactions Falcon Payments also provides a few bits of additional functionality.
Each provider can be configured to handle payment surcharges per method, per country. Each method can also be enabled or disabled on a country level.
File level config only
At the moment surcharges and country restrictions can only be configured in your
server/config files. We are working hard to make this functionality available to manage in your cloud dashboard.
A surcharge is an additional fee that the merchant might want to charge the customer for using a particular payment method.
This fee can be calculated in a few ways:
- Percentage of order subtotal
- Flat Fee
- Percentage of order subtotal + Flat Fee
The fee can be different per country, per method and a different flat fee can be passed per currency. The country is based on the billing address and the currency is based on the store currency.
Surcharges are currently added in your
The surcharge parameter on the payment component config accepts an array of surcharges with the following parameters:
* is passed to the countries array it acts as a fallback. Both
percentage are optional. If both are passed the total surcharge will be both values added together.
Not available in BigCommerce
Unfortunately, BigCommerce APIs don't currently allow us a way to add surcharges to orders so this feature isn't available.
Each provider and method can be globally enabled or disabled via the config. On top of this, each method can be enabled or disabled per country (based on the customers billing address).
Configuring country restrictions
Country restrictions are added to the payment provided component config in the same way as surcharges.
Each provider can be passed an
enabled argument. If set to false the entire provider and all it's methods will be disabled.
Within the providers config different methods can be configured. The
key is based on the
Each method accepts 3 arguments:
enabledto enable or disable the method globally. This will override any configuration in the
surchargeto configure surcharges (explained above).
countriesthis is an array of country codes the method is available in. If empty the method will be enabled for all countries.
Some payment methods require no interaction with a payment provider for processing. These are still processed through Falcon Payments but will not be connected to a provider (e.g. Mollie / Stripe). Examples of these methods are cash on delivery or money order. We have a simple provider package set up to handle these type of payments (
Configuring offline payments
When a payment provider returns methods or loads a method data one of the props available is
isOffline. If this is passed the shop API may choose to handle the payment slightly differently.
An example can be seen below: