WL SIPS DOCS

Release 21.4

aller directement au contenu
Rechercher par mots clés

Intégration Oney 3X 4X

Pour rechercher dans la page utiliser Ctrl+F sur votre clavier

WL Sips est une solution de paiement de commerce électronique multicanale sécurisée conforme à la norme PCI DSS. Elle vous permet d’accepter et de gérer des transactions de paiement en prenant en compte les règles métier liées à votre activité (paiement à la livraison, paiement différé, paiement récurrent, paiement en plusieurs fois…).

L’objectif du présent document est d’expliquer l'intégration du moyen de paiement FacilyPay dans WL Sips.

Ce document a pour objectif de vous aider à implémenter le moyen de paiement Oney 3X 4X sur votre site de commerce électronique.

Il comprend :

  • des informations fonctionnelles à votre attention ;
  • des instructions d'implémentation à destination de votre équipe technique.

Pour avoir une vue d’ensemble de la solution WL Sips, nous vous conseillons de consulter les documents suivants :

  • Présentation fonctionnelle ;
  • Guide de configuration des fonctionnalités.

Oney Bank est un organisme financier français spécialisé dans les solutions de paiement et le crédit à la consommation.

Oney propose une solution de crédit en ligne avec un paiement en 3 ou 4 fois par carte bancaire nommée Oney 3X 4X.

Canaux de paiement
Internet V Canal de paiement par défaut
MOTO X
Télécopie X
SVI X
Typologies de paiement
Paiement immédiat V
Paiement en fin de journée V
Paiement différé X Forcé vers un paiement immédiat
Paiement à l'expédition V Forcé à 30 jours maximum.
Paiement en plusieurs fois X
Paiement par abonnement X
Paiement par fichier X
Paiement OneClick X

Oney 3X 4X regroupe 4 modalités de paiement : les paiements en 3 fois et 4X avec frais, et les paiements en 3 fois et 4 fois sans frais.

  • Pour sélectionner l’offre souhaitée, il faut envoyer dans la requête de paiement (settlementMode) le code commercial de l’offre Oney.

    Pour connaître les différents codes commerciaux possibles, vous devez vous rapprocher d’Oney.

  • Pour chacune des offres, des seuils spécifiques (montants minimum et maximum) sont paramétrés chez Oney.

    Si vous n'en avez pas connaissance, vous devez vous rapprocher d’Oney pour les connaître.

Les contrôles effectués par le serveur de paiement sont :

  • Le champ orderId qui doit être obligatoirement renseigné. Il correspond à la référence de la commande chez Oney. Vous devrez garantir l’unicité de ce champ.
  • Oney impose le renseignement de nombreux champs, pour en connaître la liste exhaustive, veuillez-vous référer au paragraphe «Paramétrer la requête de paiement».

La réponse instantanée retournée lors du paiement en ligne peut être définitive (CAPTURED) ou temporaire (statut TO_CONFIRM_CAPTURE).

La réponse définitive est connue lors de l’opération de confirmation (passage au statut CAPTURED en cas d’acceptation, ou REFUSED dans le cas contraire). Afin de connaître le résultat définitif du paiement, vous devez consulter les opérations de remise détaillées quotidiennement dans le journal des opérations où vous pouvez consulter notre extranet si vous en y disposez l’accès.

Par conséquent, vous devez attendre que la transaction passe à l’état CAPTURED pour livrer le colis à vos clients.

Le client sélectionne le moyen de paiement Oney 3X 4X.

Il est ensuite redirigé vers la page de la saisie des informations requises :


Donnees-personnelles-Oney


validation-formulaire-Oney

Le ticket de paiement s’affiche, puis le client retourne sur votre site Web :


Details-commande-Oney

Afin de proposer le moyen de paiement Oney 3X 4X sur votre site Web, vous devez souscrire un contrat d’acceptation auprès d'Oney. Vous nous transmettez par la suite le numéro de contrat afin de l’enregistrer dans notre système d’information.

Vous pouvez proposer le moyen de paiement Oney 3X 4X au travers de Sips Paypage qui assure l’interface de paiement directement avec le client via son navigateur Web.

