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)

OPTIONAL: النتيجة الأولية لهذه الدفعة. تُستخدَم هذه السمة للمساعدة في إعلام محرّك بحث Google بشأن المخاطر والتحليلات. في حالات ربط الرموز البرمجية والرفض، يتم فقدان البيانات أحيانًا. يمكن أن تختار شركة الدمج منح Google رمزًا أوليًا. على سبيل المثال، يمكن لبوابة بطاقة الائتمان (شركة الدمج) استخدام هذا الحقل لإبلاغ Google برمز الرفض الذي تم استلامه من شبكة VISA. في هذه الحالة، ستكون القيمة scope هي "فيزا" وكانت بطاقة 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

رموز النتائج الخاصة بمكالمة لتسديد الدفعات

عمليات التعداد
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

OPTIONAL: يمكن أن يكون نطاق RAWCode فارغًا.

rawCode

string

مطلوب: الرمز الأولي من شركة الدمج أو الأنظمة الفرعية المضمّنة فيه.