Method: remittanceStatementDetails

تعرض معلومات تفاصيل المعاملة حول كشف الحوالة المالية.

هذه واجهة برمجة تطبيقات مقسّمة على صفحات. يمكن تحديد عدد أحداث المعاملات لكل صفحة باستخدام numberOfEvents. وفي حال عدم تحديدها، سيتم عرض 1, 000 حدث بحدٍ أقصى في كل صفحة. سيؤدي كل طلب إلى واجهة برمجة التطبيقات هذه إلى عرض 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 صفرًا، سيتم عرض الأحداث بدءًا من الحدث الأول. وإذا كان الأمر كذلك، سيتم عرض الأحداث بدءًا من الحدث الثالث. إذا لم يتم تحديد السياسة، ستُفترض أن تكون القيمة "eventOffset" صفرًا.

numberOfEvents

integer

اختياري: عدد الأحداث المطلوب عرضها في كل صفحة. إذا لم يتم تحديد قيمة أكبر من 1000، ستكون هذه القيمة 1000.

نص الاستجابة

كائن الاستجابة لطريقة تفاصيل كشف الحوالة المالية.

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

تمثيل 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

مطلوب: إزاحة الحدث لهذا الرد.

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 لتسوية التناقضات في الفوترة، على سبيل المثال في حال احتساب الرسوم المطلوبة لمجموعة من المعاملات السابقة، ويمكن استخدام التسوية لإجراء عملية تكامل كاملة.

ملخّص حالة تحويل الأموال

تمثّل هذه السمة ملخّصًا لبيان الحوالة المالية.

تمثيل 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)

اختياري: تاريخ استحقاق الحوالة المالية. ويتم تمثيلها بالمللي ثانية من الحقبة. وهو تاريخ (وبالتالي يبدأ دائمًا في الدقيقة الأولى من اليوم في المنطقة الزمنية للفوترة).

ويتم ضبط هذه القيمة طالما أنّ totalDueByIntegrator أكبر من 0.

currencyCode

string

مطلوبة: رمز العملة بالتنسيق ISO 4217 المكوّن من 3 أحرف

totalDueByIntegrator

string (Int64Value format)

مطلوبة: تظهر هذه القيمة بوحدة Micro بوحدة currencyCode. هذه القيمة موجبة دائمًا.

remittanceInstructions

object (RemittanceInstructions)

مطلوبة: تفاصيل حول كيفية تحويل الدفعة

المدة الزمنية للفوترة

المدة الزمنية للفوترة في هذا كشف الحساب.

تمثيل JSON
{
  "startDate": string,
  "endDate": string
}
الحقول
startDate

string (int64 format)

مطلوبة: تاريخ بدء المدة الزمنية للفوترة ويتم تمثيلها بالمللي ثانية من الحقبة. وهو تاريخ (وبالتالي يبدأ دائمًا في الدقيقة الأولى من اليوم في المنطقة الزمنية للفوترة).

هذا هو أول ملي ثانية من يوم المدة الزمنية للفوترة، 00:00:00.000

endDate

string (int64 format)

مطلوبة: تاريخ انتهاء المدة الزمنية للفوترة. ويتم تمثيلها بالمللي ثانية من الحقبة.

هذا هو آخر ملي ثانية من آخر يوم من المدة الزمنية للفوترة، 23:59:59.999

تعليمات التحويل المالي

تنظيم بنية معلومات الدفع حول كيفية دفع إشعار الحوالة المالية هذا

تمثيل 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 الذي ترسله شركة Integrity Integrity مع الإشعار بذلك. بالنسبة إلى التعديلات، سيكون هذا المعرّف فريدًا تحدّده 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)

اختياري: سعر الصرف المستخدَم لتحويل مبلغ العرض إلى مبلغ التسوية (الفاتورة)

هذه القيمة هي بالنقاط الصغيرة (نقطة أساس واحدة = .0001 = .01%). وبالتالي، للحصول على سعر الصرف، اقسم هذا الحقل على 10^10.

nanoExchangeRate

string (Int64Value format)

اختياري: سعر الصرف المستخدَم لتحويل مبلغ العرض إلى مبلغ التسوية (الفاتورة) الذي يتم التعبير عنه في نقاط أساس نانو

هذه القيمة في نقاط أساس nano (نقطة أساس واحدة = .0001 = .01%). وبالتالي، للحصول على سعر الصرف، اقسم هذا الحقل على 10^13.

ستتم تعبئة هذا الحقل وExchangeRate. هي أسعار صرف مكافئة يتم التعبير عنها بدقة مختلفة. في الإصدارات المستقبلية، ستتم إزالة ExchangeRate لصالح nanoExchangeRate.