Les modes de remise disponibles pour une transaction Oney 3X 4X sont les suivants :

  • Mode immédiat : la remise de la transaction est réalisée au moment de l’acceptation du paiement en ligne
  • Mode validation : vous devez valider la transaction pour déclencher la remise. Un délai de capture doit aussi être défini. Lorsque ce délai de capture est atteint ou dépassé, vous ne pourrez plus valider la transaction, celle-ci expirera donc automatiquement.

Le diagramme ci-dessous explique les différents états par lesquels peuvent passer les transactions selon le mode de capture choisi :


ProcessPayment-Oney-FR

La cinématique de paiement pour Sips Paypage est décrite ci-dessous :


ProcessPaypage-Oney-FR

Les champs suivants ont un comportement particulier :

Nom du champ Remarques / règles
captureDay La valeur envoyée dans la requête doit être de 30 au maximum.
Une valeur supérieure sera forcée à 30.
paymentPattern La valeur envoyée dans la requête est ignorée.
Le type de paiement est forcé à ONE_SHOT.
orderId Obligatoire
customerId Obligatoire : maximum 8 caractères.
paymentMeanData.oney34x.settlementMode Obligatoire : Code de l’opération commerciale ; Se rapprocher d’Oney pour obtenir la liste exhaustive de ces modalités de paiement.
customerContact Pour plus de détails, voir les tableaux ci-dessous.
customerAddress Pour plus de détails, voir les tableaux ci-dessous.
customerLanguage Permet de choisir la langue utilisée sur les pages WL Sips et Oney.
deliveryData Pour plus de détails, voir les tableaux ci-dessous.
deliveryContact Pour plus de détails, voir les tableaux ci-dessous.
deliveryAddress Pour plus de détails, voir les tableaux ci-dessous.
shoppingCartDetail Pour plus de détails, voir les tableaux ci-dessous.

customerContact

Nom du champ Remarques / règles
customerContact.title Obligatoire (M, MME ou MLLE)
customerContact.lastname Obligatoire
customerContact.firstname Obligatoire
customerContact.phone Obligatoire
customerContact.mobile Obligatoire
customerContact.email Obligatoire

customerAddress

Nom du champ Remarques / règles
customerAddress.streetNumber Facultatif
customerAddress.street Obligatoire
customerAddress.zipCode Obligatoire
customerAddress.city Obligatoire
customerAddress.country Obligatoire (ISO 3166-1 alpha-3)
customerAddress.addressAdditional1 Facultatif

deliveryData

Nom du champ Remarques / règles
deliveryData.estimatedDeliveryDate Obligatoire
deliveryData.deliveryMode Obligatoire

1 – Chez le commerçant

2 – Point de relai tiers

3 - Aéroport, gare, agence de voyage

4 – Adresse de facturation

5 – Adresse de livraison

6 – Ticket électronique

deliveryData.deliveryMethod Obligatoire, sur 2 digits

1er digit : option de livraison

1 - Express (- de 24h)

2 – Standard

3 – Prioritaire

2ème digit : Priorité du mode de livraison

0 - si pas de priorité

1 - livraison supérieure à une heure

2 – livraison immédiate

deliveryContact

Nom du champ Remarques / règles
deliveryContact.title Facultatif (M, MME ou MLLE)
deliveryContact.lastname Obligatoire
deliveryContact.firstname Obligatoire
deliveryContact.phone Obligatoire
deliveryContact.email Obligatoire

deliveryAddress

Nom du champ Remarques / règles
deliveryAddress.streetNumber Facultatif
deliveryAddress.street Obligatoire
deliveryAddress.zipCode Obligatoire
deliveryAddress.city Obligatoire
deliveryAddress.country Obligatoire (ISO 3166-1 alpha-3)
deliveryAddress.addressAdditional1 Facultatif
deliveryAddress.company Facultatif

shoppingCartDetail

Attention: shoppingCartItemList est un objet complexe.
Merci de vous référer à la documentation d'intégration du connecteur choisit pour savoir comment le renseigner.
Note: le produit le plus cher doit être le premier élément du panier.
Nom du champ Remarques / règles
shoppingCartDetail.shoppingCartTotalQuantity Obligatoire
Avec N items … (au minimum 1 item) Obligatoire
shoppingCartDetail.shoppingCartItemList.itemX.productSKU Obligatoire Valeurs :

