Method: disburseFunds

เริ่มการเคลื่อนย้ายเงินระหว่างผู้ประมวลผลการชำระเงินกับบัญชีของลูกค้า ชุดค่าผสมของ requestId ภายในส่วนหัวและ paymentIntegratorAccountId เป็นคีย์เอกลักษณ์และระบุธุรกรรมนี้แบบไม่ซ้ำ การเปลี่ยนแปลงทั้งหมดในธุรกรรมนี้จะเติมค่า requestId ในช่อง disburseFundsRequestId

หากปลายทางพบข้อผิดพลาดขณะประมวลผลคำขอ เนื้อหาการตอบกลับจากปลายทางนี้ควรเป็นประเภท ErrorResponse

ตัวอย่างคำขอมีลักษณะดังนี้


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "revision": 0
    },
    "requestId": "liUrreQY233839dfFFb24gaQM",
    "requestTimestamp": "1502220434778"
  },
  "paymentIntegratorAccountId": "InvisiCashUSA_USD",
  "upiDetails": {
      "vpa": "foo@icici"
  },
  "transactionDescription": "Google - Music",
  "currencyCode": "INR",
  "amount": "208000000"
}

ตัวอย่างคำตอบจะมีลักษณะดังนี้


{
  "responseHeader": {
    "responseTimestamp": "1481900013178"
  },
  "paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA",
  "disburseFundsResult": {
    "disburseFundsResultCode": "SUCCESS"
  }
}

คำขอ HTTP

POST https://www.integratorhost.example.com/v1/disburseFunds

เนื้อหาของคำขอ

เนื้อหาของคำขอมีข้อมูลที่มีโครงสร้างต่อไปนี้

การแสดง JSON
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "transactionDescription": string,
  "currencyCode": string,
  "amount": string,

  // Union field destinationFopDetails can be only one of the following:
  "upiDetails": {
    object (UpiDetails)
  }
  // End of list of possible types for union field destinationFopDetails.
}
ช่อง
requestHeader

object (RequestHeader)

ต้องระบุ: ส่วนหัวทั่วไปสำหรับคำขอทั้งหมด

paymentIntegratorAccountId

string

ต้องระบุ: ตัวระบุบัญชีผู้รวมการชำระเงินที่ระบุข้อจำกัดทางสัญญาเกี่ยวกับธุรกรรมนี้

transactionDescription

string

ต้องระบุ: นี่คือคำอธิบายธุรกรรมที่ใส่ไว้ในใบแจ้งยอดของลูกค้าได้ แปลเป็น userLocale ที่พบใน requestHeader รูปแบบนี้สามารถเปลี่ยนแปลงได้โดยไม่มีการแจ้งให้ทราบ และต้องไม่ได้รับการแยกวิเคราะห์

currencyCode

string

ต้องระบุ: รหัสสกุลเงิน 3 ตัวอักษรตามมาตรฐาน ISO 4217

amount

string (Int64Value format)

ต้องระบุ: จำนวนเงินที่ซื้อในหน่วยไมโครของหน่วยสกุลเงิน

ช่องการรวม destinationFopDetails

destinationFopDetails ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้

upiDetails

object (UpiDetails)

ไม่บังคับ: รายละเอียดการชำระเงินสำหรับเครื่องมือของ UPI โดยเฉพาะ

เนื้อหาการตอบกลับ

ออบเจ็กต์การตอบกลับสำหรับวิธีการชำระเงิน

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

การแสดง JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "paymentIntegratorTransactionId": string,
  "disburseFundsResult": {
    object (DisburseFundsResult)
  }
}
ช่อง
responseHeader

object (ResponseHeader)

ต้องระบุ: ส่วนหัวทั่วไปของคำตอบทั้งหมด

paymentIntegratorTransactionId

string

ต้องระบุ: ตัวระบุนี้ใช้เฉพาะกับผู้ผสานการทำงานและสร้างขึ้นโดยผู้ผสานรวมระบบ ข้อมูลนี้เป็นตัวระบุที่ผู้รวมระบบรู้จักธุรกรรมนี้

ตัวระบุนี้จะรวมอยู่ในรายละเอียดการส่งเงินเพื่อความสะดวก

disburseFundsResult

object (DisburseFundsResult)

ต้องระบุ: ผลของการโทรเพื่อรับเงิน

UpiDetails

รายละเอียดเกี่ยวกับบัญชี UPI ที่จะใช้ชำระเงิน

การแสดง JSON
{
  "vpa": string
}
ช่อง
vpa

string

ต้องระบุ: ที่อยู่การชำระเงินเสมือน (VPA) ของผู้ใช้ที่ใช้สำหรับการโอนเงินโดยใช้โปรโตคอล UPI เช่น foo@icici

DisburseFundsResult

ข้อมูลเกี่ยวกับผลลัพธ์สุดท้ายของการชำระเงิน

การแสดง JSON
{
  "disburseFundsResultCode": enum (DisburseFundsResultCode),
  "rawResult": {
    object (RawResult)
  },

  // Union field FailureDetail can be only one of the following:
  "transactionMaxLimit": string,
  "transactionMinLimit": string
  // End of list of possible types for union field FailureDetail.
}
ช่อง
disburseFundsResultCode

enum (DisburseFundsResultCode)

