logo Mercanet

Release 24.2

go directly to content

Search by keywords

Floa Bank CB 3X 4X

To search in the page use Ctrl+F on your keyboard

Mercanet 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 Floa Bank 3X and/or 4X means of payment integration into Mercanet.

This document is intended to help you implement the Floa Bank 3X and/or 4X means of payment on your e-commerce site.

It includes:

  • functional information for you
  • implementation instructions for your technical team

To get an overview of the Mercanet solution, we advise you to consult the following documents:

  • Functional presentation
  • Functionality set-up guide

A financial company of the Casino Group, Floa Bank offers the Floa Bank 3X and/or 4X solution, reserved for private persons of legal age holding a credit card valid for at least 3 months after the 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 instalments.

During a Floa Bank 3X and/or 4X payment, customers complete their personal data as well as credit card details upon subscription. This subscription specifies the number of payment due dates, the amount of each payment due date and the dates pertaining to the payment.

Having completed the entry, they are informed online of the request result.

The imprint taken during the payment process can be subject to 3-D Secure authentication.

Payment channels
Internet V Default payment channel
MOTO X
Fax X
IVS X
Means of payment
Immediate payment V Default method
End-of-day payment X
Deferred payment X
Payment upon shipping V
Payment in instalments X
Subscription payment X
Batch payment X
OneClick payment X
Currency management
Multicurrency acceptance X EURO only
Currency settlement X EURO only
Dynamic currency conversion X EURO only

The customer selects the Floa Bank 3X and/or 4X means of payment.

They are then redirected to the Floa Bank pages.

They fill out a form with their personal information:



The customer can then enter the information relating to their bank card:



The payment ticket is displayed, then the customer returns to your websit. This page can be bypassed.

Tip: for more information about the bypass please refer to the Displaying the ticket by Mercanet paragraph of the Functionality set-up guide documentation.

In order to offer the Floa Bank 3X and/or 4X means of payment on your website, you have to sign a contract with Floa Bank. Floa Bank will then transmit this information, which will be directly implemented in your Mercanet merchant shop.

At the same time, Floa Bank will sign a distance selling contract with CIC to finalise your registration and give you access to the means of payment.

You can offer the Floa Bank 3X and/or 4X means of payment through the Paypage which directly acts as the payment interface with customers via their web browser.

The remittance modes available for a Floa Bank 3X and/or 4X transaction are:

  • 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.
  • Immediate mode: the authorisation and remittance are executed online simultaneously.
It should be noted that:
  • only the "IMMEDIATE" mode in the WL Sips merchant request is compatible with the "Automatic" configuration on the FLOA PAY acquisition contract side
  • only the "VALIDATION" mode in the WL Sips merchant request is compatible with the "Manual" configuration on the FLOA PAY acquisition contract side.

The diagram below explains the different transaction statuses according to the chosen capture mode:


Description of the possible statuses for a Floa Bank CB 3X and/or 4X transaction

In validation mode (captureMode = VALIDATION), if the transaction is accepted, it is set to status TO_VALIDATE. In immediate mode (captureMode = IMMEDIATE), if the transaction is accepted (responseCode equal to 00), it is set to status CAPTURED. Regardless of the capture mode, if the transaction is refused (responseCode not equal to 00), it is set to status REFUSED.

The payment process for Paypage is described below:


Steps of a Lyf Pay payment via Paypage

1) The customer proceeds with the payment. 2) They are redirected to the means of payment selection page hosted by Mercanet, they select Floa Bank CB 3X and/or 4X and enter their card number. 3) They are redirected to the Floa Bank CB 3X and/or 4X page where they authenticate themselves. 4) They are redirected to a Mercanet page. 5) If they click on the back to eshop button, they are redirected to your website which triggers the manual response to be sent. 6) Mercanet sends an automatic response.

The existing paymentMeanBrandList field must be populated with the means of payment list offered to the customer and specifically the Floa Bank means of payment.

The 2 offers are BCACB_3X and BCACB_4X.

The specific fields for making a payment are as follows:

Field Name Remarks/rules
customerLanguage Allows to choose the language used on Mercanet and Floa Bank pages.
customer.country Country (=FR)
customerId Mandatory.
Unique identification that characterises the customer in the merchant's information system.
customerContact.lastName Mandatory.
Customer name.
customerContact.firstName Mandatory.
Customer first name.
customerContact.phone Customer landline number. Mandatory if the mobile phone number is not filled out.
customerContact.mobile Customer mobile phone number. Mandatory if the landline number is not filled out.
customerContact.email Mandatory.
Customer email.
customerAddress.addressAdditional1 Mandatory.
Main address.
customerAddress.zipCode Mandatory.
Postal code.
customerAddress.city Mandatory.
City
customerAddress.country Mandatory.
Code ISO Alpha-2 of the country (=FR)
deliveryData.deliveryMode Mandatory. Merchant delivery method :
  • CDS: direct Colissimo
  • CHR: Chronopost
  • COL: Colissimo
  • CRE: Chronopost/Chronorelay
  • KIA: Kiala
  • .IMP: imprinting and mailing
  • LSP: Livraison service plus
  • MOR: Mory
  • RCD: Cdiscount point of delivery
  • TNT: TNT
  • TRP: carrier
  • AE1: error Easydis
  • EA1: Easydis
  • KIB: KIB
  • TNB : TNT Belgium
  • EXP: Express delivery
  • AGE: Agediss
  • EMP: taken
  • M30: taken -30
  • ADX: Adrexo
  • EY1: Easydis taken -30
  • VIR: virtual
  • REG: recommended
  • STD: normal
  • TRK: tracking
  • PRM: Easydis premium
  • RDO: Confort (SOGEP) Easydis
  • RCO: Relais colis (SOGEP) Cestas
  • SO1: SoColissimo Overseas Zone 1
  • SO2: SoColissimo Overseas Zone 2
  • RIM: immediate pick up in store
  • LDR: LDR
  • MAG: store delivery
  • RDE: Eco (SOGEP) Easydis
  • REL: Mondial Relay
  • FDR: direct relay supplier
  • TNX: TNT express Relay
  • EMX: Express
  • CHX: taken at Chronopost point of delivery
  • CSX: taken at Chronopost deposit
deliveryData.deliveryChargeAmount Optional.
Total amount of shipping costs for the order (in cents).
shoppingCartDetail.shoppingCartTotalQuantity Mandatory.
Number of articles.
orderId Mandatory.
Unique identifier that characterises the customer's order in the merchant's information system.
shoppingCartDetail.shoppingCartTotalTaxAmont Optional.
Total amount of costs associated with the order (in cents).
shoppingCartDetail.discountAmount Optional.
Total amount of discounts associated with the order (in cents). Set to 0 by default.
shoppingCartDetail.shoppingCartItemList.item0.travelData Optional.

From version IR_WS_2.38 (Paypage SOAP/REST) or HP_2.38 (Paypage POST) onwards.
Travel data - cf table below.

travelData

Note: travelData is a container dedicated to tour operators. A field marked "mandatory" in the containers below is only mandatory for tour operators. For Floa, the travel data is included in the first item of the basket: shoppingCartDetail.shoppingCartItemList.item0.
Field name Remarks/Rules
travelData.numberOfTravelers Mandatory
Number of travelers
travelData.travelStartDateTime Mandatory - ISO8601 format
Departure date and time
travelData.travelEndDateTime Mandatory - ISO8601 format
Return date and time
travelData.travelingPayerIndicator Optional - Allowed values:

true - The payer participates in the travel
false - The payer does not participate in the travel

travelData.passportDataList Optional - List of passport data

Travelers passport data, named travelData.passportDataList.passportDataX where X is the passport index in the list

travelData.passportDataList.passportDataX.passportExpirationDate Optional - YYYYMMDD format
Passport expiry date
travelData.passportDataList.passportDataX.passportIssueCountry Optional - Allowed values: countryList
ISO Alpha-3 code of the country of passport issuance
travelData.journeyDataList Optional - List of travel data

Only the first journey in the list is taken into account for Floa. As a consequence, the fields below will be named travelData.journeyDataList.journeyData0.XXXX

travelData.journeyDataList.journeyData0.departureLocation Optional

IATA 3-character code of the departure airport

travelData.journeyDataList.journeyData0.arrivalLocation Optional

IATA 3-character code of the arrival airport

travelData.journeyDataList.journeyData0.destinationCountry Mandatory - Allowed values: countryList
ISO Alpha-3 code of the destination country
travelData.journeyDataList.journeyData0.numberOfTickets Optional

Number of tickets

travelData.journeyDataList.journeyData0.journeyModality Optional - Allowed values:

ONEWAY - One way
TWOWAY - Two way
MULTIPLE - Multi-destinations

travelData.journeyDataList.journeyData0.classLevel Optional - Allowed values:

1 - First class or business class
2 - Second class or economy class

travelData.journeyDataList.journeyData0.carrierIdentifier Optional

IATA 2-character airline code

travelData.journeyDataList.journeyData0.fareBasis Optional

Journey fare or discount code

travelData.journeyDataList.journeyData0.journeyInsuranceOptional

Type of travel insurance

travelData.journeyDataList.journeyData0.journeyCancellableIndicator Optional - Allowed values:

