Add custom fee (as currency or %) when client is paying with credit or debit card.
About
Add flexible fees for credit cards. Basically it's working with fee title and
amount in currency (e.g.: £3.99) or percentage (e.g.: 2.5%). Currency is following UC Currency format settings ([DRUPAL-SITE]/admin/store/settings/store/edit/format).
This module if for merchants who want to add extra fee on checkout page. They are displayed as radio buttons inside [credit] pane.
NOTICE: As far as I know there's no way to programmatically check if provided payment card is debit OR credit (please correct me if I'm wrong). So e.g. if client using AMEX can select Debit card and payment will go thought without any error or even warning.
Additional features
Support for multiple fees if order was created in backend
Works with Ubercart Checkout Tweaks (Hide the payment method radio buttons if only one method is available.). This is equal to altering payment pane and removing radio(s) programmatically from form.
Free text for checkout fee option and fee line item with token support
Roadmap
Enable/disable each fee independently on front end (checkout) and back end (CC terminal)
This module generates a RewriteMap file which can be used to redirect requests for internal URLs to the corresponding alias. This allows the redirect to occur on the Apache level instead of requiring Drupal to bootstrap in order to handle the redirect thus removing significant load from the webserver to handle the redirects.
Usage
Install Drupal with Global Redirect module and this Global Redirect RewriteMap module.
Go to admin/config/system/globalredirect and configure settings for Global Redirect and near the bottom are the options for this Global Redirect RewriteMap module. Use the manual generation button to create an initial RewriteMap file.
The RewriteMap Apache directive cannot be used in the .htaccess context so the the following configurations must be placed in the server or virtual host configuration.
RewriteEngine On
RewriteMap globalredirect txt:path/to/private/files/globalredirect_rewritemap.txt
Configure your .htaccess file to use the RewriteMap defined in step 3. Place these in your .htaccess just before the comment that says "# Pass all requests not referring directly to files in the filesystem..." You will also likely need to set the RewriteBase in your .htaccess. # Global Redirect RewriteMap
RewriteCond ${globalredirect:$1} > "" [NC]