Pāriet uz saturu

Integrācija ar TripPay

Šajā rakstā ir sniegts pilns piemērs, kā integrēties ar TripPay.

Ieteicams, ka jūs jau esat izlasījis:

Šeit ir soļi, kā veiksmīgi izmantot TripPay, lai samaksātu par rezervāciju:

  1. Pārliecinieties, ka rezervācijas līgumā minētie saņēmēji ir kartēti.
  2. Ļaujiet ceļotājam izvēlēties inventāru, ko viņš vēlas rezervēt, un sagatavoties maksājumam.
  3. Izveidojiet TripPay maksājamo līgumu, kas satur rezervējamās preces.
  4. Ļaujiet ceļotājam veikt maksājumu, izmantojot TripPay tīmekļa komponentu.

Pieņemam, ka jūs jau esat pabeidzis 1. un 2. soli un esat gatavs informēt TripPay par rezervāciju.

Šeit ir JSON parauga pieprasījums, kas ietver visu nepieciešamo jūsu pirmajam maksājamajam līgumam.

{
"user": {
"userIdentifier": "191d5729-0b90-4000-85df-1bea7a6e9a01",
"firstName": "John",
"lastName": "Smith",
"email": "[email protected]"
},
"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",
"email": "[email protected]",
"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"
}
]
}
]
}
]
}

Paskaidrojums:

Mēs neizskaidrosim katru datu punktu, jo tie jau ir aprakstīti API dokumentācijā.

  • Rindas: 2 - 7 ir lietotājs, kas atbild par rezervāciju. Ir divu veidu rezervētāji:
    • Ceļotājs.
    • Ceļojumu aģents.
  • Rindas: 8 - 9 ir TripPay konts, kas veic rezervācijas apstrādi. Tas var būt:
    • Jūsu TripPay integratora konts.
    • Ja jūs vadāt filiāļu tīklu, tas var būt jūsu filiāle.
  • Izmantojiet traceId, lai grupētu vairākas rezervācijas no vairākiem piegādātājiem. Tā jūs varat atcelt grupas rezervāciju.
  • redirectUrl ļauj TripPay zināt, uz kuru lapu novirzīt pēc maksājuma pabeigšanas.
  • sourceUrl ir vietne / lietotne, kurā veikta rezervācija.

contractList masīvā ir prece(-es), ko ceļotājs vēlas iegādāties no vairākiem piegādātājiem. Katrs priekšmets satur:

  • identifier ir derīgs UUID, ko jūs ģenerējat.
  • Piegādātājs, no kura vēlaties rezervēt inventāru.
  • Inventārs, ko vēlaties rezervēt no šī piegādātāja. Tie visi ir norādīti iekšējā masīvā contractItemList.
  • Katrs ieraksts contractItemList satur:
    • Vieslietotājs Lietotājs, kas ieradīsies objektā.
    • Nosaukums angļu valodā Inventāra nosaukums angļu valodā.
    • Apraksts angļu valodā Garāks inventāra apraksts angļu valodā.
    • Cena Preces cena.
    • Maršruts Kad šī prece jārezervē.
    • Cenu veids Kā tika aprēķināta cena.
    • Inventāra veids Kāda veida inventārs tas ir.
    • Maksājums Kad ceļotājam jāveic maksājums. Pašlaik atbalstām tikai tūlītējā maksājuma iespējas.
    • Politika Iekļauj atcelšanas politikas noteikumus.
    • Dienas likmju saraksts Ja rezervē istabu, varat norādīt, cik maksā istaba katru nakti, ko viesis uzturas.
    • Saņēmēji Norādiet, kuriem TripPay kontiem jāpiešķir kāda daļa no preces cenas. Atbalstītas fiksētas un procentuālās summas.

Kad TripPay atbildēs uz jūsu pieprasījumu, tas izskatīsies aptuveni šādi:

[
{
"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"
}
}
]

Saglabājiet id no 3. rindas. To izmantosiet, lai ievietotu TripPay tīmekļa komponentā.

Tagad esat gatavs iegult Maksājuma tīmekļa komponentu savā vietnē un parādīt to lietotājam.

<trip-pay id="contract-1"></trip-pay>

Kas attiecas uz integrāciju, tas ir viss, kas jums jādara. Viss smagais darbs turpmāk tiek veikts TripPay.