Method: remittanceStatementDetails

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

นี่คือ API ที่มีการใส่เลขหน้า สามารถระบุจำนวนเหตุการณ์ธุรกรรมในแต่ละหน้าได้ด้วย numberOfEvents หากไม่ระบุ ระบบจะแสดงเหตุการณ์สูงสุด 1, 000 รายการต่อหน้า แต่ละคำขอที่ส่งไปยัง API นี้จะแสดง nextEventOffset ที่ชี้ไปยังเหตุการณ์ธุรกรรมถัดไปในใบแจ้งยอด รวมถึง totalEvents ซึ่งระบุจำนวนธุรกรรมทั้งหมดในใบแจ้งยอด หากหน้าที่ดึงข้อมูลปัจจุบันมีธุรกรรมสุดท้ายของใบแจ้งยอด nextEventOffset จะไม่แสดงในการตอบกลับ

ค่า statementId คือ requestId จากแอตทริบิวต์ remittanceStatementNotificationRequest

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

การตอบกลับการค้นหานี้อาจว่างเปล่าหากเมธอดนี้ไม่ได้แสดงผล HTTP 200 เนื้อหาการตอบกลับจะว่างเปล่าในกรณีที่สามารถใช้ ErrorResponse พร้อมคำอธิบายที่ชัดเจนเพื่อช่วยให้ผู้โจมตีเข้าใจตัวระบุบัญชีผู้รวมระบบการชำระเงินของผู้รวมบริการรายอื่นๆ ในสถานการณ์เช่นนี้ เมื่อคีย์การรับรองไม่ตรงกัน ไม่พบตัวระบุผู้ผสานการชำระเงิน หรือไม่ทราบคีย์การเข้ารหัส เมธอดนี้จะส่งคืน HTTP 404 ที่มีเนื้อหาว่างเปล่า หากสามารถยืนยันลายเซ็นของคำขอได้ ข้อมูลเพิ่มเติมเกี่ยวกับข้อผิดพลาดจะแสดงในเนื้อหาการตอบกลับ

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


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "revision": 0
    },
    "requestId": "statement_detail_request_139932019",
    "requestTimestamp": "1502551332087"
  },
  "paymentIntegratorAccountId": "InvisiCashUSA_USD",
  "statementId": "0123434-statement-abc",
  "numberOfEvents": 4
}

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


{
  "responseHeader": {
    "responseTimestamp": "1481900013178"
  },
  "eventOffset": 0,
  "nextEventOffset": 4,
  "totalEvents": 15,
  "remittanceStatementSummary": {
    "statementDate": "1502521200000",
    "billingPeriod": {
      "startDate": "1502434800000",
      "endDate": "1502434800000"
    },
    "dateDue": "1502348400000",
    "currencyCode": "INR",
    "totalDueByIntegrator": "1076000000",
    "remittanceInstructions": {
      "memoLineId": "stmt-1AB-pp0-invisi"
    }
  },
  "captureEvents": [
    {
      "eventRequestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
      "paymentIntegratorEventId": "ioj32SOIjf23oijSDfoij",
      "eventCharge": "700000000",
      "eventFee": "-28000000"
    },
    {
      "eventRequestId": "Ggghvh78200PQ3Yrpb",
      "paymentIntegratorEventId": "iasdf23dSdfijSDfoij",
      "eventCharge": "800000000",
      "eventFee": "-32000000"
    }
  ],
  "refundEvents": [
    {
      "eventRequestId": "liUrreQY233839dfFFb24gaQM",
      "paymentIntegratorEventId": "asd3SDf3f3oijSDfoij",
      "eventCharge": "-200000000",
      "eventFee": "8000000"
    },
    {
      "eventRequestId": "IIghhhUrreQY233839II9qM==",
      "paymentIntegratorEventId": "DFjidoso12FSDFSDE",
      "eventCharge": "-150000000",
      "eventFee": "6000000"
    }
  ]
}

คำขอ HTTP

POST https://vgw.googleapis.com/secure-serving/gsp/v1/remittanceStatementDetails/:PIAID

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

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

การแสดง JSON
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "statementId": string,
  "eventOffset": integer,
  "numberOfEvents": integer
}
ช่อง
requestHeader

object (RequestHeader)

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

paymentIntegratorAccountId

string

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

statementId

string

ต้องระบุ: รหัสคำขอของการแจ้งเตือนใบแจ้งยอด

eventOffset

integer

