Integrace s TripPay
Tento článek obsahuje příklad end-to-end, jak se integrovat s TripPay.
Doporučujeme, abyste si již přečetli:
- Payment > Mapping.
- Payment > Integration.
- Payment Web Component.
- Payment API. Přečtěte si sekci o
Create payable contracts
Zde jsou kroky, jak úspěšně použít TripPay k zaplacení rezervace:
- Ujistěte se, že příjemci, které uvádíte v rezervační smlouvě, jsou namapováni.
- Nechte cestovatele vybrat inventář, který chce rezervovat, a připravit se na platbu.
- Vytvořte s TripPay
payable contract, který obsahuje položky k rezervaci. - Nechte cestovatele zaplatit pomocí TripPay Web Component.
Předpokládáme, že jste již dokončili Krok 1 a Krok 2 a jste připraveni informovat TripPay o rezervaci.
Vytvoření payable contract
Sekce “Vytvoření payable contract”Request
Sekce “Request”Zde je ukázka JSON požadavku, která obsahuje vše, co potřebujete k vytvoření vašeho prvního payable contract.
{ "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" } ] } ] } ]}Vysvětlení:
Nevysvětlíme zde každý datový bod, protože jsou již pokryty v dokumentaci API.
- Řádky: 2 - 7 představují uživatele odpovědného za rezervaci. Existují dva typy rezervujících:
- Cestovatel.
- Cestovní agent.
- Řádky: 8 - 9 představují TripPay účet, který zprostředkovává rezervaci. Může to být:
- Váš TripPay integrátor účet.
- Pokud provozujete affiliate síť, může to být váš affiliate.
- Použijte
traceIdpro seskupení více rezervací napříč více dodavateli. Tímto způsobem můžete zrušit skupinovou rezervaci. redirectUrlinformuje TripPay, na kterou stránku přesměrovat po dokončení platby.sourceUrlje web / aplikace, na které k rezervaci došlo.
Pole contractList obsahuje položku(y), které chce cestovatel zakoupit od více dodavatelů. Každá položka obsahuje:
identifierje platné UUID, které generujete.- Dodavatele, u kterého chcete rezervovat inventář.
- Inventář, který chcete rezervovat od tohoto dodavatele. Vše je specifikováno v zanořeném poli
contractItemList. - Každý záznam v
contractItemListobsahuje:- Hostující uživatel Toto je uživatel, který dorazí na místo.
- Název v angličtině Název inventáře v anglickém jazyce.
- Popis v angličtině Delší popis inventáře v anglickém jazyce.
- Cena Cena položky.
- Itinerář Kdy by měla být položka rezervována.
- Typ ceny Jak byla cena vypočítána.
- Typ inventáře Jaký typ inventáře to je.
- Platba Kdy by měl být cestovatel účtován. Momentálně podporujeme pouze možnosti okamžité platby.
- Podmínky Zahrňte pravidla storno podmínek.
- Denní sazby Pokud je rezervovaná položka pokoj, můžete uvést cenu za každou noc pobytu hosta.
- Příjemci Uveďte, kterým TripPay účtům by měla být přidělena jaká část ceny položky. Podporovány jsou pevné i procentuální částky.
Response
Sekce “Response”Když TripPay odpoví na váš požadavek, bude to vypadat nějak takto:
[ { "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" } }]Uložte id na řádku 3. Budete ho používat pro vložení do TripPay webové komponenty.
Vložení TripPay
Sekce “Vložení TripPay”V tuto chvíli jste připraveni vložit Payment Web Component do vašeho webu a zobrazit ji uživateli.
<trip-pay id="contract-1"></trip-pay>Co se týče integrace, to je vše, co musíte udělat. Veškerou náročnou práci odtud provádí TripPay.