1 – Nourriture et boissons

2 – Voiture et moto

3 – Culture et divertissement

4 – Maison et jardin

5 – appareils ménagers

6 - Enchères et achats multiples

7 – Fleurs et cadeaux

8 – PC et logiciels

9 - Beauté et bien être

10 – Services à la personne

11 – Services professionnels

12 – Sport

13 – Vêtements et accessoires

14 – Voyage et tourisme

15 – Hifi, photo et vidéo

16 – Téléphone et communication

shoppingCartDetail.shoppingCartItemList.itemX.​productDescription Obligatoire : libellé
shoppingCartDetail.shoppingCartItemList.itemX.productCode Obligatoire : référence externe
shoppingCartDetail.shoppingCartItemList.itemX.​productQuantity Obligatoire
shoppingCartDetail.shoppingCartItemList.itemX.productUnitAmount Obligatoire
shoppingCartDetail.shoppingCartItemList.itemX.travelData Facultatif

A partir de la version IR_WS_2.38 (Sips Paypage SOAP/REST) ou HP_2.38 (Sips Paypage POST)
Données voyage - voir le tableau ci-dessous

travelData

Note: travelData est un container réservé aux commerçants voyagistes. Un champ marqué "Obligatoire" ci-dessous ne l'est que si son container n'est pas vide.
Nom du champ Remarques / règles
travelData.numberOfTravelers Facultatif

Nombre de voyageurs

travelData.journeyDataList Facultatif - Liste des données de trajet

Les champs marqués "Obligatoire" dans cette liste ne le sont que si un trajet est renseigné dans la liste

travelData.journeyDataList.journeyDataX.journeyStage Facultatif - Valeurs autorisées :

OUTWARD - aller
TRANSIT - transitoire
RETURN - retour

travelData.journeyDataList.journeyDataX.journeySequence Conditionnel - Obligatoire si journeyStage est TRANSIT

Indique la séquence du trajet transitoire dans la liste des trajets, de 1 à 9

travelData.journeyDataList.journeyDataX.departureDateTime Obligatoire - Format ISO8601

Date et heure de départ

travelData.journeyDataList.journeyDataX.departureLocation Obligatoire

Ville de départ

travelData.journeyDataList.journeyDataX.arrivalLocation Obligatoire

Ville d'arrivée

travelData.journeyDataList.journeyDataX.classLevel Obligatoire - Valeurs autorisées :

1 - Première classe ou classe business
2 - Seconde classe ou classe économique

travelData.journeyDataList.journeyDataX.ticketExchangeabilityIndicator Obligatoire - Valeurs autorisées :

true - Le ticket est échangeable
false - Le ticket n'est pas échangeable

travelData.journeyDataList.journeyDataX.journeyInsuranceIndicator Obligatoire - Valeurs autorisées :

true - Le trajet est assuré
false - Le trajet n'est pas assuré

travelData.journeyDataList.journeyDataX.journeyMode Facultatif - Valeurs autorisées :

AIR - Par air
RAIL - Par rail
RENTAL - Par route
CRUISE - Par bateau

travelData.stayDataList Facultatif - Liste des données d'étapes

Les champs marqués "Obligatoire" dans cette liste ne le sont que si une étape est renseignée dans la liste

travelData.stayDataList.stayDataX.numberOfPeopleStaying Facultatif

Nombre de personnes pour l'étape

travelData.stayDataList.stayDataX.stayLocation Obligatoire

Lieu de résidence

travelData.stayDataList.stayDataX.stayNumberOfRooms Facultatif

Nombre de chambres

travelData.stayDataList.stayDataX.stayArrivalDateTime Obligatoire - Format ISO8601

Date et heure d'arrivée

travelData.stayDataList.stayDataX.stayDepartureDateTime Obligatoire - Format ISO8601

Date et heure de départ

travelData.stayDataList.stayDataX.stayRentalCarIndicator Facultatif - Valeurs autorisées :

true - Un véhicule est loué pour cette étape
false - Pas de véhicule loué pour cette étape

travelData.stayDataList.stayDataX.stayInsuranceIndicator Obligatoire - Valeurs autorisées :

true - L'étape est assurée
false - L'étape n'est pas assurée

