LivePayments - mobilPay Card WooCommerce Payment Gateway
LivePayments is a Credit & Debit Card WooCommerce Payment Gateway that uses the Romanian mobilPay payment processor. This plugin is meant to be used by merchants in Romania.
- Is it good for you?
- Supported transaction statuses (actions)
- Downloading the plug-in
- Setting up and configuring your plug-in
- Retrieving mobilPay™ security assets
- Gateway readiness
- Gateway diagnostics
Is it good for you?
This plug-in is good for you if you are any kind of merchant running a WooCommerce-powered store and want accept credit or debit card payment using the romanian mobilPay™ payment processing gateway.
If you are a WordPress solution developer and working on implementing a WooCommerce-based store powered by this payment processing gateway, then this is the only such plug-in that allows you to customize your implementation, due to a wealth of action and filter hooks.
- easy to setup and run using a friendly configuration interface, which does not require of you to perform any kind of FTP operation: just install the plug-in, fetch your assets from mobilPay and configure your plug-in.
- customizable and extensible via a wealth of action and filter hooks;
- supports all mobilPay™ transaction statuses, including partial refunds and partially completed payments;
- extremely detailed reporting on transaction history and lifecycle;
- dashboard widget for a quick outlook on overall transaction statuses;
- detailed transaction details are reported for each order, for both admin staff and your clients;
- multi-language support (romanian translation included);
- detailed journaling.
Supported transaction statuses (actions)
|confirmed||The amount has been transfered and is entering the settlement process.||If the amount reported as confirmed is the same as the amount initially paid, the order may be fulfilled. Otherwise, it is placed on hold.|
|confirmed_pending||The transaction's fraud risk is being assessed. The amount is being transfered. If everything checks out, the transaction moves to
||The order is placed on hold.|
|paid_pending||The transaction's fraud risk is being assessed. No transfer has occured at this stage, but the amount is being reserved on the client's card.||The order is placed on hold.|
|canceled||The amount reserved on the client's card is being released.||The order is marked as cancelled.|
|credit||Amount refunded to client (partially or in full).||The refunded amount is recorded in the order state. If the entire amount has been refunded, the order is marked as refunded.|
Downloading the plug-in
You can get the plug-in:
- either from the WordPress plug-in directory: https://wordpress.org/plugins/wc-mobilpayments-card/;
- or from the Releases section of the project's page: https://github.com/alexboia/LivePayments-MP-WC/releases.
- Using your favourite FTP client, upload the plugin files to the
/wp-content/plugins/livepayments-mp-wcdirectory, or install the plugin through the WordPress plugins screen directly (recommended).
- Activate the plugin through the 'Plugins' screen in WordPress.
Setting up and configuring your plug-in
- Retrieve your security assets from mobilPay™'s management interface (see below).
- Use the
WooCommerce -> Settings -> Payments -> mobilPay™ Card Gatewaysidebar menu item to access the plug-in configuration page.
- Fill in the required fields as instructed in the table below.
|Option||How to fill in||Notes|
|Enable / Disable||Check this box to enable mobilPay™ debit or credit card payments||-|
|mobilPay™ Sandbox / Test Mode||Check this box to conduct safe testing using mobilPay™'s sandbox (without having to perform real transactions)||-|
|Title||Any value you like, but consider telling the customer the name of the payment provider. Default:
||Payment title the customer will be seing during the check-out process|
|Description||Any value you like, may be left empty, but it is good practice to use this field to communicate more about the payment provider / payment process.||Payment description the customer will be seing during the check-out process|
|Seller Account ID||Your merchant account identifier, as provided by mobilPay™, in the following format:
|Return URL||A page where your client will be redirected after completing the payment process. Absolute URL's must be used, but you can very well click
|mobilPay™ digital certificate for the live environment||Use this field to upload the
|The private key for the live environment||Use this field to upload the
|mobilPay™ digital certificate for the sandbox environment||Use this field to upload the
|The private key for the sandbox environment||Use this field to upload the
Retrieving mobilPay™ security assets
To retrieve the seller account ID (
XXXX-XXXX-XXXX-XXXX-XXXX), the live public certificate file (
live.XXXX-XXXX-XXXX-XXXX-XXXX.public.cer) and the live private key file (
- Going to
- Navigating to
Admin -> Seller accounts -> Modify(for the seller you want to retrieve the assets)
-> Security Settings tab.
To retrieve the sandbox public certificate file (
sandbox.XXXX-XXXX-XXXX-XXXX-XXXX.public.cer) and the sandbox private key file (
sandbox.XXXX-XXXX-XXXX-XXXX-XXXXprivate.key), you must first synchronize the sandbox environment (if you have not done so yet or if you did, but your merchant account has been modified):
- Go to
- Navigate to
Admin -> Seller accounts -> Modify(for the seller you want to sync)
-> General Information tab;
- Click the
Synchronization applications (to Sandbox)button.
Then you can go on to the sandbox environment and download your sandbox assets:
- Go to
- Navigate to
Implementation -> Test Implementation;
- Then, in the sandbox environment, navigate to
Admin -> Seller accounts -> Modify(for the seller you want to sync)
-> Security Settings tab.
A return URL is the absolute URL (starting with the
https:// thingy) to a page where your customer is being redirected after completing the payment process.
The payment gateway sends the customer here, but it is your job to set up such page to, at the very least, thank him for his business.
LivePayments-MP-WC offers a shortcode that you can embed into one of your WordPress pages (post type=
page, created via
Pages -> Add new):
After that, you can copy the absolute URL (ex.
http://uberstorethebestintown.com/thank-you-dude) of that page and place it in the
Return URL field mentioned above.
However, I only mention this manual and rather unfriendly procedure because you might already have a page defined for this purpose, and just want to embed the status in it. But, if you do not, then let the plug-in handle this for you and click the
Geneate it for me mentioned above, which will generate this page for you, with the following attributes:
- post author: current user;
- post content:
- post title:
Thank you for your order(translated to your current language, if such a translation exists);
- post slug:
- post status:
- post type:
- comment status:
- ping status:
If the mobilPay™ card payment gateway requires further configuration, the plug-in displays a banner in which you are informed what information is needed for the gateway to be able to process payments. The banner is shown in the following places:
- payment gateway listing (Payment tab);
- our own payment gateway settings form.
To disable this feature, simply set the following constant in your
Similar to the Stargate, the built-in mobilPay™ card payment gateway now offers a diagnostic feature which notifies you whether and when something is wrong. The following parameters are monitored:
- Whether or not your return URL is still a valid URL;
- Whether or not your return URL points to a valid local WordPress page (this bit is optional actually, see more details below);
- Whether or not your payment assets are still valid: makes sure that payment asset file is not empty and that its content is what it is supposed to be (i.e. valid public key certificate data or private key data).
These checks are only being performed if the payment gateway has been configured (i.e. all the necessary information has been filled in and saved). The diagnostic messages are presented as follows:
- In the WooCommerce payment gateway listing page;
- In the the plug-in's payment gateway configuration page;
- In a newly created, dedicated, plug-in diagnostic page (
Livepayments-MP-WC > Plugin Diagnosticsmenu);
- Via e-mail, if activated in the plug-in settings page (
Livepayments-MP-WC > Plugin Settingsmenu), delivered to an e-mail address of your chosing (defaults to the site administrator's e-mail address): the plug-in will scan the payment gateway once a day and deliver an e-mail warning notification if issues are found.
Return URL validation
When validationg the return URL, there is also an optional check to be performed, whether or not that URL corresponds to an existing local WordPress page or post. This has been intentionally left inactive by default because, if left active by default, it might interefere with valid configurations which have either:
- an external return URL or
- a valid non-WordPress return URL.
In a situation like this, the diagnostics feature will issue false warnings.
To enable it, simply define the following constant in
Customizing the warning e-mail template
The e-mail sent when some issues are found for the mobilPay™ card payment gateway is fully integrated in WooCommerce's e-mail system.
As such, not only does it use the standard e-mail templates, but is also customizable: simply go to
WooCommerce > Settings > Emails and look for
LivePayments - mobilPay Card WooCommerce Payment Gateway - Gateway diagnostics warning e-mail.
The settings screen
Admin order page - transaction status information
Thank you page content
Admin transaction history
Admin transaction history - view details
Admin dashboard widget
Frontend order page - transaction status information
Plugin Settings page
Plugin Diagnostics page
For running the plug-in itself
- PHP version 5.6.2 or greater;
- MySQL version 5.7 or greater;
- WordPress 5.0 or greater;
- WooCommerce 3.2.0 or greater;
- openssl extension;
- mysqli extension;
- mbstring - not strictly required, but recommended;
- zlib - not strictly required, but recommended.
All of the above, with the following amendments:
- PHP version 5.4.0 or greater is required;
- xdebug extension is recommended;
- phpunit version 5.x installed and available in your $PATH, for running the tests;
- wp (wp-cli) version 2.x installed and available in your $PATH, for initializing the test environment, if needed
- phpcompatinfo version 5.x installed and available in your $PATH, for generating the compatibility information files
- cygwin, for Windows users, such as myself, for setting up the development environment, running unit tests and the build scripts, with the following requirements itself:
- wget command;
- curl command;
- gettext libraries;
- php core engine and the above-mentioned php extensions;
- mysql command line client;
- subversion command line client;
- zip command.
- PHP-MySQLi-Database-Class - small mysqli wrapper for PHP. I used it instead of the builtin wpdb class.
- MimeReader - PHP mime sniffer written by Shane Thompson.
- Payment gateway integration libary provided by mobilPay.
- blockUI - jQuery modal view plug-in.
The source code is published under the terms of the BSD New License licence.
I put some of my free time into developing and maintaining this plugin. If helped you in your projects and you are happy with it, you can...