Method: disburseFunds

حرکت پول بین پردازشگر پرداخت و حساب مشتری را آغاز می کند. ترکیبی از requestId در هدر و paymentIntegratorAccountId کلید idempotency است و این تراکنش را به طور منحصربه‌فرد شناسایی می‌کند. تمام جهش‌ها در این تراکنش، مقدار 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 فیلد اتحادیهFopDetails.

destinationFopDetails فقط می تواند یکی از موارد زیر باشد:

upiDetails

object ( UpiDetails )

اختیاری : جزئیات پرداخت ویژه ابزارهای UPI.

بدن پاسخگو

شی پاسخ برای روش پرداخت وجوه.

در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "paymentIntegratorTransactionId": string,
  "disburseFundsResult": {
    object (DisburseFundsResult)
  }
}
زمینه های
responseHeader

object ( ResponseHeader )

مورد نیاز : هدر مشترک برای همه پاسخ ها.

paymentIntegratorTransactionId

string

REQUIRED : این شناسه مخصوص یکپارچه ساز است و توسط یکپارچه ساز تولید می شود. این شناسه ای است که ادغام کننده این تراکنش را با آن می شناسد.

برای راحتی، این شناسه در جزئیات حواله گنجانده شده است

disburseFundsResult

object ( DisburseFundsResult )

مورد نیاز : نتیجه تماس با پرداخت وجوه.

UpiDetails

جزئیات مربوط به حساب UPI برای پرداخت.

نمایندگی JSON
{
  "vpa": string
}
زمینه های
vpa

string

مورد نیاز : آدرس پرداخت مجازی کاربر (VPA) که برای جابجایی پول با استفاده از پروتکل UPI استفاده می شود. به عنوان مثال foo@icici .

Disburse Funds Result

اطلاعات در مورد نتیجه نهایی پرداخت.

نمایندگی 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 «ویزا» و 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

کدهای نتیجه برای تماس پرداخت وجوه.

Enums
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 حساب کاربری که نزد integrator نگهداری می شود به دلیل کلاهبرداری بسته شده است. این مقدار بازگشتی باعث می‌شود که ابزار کاربر با Google بسته شود. کاربر مجبور می شود یک ابزار جدید اضافه کند.
ACCOUNT_ON_HOLD حساب کاربری در حالت تعلیق است.

RawResult

شیء نتیجه خام.

نمایندگی JSON
{
  "scope": string,
  "rawCode": string
}
زمینه های
scope

string

اختیاری : محدوده rawCode، می تواند خالی باشد.

rawCode

string

مورد نیاز : کد خام از یکپارچه ساز یا زیرسیستم های درون آن.