ไม่บังคับ: แสดงเหตุการณ์ที่เริ่มต้นจากออฟเซ็ตนี้ ควรตั้งค่าเป็น nextEventOffset หากมีการส่งคืนหรือปล่อยไว้โดยไม่ได้ระบุ หากนี่เป็นคำขอแรก หาก eventOffset เป็น 0 ระบบจะแสดงผลเหตุการณ์โดยเริ่มจากเหตุการณ์แรก หากเป็น 2 ระบบจะแสดงผลเหตุการณ์โดยเริ่มจากเหตุการณ์ที่ 3 หากไม่ได้ระบุ ระบบจะถือว่า eventOffset เป็น 0

numberOfEvents

integer

ไม่บังคับ: จำนวนกิจกรรมที่จะแสดงในแต่ละหน้า หากไม่ระบุหรือมากกว่า 1,000 ค่าที่ได้จะเป็น 1,000

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

ออบเจ็กต์การตอบกลับสำหรับเมธอดรายละเอียดในใบแจ้งยอดการส่งเงิน

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

การแสดง JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "remittanceStatementSummary": {
    object (RemittanceStatementSummary)
  },
  "eventOffset": integer,
  "nextEventOffset": integer,
  "totalEvents": integer,
  "totalWithholdingTaxes": string,
  "captureEvents": [
    {
      object (Event)
    }
  ],
  "refundEvents": [
    {
      object (Event)
    }
  ],
  "reverseRefundEvents": [
    {
      object (Event)
    }
  ],
  "chargebackEvents": [
    {
      object (Event)
    }
  ],
  "reverseChargebackEvents": [
    {
      object (Event)
    }
  ],
  "adjustmentEvents": [
    {
      object (Event)
    }
  ]
}
ช่อง
responseHeader

object (ResponseHeader)

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

remittanceStatementSummary

object (RemittanceStatementSummary)

ต้องระบุ: สรุปใบแจ้งยอดการส่งเงินนี้

eventOffset

integer

REQUIRED: ค่าชดเชยเหตุการณ์ของคำตอบนี้

nextEventOffset

integer

ไม่บังคับ: ค่าออฟเซ็ตของเหตุการณ์ถัดไปที่จะแสดงผล หากไม่ระบุ จะไม่มีเหตุการณ์ใดๆ ให้เรียกข้อมูลสำหรับคำสั่งนี้อีก

totalEvents

integer

ต้องระบุ: จำนวนกิจกรรมทั้งหมดในใบแจ้งยอดนี้

totalWithholdingTaxes

string (Int64Value format)

ต้องระบุ: ผลรวมของภาษีหัก ณ ที่จ่ายทั้งหมดสำหรับใบแจ้งยอดนี้

ค่านี้อยู่ในหน่วย micros

captureEvents[]

object (Event)

ต้องระบุ: ชุดเหตุการณ์การจับภาพ

refundEvents[]

object (Event)

ต้องระบุ: ชุดเหตุการณ์การคืนเงิน

reverseRefundEvents[]

object (Event)

ไม่บังคับ: ชุดเหตุการณ์การคืนเงินแบบย้อนกลับ

chargebackEvents[]

object (Event)

ไม่บังคับ: ชุดเหตุการณ์การดึงเงินคืน

reverseChargebackEvents[]

object (Event)

ไม่บังคับ: ชุดเหตุการณ์การปฏิเสธการชำระเงินแบบย้อนกลับ

adjustmentEvents[]

object (Event)

ไม่บังคับ: ชุดเหตุการณ์การปรับเปลี่ยน เราอาจเพิ่มเหตุการณ์การปรับค่าใช้จ่ายที่ Google เห็นสมควรเพื่อปรับยอดความคลาดเคลื่อนของการเรียกเก็บเงิน เช่น หากมีการคำนวณค่าธรรมเนียมสำหรับธุรกรรมก่อนหน้าชุดหนึ่งต่ำกว่าความเป็นจริง ระบบอาจใช้การปรับค่าใช้จ่ายเพื่อทำให้ผู้ผสานการทำงานรวมทั้งหมด

RemittanceStatementSummary

ออบเจ็กต์สรุปเกี่ยวกับใบแจ้งยอดการส่งเงิน

การแสดง JSON
{
  "statementDate": string,
  "billingPeriod": {
    object (BillingPeriod)
  },
  "dateDue": string,
  "currencyCode": string,
  "totalDueByIntegrator": string,
  "remittanceInstructions": {
    object (RemittanceInstructions)
  }
}
ช่อง
statementDate

