Skip to content

Integrasi dengan TripPay

Artikel ini mengandungi contoh menyeluruh bagaimana untuk berintegrasi dengan TripPay.

Adalah disyorkan anda telah membaca:

Berikut adalah langkah-langkah untuk berjaya menggunakan TripPay untuk membayar tempahan:

  1. Pastikan penerima manfaat yang anda nyatakan dalam kontrak tempahan telah dipetakan.
  2. Biarkan pengembara memilih inventori yang mereka mahu tempah dan bersedia untuk membayar.
  3. Cipta kontrak boleh dibayar dengan TripPay yang mengandungi item yang hendak ditempah.
  4. Biarkan pengembara membayar menggunakan TripPay Web Component.

Kami menganggap anda telah melengkapkan Langkah 1 dan Langkah 2 dan bersedia untuk memberitahu TripPay tentang tempahan tersebut.

Berikut adalah contoh permintaan JSON yang merangkumi segala yang anda perlukan untuk mencipta kontrak boleh dibayar pertama anda.

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

Penjelasan:

Kami tidak akan menerangkan setiap titik data di sini kerana ia sudah diterangkan dalam dokumen API.

  • Baris: 2 - 7 adalah pengguna yang bertanggungjawab untuk tempahan. Terdapat dua jenis pemesan:
    • Pengembara.
    • Ejen pelancongan.
  • Baris: 8 - 9 adalah akaun TripPay yang memudahkan tempahan. Ia boleh jadi:
    • Akaun integrator TripPay anda.
    • Jika anda menjalankan rangkaian afiliasi, ia boleh jadi afiliasi anda.
  • Gunakan traceId untuk mengelompokkan beberapa tempahan merentasi beberapa pembekal. Dengan cara ini anda boleh membatalkan tempahan berkumpulan.
  • redirectUrl memberitahu TripPay halaman mana untuk dialihkan selepas pembayaran selesai.
  • sourceUrl adalah laman / aplikasi tempat tempahan berlaku.

Array contractList mengandungi item yang pengembara mahu beli dari pelbagai pembekal. Setiap item mengandungi:

  • identifier adalah UUID sah yang anda jana.
  • Pembekal yang anda mahu tempah inventori daripadanya.
  • Inventori yang anda mahu tempah dari pembekal tersebut. Semua ini ditentukan dalam array bersarang contractItemList.
  • Setiap entri di bawah contractItemList mengandungi:
    • Pengguna tetamu Ini adalah pengguna yang akan tiba di premis.
    • Nama dalam Bahasa Inggeris Nama inventori dalam bahasa Inggeris.
    • Penerangan dalam Bahasa Inggeris Penerangan lebih panjang tentang inventori dalam bahasa Inggeris.
    • Harga Harga item tersebut.
    • Itinerari Bila item ini harus ditempah.
    • Jenis harga Bagaimana harga dikira.
    • Jenis inventori Jenis inventori ini.
    • Boleh dibayar Bila pengembara harus dikenakan bayaran. Kami kini hanya menyokong pilihan pembayaran segera.
    • Polisi Sertakan peraturan polisi pembatalan.
    • Senarai kadar harian Jika item yang ditempah adalah bilik, anda boleh sertakan berapa kos bilik itu untuk setiap malam penginapan tetamu.
    • Penerima manfaat Sertakan akaun TripPay mana yang harus diperuntukkan jumlah harga item tersebut. Jumlah Tetap / Peratus disokong.

Apabila TripPay membalas permintaan anda, ia akan kelihatan seperti ini:

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

Simpan id pada baris 3. Anda akan gunakan ini untuk disuntik ke dalam TripPay web component.

Pada tahap ini, anda sudah bersedia untuk menyemat Payment Web Component ke dalam laman web anda dan memaparkannya kepada pengguna.

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

Setakat integrasi, itu sahaja yang anda perlu lakukan. Semua kerja berat akan dilakukan oleh TripPay dari sini.