ข้อมูลอ้างอิงนี้อธิบายตัวเลือกออบเจ็กต์การตอบกลับของ Google Pay API ที่จะใช้กับเว็บไซต์ ออบเจ็กต์การตอบกลับคือออบเจ็กต์ที่ Google Pay API เมธอดไคลเอ็นต์แสดงผล
IsReadyToPayResponse
ออบเจ็กต์นี้ให้ข้อมูลเกี่ยวกับความสามารถของผู้เข้าชมเว็บไซต์ในการให้ข้อมูลการชำระเงิน แก่เว็บไซต์ที่ขอข้อมูล
| พร็อพเพอร์ตี้ | ประเภท | มีอยู่เสมอ | คำอธิบาย |
|---|---|---|---|
result |
บูลีน | ใช่ | ผู้เข้าชมปัจจุบันสามารถให้ข้อมูลการชำระเงินแก่เว็บไซต์ที่ขอข้อมูลดังกล่าวได้ ความสามารถในการชำระเงินของผู้เข้าชมอาจเชื่อมโยงกับความสามารถของเว็บเบราว์เซอร์ในการแสดงคอมโพเนนต์ที่จำเป็นสำหรับวิธีการชำระเงินที่ระบุ ซึ่งรวมถึงกรณีที่ผู้ใช้เข้าสู่ระบบบัญชี Google และระบุวิธีการชำระเงิน |
paymentMethodPresent |
บูลีน | ไม่ |
หาก มีเฉพาะเมื่อตั้งค่า หากมีการเริ่มต้น |
ตัวอย่าง
ตัวอย่างต่อไปนี้จะแสดงให้เห็นว่าเมื่อใดที่ผู้เข้าชมปัจจุบันจะสามารถให้ข้อมูลการชำระเงิน แก่เว็บไซต์ที่ขอข้อมูลดังกล่าว
{ "result": true }
PaymentData
นี่คือออบเจ็กต์การตอบกลับที่ Google ส่งคืนหลังจากที่ผู้ชำระเงินอนุมัติการชำระเงิน
PaymentDataRequestPaymentDataRequestPaymentDataRequest| พร็อพเพอร์ตี้ | ประเภท | มีอยู่เสมอ | คำอธิบาย |
|---|---|---|---|
apiVersion |
ตัวเลข | ใช่ | เวอร์ชัน API หลัก ค่าในการตอบกลับตรงกับค่าที่ระบุใน
PaymentDataRequest |
apiVersionMinor |
ตัวเลข | ใช่ | เวอร์ชัน API ย่อย ค่าในการตอบกลับตรงกับค่าที่ระบุใน
PaymentDataRequest |
paymentMethodData |
PaymentMethodData | ใช่ | ข้อมูลเกี่ยวกับวิธีการชำระเงินที่เลือก |
email |
สตริง | ไม่ | อีเมล หากตั้งค่า emailRequired เป็น true
ใน
PaymentDataRequest
หากคำขออื่นตั้งค่าพร็อพเพอร์ตี้เป็น true จะไม่มีผลใดๆ |
shippingAddress |
ที่อยู่ | ไม่ | ที่อยู่สำหรับจัดส่ง หากตั้งค่า shippingAddressRequired เป็น true ใน
PaymentDataRequest |
ตัวอย่าง
การตอบกลับตัวอย่างนี้สำหรับ Google Pay API เวอร์ชัน 2.0 แสดงCARDวิธีการชำระเงิน
ที่เลือกในชีตการชำระเงินของ Google Pay ระบบได้สร้างโทเค็นวิธีการชำระเงินสำหรับเกตเวย์ example แล้ว
{ "apiVersion": 2, "apiVersionMinor": 0, "paymentMethodData": { "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } } }
IntermediatePaymentData
ออบเจ็กต์นี้จะแสดงผลโดยอินพุตของ Google Pay API onPaymentDataChanged() เมื่อมีการเปลี่ยนแปลงที่อยู่จัดส่งหรือตัวเลือกการจัดส่งในชีตการชำระเงิน
| พร็อพเพอร์ตี้ | ประเภท | ความจำเป็น | คำอธิบาย |
|---|---|---|---|
callbackTrigger |
สตริง | ไม่บังคับ | อธิบายเหตุผลที่เรียกใช้การเรียกกลับข้อมูลการชำระเงิน
INITIALIZE
|
offerData |
OfferData | ไม่บังคับ | รหัสโปรโมชันที่ผู้ใช้ระบุ |
shippingAddress |
IntermediateAddress | ไม่บังคับ | ที่อยู่ที่เลือกในชีตการชำระเงิน |
shippingOptionData |
SelectionOptionData | ไม่บังคับ | ตัวเลือกการจัดส่งที่เลือกในชีตการชำระเงิน |
ตัวอย่าง
ตัวอย่างนี้แสดงเพย์โหลดระดับกลางที่แสดงผลจาก Google Pay API
{ "callbackTrigger": "SHIPPING_ADDRESS", "offerData": { "redemptionCode": "exampleCode" }, "shippingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" }, "shippingOptionData": { "id": "shipping-001" } }
PaymentMethodData
ออบเจ็กต์นี้ให้ข้อมูลสำหรับวิธีการชำระเงินที่เลือก
| พร็อพเพอร์ตี้ | ประเภท | มีอยู่เสมอ | คำอธิบาย |
|---|---|---|---|
type |
สตริง | ใช่ |
PaymentMethod
type ที่เลือกในชีตการชำระเงินของ Google Pay
|
description |
สตริง | ใช่ | ข้อความที่แสดงต่อผู้ใช้เพื่ออธิบายวิธีการชำระเงินที่ใช้ในการทำธุรกรรมนี้ |
info |
ออบเจ็กต์ | ใช่ | ค่าของพร็อพเพอร์ตี้นี้ขึ้นอยู่กับวิธีการชำระเงินที่typeแสดง
สำหรับ CARD โปรดดู CardInfo
|
tokenizationData |
PaymentMethodTokenizationData | ไม่ | ข้อมูลการแปลงโทเค็นการชำระเงินสำหรับวิธีการชำระเงินที่เลือก |
ตัวอย่าง
ตัวอย่างการตอบกลับนี้แสดงให้เห็นว่าCARDวิธีการชำระเงินที่เลือกในชีตการชำระเงินของ Google
Pay จะสร้างโทเค็นวิธีการชำระเงินสำหรับexampleเกตเวย์ได้อย่างไร
{ "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } }
CardInfo
ออบเจ็กต์นี้ให้ข้อมูลเกี่ยวกับบัตรชำระเงินที่เลือก
| พร็อพเพอร์ตี้ | ประเภท | มีอยู่เสมอ | คำอธิบาย |
|---|---|---|---|
cardDetails |
สตริง | ใช่ | รายละเอียดเกี่ยวกับบัตร โดยปกติแล้วค่านี้จะเป็นตัวเลข 4 หลักสุดท้าย ของหมายเลขบัญชีการชำระเงินที่เลือก |
assuranceDetails |
AssuranceDetailsSpecifications | ใช่ | ออบเจ็กต์นี้ให้ข้อมูลเกี่ยวกับการตรวจสอบที่ดำเนินการกับข้อมูลการชำระเงินที่แสดงผล
หากตั้งค่า assuranceDetailsRequired เป็น true ใน
CardParameters
|
cardNetwork |
สตริง | ใช่ | เครือข่ายบัตรชำระเงินของการชำระเงินที่เลือก
ค่าที่แสดงผลจะตรงกับรูปแบบของ ค่าเครือข่ายบัตรนี้ไม่ควรแสดงต่อผู้ซื้อ ใช้เมื่อต้องการ
รายละเอียดบัตรของผู้ซื้อ เช่น หากฝ่ายสนับสนุนลูกค้าต้องการค่านี้เพื่อ
ระบุบัตรที่ผู้ซื้อใช้สำหรับธุรกรรม สําหรับคําอธิบายที่ผู้ใช้มองเห็น ให้ใช้พร็อพเพอร์ตี้ |
billingAddress |
ที่อยู่ | ไม่ | ที่อยู่สำหรับการเรียกเก็บเงินที่เชื่อมโยงกับวิธีการชำระเงินที่ระบุ หาก
billingAddressRequired ตั้งค่าเป็น true ใน
CardParameters
|
cardFundingSource |
สตริง | ใช่ | แหล่งเงินทุนของบัตรสำหรับวิธีการชำระเงินที่เลือก
|
ตัวอย่าง
ตัวอย่างนี้แสดงบัตรในเครือข่าย Visa
{ "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT", "assuranceDetails": { "cardHolderAuthenticated": false, "accountVerified": true } }
AssuranceDetailsSpecifications
ออบเจ็กต์นี้ให้ข้อมูลเกี่ยวกับการตรวจสอบที่ดำเนินการกับข้อมูลเข้าสู่ระบบการชำระเงินที่ส่งคืน เพื่อให้สามารถใช้การตรวจสอบความเสี่ยงของเครื่องมือที่เหมาะสมได้
| ชื่อ | ประเภท | คำอธิบาย |
|---|---|---|
accountVerified |
บูลีน | หาก true แสดงว่ามีการตรวจสอบการครอบครอง Cardholder ในข้อมูลเข้าสู่ระบบการชำระเงินที่ส่งคืน |
cardHolderAuthenticated |
บูลีน |
หาก หาก |
คุณรับและประมวลผลออบเจ็กต์การตอบกลับได้แม้ว่าจะไม่ได้ใช้ฟิลด์ assuranceDetails ก็ตาม หากต้องการรับออบเจ็กต์นี้ ให้รวม
assuranceDetailsRequired: true ในออบเจ็กต์คำขอของ
CardParameters
PaymentMethodTokenizationData
ออบเจ็กต์นี้ให้ข้อมูลการแปลงโทเค็นสำหรับวิธีการชำระเงิน
| พร็อพเพอร์ตี้ | ประเภท | มีอยู่เสมอ | คำอธิบาย |
|---|---|---|---|
type |
สตริง | ใช่ | ประเภทการแปลงโทเค็นที่จะใช้กับวิธีการชำระเงินที่เลือก
ค่านี้ตรงกับ type ที่ตั้งไว้ใน
PaymentMethodTokenizationSpecification
|
token |
สตริง | ไม่ | โทเค็นวิธีการชำระเงินที่สร้างขึ้น
|
ตัวอย่าง
นี่คือตัวอย่างการตอบกลับที่แปลงเป็นโทเค็นซึ่งเตรียมไว้สำหรับexampleเกตเวย์
{ "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" }
PaymentAuthorizationResult
ออบเจ็กต์นี้ให้ข้อมูลเกี่ยวกับผลการให้สิทธิ์การชำระเงิน
| พร็อพเพอร์ตี้ | ประเภท | ความจำเป็น | คำอธิบาย |
|---|---|---|---|
transactionState |
สตริง | ต้องระบุ | สถานะของธุรกรรมจะได้รับการแก้ไขโดยผลลัพธ์ของผู้ขายอย่างใดอย่างหนึ่งต่อไปนี้
|
error |
PaymentDataError | ไม่บังคับ | ข้อผิดพลาดที่จะแสดงในชีตการชำระเงินสำหรับผู้ใช้เมื่อจำเป็นต้องลองชำระเงินอีกครั้ง |
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงผลการชำระเงินที่ส่งคืนหลังจากประมวลผลการชำระเงินแล้ว
{ "transactionState": "ERROR", "error": { "reason": "PAYMENT_DATA_INVALID", "message": "Cannot pay with payment credentials", "intent": "PAYMENT_AUTHORIZATION" } }
PaymentDataError
| พร็อพเพอร์ตี้ | ประเภท | ความจำเป็น | คำอธิบาย |
|---|---|---|---|
reason |
สตริง | ต้องระบุ | รายการเหตุผลของข้อผิดพลาดที่กำหนดไว้ล่วงหน้า
|
message |
สตริง | ต้องระบุ | ข้อความแสดงข้อผิดพลาดต่อผู้ใช้ซึ่งแสดงในกล่องโต้ตอบ |
intent |
สตริง | ต้องระบุ | เจตนาของข้อผิดพลาด ซึ่งต้องเป็นบัญชีที่ลงทะเบียนไว้ใน
|
ตัวอย่าง
ตัวอย่างนี้แสดงเจตนาและข้อความแสดงข้อผิดพลาดที่จะแสดงในชีตการชำระเงิน
{ "error": { "reason": "SHIPPING_OPTION_INVALID", "message": "This shipping option is invalid for the given address", "intent": "SHIPPING_OPTION" } }
ที่อยู่
ออบเจ็กต์นี้ให้ข้อมูลเกี่ยวกับที่อยู่ไปรษณีย์ที่ขอ พร็อพเพอร์ตี้ทั้งหมดเป็นสตริง
ระบบจะแสดงที่อยู่ในรูปแบบ MIN, FULL และ FULL-ISO3166
คุณดูพร็อพเพอร์ตี้ที่เป็นของแต่ละรูปแบบได้ในตารางต่อไปนี้
| พร็อพเพอร์ตี้ | รูปแบบที่อยู่ | คำอธิบาย |
|---|---|---|
name |
MIN, FULL, FULL-ISO3166 |
ชื่อและนามสกุลของผู้รับ |
postalCode |
MIN, FULL, FULL-ISO3166 |
รหัสไปรษณีย์ |
countryCode |
MIN, FULL, FULL-ISO3166 |
รหัสประเทศ ISO 3166-1 alpha-2 |
phoneNumber |
MIN, FULL, FULL-ISO3166 |
หมายเลขโทรศัพท์ หากตั้งค่า phoneNumberRequired เป็น
true ใน
PaymentDataRequest
|
address1 |
FULL, FULL-ISO3166 |
บรรทัดแรกของที่อยู่ |
address2 |
FULL, FULL-ISO3166 |
ที่อยู่บรรทัดที่ 2 |
address3 |
FULL, FULL-ISO3166 |
บรรทัดที่ 3 ของที่อยู่ |
locality |
FULL, FULL-ISO3166 |
เมือง เขตชุมชน ย่าน หรือชานเมือง |
administrativeArea |
FULL, FULL-ISO3166 |
เขตย่อยของประเทศ เช่น รัฐหรือจังหวัด |
sortingCode |
FULL, FULL-ISO3166 |
รหัสการจัดเรียง |
iso3166AdministrativeArea |
FULL-ISO3166 |
รหัสเขตบริหาร ISO 3166-2 ที่สอดคล้องกับ AdministrativeArea |
ตัวอย่าง
นี่คือตัวอย่างที่อยู่ในรูปแบบ FULL-ISO3166 ในสหรัฐอเมริกาที่มีข้อมูลที่อยู่ถนนหลายบรรทัด
{ "name": "John Doe", "address1": "c/o Google LLC", "address2": "1600 Amphitheatre Pkwy", "address3": "Building 40", "locality": "Mountain View", "administrativeArea": "CA", "countryCode": "US", "postalCode": "94043", "sortingCode": "" "iso3166AdministrativeArea": "US-CA" }
IntermediateAddress
| พร็อพเพอร์ตี้ | ประเภท | ความจำเป็น | คำอธิบาย |
|---|---|---|---|
administrativeArea |
สตริง | ต้องระบุ | เขตย่อยของประเทศ เช่น รัฐหรือจังหวัด |
countryCode |
สตริง | ต้องระบุ | รหัสประเทศ ISO 3166-1 alpha-2 |
locality |
สตริง | ต้องระบุ | เมือง เขตชุมชน ย่าน หรือชานเมือง |
postalCode |
สตริง | ต้องระบุ | รหัสไปรษณีย์ที่แก้ไขตามประเทศ สำหรับแคนาดาและสหราชอาณาจักร ฟิลด์นี้จะมี อักขระ 3 ตัวแรกเท่านั้น สำหรับสหรัฐอเมริกา ข้อมูลนี้จะมีตัวเลข 5 หลักแรก |
iso3166AdministrativeArea |
สตริง | ไม่บังคับ |
รหัสเขตบริหาร ISO 3166-2 ที่สอดคล้องกับ administrativeArea แสดงเมื่อ
รูปแบบที่อยู่จัดส่งเป็น FULL-ISO3166 เท่านั้น
|
ตัวอย่าง
ตัวอย่างนี้แสดงที่อยู่ที่เลือกในชีตการชำระเงิน
{ "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" "iso3166AdministrativeArea": "US-NY" }
SelectionOptionData
| พร็อพเพอร์ตี้ | ประเภท | ความจำเป็น | คำอธิบาย |
|---|---|---|---|
id |
สตริง | ต้องระบุ | ตรงกับ SelectionOption.id |
ตัวอย่าง
ตัวอย่างนี้แสดงตัวเลือกการจัดส่งที่เลือกในชีตการชำระเงิน
{ "id": "shipping-001" }
OfferData
ออบเจ็กต์นี้ให้ข้อมูลเกี่ยวกับรหัสข้อเสนอที่ป้อนในชีตการชำระเงิน
| พร็อพเพอร์ตี้ | ประเภท | ความจำเป็น | คำอธิบาย |
|---|---|---|---|
redemptionCodes |
อาร์เรย์ | มีอยู่เสมอ | ชุดรหัสโปรโมชันที่ป้อนลงในชีตการชำระเงิน รวมถึงรหัสที่ได้รับอนุมัติแล้ว |
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงออบเจ็กต์ OfferData ที่มีอาร์เรย์ redemptionCodes
"offerData": { "redemptionCodes": ["PROMOTIONALCODE"] }