true - The journey can be changed or cancelled
false - The journey cannot be changed or cancelled

travelData.journeyDataList.journeyData0.luggageSupplementIndicator Optional - Allowed values:

true - The journey has a luggage supplement
false - The journey has no luggage supplement

travelData.stayDataList Optional - List of stopover data

Only the first step of the list is taken into account for Floa, therefore the fields below will be named travelData.stayDataList.stayData0.XXXX

travelData.stayDataList.stayData0.stayCompany Optional

Operator or hotel company

travelData.stayDataList.stayData0.stayLocation Optional

Destination city

travelData.stayDataList.stayData0.stayNumberOfNights Optional

Number of nights

travelData.stayDataList.stayData0.roomServiceLevel Optional

Room service level

Sample travelData on Paypage POST with a stay in Montreal, departing from Paris, for two people:

shoppingCartDetail.shoppingCartItemList={travelData.numberOfTravelers=2,travelData.travelStartDateTime=2022-01-01T07:30:00+02:00,travelData.travelEndDateTime=2022-01-05T20:45:00+02:00,travelData.travelingPayerIndicator=true,
travelData.passportDataList={passportExpirationDate=20230401,passportIssueCountry=FRA},{passportExpirationDate=20240607,passportIssueCountry=CAN},
travelData.journeyDataList={departureLocation=CDG,arrivalLocation=YUL,destinationCountry=CAN,numberOfTickets=2,fareBasis=Discount code,carrierIdentifier=AF,classLevel=1,journeyModality=TWOWAY,journeyInsurance=Insurance Plus,journeyCancellableIndicator=true,luggageSupplementIndicator=true},
travelData.stayDataList={stayLocation=Montreal Great Hotel,numberOfNights=4,roomServiceLevel=4,stayCompany=Travel Inc.}}

Same example on Paypage JSON :

"shoppingCartDetail": {
    "shoppingCartItemList": [{
        "travelData": {
            "journeyDataList": [{
                "arrivalLocation": "YUL",
                "carrierIdentifier": "AF",
                "classLevel": "1",
                "departureLocation": "CDG",
                "destinationCountry": "CAN",
                "fareBasis": "Discount code",
                "journeyCancellableIndicator": "true",
                "journeyInsurance": "Insurance Plus",
                "journeyModality": "TWOWAY",
                "luggageSupplementIndicator": "true",
                "numberOfTickets": "2"
            }],
            "numberOfTravelers": "2",
            "passportDataList": [{
                "passportExpirationDate": "20230401",
                "passportIssueCountry": "FRA"
            },{
                "passportExpirationDate": "20240607",
                "passportIssueCountry": "CAN"
            }],
            "stayDataList": [{
                "numberOfNights": "4",
                "roomServiceLevel": "4",
                "stayCompany": "Travel Inc.",
                "stayLocation": "Montreal Great Hotel"
            }],
            "travelEndDateTime": "2022-01-05T20:45:00+02:00",
            "travelStartDateTime": "2022-01-01T07:30:00+02:00",
            "travelingPayerIndicator": "true"
        }
    }]
}

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 = BCACB_3X or BCACB_4X
paymentMeanType = ONLINE_CREDIT
responseCode = 00
You can deliver the order.
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.

The Floa Bank 3X and/or 4X means of payment acceptance is not available through the Office (M2M) solution.

The following operations are available on Floa Bank 3X and/or 4X transactions:

Cash management
Cancellation X
Validation V
Validation available on the total or partial amount of the transaction.
Refund V
Refund available on the total or partial amount of the transaction.
Duplication X

The diagram below allows you to know which cash management operation is available when a transaction is in a given state:


Cash management operations availability

In case of refusal, the transaction changes from TO_VALIDATE to REFUSED status, in case of acceptance, the status is set to CAPTURED. When the status is CAPTURED, a total or partial refund can be made. In the case of partial refund the status remains CAPTURED and in the case of total refund the status becomes CREDITED.

The reports provided by Mercanet 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.

Attention: the transaction report is not an accounting report. It only contains cash transactions.

The availability of Floa Bank 3X andt/or 4X transactions for each type of report is summarised in the table below:

Reports availability
Transactions report V
Operations report V
Reconciliations report X
Chargebacks report X
Note: for Floa Bank 3X transactions, the paymentMeanBrand field is populated with the value BCACB_3X. For Floa Bank 4X transactions, the paymentMeanBrand field is populated with the value BCACB_4X.

You can view your Floa Bank 3X and/or 4X transactions and perform various cash management operations with Mercanet Back Office.



FLOAPAY provides test data for your test. We encourage you to read and use them. https://floapay.readme.io/reference/testing-ids/.