If you want to charge your customers a transaction fee for using a specific payment gateway when purchasing products on your website, you will need to install the transaction fees app. To install the app select INSTALL THIS APP.from the menu. Find and select the ‘Transaction Fees’ app and select
Payment gateway compatibility
PayPal's terms and conditions of service restrict merchants from charging customers an additional fee for using PayPal. Therefore, it is not possible to add a transaction fee for either the PayPal or the Braintree gateways.
Other gateways like Laybuy have their own specific rules around transaction fees and you are advised to check directly with the gateway before using this app.
Adding transaction fees to payment gateways
Once you have installed the app you can begin adding transaction fees to your active payment gateways. To find your payment gateways selectfrom the menu. Beneath each of your active payment gateways will be a ‘Transaction Fee’ field:
In the field enter the percentage fee that you want to charge when a customer selects that payment gateway. For example, if you enter ‘2’ in the box and a customer’s order totals $100 they will be charged an additional $2 as the transaction fee. If you don’t want to charge a fee, leave the field set to 0%.
Adding a message to your checkout page
This app will not automatically include a message on your checkout page to tell your customers that there is an additional fee for using a particular payment gateway. You will need to add this message by editing your live theme’s files. To edit your theme’s files select from the menu. Select Page Editor on your live theme:
You will need to add the code to the checkout_address.twig file accessed by selectingfrom the page editor.
An example of what this message might look like is shown below:
If you'd like to tell the customer how much the transaction fee will be, then you'll need to add some twig code to the message to calculate the amount.
Use the code, currency_value(order.total * 0.02), to output the $ amount of the transaction charge. There is no need to include the $ symbol as the 'currency_value' function will output this for you automatically.
Adding the transaction charge to the order confirmation email
The order confirmation email that is sent to your customers will not automatically include the transaction charge as a separate line item. You can add this to the email’s content if you want it to display separately.
To add the code you will need to edit the content of your website’s emails.
In the email’s content use the variable order.payment_gateway_fee. Use the format_price function to output with the currency symbol, i.e. format_price(order.payment_gateway_fee).