Integrasi dengan TripPay
Artikel ini berisi contoh menyeluruh tentang cara mengintegrasikan dengan TripPay.
Disarankan Anda sudah membaca:
- Payment > Mapping.
- Payment > Integration.
- Payment Web Component.
- Payment API. Baca bagian tentang
Create payable contracts
Berikut adalah langkah-langkah untuk berhasil menggunakan TripPay untuk membayar pemesanan:
- Pastikan penerima manfaat yang Anda sebutkan dalam kontrak pemesanan sudah dipetakan.
- Biarkan pelancong memilih inventaris yang ingin mereka pesan dan bersiap untuk membayar.
- Buat
payable contractdengan TripPay yang berisi item yang akan dipesan. - Biarkan pelancong membayar menggunakan TripPay Web Component.
Kami mengasumsikan Anda sudah menyelesaikan Langkah 1 dan Langkah 2 dan siap memberi tahu TripPay tentang pemesanan.
Buat payable contract
Section titled “Buat payable contract”Permintaan
Section titled “Permintaan”Berikut adalah contoh permintaan JSON yang mencakup semua yang Anda butuhkan untuk membuat payable contract 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": "Ini adalah deluxe king terbaik yang bisa dibeli dengan uang.", "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 menjelaskan setiap titik data di sini karena sudah dibahas dalam dokumen API.
- Baris: 2 - 7 adalah pengguna yang bertanggung jawab atas pemesanan. Ada dua jenis pemesan:
- Pelancong.
- Agen perjalanan.
- Baris: 8 - 9 adalah akun TripPay yang memfasilitasi pemesanan. Bisa berupa:
- Akun integrator TripPay Anda.
- Jika Anda menjalankan jaringan afiliasi, bisa berupa afiliasi Anda.
- Gunakan
traceIduntuk mengelompokkan beberapa pemesanan dari beberapa pemasok. Dengan cara ini Anda dapat membatalkan pemesanan grup. redirectUrlmemberi tahu TripPay halaman mana yang harus diarahkan setelah pembayaran selesai.sourceUrladalah situs / aplikasi tempat pemesanan dilakukan.
Array contractList berisi item yang ingin dibeli pelancong dari beberapa pemasok. Setiap item berisi:
identifieradalah UUID valid yang Anda buat.- Pemasok yang ingin Anda pesan inventarisnya.
- Inventaris yang ingin Anda pesan dari pemasok tersebut. Semua ini ditentukan dalam array bersarang
contractItemList. - Setiap entri di bawah
contractItemListberisi:- Pengguna tamu Ini adalah pengguna yang akan tiba di lokasi.
- Nama dalam Bahasa Inggris Nama inventaris dalam bahasa Inggris.
- Deskripsi dalam Bahasa Inggris Deskripsi lebih panjang tentang inventaris dalam bahasa Inggris.
- Harga Harga item.
- Itinerary Kapan item ini harus dipesan.
- Jenis harga Cara harga dihitung.
- Jenis inventaris Jenis inventaris ini.
- Payable Kapan pelancong harus dikenakan biaya. Saat ini kami hanya mendukung opsi pembayaran langsung.
- Kebijakan Sertakan aturan kebijakan pembatalan.
- Daftar tarif harian Jika item yang dipesan adalah kamar, Anda dapat memilih untuk menyertakan berapa biaya kamar tersebut untuk setiap malam tamu menginap.
- Penerima manfaat Sertakan akun TripPay mana yang harus dialokasikan berapa jumlah dari harga item. Jumlah tetap / persentase didukung.
Respon
Section titled “Respon”Ketika TripPay merespons permintaan Anda, tampilannya akan 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 menggunakannya untuk disisipkan ke dalam TripPay web component.
Sematkan TripPay
Section titled “Sematkan TripPay”Pada titik ini, Anda siap untuk menyematkan Payment Web Component ke situs web Anda dan menampilkannya kepada pengguna.
<trip-pay id="contract-1"></trip-pay>Sejauh integrasi berjalan, itu saja yang perlu Anda lakukan. Semua pekerjaan berat dilakukan oleh TripPay mulai dari sini.