Introduction
WL Sips is a secure multi-channel e-commerce payment solution that complies with the PCI DSS standard. It allows you to accept and manage payment transactions by taking into account business rules related to your activity (payment upon shipping, deferred payment, recurring payment, payment in instalments, etc.).
The purpose of this document is to explain the Franfinance 4xWEB means of payment integration integration into WL Sips.
Who does this document target?
This document is intended to help you implement the Franfinance 4xWEB means of payment integration on your e-commerce site.
It includes:
- functional information for you
- implementation instructions for your technical team
To get an overview of the WL Sips solution, we advise you to consult the following documents:
- Functional presentation
- Functionality set-up guide
Understanding Franfinance 4xWEB payments with WL Sips
General principles
Specialised in consumer credit, the French company Franfinance 4xWEB is a solution reserved for private persons of legal age holding a credit card valid for at least 3 months after contract signing date for payment in instalments and the use of which is not subject to a systematic authorisation request (especially Visa Electron and Maestro cards).
With this solution, customers pay for their online purchases in 3 or 4 installments.
During a Franfinance 4xWEB payment, customers complete their personal data as well as credit card details.
At the end of the entry, they are informed online of the request result.
Acceptance rules
Available functionalities
Payment channels | ||
---|---|---|
Internet | V | Default payment channel |
MOTO | X | |
Fax | X | |
IVS | X |
Means of payment | ||
---|---|---|
Immediate payment | X | |
End-of-day payment | V | Default method |
Deferred payment | V | |
Payment upon shipping | V | |
Payment in instalments | X | |
Subscription payment | X | |
Batch payment | X | |
OneClick payment | X |
Currency management | ||
---|---|---|
Multicurrency acceptance | X | Payment in Euros only (978) |
Currency settlement | X | Payment in Euros only (978) |
Payment pages
The pages for this means of payment are managed and hosted by Franfinance.
A first page allows the customer to complete the data necessary for his 4xWEB subscription.
Following the validation of the latter, the customer will be offered to enter his card information in order to initiate the payment:
- his card number
- his card expiry date
- his card security code
If any of these data are missing or invalid, or if the card number entered is not in range, an error message is displayed and a new entry is requested.
The WL Sips standard operation applies: the entry attempts number is limited; an error code is returned if the number of attempts is exceeded:
Following the payment completion, a ticket page showing the transaction result is displayed to the customer. This ticket has a "return shop" button allowing to navigate back to your website with the Franfinance 4xWEB payment response.
The Sips Paypage standard options apply: this ticket can be deactivated at your request. If you place the bypassReceiptPage ticket option, the ticket is not displayed. The customer is redirected straight to your website.
Depending on the authorisation request result, different messages will be displayed on the ticket for customers.
If the customer does not return to your merchant website (case of a disruption in the payment process), an automatic response will be sent to you with the transaction result up to 24 hours after the payment began. Generally, the delay is between 30 minutes and 1 hour.
Signing your Franfinance 4xWEB acceptance contract
In order to offer the Franfinance 4xWEB means of payment on your website, you have to sign an acceptance contract with Franfinance. Thereafter, you transmit us the contract number for recording in our information system.
Making a Franfinance 4xWEB payment
You can offer the Franfinance 4xWEB means of payment through the Sips Paypage which directly acts as the payment interface with customers via their web browser.
The remittance modes available for a Franfinance 4xWEB transaction are:
- Cancellation mode: default mode allowing transaction remittance on a predefined date, called capture delay. When this capture delay is reached, the remittance is sent automatically. This delay is set via the captureDay field with its 0 default value (end-of-day payment).
- Validation mode: you must validate the transaction to trigger the remittance. A capture delay must also be defined. When this capture delay is reached or exceeded, you will not be able to validate the transaction, which will therefore expire automatically.
The diagram below explains the different transaction statuses according to the chosen capture mode:

Making a Franfinance 4xWEB payment with Sips Paypage
The payment process for Sips Paypage is described below:

