Integráció a TripPay-jel
Ez a cikk egy végponttól végpontig terjedő példát tartalmaz arra, hogyan integrálhatod a TripPay-t.
Ajánlott, hogy már elolvastad:
- Payment > Mapping.
- Payment > Integration.
- Payment Web Component.
- Payment API. Olvasd el a
Create payable contractsszakaszt
Íme a lépések, hogy sikeresen használd a TripPay-t egy foglalás kifizetésére:
- Győződj meg róla, hogy a foglalási szerződésben említett kedvezményezettek már fel vannak térképezve.
- Hagyd, hogy az utazó kiválassza a foglalni kívánt készletet, és készüljön fel a fizetésre.
- Hozz létre egy
payable contract-ot a TripPay-vel, amely tartalmazza a foglalni kívánt tételeket. - Hagyd, hogy az utazó a TripPay Web Component segítségével fizesse ki a foglalást.
Feltételezzük, hogy már befejezted az 1. lépést és a 2. lépést, és készen állsz arra, hogy a TripPay-nek jelezd a foglalást.
Fizetendő szerződés létrehozása
Szekció neve “Fizetendő szerződés létrehozása”Kérés
Szekció neve “Kérés”Íme egy JSON minta kérés, amely tartalmaz mindent, amire szükséged van az első fizetendő szerződésed létrehozásához.
{ "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": "Ez a legjobb deluxe king, amit pénzért meg lehet venni.", "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" } ] } ] } ]}Magyarázat:
Nem magyarázunk el minden adatpontot, mert azok már szerepelnek az API dokumentációban.
- Sorok: 2 - 7 a foglalásért felelős felhasználó. Kétféle foglaló létezik:
- Utazó.
- Utazási ügynök.
- Sorok: 8 - 9 a TripPay fiók, amely a foglalást kezeli. Ez lehet:
- A te TripPay integrátor fiókod.
- Ha affiliate hálózatot működtetsz, lehet az affiliate fiókod.
- Használj
traceId-t, hogy több foglalást csoportosíts több beszállító között. Így egy csoportos foglalást is törölhetsz. - A
redirectUrlmegmondja a TripPay-nek, hogy melyik oldalra irányítsa a felhasználót a fizetés befejezése után. - A
sourceUrlaz a weboldal vagy alkalmazás, ahol a foglalás történt.
A contractList tömb tartalmazza azokat a tételeket, amelyeket az utazó több beszállítótól szeretne megvásárolni. Minden tétel tartalmazza:
- Az
identifieregy érvényes UUID, amit te generálsz. - A beszállító, akitől a készletet foglalni szeretnéd.
- A készlet, amit az adott beszállítótól foglalni szeretnél. Ezek mind a beágyazott
contractItemListtömbben vannak megadva. - Minden bejegyzés a
contractItemListalatt tartalmazza:- Vendég felhasználó Ez az a felhasználó, aki meg fog érkezni a helyszínre.
- Név angolul A készlet angol nyelvű neve.
- Leírás angolul A készlet hosszabb angol nyelvű leírása.
- Ár A tétel ára.
- Útvonal Mikor kell lefoglalni ezt a tételt.
- Árképzés típusa Hogyan lett kiszámítva az ár.
- Készlet típusa Milyen típusú készletről van szó.
- Fizetendő Mikor kell az utazónak fizetnie. Jelenleg csak az azonnali fizetési lehetőségeket támogatjuk.
- Szabályzat Tartalmazza a lemondási szabályokat.
- Napi árlista Ha a foglalás egy szoba, megadhatod, hogy mennyibe kerül az adott szoba minden éjszakára, amit a vendég eltölt.
- Kedvezményezettek Megadhatod, hogy mely TripPay fiókoknak milyen összeget kell kiosztani a tétel árából. Fix vagy százalékos összegek támogatottak.
Válasz
Szekció neve “Válasz”Amikor a TripPay válaszol a kérésedre, valahogy így fog kinézni:
[ { "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" } }]Mentsd el a 3. sorban lévő id-t. Ezt fogod használni a TripPay web komponensbe való beillesztéshez.
TripPay beágyazása
Szekció neve “TripPay beágyazása”Ezen a ponton készen állsz arra, hogy beágyazd a Payment Web Component-et a weboldaladba, és megjelenítsd a felhasználónak.
<trip-pay id="contract-1"></trip-pay>Az integráció szempontjából ennyi a teendőd. A TripPay végzi a nehezét innentől kezdve.