ภาพรวม
Google Standard Payments สนับสนุนรูปแบบการชำระเงินที่ใช้เงินสด (รูปแบบการชำระเงิน) เช่น การซื้อที่ร้านสะดวกซื้อ (เช่น 7-Eleven) ผู้ใช้ที่ต้องการชำระค่าสินค้าจะสร้างหมายเลขอ้างอิงผ่านผู้รวมการชำระเงินในระดับสูง จากนั้นผู้ใช้นำหมายเลขอ้างอิงนี้ไปที่ร้านสะดวกซื้อ ตู้รับบัตร หรือธนาคาร แล้วชำระเงินหมายเลขอ้างอิง
![]() |
![]() |
![]() |
แนวคิดและคำศัพท์
สัญลักษณ์และ การประชุม
คีย์เวิร์ด "ต้อง" "ต้องไม่" "ต้องระบุ" "จะ" "จะไม่" "ควร" "ไม่ควร" "แนะนำ" "พฤษภาคม" และ "ไม่บังคับ" ในเอกสารเหล่านี้ ให้ตีความไว้ตามที่อธิบายไว้ใน RFC 2119
การประทับเวลา
การประทับเวลาทั้งหมดจะแสดงเป็นมิลลิวินาทีตั้งแต่ Epoch ของ Unix (1 ม.ค. 1970) ในเขตเวลา UTC
เช่น
- 23 เมษายน 2019 เวลา 20:23:25 น. GMT = 1556051005000 มิลลิวินาที
- 16 สิงหาคม 2018 เวลา 12:28:35 น. GMT = 1534422515000 มิลลิวินาที
จำนวนเงิน
มูลค่าทางการเงินใน API นี้อยู่ในรูปแบบที่เรียกว่า "micros" มาตรฐานที่ Google ไมโครคือรูปแบบความแม่นยําคงที่ที่อิงตามจำนวนเต็ม หากต้องการแทนมูลค่าเงินในระดับไมโคร ให้คูณค่าสกุลเงินมาตรฐานด้วย 1,000,000
เช่น
- USD$1.23 = 1230,000 Micro USD
- USD$0.01 = 10,000 ไมโคร USD
เลขประจำตัว
การเรียกเมธอดทั้งหมดภายใน API นี้ต้องมีลักษณะการทำงานที่ไม่รู้จัก Google จะลองส่งคำขออีกครั้งเป็นระยะๆ เพื่อตรวจสอบว่าธุรกรรมอยู่ในสถานะเดียวกันทั้ง 2 ฝั่ง ผู้ผสานรวมไม่ควรพยายามดำเนินการตามคำขอที่ประมวลผลแล้วสำเร็จอีกครั้ง คุณควรรายงานการตอบกลับสำหรับการประมวลผลที่สำเร็จแทน เมธอดทั้งหมดมี RequestHeader
ทั่วไปซึ่งมี requestId requestId นี้เป็นคีย์ประจำตัวสำหรับการเรียกทั้งหมด
การตอบกลับที่ไม่ใช่เทอร์มินัล (ไม่ใช่ HTTP 200 ที่สำเร็จ) ต้องไม่มีการประมวลผลโดยไม่มีการประมวลผลทีละรายการ ดังนั้นคำขอที่ก่อนหน้านี้ได้รับ 400 (คำขอไม่ดี/เงื่อนไขที่กำหนดไว้ล่วงหน้าไม่ประสบความสำเร็จ) เมื่อเรียกใช้เป็นครั้งที่ 2 จะต้องไม่ได้แสดงผล 400 ซ้ำ คำขอนั้นจะต้องได้รับการประเมินใหม่ และเมื่อต้องประเมินอีกครั้ง ก็อาจส่งคืนค่า 400 หรือประมวลผลสำเร็จ
ดูข้อมูลเพิ่มเติมเกี่ยวกับการระบุข้อมูลประจำตัวได้ที่คำแนะนำโดยละเอียดนี้
ผู้ผสานรวม
บริษัทที่ใช้แพลตฟอร์มการชำระเงินของ Google สำหรับธุรกิจ ซึ่งอาจเป็นธุรกิจภายใน (บุคคลที่หนึ่ง) เช่น YouTube หรือ AdWords หรืออาจเป็นธุรกิจภายนอก (3P) ที่ต้องการผสานรวมบริการของตนเข้ากับระบบนิเวศของ Google
รูปแบบการชำระเงิน
รูปแบบการชำระเงิน วิธีนี้เป็นคำทั่วๆ ไปมากกว่าเครื่องมือ Visa, MasterCard และ PayPal เป็น FOP ทั้งหมด
เครื่องมือ
รูปแบบการชำระเงินหนึ่งๆ ของลูกค้าบางราย เช่น บัตรเครดิตหรือบัญชี PayPal ของผู้ใช้ รูปแบบการชำระเงินที่แปลงเป็นโทเค็นสำหรับลูกค้าบางรายก็เป็นเครื่องมือเช่นกัน เนื่องจากเป็นรูปแบบการชำระเงินหนึ่งสำหรับลูกค้ารายนั้น โดยได้รับการจัดเก็บไว้ในระบบของเราอย่างปลอดภัย
โทเค็น
การนำเสนอวิธีการชำระเงินของผู้ใช้รายหนึ่งในระบบของ Google เนื่องจากมีข้อมูลทั้งหมดที่จำเป็นในการซื้อ โทเค็นจึงเป็นเครื่องมือหนึ่งด้วย ซึ่งอาจรวมถึงข้อมูล เช่น หมายเลขบัญชีที่ผู้ใช้มีกับผู้ผสานรวมระบบ
โฟลว์คีย์
Google ใช้ขั้นตอนหลัก 2 ขั้นตอนในการสร้างและจ่ายหมายเลขอ้างอิงเหล่านี้
- สร้างขั้นตอนหมายเลขอ้างอิง
- โฟลว์หมายเลขอ้างอิงการชำระเงิน
หลังจากนั้น การปรับยอดและการปิดยอดจากการซื้อที่ได้จะดำเนินการโดยขั้นตอนการส่งเงิน
แผนภาพด้านล่างจะแสดงขั้นตอนแต่ละขั้น
ภาพรวมรูปแบบการชำระเงินสด
เราจะอธิบาย 2 ขั้นตอนแรกโดยละเอียดยิ่งขึ้นในส่วนต่อไปนี้ ดูหน้าขั้นตอนการส่งเงินหากต้องการข้อมูลเพิ่มเติมเกี่ยวกับขั้นตอนดังกล่าว
สร้างหมายเลขอ้างอิง
วัตถุประสงค์ของการสร้างขั้นตอนหมายเลขอ้างอิงคือการสร้างและแลกเปลี่ยนตัวระบุ (หมายเลขอ้างอิง) ที่ทั้ง Google และผู้ผสานรวมสามารถใช้ระบุการซื้อได้ จากนั้นผู้ใช้สามารถใช้หมายเลขอ้างอิงนี้ได้ที่ร้านสะดวกซื้อ คีออสก์ หรือธนาคารเพื่อทำการซื้อให้เสร็จสมบูรณ์ ตัวระบุนี้สร้างขึ้นโดยผู้ผสานการทำงานตามคำขอของ Google โดยเรียกใช้เมธอด generateReferenceNumber
คำขอสร้างหมายเลขอ้างอิงประกอบด้วยจำนวนเงินและรายละเอียดธุรกรรม
แผนภาพต่อไปนี้แสดงวิธีสร้างหมายเลขอ้างอิงและส่งให้ลูกค้าพร้อมวิธีการ
สร้างโฟลว์หมายเลขอ้างอิง
ต่อไปนี้คือรายการของวัตถุและความหมายของวัตถุ:
- ผู้ใช้: ผู้ที่ต้องการชำระเงินโดยใช้รูปแบบการชำระเงินนี้
- UI ของ Google: นี่คืออินเทอร์เฟซที่ผู้ใช้ทำการซื้อ โดยอาจดำเนินการผ่านเว็บหรือผ่านแอปก็ได้
- เซิร์ฟเวอร์ของ Google: เซิร์ฟเวอร์แบ็กเอนด์ที่ Google ที่ขอสร้างหมายเลขอ้างอิงและสร้างคําแนะนําในการชําระเงินสําหรับผู้ใช้
- เซิร์ฟเวอร์ผู้รวมการชำระเงิน: เซิร์ฟเวอร์แบ็กเอนด์ของผู้ผสานรวมการชำระเงินที่ติดตามรายละเอียดการชำระเงินและสร้างหมายเลขอ้างอิง
ขั้นตอนนี้จะเริ่มต้นจากผู้ใช้ที่ต้องการใช้รูปแบบการชำระเงินสดนี้
- ผู้ใช้เข้าถึง UI ของ Google ซึ่งจะส่งคำขอหมายเลขอ้างอิง
- UI ของ Google จะส่งข้อความไปยังเซิร์ฟเวอร์ของ Google ว่าต้องมีหมายเลขอ้างอิง (
getReferenceNumber
) - เซิร์ฟเวอร์ของ Google จะขอให้เซิร์ฟเวอร์ผู้ผสานรวมการชำระเงินสร้างหมายเลขอ้างอิง (
generateReferenceNumber
) - เซิร์ฟเวอร์ผู้ผสานรวมการชำระเงินจะสร้างและส่งหมายเลขอ้างอิงไปยังเซิร์ฟเวอร์ของ Google
- เซิร์ฟเวอร์ของ Google จะสร้างวิธีการชำระเงินพร้อมกับหมายเลขอ้างอิง จากนั้นจะส่งข้อมูลนี้ไปยัง UI ของ Google
- UI ของ Google จะส่งวิธีการและหมายเลขอ้างอิงเหล่านี้ไปยังผู้ใช้
หมายเหตุเกี่ยวกับหมายเลขอ้างอิง
หมายเลขอ้างอิงสามารถชำระได้เพียงครั้งเดียวเท่านั้น และยกเลิกได้ผ่านทางขั้นตอนการยกเลิกหมายเลขอ้างอิง นอกจากนี้ หมายเลขอ้างอิงต้องเป็นตัวอักษรและตัวเลขคละกัน และต้องรองรับรูปแบบการแสดงผลหลายรูปแบบ
นอกจากการแสดงหมายเลขอ้างอิงแล้ว UI ของ Google สามารถเลือกที่จะแสดงหมายเลขอ้างอิงในรูปแบบรหัส 128 (รูปแบบบาร์โค้ด) ได้อีกด้วย สามารถส่งคำขอรองรับบาร์โค้ดรูปแบบอื่นๆ ได้
หมายเลขอ้างอิงการชำระเงิน
ผู้ใช้จะใช้หมายเลขอ้างอิงนี้ที่ร้านสะดวกซื้อ คีออสก์ หรือธนาคาร เพื่อระบุการซื้อที่ผู้ใช้ต้องการชำระ ผู้รวมบริการควรให้ผู้ใช้ยืนยันการซื้อที่จะชำระด้วยการแสดงยอดรวมการซื้อ วันที่ และคำอธิบายธุรกรรมก่อนชำระเงิน
เมื่อผู้ใช้เลือกที่จะชำระเงิน ก็จะต้องชำระเงินเต็มจำนวนและชำระเพียงครั้งเดียวเท่านั้น API นี้ไม่รองรับการชำระเงินเกินหรือน้อยกว่าหมายเลขอ้างอิงเดียว และไม่รองรับการชำระเงินหลายครั้งลงในหมายเลขอ้างอิงเดียวเช่นกัน
เมื่อผู้ใช้ชำระเงิน ผู้ผสานการทำงานต้องแจ้งให้ Google ทราบว่าหมายเลขอ้างอิงนี้ได้ชำระเงินผ่านเมธอด referenceNumberPaidNotification
แล้ว ผู้ผสานรวมระบบจะช่วยให้ผู้ใช้รับสินค้าได้อย่างรวดเร็วด้วยการเรียกใช้วิธีการนี้ภายในไม่กี่วินาทีหลังจากที่ผู้ใช้ชำระเงินจริง (สามารถเพิ่มการโทรนี้ลงในคิวได้หากเครือข่ายหยุดทำงาน)
เมื่อชำระเงินแล้ว หมายเลขอ้างอิงและจำนวนเงินจะรวมอยู่ในใบแจ้งยอดการส่งเงินที่ส่งมาในวันที่ T+2
นี่คือแผนภาพลำดับที่แสดงการชำระเงินตามหมายเลขอ้างอิง
ขั้นตอนหมายเลขอ้างอิงการชำระเงิน
วัตถุในแผนภาพจะแสดงข้อมูลต่อไปนี้
- ผู้ใช้: ผู้ที่ต้องการชำระเงินโดยใช้รูปแบบการชำระเงินนี้
- ร้านสะดวกซื้อ: สถานที่ที่ผู้ใช้ชำระเงินโดยใช้หมายเลขอ้างอิงและคำแนะนำที่ระบุ เช่น ร้านสะดวกซื้อ
- เซิร์ฟเวอร์ผู้รวมการชำระเงิน: เซิร์ฟเวอร์แบ็กเอนด์ของผู้รวมการชำระเงินที่ติดตามรายละเอียดการชำระเงิน
- เซิร์ฟเวอร์ของ Google: เซิร์ฟเวอร์แบ็กเอนด์ที่ Google ที่ขอสร้างหมายเลขอ้างอิงและสร้างคําแนะนําในการชําระเงินสําหรับผู้ใช้
โดยขั้นตอนนี้เริ่มต้นด้วยผู้ใช้ที่ไปร้านสะดวกซื้อเพื่อทำการชำระเงินตามวิธีการที่ให้ไว้
- ผู้ใช้ไปร้านสะดวกซื้อเพื่อชำระเงิน
- หลังจากทำธุรกรรมเสร็จสมบูรณ์ ร้านสะดวกซื้อจะแจ้งให้ผู้รวบรวมการชำระเงินทราบ
- เซิร์ฟเวอร์ Payment Integrator Server จะส่งข้อความแจ้งว่าสำเร็จไปยังร้านสะดวกซื้อ
- ร้านสะดวกซื้อแจ้งว่าผู้ใช้ทำธุรกรรมสำเร็จแล้ว และสินค้าจะถึงผู้ใช้ในเร็วๆ นี้
- เซิร์ฟเวอร์ผู้ผสานรวมการชำระเงินจะส่งข้อความไปยังเซิร์ฟเวอร์ของ Google ว่ามีการชำระเงินหมายเลขอ้างอิงแล้ว (
referenceNumberPaidNotification
) ขั้นตอนนี้ต้องไม่บล็อกขั้นตอนที่ 4 - เซิร์ฟเวอร์ของ Google จะส่งข้อความแสดงความสำเร็จไปยังเซิร์ฟเวอร์ผู้ผสานรวมการชำระเงิน
ยกเลิกหมายเลขอ้างอิง
Google ยกเลิกหมายเลขอ้างอิงได้ หาก Google ยกเลิกหมายเลขอ้างอิง ระบบจะเรียกใช้เมธอด cancelReferenceNumber
เมื่อโทรกลับสำเร็จแล้ว การชำระหมายเลขอ้างอิงดังกล่าวไม่ถูกต้อง และผู้ผสานรวมจะต้องปฏิเสธการชำระเงินสำหรับหมายเลขนี้ หลังจากโทรสำเร็จแล้ว การโทรครั้งต่อๆ ไปทั้งหมดไปยัง referenceNumberPaidNotification
จะไม่สำเร็จ
หากกระบวนการชำระเงินเริ่มต้นขึ้นแล้ว เช่น หากผู้ใช้ป้อนหมายเลขอ้างอิงลงในคีออสก์แต่ยังไม่ได้ชำระเงิน ผู้ผสานรวมระบบควรส่งคืนรหัสการตอบกลับ HTTP 423 ที่มี ErrorResponse ที่ประกอบด้วย USER_ACTION_IN_PROGRESS
ถัดไป: ขั้นตอนการส่งเงิน