Integrasi dengan TripPay
Artikel ini mengandungi contoh menyeluruh bagaimana untuk berintegrasi dengan TripPay.
Adalah disyorkan anda telah membaca:
- Payment > Mapping.
- Payment > Integration.
- Payment Web Component.
- Payment API. Baca bahagian tentang
Create payable contracts
Berikut adalah langkah-langkah untuk berjaya menggunakan TripPay untuk membayar tempahan:
- Pastikan penerima manfaat yang anda nyatakan dalam kontrak tempahan telah dipetakan.
- Biarkan pengembara memilih inventori yang mereka mahu tempah dan bersedia untuk membayar.
- Cipta
kontrak boleh dibayardengan TripPay yang mengandungi item yang hendak ditempah. - 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.
Cipta kontrak boleh dibayar
Section titled “Cipta kontrak boleh dibayar”Permintaan
Section titled “Permintaan”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", }, "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" } ] } ] } ]}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
traceIduntuk mengelompokkan beberapa tempahan merentasi beberapa pembekal. Dengan cara ini anda boleh membatalkan tempahan berkumpulan. redirectUrlmemberitahu TripPay halaman mana untuk dialihkan selepas pembayaran selesai.sourceUrladalah laman / aplikasi tempat tempahan berlaku.
Array contractList mengandungi item yang pengembara mahu beli dari pelbagai pembekal. Setiap item mengandungi:
identifieradalah 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
contractItemListmengandungi:- 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.
Respons
Section titled “Respons”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.
Semat TripPay
Section titled “Semat TripPay”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.