การบูรณาการกับ TripPay
บทความนี้ประกอบด้วยตัวอย่างครบถ้วนเกี่ยวกับวิธีการบูรณาการกับ TripPay
ขอแนะนำให้คุณอ่านไปแล้ว:
- การชำระเงิน > การทำแผนที่-
- การชำระเงิน > การบูรณาการ-
- ส่วนประกอบเว็บชำระเงิน-
- API การชำระเงิน-อ่านหัวข้อเกี่ยวกับ
Create payable contracts
นี่คือขั้นตอนในการใช้ TripPay เพื่อชำระเงินการจองสำเร็จ:
- ตรวจสอบให้แน่ใจว่าผู้รับผลประโยชน์ที่คุณกล่าวถึงในสัญญาการจองได้รับการระบุแล้ว
- ให้ผู้เดินทางเลือกสินค้าที่ต้องการจองและเตรียมพร้อมที่จะชำระเงิน
- สร้าง
payable contract
ด้วย TripPay ที่มีรายการที่ต้องการจอง - ให้ผู้เดินทางชำระเงินโดยใช้ TripPay Web Component
เราถือว่าคุณได้ทำเสร็จเรียบร้อยแล้วStep 1
และ Step 2
และพร้อมแจ้งให้ TripPay ทราบเกี่ยวกับการจองแล้ว
การสร้างสัญญาการจ่ายเงิน
Section titled “การสร้างสัญญาการจ่ายเงิน”:::หมายเหตุ ไปที่ Payment API เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับข้อกำหนดในการสร้างสัญญาชำระเงิน :::
นี่คือคำขอตัวอย่าง JSON ที่มีทุกอย่างที่คุณต้องสร้างสำหรับสัญญาชำระเงินฉบับแรกของคุณ
{ "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" } ] } ] } ]}
คำอธิบาย:
เราจะไม่อธิบายจุดข้อมูลทุกจุดที่นี่ เนื่องจากมีครอบคลุมอยู่ในเอกสาร API อยู่แล้ว
- เส้น:2 - 7คือผู้ใช้ที่รับผิดชอบการจอง มีผู้จองสองประเภท:
- นักเดินทาง
- ตัวแทนท่องเที่ยว
- เส้น:8 - 9คือบัญชี TripPay ที่ช่วยอำนวยความสะดวกในการจอง สามารถทำได้ดังนี้:
- บัญชีผู้รวม TripPay ของคุณ
- หากคุณดำเนินการเครือข่ายพันธมิตรก็สามารถเป็นพันธมิตรของคุณได้
- ใช้
traceId
เพื่อจัดกลุ่มการจองหลายรายการให้กับซัพพลายเออร์หลายราย วิธีนี้ช่วยให้คุณยกเลิกการจองแบบกลุ่มได้ redirectUrl
ช่วยให้ TripPay ทราบว่าจะต้องเปลี่ยนเส้นทางไปที่หน้าไหนหลังจากการชำระเงินเสร็จสิ้นsourceUrl
คือเว็บไซต์/แอปที่ทำการจอง
การcontractList
อาร์เรย์ประกอบด้วยรายการที่นักเดินทางต้องการซื้อจากซัพพลายเออร์หลายราย โดยแต่ละรายการประกอบด้วย:
- การ
identifier
เป็น UUID ที่ถูกต้องที่คุณสร้าง - ซัพพลายเออร์ที่คุณต้องการจองสินค้าคงคลังจาก
- สินค้าคงคลังที่คุณต้องการจองจากซัพพลายเออร์นั้น ทั้งหมดนี้ระบุไว้ในอาร์เรย์ซ้อนกัน
contractItemList
- - ทุกๆรายการภายใต้
contractItemList
ประกอบด้วย:- ผู้ใช้ที่เป็นแขกนี่คือผู้ใช้ที่จะมาถึงในสถานที่
- ชื่อภาษาอังกฤษชื่อสินค้าคงคลังเป็นภาษาอังกฤษ
- คำอธิบายเป็นภาษาอังกฤษคำอธิบายเพิ่มเติมเกี่ยวกับสินค้าคงคลังเป็นภาษาอังกฤษ
- ราคาราคาของรายการ
- แผนการเดินทางเมื่อใดจึงควรจองรายการนี้
- ประเภทราคาราคาถูกคำนวณอย่างไร?
- ประเภทสินค้าคงคลังนี่เป็นประเภทสินค้าอะไร
- เจ้าหนี้เมื่อนักเดินทางจะต้องถูกเรียกเก็บเงินขณะนี้เราสนับสนุนตัวเลือกการชำระเงินทันทีเท่านั้น
- นโยบายรวมถึงกฎเกณฑ์นโยบายการยกเลิก
- รายการอัตราค่าบริการรายวันหากรายการที่จองเป็นห้องพัก คุณสามารถเลือกรวมค่าห้องสำหรับแต่ละคืนที่แขกเข้าพัก
- ผู้รับผลประโยชน์รวมถึงบัญชี TripPay ที่ควรได้รับการจัดสรรและราคาของสินค้าเป็นจำนวนเท่าใดรองรับจำนวนเงินคงที่ / เปอร์เซ็นต์
:::หมายเหตุ ในตัวอย่าง JSON ข้างต้น เรามีผู้รับผลประโยชน์ 3 ราย:
- 1.5% จะถูกจัดสรรให้กับแพลตฟอร์มที่อำนวยความสะดวกในการจองเช่น ขยิบตา
- 9.85% ถูกจัดสรรให้กับพันธมิตรเป็นค่าคอมมิชชั่นเช่น คิม คาร์ดาเชี่ยน
- 88.65% ได้รับการจัดสรรซัพพลายเออร์สำหรับการจองห้องพักเช่น ฮิลตัน
เมื่อ TripPay ตอบสนองด้วยสัญญาการชำระเงิน คุณจะสังเกตเห็นว่าได้เพิ่มผู้รับผลประโยชน์ของตนเองเป็น 4.0% :::
การตอบสนอง
Section titled “การตอบสนอง”เมื่อ TripPay ตอบสนองต่อคำขอของคุณ จะมีลักษณะดังนี้:
[ { "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" } }]
บันทึกid
บรรทัดที่ 3 คุณจะใช้สิ่งนี้เพื่อฉีดเข้าในส่วนประกอบเว็บ TripPay
ฝัง TripPay
Section titled “ฝัง TripPay”:::หมายเหตุ ตรวจสอบให้แน่ใจว่าคุณได้โหลดสไตล์และ Javascript ของเราไว้ล่วงหน้าแล้ว :::
เมื่อถึงจุดนี้ คุณก็พร้อมที่จะฝังแล้วPayment Web Component
ลงในเว็บไซต์ของคุณและแสดงให้ผู้ใช้ดู
<trip-pay id="contract-1"></trip-pay>
สำหรับการบูรณาการ นั่นคือสิ่งที่คุณต้องทำทั้งหมด งานหนักทั้งหมดจะดำเนินการโดย TripPay ตั้งแต่บัดนี้เป็นต้นไป