travelData.stayDataList.stayDataX.stayCategory Facultatif - Valeurs autorisées :

HOTEL - Hôtel
RENTAL - Location
TOUR - Visite
OTHER - Autre

Exemple de travelData sur Sips Paypage POST, avec deux voyages :
  • Un séjour à New York avec un vol aller-retour au départ de Paris et un séjour dans un hôtel ;
  • Une journée à Londres, aller en train au départ de Paris avec correspondance à Lille et retour à Paris en avion.
shoppingCartDetail.shoppingCartTotalQuantity=2
|shoppingCartDetail.shoppingCartItemList={productDescription=Paris NewYork,productCode=189,productSKU=14,productUnitAmount=250000,productQuantity=1,travelData.numberOfTravelers=1,
travelData.journeyDataList={departureLocation=Paris,arrivalLocation=New York,departureDateTime=2021-01-01T10:30:00+02:00,classLevel=1,journeyMode=AIR,journeyStage=OUTWARD,journeyInsuranceIndicator=true,ticketExchangeabilityIndicator=true},
{departureLocation=New York,arrivalLocation=Paris,departureDateTime=2021-01-05T17:30:00+02:00,classLevel=1,journeyMode=AIR,journeyStage=RETURN,journeyInsuranceIndicator=true,ticketExchangeabilityIndicator=true},
travelData.stayDataList={stayLocation=Blue Motel,stayArrivalDateTime=2021-01-01T20:00:00+02:00,stayDepartureDateTime=2021-01-05T07:30:00+02:00,stayNumberOfRooms=1,stayInsuranceIndicator=true,stayRentalCarIndicator=true}},
{productDescription=Paris London,productCode=190,productSKU=14,productUnitAmount=15000,productQuantity=1,travelData.numberOfTravelers=1,
travelData.journeyDataList={departureLocation=Paris,arrivalLocation=Lille,departureDateTime=2021-06-01T07:00:00+02:00,classLevel=2,journeyMode=RAIL,journeyStage=OUTWARD,journeyInsuranceIndicator=false,ticketExchangeabilityIndicator=false},
{departureLocation=Lille,arrivalLocation=London,departureDateTime=2021-06-01T09:00:00+02:00,classLevel=2,journeyMode=RAIL,journeyStage=TRANSIT,journeySequence=1,journeyInsuranceIndicator=false,ticketExchangeabilityIndicator=false},
{departureLocation=London,arrivalLocation=Paris,departureDateTime=2021-06-01T20:00:00+02:00,classLevel=1,journeyMode=AIR,journeyStage=RETURN,journeyInsuranceIndicator=true,ticketExchangeabilityIndicator=true}}

Le même exemple, sur Sips Paypage JSON :

"shoppingCartDetail": {
    "shoppingCartTotalQuantity": "2"
    "shoppingCartItemList": [{
        "productCode": "189",
        "productDescription": "Paris New York",
        "productQuantity": "1",
        "productSKU": "14",
        "productUnitAmount": "250000",
        "travelData": {
            "numberOfTravelers": "1",
            "journeyDataList": [{
                "arrivalLocation": "New York",
                "classLevel": "1",
                "departureDateTime": "2021-01-01T10:30:00+02:00",
                "departureLocation": "Paris",
                "journeyInsuranceIndicator": "true",
                "journeyMode": "AIR",
                "journeyStage": "OUTWARD",
                "ticketExchangeabilityIndicator": "true"
            },{
                "arrivalLocation": "Paris",
                "classLevel": "1",
                "departureDateTime": "2021-01-05T17:30:00+02:00",
                "departureLocation": "New York",
                "journeyInsuranceIndicator": "true",
                "journeyMode": "AIR",
                "journeyStage": "RETURN",
                "ticketExchangeabilityIndicator": "true"
            }],
            "stayDataList": [{
                "stayArrivalDateTime": "2021-01-01T20:00:00+02:00",
                "stayDepartureDateTime": "2021-01-05T07:30:00+02:00",
                "stayInsuranceIndicator": "true",
                "stayLocation": "Blue Motel",
                "stayNumberOfRooms": "1",
                "stayRentalCarIndicator": "true"
            }]
        }
    },{
        "productCode": "190",
        "productDescription": "Paris London",
        "productQuantity": "1",
        "productSKU": "14",
        "productUnitAmount": "15000",
        "travelData": {
            "numberOfTravelers": "1"
            "journeyDataList": [{
                "arrivalLocation": "Lille",
                "classLevel": "2",
                "departureDateTime": "2021-06-01T07:00:00+02:00",
                "departureLocation": "Paris",
                "journeyInsuranceIndicator": "false",
                "journeyMode": "RAIL",
                "journeyStage": "OUTWARD",
                "ticketExchangeabilityIndicator": "false"
            },{
                "arrivalLocation": "London",
                "classLevel": "2",
                "departureDateTime": "2021-06-01T09:00:00+02:00",
                "departureLocation": "Lille",
                "journeyInsuranceIndicator": "false",
                "journeyMode": "RAIL",
                "journeySequence": "1",
                "journeyStage": "TRANSIT",
                "ticketExchangeabilityIndicator": "false"
            },{
                "arrivalLocation": "Paris",
                "classLevel": "1",
                "departureDateTime": "2021-06-01T20:00:00+02:00",
                "departureLocation": "London",
                "journeyInsuranceIndicator": "true",
                "journeyMode": "AIR",
                "journeyStage": "RETURN",
                "ticketExchangeabilityIndicator": "true"
            }],
        }
    }],
}

