Intégration avec TripPay
Cet article contient un exemple complet de bout en bout sur la manière d’intégrer TripPay.
Il est recommandé d’avoir déjà lu :
- Paiement > Mapping.
- Paiement > Intégration.
- Composant Web de Paiement.
- API de Paiement. Lisez la section sur
Créer des contrats payables
Voici les étapes pour utiliser avec succès TripPay afin de payer une réservation :
- Assurez-vous que les bénéficiaires mentionnés dans le contrat de réservation ont été mappés.
- Laissez le voyageur choisir l’inventaire qu’il souhaite réserver et préparez-le au paiement.
- Créez un
contrat payableavec TripPay qui contient les articles à réserver. - Laissez le voyageur payer en utilisant le Composant Web TripPay.
Nous supposons que vous avez déjà complété Étape 1 et Étape 2 et que vous êtes prêt à informer TripPay de la réservation.
Créer un contrat payable
Section intitulée « Créer un contrat payable »Voici un exemple de requête JSON qui inclut tout ce dont vous avez besoin pour créer votre premier contrat payable.
{ "user": { "userIdentifier": "191d5729-0b90-4000-85df-1bea7a6e9a01", "firstName": "John", "lastName": "Smith", }, "affiliateAccountIdentifier": "291d5729-0b91-4001-95df-2bec7a6e9a01", "affiliateAccountIdentifierType": "INTERNAL", "displayCurrency": "USD", "traceId": "trace-1", "redirectUrl": "/thank-you", "sourceUrl": "https://www.travel.com", "contractList": [ { "identifier": "191d5729-0b90-4000-8298-72431beb1701", "supplierIdentifier": "191d5729-0b90-4000-8b72-58186a642401", "supplierIdentifierType": "EXTERNAL", "contractItemList": [ { "user": { "userIdentifier": "191d5729-0b90-4000-8596-ed18f9876801", "firstName": "John", "lastName": "Smith", "telephone": "+1 212 555 1212", }, "nameInEnglish": "Deluxe King", "descriptionInEnglish": "This is the best deluxe king that money can buy.", "price": { "amount": 100, "currency": "USD" }, "itinerary": { "startDate": "2024-12-24T00:00:00.000Z", "endDate": "2024-12-25T00:00:00.000Z", "adults": 2 }, "pricingType": "PER_STAY", "type": "LODGING", "payable": "PREPAY", "policy": { "refundable": true }, "externalIdentifier": "room-type-1", "dailyRateList": [ { "date": "2024-12-24", "price": { "amount": 100, "currency": "USD" } } ], "beneficiaryList": [ { "identifier": "account-0", "identifierType": "INTERNAL", "amountDue": { "type": "PERCENTAGE", "percent": 0.015 }, "type": "PLATFORM_FEE" }, { "identifier": "account-1", "identifierType": "INTERNAL", "amountDue": { "type": "PERCENTAGE", "percent": 0.0985 }, "type": "COMMISSION" }, { "identifier": "account-2", "identifierType": "INTERNAL", "amountDue": { "type": "PERCENTAGE", "percent": 0.8865 }, "type": "SALE" } ] } ] } ]}Explication :
Nous n’expliquerons pas chaque point de données ici car ils sont déjà couverts dans la documentation de l’API.
- Lignes : 2 - 7 correspond à l’utilisateur responsable de la réservation. Il existe deux types de réservateurs :
- Voyageur.
- Agent de voyage.
- Lignes : 8 - 9 correspond au compte TripPay facilitant la réservation. Il peut s’agir de :
- Votre compte intégrateur TripPay.
- Si vous gérez un réseau d’affiliés, cela peut être votre affilié.
- Utilisez un
traceIdpour regrouper plusieurs réservations auprès de plusieurs fournisseurs. Cela vous permet d’annuler une réservation groupée. redirectUrlinforme TripPay de la page vers laquelle rediriger après la fin du paiement.sourceUrlest le site / l’application sur lequel la réservation a eu lieu.
Le tableau contractList contient l(es) article(s) que le voyageur souhaite acheter auprès de plusieurs fournisseurs. Chaque article contient :
- L’
identifierest un UUID valide que vous générez. - Le fournisseur auprès duquel vous souhaitez réserver l’inventaire.
- L’inventaire que vous souhaitez réserver auprès de ce fournisseur. Ceux-ci sont tous spécifiés dans le tableau imbriqué
contractItemList. - Chaque entrée sous
contractItemListcontient :- Utilisateur invité C’est l’utilisateur qui arrivera sur les lieux.
- Nom en anglais Le nom de l’inventaire en langue anglaise.
- Description en anglais Une description plus longue de l’inventaire en langue anglaise.
- Prix Le prix de l’article.
- Itinéraire Quand cet article doit être réservé.
- Type de tarification Comment le prix a été calculé.
- Type d’inventaire Quel type d’inventaire il s’agit.
- Payable Quand le voyageur doit être facturé. Nous ne supportons actuellement que les options de paiement immédiat.
- Politique Inclure les règles de politique d’annulation.
- Liste des tarifs journaliers Si l’article réservé est une chambre, vous pouvez choisir d’inclure le coût de cette chambre pour chaque nuitée du séjour.
- Bénéficiaires Inclure quels comptes TripPay doivent recevoir quelle(s) part(s) du prix de l’article. Les montants fixes / en pourcentage sont supportés.
Lorsque TripPay répond à votre requête, cela ressemblera à ceci :
[ { "id": "contract-1", "traceId": "trace-1", "supplierContractIdentifier": "191d5729-0b90-4000-8298-72431beb1701", "supplierIdentifier": "191d5729-0b90-4000-8b72-58186a642401", "supplierName": "Hilton", "totalPrice": { "amount": 100, "currency": "USD" }, "totalDisplayPrice": { "amount": 100, "currency": "USD" }, "totalSupplierPrice": { "amount": 100, "currency": "USD" }, "totalInternalPrice": { "amount": 100, "currency": "USD" }, "totalCapturePrice": { "amount": 100, "currency": "USD" } }]Enregistrez l’id à la ligne 3. Vous l’utiliserez pour l’injecter dans le composant web TripPay.
Intégrer TripPay
Section intitulée « Intégrer TripPay »À ce stade, vous êtes prêt à intégrer le Composant Web de Paiement dans votre site web et à l’afficher à l’utilisateur.
<trip-pay id="contract-1"></trip-pay>En ce qui concerne l’intégration, c’est tout ce que vous devez faire. Tout le travail lourd est pris en charge par TripPay à partir de maintenant.