string (int64 format)

ต้องระบุ: วันที่ (ในอเมริกา/ลอสแอนเจลิส) ที่ใบแจ้งยอดนี้สร้างขึ้น

billingPeriod

object (BillingPeriod)

ต้องระบุ: ช่วงเวลาที่เรียกเก็บเงินนี้ครอบคลุม

dateDue

string (int64 format)

ไม่บังคับ: วันที่ครบกำหนดการส่งเงิน ซึ่งแสดงเป็นมิลลิวินาทีจาก Epoch แต่เป็นวันที่ (ดังนั้นจะเริ่มต้นที่มิลลิวินาทีแรกของวันในเขตเวลาสำหรับการเรียกเก็บเงินเสมอ)

หากตั้งค่า totalDueByIntegrator แล้ว ค่านี้ต้องมากกว่า 0

currencyCode

string

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

totalDueByIntegrator

string (Int64Value format)

REQUIRED: ค่านี้จะเป็นไมโครในสกุลเงิน currencyCode ค่านี้เป็นบวกเสมอ

remittanceInstructions

object (RemittanceInstructions)

ต้องระบุ: รายละเอียดเกี่ยวกับวิธีการชำระเงิน

BillingPeriod

ช่วงเวลาที่เรียกเก็บเงินของใบแจ้งยอดนี้

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

string (int64 format)

ต้องระบุ: วันที่เริ่มต้นของช่วงเวลาที่เรียกเก็บเงิน ซึ่งแสดงเป็นมิลลิวินาทีจาก Epoch แต่เป็นวันที่ (ดังนั้นจะเริ่มต้นที่มิลลิวินาทีแรกของวันในเขตเวลาสำหรับการเรียกเก็บเงินเสมอ)

นี่คือมิลลิวินาทีแรกของช่วงเวลาที่เรียกเก็บเงิน 00:00:00.000

endDate

string (int64 format)

ต้องระบุ: วันที่สิ้นสุดของช่วงเวลาที่เรียกเก็บเงิน ซึ่งแสดงเป็นมิลลิวินาทีจาก Epoch

นี่คือมิลลิวินาทีสุดท้ายของวันสุดท้ายของช่วงเวลาที่เรียกเก็บเงิน 23:59:59.999

RemittanceInstructions

โครงสร้างที่มีข้อมูลเกี่ยวกับวิธีชำระเงินสำหรับการแจ้งเตือนการส่งเงินนี้

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

string

ต้องระบุ: ตัวระบุที่จำเป็นต้องกรอกในบรรทัดบันทึกการชำระเงินเพื่อระบุการส่งเงิน

เหตุการณ์

โครงสร้างที่แสดงเหตุการณ์เดียวที่รวมอยู่ในใบแจ้งยอดการส่งเงิน

การแสดง JSON
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
ช่อง
eventRequestId

string

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

paymentIntegratorEventId

string

ต้องระบุ: ระบุผู้รวมการชำระเงินที่ส่งคืนสำหรับกิจกรรมนี้ สำหรับการจับภาพ นี่คือ paymentIntegratorTransactionId จากการตอบกลับการโทร capture สำหรับการคืนเงินคือ paymentIntegratorRefundId จากการตอบสนองต่อการโทร refund

ช่องนี้มีความยาวแตกต่างกัน เนื่องจากในฐานะผู้รวมระบบจะแสดงรหัสทั้งหมดที่คุณระบุสำหรับกิจกรรมนี้ที่นี่ หากผู้ผสานการทำงานไม่ได้ระบุค่าสำหรับกิจกรรมที่สอดคล้องกัน ช่องนี้จะมีค่าเดียวกับช่อง eventRequestId

สำหรับการคืนเงินแบบย้อนกลับ เหตุการณ์การปฏิเสธการชำระเงินและการดึงเงินคืน กรณีนี้จะเป็นrequestIdที่ผู้รวมการชำระเงินส่งมาพร้อมกับการแจ้งเตือนเหตุการณ์

ความยาวและรูปแบบของช่องนี้จะขึ้นอยู่กับช่องแหล่งที่มาสำหรับแต่ละรหัส โปรดดูรายละเอียดเกี่ยวกับข้อกำหนดเรื่องความยาวและชุดอักขระในเอกสารประกอบของฟิลด์แหล่งที่มาแต่ละช่อง โดยเฉพาะอย่างยิ่ง โปรดทราบว่าบางครั้งช่องนี้อาจมีรหัสที่ Google สร้างขึ้น ซึ่งอาจมีข้อกำหนดความยาวสูงสุดแตกต่างจากรหัสที่ผู้ผสานการทำงานสร้างขึ้น

