CyberMut™ or PaiementCIC™ Payment


Home 'Secure payment' Contents

Please email any bug reports, comments or suggestions to ExperLog's Online Support


Overview

ExperShop supports CyberMut™ or PaiementCIC™ 1.2 and later, but has not been tested against previous versions.

In the current document, "CyberMut™" will be used for both "CyberMut™" and "PaiementCIC™", as both systems are based on the same technical platform and infrastructure.

The CyberMut™ libraries are not included in the ExperShop software: you obtain them when setting your CyberMut™ account.

If you speak french, you can go to the CyberMut™ home page or the PaiementCIC™ home page for more information (although CyberMut™ offers an english-language interface, the web site does not).
If you don't speak french, tell us, we'll help you establish the contact with english-speaking CyberMut™ or PaiementCIC™ people.

Platforms

Currently, only Linux (intel) and Windows NT are supported.
Contact us for needs related to other platforms.

How does CyberMut™ work ?

CyberMut™ is a secure payment service operated by a french bank, Crédit Mutuel.
Using CyberMut™ requires that you open a business bank account there, while registering with the CyberMut™ services.

When this is done, you can easily set up your ExperShop store to use CyberMut™.

CyberMut™ runs a secure payment server, that overtakes the whole customer payment transaction: the shop gives control to the CyberMut™ server that requests the customer to type in his credit-card info, checks the validity of the transaction, and calls back the shop with information concerning the payment status.

The service is asynchronous: the shop is called back through an HTTP request, and must provide a script there to deal with the payment results.

Note that the credit-card information is never transmitted to the shop: only the bank knows it.

Configuring ExperShop for CyberMut™

The following properties must be set in the shop configuration file:

shop.Currency : the currency used in the shop (the standard name for the currency: for example, USD for US Dollar, EUR for Euro).

pay.cmut.URL : the CyberMut™ payment services URL (provided by CyberMut™).
pay.cmut.version: default value is 1.2
pay.cmut.TPE: a number, provided by CyberMut™
pay.cmut.MerchantId: a merchant #, provided by CyberMut™
pay.cmut.Lang: the language used in the CyberMut forms; default: english. (If you prefer french, specify "francais" there).
pay.cmut.HomeURL: your shop home URL.
pay.cmut.PayOkURL: an URL for customer return upon successful payment (generally, a "thank you" page that displays order information).
pay.cmut.PayErrURL: an URL for customer return upon payment failure (generally, a page that displays information concerning the failure and order status).
pay.cmut.SubmitText: the text to be displayed in the button clicked to connect the CyberMut™ service.

CyberMut will ask you for information necessary to set up your account: among the information requested, one item is the URL used for payment confirmation.
If using ExperShop, the URL to provide is of the form:
http://yourserver/servlet/com.expershop.pay.cmut.ESCgi2Servlet
(replace yourserver with your web server address, and /servlet/ with the path used there to reach ExperShop servlets).

Installing CyberMut™ on your system

When registering for a CyberMut™ account at Crédit Mutuel, you will get all the necessary material: particularly, the CyberMut™ libraries to install on your system.

Installing on Linux (intel)

The ExperShop library is called libESCyberMut.so, located in the ExperSHOP/etc/cmut/linux-intel directory.

Principles:

  • The library must be visible from applications: for example, add /usr/local/ExperSHOP/etc/cmut/linux-intel in /etc/ld.so.conf and run ldconfig from the root account; With Apache and JServ, we recommend to add wrapper.bin.parameters=java.library.path=/usr/local/ExperSHOP/etc/cmut/linux-intel in jserv.properties to ensure the java runtime will see the library.
  • The CMKEYDIR environment variable must point to the directory that contains the CyberMut key, and must be visible from applications: for example, with Apache and JServ, add wrapper.env=CMKEYDIR=/usr/local/CyberMut in jserv.properties (provided your cybermut key is in /usr/local/CyberMut).

Installing on Windows NT

The CyberMut™ library involved is CMSSL.dll; the ExperShop library is ESCyberMut.dll, located in ExperSHOP\etc\cmut\win32.

For that reason, your PATH needs to point to both ExperShop\etc\cmut\win32 and the directory that contains CMSSL.dll.

Note that CyberMut™ comes with a merchant key file, to install on your system : then, you have set the CMKEYDIR environment variable to the directory where the merchant key is installed.

For detailed CyberMut™-specific installation instruction, see the CyberMut™ manual.

Invoking CyberMut™ from ExperShop templates

Invoking CyberMut™ implies displaying a form, generated by CyberMut™: the form has only hidden tags and a "submit" button.

ExperShop includes a CyberMut™ Action, of class com.expershop.pay.cmut.ESGenFormAct : this action generates the CyberMut™ form, and stores it in an output parameter called CyberMutFORM.

To display the form, you have to invoke the action, then display the value of CyberMutFORM; the following example, in an ExperSHOP template, does the job:

$Action com.expershop.pay.cmut.ESGenFormAct
$CyberMutFORM$
The "$Action" line invokes the "com.expershop.pay.cmut.ESGenFormAct" action, then $CyberMutFORM$ displays the value of the "CyberMutFORM" parameter.

ESGenFormAct receives 2 optional parameters:

  • cmut.Lang : Language ("english" or "francais"= french), overrides pay.cmut.Lang in the configuration file.
  • cmut.SubmitText : submit button text (overrides pay.cmut.SubmitText in the configuration file)
Note that the ESGenFormAct action also pre-orders the cart content: when CyberMut™ calls ExperShop with a successful payment receipt, the pre-order is confirmed and becomes an order.