Introduction
Worldline 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 Oney Paylater dans Worldline Sips.
À qui s’adresse ce document ?
Ce document a pour objectif de vous aider à implémenter le moyen de paiement 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 Worldline Sips, nous vous conseillons de consulter les documents suivants :
- Présentation fonctionnelle
- Guide de configuration des fonctionnalités
Comprendre les paiements Oney Paylater avec Worldline Sips
Principes généraux
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 une fois dans 30 jours par carte bancaire nommée Oney Paylater.
Règles d’acceptation
Fonctionnalités disponibles
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 |
Caractéristiques du moyen de paiement Oney Paylater
Oney Paylater permet au client de régler sa commande en 1 fois par carte bancaire.
- 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».
Livraison du panier
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.
Pages de paiement
Le client sélectionne le moyen de paiement Oney Paylater.
Il est ensuite redirigé vers la page de la saisie des informations requises :
Le ticket de paiement s’affiche, puis le client retourne sur votre site Web :
Ouvrir votre contrat d’acceptation Oney Paylater
Afin de proposer le moyen de paiement Oney Paylater 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.
Effectuer un paiement Oney Paylater
Vous pouvez proposer le moyen de paiement Oney Paylater 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 Paylater 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 :
Effectuer un paiement Oney Paylater avec Sips Paypage
La cinématique de paiement pour Sips Paypage est décrite ci-dessous :
Paramétrer la requête de paiement
Les champs suivants ont un comportement particulier :
Nom du champ | Remarques / règles |
---|---|
amount |
Obligatoire, les montants minimum et maximum sont paramétrés chez Oney. |
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.oneypaylater.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 |
Obligatoire, permet de choisir la langue utilisée sur les pages Worldline 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. |
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 |
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 |
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 |
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 |
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 |
shoppingCartItemList
est un objet
complexe. 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
est un container réservé aux commerçants voyagistes. Un champ marqué
"Obligatoire" ci-dessous ne l'est que si son container est utilisé.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 |
travelData.journeyDataList.journeyDataX.journeySequence |
Conditionnel - Obligatoire si journeyStage est
TRANSITIndique 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 |
travelData.journeyDataList.journeyDataX.ticketExchangeabilityIndicator |
Obligatoire - Valeurs autorisées : true - Le ticket est échangeable |
travelData.journeyDataList.journeyDataX.journeyInsuranceIndicator |
Obligatoire - Valeurs autorisées : true - Le trajet est assuré |
travelData.journeyDataList.journeyDataX.journeyMode |
Facultatif - Valeurs autorisées : AIR - Par air |
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 |
travelData.stayDataList.stayDataX.stayInsuranceIndicator |
Obligatoire - Valeurs autorisées : true - L'étape est assurée |
travelData.stayDataList.stayDataX.stayCategory |
Facultatif - Valeurs autorisées : HOTEL - Hôtel |
- 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",
"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"
}
]
}
}
]
}
}
Analyser la réponse
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_PAYLATERpaymentMeanType =
PROVIDERresponseCode =
00 |
Vous pouvez livrer la commande. |
En attente | acquirerResponseCode = (voir
le Dictionnaire des données).responseCode =
60 |
Le dossier est en cours d’étude chez Oney. |
Refus acquéreur | acquirerResponseCode = (voir
le Dictionnaire des données).responseCode =
05 |
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.
Effectuer un paiement Oney Paylater avec Sips Office
L’acceptation Oney Paylater n’est pas disponible au travers de la solution Sips Office.
Gérer vos transactions Oney Paylater
Opérations de caisse disponibles
Les opérations suivantes sont disponibles sur les transactions Oney Paylater :
Gestion de caisse | ||
---|---|---|
Annulation | V | |
Validation | V | Validation possible sur le montant total ou partiel de la transaction. |
Remboursement | V | |
Duplication | 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é :
Consulter ses transactions Oney Paylater
Journaux
Les journaux mis à disposition par Worldline 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 Paylater 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 |
Sips Office Extranet
Vous pouvez consulter le détail de vos transactions Oney Paylater et effectuer différentes opérations de gestion de caisse grâce à Sips Office Extranet.