ต้องระบุ: รหัสผลลัพธ์ของการชำระเงินนี้

rawResult

object (RawResult)

ไม่บังคับ: ผลดิบของการชำระเงินนี้ ใช้เพื่อให้ข้อมูลแก่เครื่องมือวิเคราะห์และความเสี่ยงของ Google ในสถานการณ์ที่มีการแมปโค้ดที่ถูกปฏิเสธ ข้อมูลอาจสูญหายในบางครั้ง ผู้ผสานรวมระบบสามารถเลือกให้โค้ดดิบแก่ Google ได้ เช่น เกตเวย์บัตรเครดิต (ผู้รวมบริการ) อาจใช้ช่องนี้เพื่อสื่อสารกับ Google เกี่ยวกับรหัสการปฏิเสธที่ถูกต้องที่ได้รับจากเครือข่าย VISA ในกรณีนี้ scope จะเป็น "visa" และ rawCode จะเป็นอะไรก็ได้ที่เครือข่าย VISA ส่งคืน

ต้องระบุค่านี้หาก result ไม่ใช่ SUCCESS

ช่องการรวม FailureDetail

FailureDetail ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้

transactionMaxLimit

string (Int64Value format)

ไม่บังคับ: หาก disburseFundsResultCode คือ DISBURSEMENT_EXCEEDS_TRANSACTION_LIMIT นี่จะเป็นมูลค่าของธุรกรรมสูงสุดที่อนุญาต ซึ่งใช้สำหรับการวิเคราะห์ข้อความแบบมีโครงสร้างที่แสดงต่อผู้ใช้ และการวิเคราะห์อัตราการปฏิเสธ

จำนวนนี้เป็น ไมโคร ของ currencyCode เดียวกับการเรียกเมธอด disburseFunds เดิม

transactionMinLimit

string (Int64Value format)

ไม่บังคับ: หาก disburseFundsResultCode คือ DISBURSEMENT_UNDER_TRANSACTION_LIMIT นี่จะเป็นมูลค่าของธุรกรรมขั้นต่ำที่อนุญาต ซึ่งใช้สำหรับการวิเคราะห์ข้อความแบบมีโครงสร้างที่แสดงต่อผู้ใช้ และการวิเคราะห์อัตราการปฏิเสธ

จำนวนนี้เป็น ไมโคร ของ currencyCode เดียวกับการเรียกเมธอด disburseFunds เดิม

DisburseFundsResultCode

รหัสผลลัพธ์สำหรับการโทรเพื่อรับเงิน

Enum
UNKNOWN_RESULT อย่าตั้งค่าเริ่มต้นนี้โดยเด็ดขาด
SUCCESS ชำระเงินสำเร็จแล้ว
DISBURSEMENT_UNDER_TRANSACTION_LIMIT จำนวนเงินที่จะชำระที่ขอไม่ถึงยอดขั้นต่ำต่อธุรกรรมของผู้รวมบริการ หากใช้โค้ดนี้ ให้ป้อนจำนวนเงินธุรกรรมขั้นต่ำในช่อง transactionMinLimit เพื่อจุดประสงค์ในการรับส่งข้อความกับผู้ใช้
DISBURSEMENT_EXCEEDS_TRANSACTION_LIMIT จำนวนเงินที่ชำระที่ขอเกินวงเงินสูงสุดต่อธุรกรรมของผู้รวมบริการ หากใช้โค้ดนี้ ให้กรอกข้อมูลในช่อง transactionMaxLimit ด้วยขีดจำกัดธุรกรรมเพื่อวัตถุประสงค์ด้านการรับส่งข้อความกับผู้ใช้
ACCOUNT_CLOSED ปิดบัญชีของผู้ใช้กับผู้ผสานรวมแล้ว ผลลัพธ์นี้จะทำให้เครื่องมือของผู้ใช้ปิดด้วย Google ผู้ใช้จะถูกบังคับให้เพิ่มเครื่องมือใหม่
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER มีการปิดบัญชีผู้ใช้ที่มีผู้รวมระบบแล้ว บัญชีที่ต้องสงสัยคือผู้ผสานรวมระบบ ผลลัพธ์นี้จะทำให้เครื่องมือของผู้ใช้ปิดด้วย Google ผู้ใช้จะถูกบังคับให้เพิ่มเครื่องมือใหม่
ACCOUNT_CLOSED_FRAUD บัญชีของผู้ใช้ที่ระงับไว้กับผู้รวมระบบถูกปิดเนื่องจากการประพฤติมิชอบ ผลลัพธ์นี้จะทำให้เครื่องมือของผู้ใช้ปิดด้วย Google ผู้ใช้จะถูกบังคับให้เพิ่มเครื่องมือใหม่
ACCOUNT_ON_HOLD บัญชีของผู้ใช้ถูกระงับ

RawResult

ออบเจ็กต์ผลลัพธ์ที่เป็นข้อมูลดิบ

การแสดง JSON
{
  "scope": string,
  "rawCode": string
}
ช่อง
scope

string

ไม่บังคับ: จะปล่อยขอบเขตของ RawCode ก็ได้

rawCode

string

ต้องระบุ: ข้อมูลดิบจากผู้ผสานรวมระบบหรือระบบย่อยภายใน