การคืนเงินบางส่วนหรือทั้งหมดที่เริ่มต้นผ่าน capture
ชุดค่าผสมของ requestId
ภายในส่วนหัวและ paymentIntegratorAccountId
คือคีย์ idempotency ซึ่งระบุธุรกรรมนี้ได้อย่างไม่ซ้ำกัน
หากปลายทางพบข้อผิดพลาดขณะประมวลผลคำขอ เนื้อหาการตอบกลับจากปลายทางนี้ควรเป็นประเภท ErrorResponse
ตัวอย่างคำขอมีลักษณะดังนี้
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "liUrreQY233839dfFFb24gaQM",
"requestTimestamp": "1502220434778"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"captureRequestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"currencyCode": "INR",
"refundAmount": "208000000"
}
ตัวอย่างคำตอบจะมีลักษณะดังนี้
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"result": "SUCCESS",
"paymentIntegratorRefundId": "cmVmdW5kIGlkZW50aWZpZXINCg"
}
คำขอ HTTP
POST https://www.integratorhost.example.com/v1/refund
เนื้อหาของคำขอ
เนื้อหาของคำขอมีข้อมูลที่มีโครงสร้างต่อไปนี้
การแสดง JSON |
---|
{
"requestHeader": {
object ( |
ช่อง | |
---|---|
requestHeader |
ต้องระบุ: ส่วนหัวทั่วไปสำหรับคำขอทั้งหมด |
paymentIntegratorAccountId |
ต้องระบุ: รหัสบัญชีผู้รวมการชำระเงินที่กำหนดข้อจำกัดทางสัญญาเกี่ยวกับธุรกรรมนี้ |
captureRequestId |
ต้องระบุ: ตัวระบุที่ไม่ซ้ำกันสำหรับธุรกรรมนี้ นี่คือ |
currencyCode |
ต้องระบุ: รหัสสกุลเงิน 3 ตัวอักษรตามมาตรฐาน ISO 4217 |
refundAmount |
ต้องระบุ: จำนวนเงินที่คืน จำนวนบวกเป็นไมโครของหน่วยสกุลเงิน |
เนื้อหาการตอบกลับ
ออบเจ็กต์การตอบกลับสำหรับวิธีการรับเงินคืน
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
การแสดง JSON |
---|
{ "responseHeader": { object ( |
ช่อง | |
---|---|
responseHeader |
ต้องระบุ: ส่วนหัวทั่วไปของคำตอบทั้งหมด |
paymentIntegratorRefundId |
ไม่บังคับ: ตัวระบุนี้ใช้เฉพาะกับผู้ผสานการทำงานและสร้างขึ้นโดยผู้ผสานรวมระบบ ข้อมูลนี้เป็นตัวระบุที่ผู้รวมระบบทราบการคืนเงินนี้ ตัวระบุนี้จะรวมอยู่ในรายละเอียดการส่งเงินเพื่อความสะดวก |
result |
ต้องระบุ: ผลลัพธ์ของการคืนเงินนี้ |
rawResult |
ไม่บังคับ: ผลดิบของการคืนเงินนี้ ใช้เพื่อให้ข้อมูลแก่เครื่องมือวิเคราะห์และความเสี่ยงของ Google ในสถานการณ์ที่มีการแมปโค้ดที่ถูกปฏิเสธ ข้อมูลอาจสูญหายในบางครั้ง ผู้ผสานรวมระบบสามารถเลือกให้โค้ดดิบแก่ Google ได้ เช่น เกตเวย์บัตรเครดิต (ผู้รวมบริการ) อาจใช้ช่องนี้เพื่อสื่อสารกับ Google เกี่ยวกับรหัสการปฏิเสธที่ถูกต้องที่ได้รับจากเครือข่าย VISA ในกรณีนี้ ต้องระบุค่านี้หาก |
RefundResultCode
รหัสผลลัพธ์ที่ไม่ซ้ำกันจะคืนเงิน
Enum | |
---|---|
UNKNOWN_RESULT |
โปรดอย่าตั้งค่าเริ่มต้นนี้ |
SUCCESS |
คืนเงินสำเร็จ |
NO_MONEY_LEFT_ON_TRANSACTION |
v1.refund ล้มเหลว ไม่มีเงินเหลืออยู่ในธุรกรรมนี้ ซึ่งมักเป็นข้อบกพร่องระหว่างผู้รวมระบบและ Google Google ไม่ควรขอคืนเงินมากกว่าจำนวนเงินที่หักในตอนแรก |
ACCOUNT_CLOSED |
ปิดบัญชีที่ระงับไว้กับผู้ผสานรวมแล้ว การแสดงค่านี้จะทำให้เครื่องมือของผู้ใช้ปิดด้วย Google ระบบจะบังคับให้ผู้ใช้เพิ่มเครื่องมือใหม่โดยทำตามขั้นตอนการเชื่อมโยงอีกครั้ง |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
มีการปิดบัญชีผู้ใช้ที่มีผู้รวมระบบแล้ว บัญชีที่ต้องสงสัยจะเข้าควบคุม การแสดงค่านี้จะทำให้เครื่องมือของผู้ใช้ปิดด้วย Google ระบบจะบังคับให้ผู้ใช้เพิ่มเครื่องมือใหม่โดยทำตามขั้นตอนการเชื่อมโยงอีกครั้ง |
ACCOUNT_CLOSED_FRAUD |
บัญชีของผู้ใช้ที่ไว้กับผู้รวมระบบถูกปิดเนื่องจากการประพฤติมิชอบ การแสดงค่านี้จะทำให้เครื่องมือของผู้ใช้ปิดด้วย Google ระบบจะบังคับให้ผู้ใช้เพิ่มเครื่องมือใหม่โดยทำตามขั้นตอนการเชื่อมโยงอีกครั้ง |
ACCOUNT_ON_HOLD |
ขณะนี้ บัญชีของผู้ใช้ถูกระงับและไม่สามารถรับเงินคืนได้ แต่บัญชีของผู้ใช้สามารถยอมรับการคืนเงินได้ในภายหลัง Google อาจขอเงินคืนอีกครั้งในอนาคต แต่จะดำเนินการดังกล่าวด้วยrequestId ใหม่ ระบบจึงถือว่าคำขอนี้เสร็จสิ้นแล้ว |
REFUND_EXCEEDS_MAXIMUM_BALANCE |
ไม่สามารถประมวลผลการคืนเงินได้ในขณะนี้ เนื่องจากจะทำให้ยอดคงเหลือของผู้ใช้เกินจำนวนสูงสุดที่อนุญาต Google อาจขอเงินคืนอีกครั้งในอนาคต แต่จะดำเนินการดังกล่าวด้วยrequestId ใหม่ ระบบจึงถือว่าคำขอนี้เสร็จสิ้นแล้ว |
REFUND_WINDOW_EXCEEDED |
ไม่สามารถดำเนินการคืนเงินได้เนื่องจากคำขออยู่นอกระยะเวลาการคืนเงินที่อนุญาต |