Setting the payment request
The existing paymentMeanBrandList field must be populated with the means of payment list offered to the customer and specifically the Franfinance means of payment.
Specific information is required for a Franfinance 4xWEB payment request:
Field name | Remarks/rules |
---|---|
captureDay | Franfinance recommends setting the value to 0. |
captureMode | Tհe value sent in the request is ignored. The capture
mode is forced to AUTHOR_CAPTURE. |
currencyCode | Mandatory: EUR only (978) |
customerId | Optional. Customer identifier. |
customerIpAddress | Optional. Customer IP address. |
bypassReceiptPage | Optional. Indicates that you want to bypass the ticket
type pages. |
paymentPattern | Tհe value sent in the request is ignored. The payment
type is forced to ONE_SHOT. |
customerAccountHistoric
Field name | Remarks/rules |
---|---|
customerAccountHistoric.creationDate | Optional. Creation date. With the
customerAccount container, the customer account creation
date on your website is used to calculate the date of the
account. |
customerAccountHistoric.numberOfAttemptsAddCard24Hours | Optional. Number of separate cards used by your
customer account in the last 24 hours. |
customerAccountHistoric.numberOfPurchase | Facultatif. Number of separate purchase performed by
the customer on the merchant site. |
customerAccountHistoric.numberOfPurchase180Days | Optional. Number of purchases made on your customer
account over the last six months (last 180 days). |
customerAccountHistoric.numberOfTransaction24Hours | Optional. Number of cancelled or successful
transactions in the last 24 hours on the customer
account. |
customerAccountHistoric.suspiciousActivityIndicator | Optional. Indicates whether suspicious activity is
detected on your customer account. |
customerAddress
Field name | Remarks/rules |
---|---|
customerAddress.streetNumber | Optional. Customer street number. |
customerAddress.street | Mandatory |
customerAddress.addressAdditional1 | Optional |
customerAddress.addressAdditional2 | Optional |
customerAddress.addressAdditional3 | Optional |
customerAddress.zipCode | Mandatory |
customerAddress.city | Mandatory |
customerAddress.country | Optional. Address country code. |
customerContact
Field name | Remarks/rules |
---|---|
customerContact.email | Mandatory |
customerContact.gender | Optional. Possible values: male (M) or female
(F). |
customerContact.lastName | Mandatory |
customerContact.maidenName | Optional |
customerContact.firstName | Mandatory |
customerContact.mobile | Field mobile or field phone mandatory |
customerContact.phone | Field mobile or field phone mandatory |
customerContact.title | Optional. Contact title. M for mister, Mme
for madam |
customerContact.legalId | Optional. Establishment national identifier (SIRET for
France). This data applies to you and to the customer
(see Contact fields). |
customerContact.positionOccupied | Optional. Occupied position. |
customerData
Field name | Remarks/rules |
---|---|
customerData.birthCity | Optional |
customerData.birthDate | Optional. In the YYYYMMDD format. |
customerData.birthZipCode | Optional. No code if born abroad. Note: Corsica
covers two metropolitan departments (2A and 2B) which should be
under department code 20. |
customerData.birthCountry | Optional. Birth country code. |
customerData.nationalityCountry | Optional. Nationality country. |
customerData.maidenName | Optional |
customerData.IpAddressDatetime | Optional |
billingAddress
Field name | Remarks/rules |
---|---|
billingAddress.streetNumber | Optional. Address street number. |
billingAddress.street | Optional. Address street name. |
billingAddress.addressAdditional1 | Optional. Additional address 1. |
billingAddress.addressAdditional2 | Optional. Additional address 2. |
billingAddress.addressAdditional3 | Optional. Additional address 3. |
billingAddress.zipCode | Optional. Address zip code. |
billingAddress.city | Optional. Address city. |
billingAddress.country | Optional. Contact country |
billingContact
Field name | Remarks/rules |
---|---|
billingContact.email | Optional. Contact email. |
billingContact.mobile | Optional. Contact mobile phone number. |
billingContact.phone | Optional. Contact phone number. |
billingContact.title | Optional. Contact title. M for mister, Mme
for madam |
billingContact.lastname | Optional. Contact last name. |
billingContact.firstname | Optional. Contact first name. |
billingContact.gender | Optional. Gender of contact, male (=M) or female
(=F). |
billingContact.businessName | Optional. Business name. |
billingContact.company | Optional. Contact company. |
billingContact.legalId | Optional. Establishment national identifier (SIRET for
France). This data applies to you and to the customer
(see Contact fields). |
billingContact.positionOccupied | Optional. Occupied position. |
deliveryAddress
Field name | Remarks/rules |
---|---|
deliveryAddress.streetNumber | Optional. Address street number. |
deliveryAddress.street | Optional. Address street name. |
deliveryAddress.addressAdditional1 | Optional. Additional address 1. |
deliveryAddress.addressAdditional2 | Optional. Additional address 2. |
deliveryAddress.addressAdditional3 | Optional. Additional address 3. |
deliveryAddress.zipCode | Optional. Address zip code. |
deliveryAddress.city | Optional. Address city. |
deliveryAddress.country | Optional. Address country. |
deliveryAddress.addressCreationDate | Optional. Address creation date. |
deliveryAddress.addressStatus | Optional. Previous successful or unsuccessful
delivery. |
deliveryContact
Field name | Remarks/rules |
---|---|
deliveryContact.email | Optional. Contact email. |
deliveryContact.mobile | Optional. Contact mobile phone number. |
deliveryContact.phone | Optional. Contact phone number. |
deliveryContact.title | Optional. Contact title. M for mister, Mme
for madam |
deliveryContact.lastname | Optional. Contact last name. |
deliveryContact.maidenName | Optional |
deliveryContact.firstname | Optional. Contact first name. |
deliveryContact.gender | Optional. Gender of contact, male (=M) or female
(=F). |
deliveryContact.businessName | Optional. Business name. |
deliveryContact.company | Optional. Contact company. |
deliveryContact.legalId | Optional. Establishment national identifier (SIRET for
France). This data applies to you and to the customer
(see Contact fields). |
deliveryContact.positionOccupied | Optional. Occupied position. |
deliveryData
Field name | Remarks/rules |
---|---|
deliveryData.deliveryChargeAmount | Optional. Total charge of the order
delivery. |
deliveryData.deliveryMethod | Optional. The chosen delivery method (standard,
priority, ...). |
deliveryData.deliveryMode | Optional. Delivery mode (post office, relay point,
...). |
deliveryData.deliveryOperator | Optional. Name of the operator making the
delivery. |
deliveryData.electronicDeliveryIndicator | Optional. Indicates whether the delivery is in an
electronic mode. |
deliveryData.estimatedDeliveryDate | Optional. Your estimated delivery date. |
deliveryData.estimatedDeliveryDelay | Optional. Your estimated delivery delay (in number of
days). |
fraudData
Field name | Remarks/rules |
---|---|
fraudData.productAvailabilityIndicator | Optional. Availability of the products. |
fraudData.reorderProductIndicator | Optional. Indicates whether the product has already
been ordered. |
orderContext
Field name | Remarks/rules |
---|---|
orderContext.customerbrowserType | Optional. Type of browser used by the customer.
Example: Explorer 9.5, MSN IE 9, MSN IE 10, MSN IE 11,
etc. |
orderContext.customerHostName | Optional. Name of the server on which the customer is
connected. Example: PHX.QW.AOL.COM. |
paymentMeanData
Field name | Remarks/rules |
---|---|
paymentMeanData.franfinance4xcb.authenticationKey | Mandatory. Channel provided by Franfinance. |
paymentMeanData.franfinance4xcb.birthPlaceCode | Optional. Restricted value domain: - 1: France - 2: other |
paymentMeanData.franfinance4xcb.pageCustomizationCode | Optional |
paymentMeanData.franfinance4xcb.redirectionTimer | Optional. Value domain: 0 to 300 |
paymentMeanData.franfinance4xcb.testEnvironment | Optional. Test only |
paymentMeanData.franfinance4xcb.conversionCurrency | Optional |
paymentMeanData.franfinance4xcb.convertedAmount | Optional |
shoppingCartDetail
Field name | Remarks/rules |
---|---|
shoppingCartDetail.mainProduct | Optional. Most expensive product in the
basket. |
shoppingCartDetail.shoppingCartItemList.itemX.productCategory | Optional. Category of the
ordered product (e.g. digital) (20 characters
maximum). |
shoppingCartDetail.shoppingCartItemList.itemX.productCode | Optional. Code of the ordered product. |
shoppingCartDetail.shoppingCartItemList.itemX.productDescription | Optional. Detailed description of the ordered
product. |
shoppingCartDetail.shoppingCartItemList.itemX.productName | Optional. Name of the ordered product. |
shoppingCartDetail.shoppingCartItemList.itemX.productQuantity | Optional. Quantity of products in the
basket. |
shoppingCartDetail.shoppingCartItemList.itemX.productSKU | Optional. The product identifying code populated by
you and returned in the response without
modification. |
shoppingCartDetail.shoppingCartItemList.itemX.productTaxRate | Optional. Tax rate applied to the product. For decimal
numbers, use a point instead of a comma. |
shoppingCartDetail.shoppingCartItemList.itemX.productUnitAmount | Optional. Unit amount of the product. The
amount must be transferred in the smallest currency
unit. |
shoppingCartDetail.shoppingCartItemList.itemX.productUnitTaxAmount | Optional. Amount of tax on the product (per unit).
The amount must be transferred in the smallest currency
unit. |
shoppingCartDetail.shoppingCartTotalAmount | Optional. Total amount of the basket (taxes included).
The amount does not include fees, discounts or
charges. |
shoppingCartDetail.shoppingCartTotalQuantity | Optional. Total quantity of items in the
basket. |
shoppingCartDetail.shoppingCartTotalTaxAmount | Optional. Total amount of the basket
taxes. |
travelContext
Field name | Remarks/rules |
---|---|
travelContext.airlineCarrierList | Optional. List of air carriers. |
travelContext.departureDate | Optional. Departure date. |
travelContext.destinationAirport | Optional. Airport of destination. |
travelContext.fareBasis | Optional. Transport rate basis. Example: business
class, economy class, ... |
travelContext.numberOfAirlinesCarriers | Optional. Number of air carriers. |
travelContext.numberOfPassengers | Optional. Number of passengers. |
travelContext.numberOfRoutingCities | Optional. Number of cities on the route. |
travelContext.originAirport | Optional. Airport of origin. |
travelContext.passengerName | Optional. Passenger's name. |
travelContext.reservationCode | Optional. Reservation code. |
travelContext.routingCityList | Optional. List of cities on the route. |
Analysing the response
The following table summarises the different response cases to be processed:
Status | Response fields | Action to take |
---|---|---|
Payment accepted | acquirerResponseCode = 00
authorisationId = (cf. the
Data Dictionary).paymentMeanBrand =
FRANFINANCE_4XpaymentMeanType =
ONLINE_CREDITresponseCode =
00 |
You can deliver the order. |
Pending transation | acquirerResponseCode =
60responseCode =
60 |
We are waiting for the authorization confirmation. From
there, the confirmation batch will automatically update the
transaction as soon as a final response is obtained. |
Acquirer refusal | acquirerResponseCode = (cf.
the Data Dictionary).responseCode =
05 |
The authorisation is refused for a reason unrelated to
fraud. If you have not opted for the "new payment attempt"
option (please read the Functionality
set-up Guide for more details), you can suggest that your
customer pay with another means of payment by generating a new
request. |
Refusal due to the number of attempts reached | responseCode = 75 |
The customer has made several attempts that have all failed. |
Refusal due to a technical issue | acquirerResponseCode = 90-98
responseCode = 90, 99
|
Temporary technical issue when processing the transaction. Suggest that your customer redo a payment later. |
For the complete response codes (responseCode
) and acquirer response
codes (acquirerResponseCode
), please refer
to the Data dictionary.
Making a Franfinance 4xWEB payment with Sips Office
The Franfinance 4xWEB means of payment acceptance is not available through the Sips Office solution.
Managing your Franfinance 4xWEB transactions
Available cash operations
The following operations are available on Franfinance 4xWEB transactions:
Cash management | ||
---|---|---|
Cancellation | V | |
Validation | V | |
Refund | V | |
Duplication | X | |
Credit | X |
The diagram below informs you which cash management operation is available when a transaction is in a given state:

Testing Franfinance 4xWEB
To test Franfinance 4xWEB, send a request to the url correspnding to your connector:
- Sips Paypage POST : https://payment-webinit.test.sips-services.com/paymentInit
- Sips Paypage SOAP : https://payment-webinit.test.sips-services.com/services/v2/paymentInit
- Sips Paypage JSON : https://payment-webinit.test.sips-services.com/rs-services/v2/paymentInit
Viewing your Fanfinance 4xWEB transactions
Reports
The reports provided by WL Sips allow you to have a comprehensive and consolidated view of your transactions, cash operations, accounts and chargebacks. You can use this information to improve your information system.
The availability of Franfinance 4xWEB transactions for each type of report is summarised in the table below:
Reports availability | |
---|---|
Transactions report | V |
Operations report | V |
Reconciliations report | V |
Chargebacks report | X |
Franfinance 4xWEB reconciliations
The principle
This is to provide a daily report reconciling:
Transactions sent by Franfinance (debit and/or credit remittance), on the one hand, and transactions made on SIPS, on the other hand.
Each file contains, among other things, the transactions credited or debited to your accounts. Each file is global for all merchants.
WL Sips receives these files and reconcile them with to the remitted transactions (debits and credits).
From this reconciliation, WL Sips sends you a "Reconciliations report". Sending the Reconciliations report is not synchronised with the Franfinance files processing.
This type of report allows to have a genuine information as to the actual payment remittance or the Franfinance financing.
Reconciliations statuses
In order to define the reconciliation status, two delays (after the WL Sips remittance date) are defined:
- a 30-days delay is the normal length on which a transaction must be reconciled.
- a 40-days delay is the maximum post-transaction date period during which a transaction can be reconciled. Beyond this delay, the transaction is no longer "reconcilable".
The delay between 30 and 40 days corresponds to the time interval on which Franfinance will have to analyse the cause of the non-reconciliation. When the 40 days are up, the transaction will be considered as not reconciled.
After analysing the reconciliation criteria defined above, the different possible reconciliation statuses are as follows:
Transaction status | Merchant decision / Franfinance information | |
---|---|---|
File presence | MATCH_OK MATCH_INFO (Franfinance indicates a delivery info) | |
File absence | 30 days MATCH_WARNING ≤ 40 days (**) 40 days < MATCH_ERROR (**) |
Reconciliations
Details pertaining to transactions accepted during contract review are compared with transactions processed by WL Sips.
Details of an operation that corresponds to a transaction are kept and reported in the Reconciliations report. This one is sent to the customer.
The reconciliation status for this transaction becomes MATCH_OK.
If Franfinance mentions a particular warning for this transaction, the status, certainly "matched" technically, becomes MATCH_INFO.
For this type of status, the SPECIFIC_DATA column of the Reconciliations report makes it possible to know the reason for the warning.
Franfinance code provided in RGI and returned to the merchant in the SPECIFIC_DATA column | Technical status conveyed in the Reconciliations report |
---|---|
00 - Financing guaranteed - Delivery | MATCH_OK |
00 – Refund considered | MATCH_OK |
02 - Financing refused- Do not deliver | MATCH_INFO |
03 – Transaction cancellation – Do not deliver | MATCH_INFO |
XX - Other free wordings (not starting with 00) | MATCH_INFO |
YY - Other free wordings (not starting with 00) | MATCH_INFO |
Unreconciled transactions
Transactions remitted and not credited to your account are subject to analysis.
The reconciliation status of transactions that have a payment date of more than 30 days and the status of which is still MATCH_WAIT will become MATCH_WARNING.
Similarly, the status of transactions with a MATCH_WARNING status and with a payment date of more than 40 days will become MATCH_ERROR.
A report of the reconciliation anomalies is then generated for analysis.
Sips Office Extranet
You can view your Franfinance 4xWEB transactions and perform various cash management operations with Sips Office Extranet.