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" והערך rawCode יהיה הערך שרשת VISA תחזיר.

הערך הזה הוא חובה אם result אינו SUCCESS.

שדה איחוד FailureDetail.

FailureDetail יכול להיות רק אחת מהאפשרויות הבאות:

transactionMaxLimit

string (Int64Value format)

אופציונלי: אם הערך של disburseFundsResultCode הוא DISBURSEMENT_EXCEEDS_TRANSACTION_LIMIT, זה הערך של העסקה המקסימלית המותרת. הנתונים האלה משמשים למסרים מובְנים שגלויים למשתמשים ולניתוח של שיעורי דחייה.

הסכום הזה הוא מיקרו של אותו currencyCode כמו הפעלת ה-method המקורית disburseFunds.

transactionMinLimit

string (Int64Value format)

אופציונלי: אם הערך של disburseFundsResultCode הוא DISBURSEMENT_UNDER_TRANSACTION_LIMIT, זה הערך של העסקה המינימלית המותרת. הנתונים האלה משמשים למסרים מובְנים שגלויים למשתמשים ולניתוח של שיעורי דחייה.

הסכום הזה הוא מיקרו של אותו currencyCode כמו הפעלת ה-method המקורית disburseFunds.

DisburseFundsResultCode

קודי התוצאות של קריאה לכספים שהועברו.

טיפוסים בני מנייה (enum)
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

אופציונלי: ההיקף של קוד ה-RAW יכול להיות ריק.

rawCode

string

חובה: קוד גולמי מהמטמיע או ממערכות המשנה בתוכו.