eventCharge

string (Int64Value format)

ต้องระบุ: เป็นรหัสสกุลเงินที่กำหนดโดยใบแจ้งยอด หากค่านี้เป็นลบ แสดงว่าเป็นมูลค่าทางการเงินที่ย้ายจาก Google ไปยังผู้รวมระบบการชำระเงิน หากเป็นบวก นั่นเป็นเงินจากผู้รวมการชำระเงินที่ต้องจ่ายให้ Google

เช่น การบันทึกธุรกรรมจะเป็นค่าบวกเสมอ และธุรกรรมการคืนเงินจะเป็นค่าลบเสมอ เหตุการณ์การคืนเงินแบบย้อนกลับและการคืนเงินแบบย้อนกลับจะเป็นบวกเสมอ เหตุการณ์การดึงเงินคืนจะเป็นลบเสมอ

ค่านี้อยู่ในหน่วย micros

eventFee

string (Int64Value format)

ต้องระบุ: เป็นรหัสสกุลเงินที่กำหนดโดยใบแจ้งยอด หากค่านี้เป็นลบ แสดงว่าเป็นมูลค่าทางการเงินที่ย้ายจาก Google ไปยังผู้รวมระบบการชำระเงิน หากเป็นบวก นั่นเป็นเงินจากผู้รวมการชำระเงินที่ต้องจ่ายให้ Google

ตัวอย่างเช่น หากข้อตกลงระบุว่า Google จะชำระ 1% ของ transactionCharge ให้ผู้รวมการชำระเงิน และจะคืนค่า 1% เมื่อมีการคืนเงินสำหรับธุรกรรมนั้น ค่าธรรมเนียมการจับภาพจะเป็นลบ และเมื่อคืนเงินแล้ว ค่าธรรมเนียมการคืนเงินจะเป็นบวก

ค่านี้อยู่ในหน่วย micros

presentmentChargeAmount

string (Int64Value format)

ไม่บังคับ: จำนวนเงินของธุรกรรมในสกุลเงินปัจจุบัน (หรือที่เรียกว่าธุรกรรม) ก่อนการแลกเปลี่ยนเงินตราต่างประเทศ ช่องนี้ใช้รูปแบบเครื่องหมายเดียวกับช่อง eventCharge

ค่านี้อยู่ในหน่วย micros

presentmentCurrencyCode

string

ไม่บังคับ: รหัสสกุลเงิน 3 ตัวอักษรตามมาตรฐาน ISO 4217 ที่ใช้แสดงสกุลเงินที่นำเสนอ (ธุรกรรม)

exchangeRate

string (Int64Value format)

ไม่บังคับ: อัตราแลกเปลี่ยนที่ใช้ในการแปลงจำนวนเงินการนำเสนอเป็นจำนวนการชำระหนี้ (ใบแจ้งหนี้)

ค่านี้อยู่ในคะแนนพื้นฐานไมโคร (1 คะแนนพื้นฐาน = .0001 = .01%) นั่นคือ หากต้องการหาอัตราแลกเปลี่ยน ให้นำฟิลด์นี้ไปหารด้วย 10^10

nanoExchangeRate

string (Int64Value format)

ไม่บังคับ: อัตราแลกเปลี่ยนที่ใช้ในการแปลงจำนวนเงินนำเสนอเป็นจำนวนชำระหนี้ (ใบแจ้งหนี้) ซึ่งแสดงเป็นคะแนนนาโนพื้นฐาน

ค่านี้อยู่ในคะแนนพื้นฐาน nano (1 คะแนนพื้นฐาน = .0001 = .01%) นั่นคือ หากต้องการหาอัตราแลกเปลี่ยน ให้นำฟิลด์นี้ไปหารด้วย 10^13

ระบบจะป้อนข้อมูลทั้งช่องนี้และ ExchangeRate เป็นอัตราแลกเปลี่ยนที่เท่าเทียมกันซึ่งแสดงด้วยความแม่นยำต่างกัน ในเวอร์ชันต่อๆ ไป เราจะนำ ExchangeRate ออกเพื่อใช้ nanoExchangeRate