Le tableau suivant récapitule les différents cas de réponse à traiter :

État Champs de la réponse Action à réaliser
Paiement accepté acquirerResponseCode = 00
authorisationId = (voir le Dictionnaire des données).
paymentMeanBrand = ONEY_3X ou ONEY_4X
paymentMeanType = PROVIDER
Vous pouvez livrer la commande.
Refus acquéreur acquirerResponseCode = (voir le Dictionnaire des données). L’autorisation est refusée pour un motif non lié à la fraude.
Si vous n’avez pas opté pour l’option « nouvelle tentative de paiement » (pour plus de détails veuillez consulter le Guide de configuration des fonctionnalités), vous pouvez proposer à votre client de payer avec un autre moyen de paiement en générant une nouvelle requête.
Refus nombre max essais atteint responseCode = 75 Le client a fait plusieurs tentatives qui ont toutes échoué.
Refus suite problème technique acquirerResponseCode = 90-98
responseCode = 90, 99
Problème technique temporaire lors du traitement de la transaction. Proposez à votre client de refaire un paiement ultérieurement.

Pour connaître l'intégralité des codes réponses (responseCode) et codes réponses acquéreur (acquirerResponseCode), veuillez vous référer au Dictionnaire des données.

L’acceptation Oney 3X 4X n’est pas disponible au travers de la solution Sips Office.

Les opérations suivantes sont disponibles sur les transactions Oney 3X et 4X :

Gestion de caisse
Annulation V
Validation V Validation possible sur le montant total ou partiel de la transaction.
Remboursement V
Duplication X
Recyclage X
Crédit X

Le diagramme ci-dessous vous permet de savoir quelle opération de gestion de caisse est disponible lorsqu'une transaction est dans un état donné :


ProcessCashManagement-Oney-FR

Les journaux mis à disposition par WL Sips vous permettent d’avoir une vision exhaustive et consolidée de vos transactions, opérations de caisse, situation comptable et impayés. Vous pouvez utiliser ces informations pour enrichir votre système d’information.

La disponibilité des transactions Oney 3X 4X pour chaque type de journal est récapitulée dans le tableau ci-dessous :

Disponibilité des journaux
Journal des transactions V
Journal des opérations V
Journal de rapprochement des transactions V
Journal de rapprochement des impayés X
Note: pour les transactions Oney 3X 4X, le champ paymentMeanBrand est renseigné avec la valeur ONEY_34X.

Vous pouvez consulter le détail de vos transactions Oney 3X 4X et effectuer différentes opérations de gestion de caisse grâce à Sips Office Extranet.

Voici le détail d'une transaction Oney 3X 4X :


screen-soe-oney-fr

Ce site utilise des cookies pour améliorer votre expérience de navigation, effectuer des analyses et des recherches sur votre utilisation du site web de documentation WL Sips.
En fermant ce bandeau vous refusez notre utilisation des cookies sur votre appareil.

Paramètres