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" (بطاقة 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

رموز نتائج طلب دفع الأموال.

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

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