- בקשת HTTP
- גוף הבקשה
- גוף התשובה
- PaymentLookupCriteria
- ArnCriteria
- GoogleTransactionReferenceNumberCriteria
- CaptureRequestCriteria
- RequestOriginator
- GetDisputeInquiryReportResultCode
- PurchaseReport
- CustomerAccount
- הזמנה
- כתובת
- פריט
- מס
- תשלום
- החזר כספי
- PaymentCardDetails
- AuthResult
לקבל דוח שמספק מידע שיעזור לכם לשוחח עם צוות תמיכת הלקוחות לגבי התנגדות אפשרית לתשלום.
אם נקודת הקצה נתקלה בשגיאה במהלך עיבוד הבקשה, התשובה מנקודת הקצה הזו תהיה מסוג .ErrorResponse
אם השיטה הזו לא מחזירה HTTP 200, יכול להיות שהתשובות לשאילתה הזו יהיו ריקות. גוף התשובה ריק במצבים שבהם ניתן להשתמש ב עם תיאור ברור כדי לעזור לתוקפים להבין את מזהה החשבון של מטמיע התשלומים של מבצעי שילוב אחרים. במצבים כאלה, כאשר מפתח החתימה לא תואם, המזהה של מבצע השילוב לא נמצא או שמפתח ההצפנה לא ידוע, השיטה הזו תחזיר HTTP 404 עם גוף ריק. אם אפשר לאמת את חתימת הבקשה, בגוף התגובה יופיע מידע נוסף לגבי השגיאה.ErrorResponse
בקשה לדוגמה נראית כך:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1519996751331"
},
"paymentIntegratorAccountId": "InvisiCashUSA",
"paymentLookupCriteria": {
"googleTransactionReferenceNumberCriteria": {
"googleTransactionReferenceNumber": "714545417102363157911822",
"authorizationCode": "111111"
}
},
"existingGoogleClaimId": "138431383281",
"requestOriginator": {
"organizationId": "ISSUER_256",
"organizationDescription": "Community Bank of Some City",
"agentId": "982749"
}
}
תגובה לדוגמה נראית כך:
{
"responseHeader": {
"responseTimestamp": "1519996752221"
},
"result": "SUCCESS",
"googleClaimId": "138431383281",
"report": {
"customerAccount": {
"customerEmail": "example@gmail.com",
"customerName" : "Example Customer"
},
"order": {
"timestamp": "1517992525972",
"orderId": "SOP.8976-1234-1234-123456..99",
"currencyCode": "USD",
"subTotalAmount": "206990000",
"totalAmount": "212990000",
"shippingAddress": {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"taxes": [
{
"description": "Colorado Sales Tax",
"amount": "6000000"
}
],
"items": [
{
"description": "Super cool gizmo",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "2",
"totalPrice": "198000000"
},
{
"description": "Gizmo charger",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "1",
"totalPrice": "8990000"
}
]
},
"payment": {
"billingAddress" : {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"amount": "100000000",
"refunds": [
{
"amount": "9250000",
"initiatedTimestamp": "1518811245384"
}
],
"cardDetails": {
"authResult": "APPROVED"
}
}
}
}
בקשת HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/getDisputeInquiryReport/:PIAID
גוף הבקשה
גוף הבקשה מכיל נתונים במבנה הבא:
| ייצוג JSON |
|---|
{ "requestHeader": { object ( |
| שדות | |
|---|---|
requestHeader |
חובה: כותרת משותפת לכל הבקשות. |
paymentIntegratorAccountId |
חובה: מזהה החשבון של הכלי לשילוב תשלומים שמזהה את מבצע הקריאה החוזרת, והאילוצים החוזיים הרלוונטיים לאינטראקציה הזו. |
paymentLookupCriteria |
חובה: קריטריונים שמציינים את התשלום שלגביו צריך לבדוק את הנושא. |
existingGoogleClaimId |
אופציונלי: מחרוזת שנוצרה על ידי Google שהוחזרה על ידי קריאה קודמת ל- אם הוא לא קיים, המערכת תיצור מזהה תלונה חדש. המתקשר יכול לספק מזהה התלונה שיאוכלס כאן או שנוצר יוחזר בשדה אי אפשר לציין |
requestOriginator |
חובה: מידע על הארגון או קבוצת המשנה הארגונית שממנה נשלחה הבקשה. |
גוף התשובה
מטען ייעודי (payload) של תשובה ל-method getDisputeInquiryReport.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל נתונים במבנה הבא:
| ייצוג JSON |
|---|
{ "responseHeader": { object ( |
| שדות | |
|---|---|
responseHeader |
חובה: כותרת משותפת לכל התשובות. |
result |
חובה: תוצאת הקריאה הזו. |
googleClaimId |
אופציונלי: מחרוזת שנוצרת על ידי Google ומזהה באופן ייחודי את ההתנגדות הזו שהלקוח שלח. (הצגה רק אם הערך של אם השדה |
report |
אופציונלי: פרטים שרלוונטיים לערעור על התשלום שצוין בבקשה. (הצגה רק אם הערך של |
PaymentLookupCriteria
מאגר שמכיל קריטריונים שבאמצעותם אפשר לחפש תשלום באופן ייחודי. יש לאכלס שדה חבר אחד (ורק אחד).
| ייצוג JSON |
|---|
{ // Union field |
| שדות | |
|---|---|
שדה איחוד
|
|
arnCriteria |
אופציונלי: חיפוש שמבוסס על מספר הסימוכין של הצירוף (ARN). |
googleTransactionReferenceNumberCriteria |
אופציונלי: יש לחפש לפי מספר אסמכתה של העסקה ב-Google. |
captureRequestCriteria |
אופציונלי: מחפשים לפי מזהה הבקשה לכידה. |
ArnCriteria
קריטריונים לחיפוש תשלום על סמך מספר הסימוכין של הרוכש (ARN).
| ייצוג JSON |
|---|
{ "acquirerReferenceNumber": string, "authorizationCode": string } |
| שדות | |
|---|---|
acquirerReferenceNumber |
חובה: מספר הסימוכין של הרוכש (ARN) שמזהה באופן ייחודי את התשלום. חייב להכיל 23 ספרות. |
authorizationCode |
חובה: קוד ההרשאה לעסקה. |
GoogleTransactionReferenceNumberCriteria
קריטריונים לחיפוש תשלום על סמך מספר אסמכתה ש-Google יצרה.
| ייצוג JSON |
|---|
{ "googleTransactionReferenceNumber": string, "authorizationCode": string } |
| שדות | |
|---|---|
googleTransactionReferenceNumber |
חובה: מספר הסימוכין לעסקה שנוצר על ידי Google ומזהה באופן ייחודי את התשלום. |
authorizationCode |
חובה: קוד ההרשאה לעסקה. |
CaptureRequestCriteria
קריטריונים לחיפוש תשלום על סמך בקשת הלכידה המקורית.
| ייצוג JSON |
|---|
{ "captureRequestId": string } |
| שדות | |
|---|---|
captureRequestId |
חובה: מזהה ייחודי לעסקה. זוהי הודעת ה- |
RequestOriginator
מידע על הארגון או קבוצת המשנה הארגונית, ובאופן אופציונלי על העובד שממנו נשלחה הבקשה. כך Google יכולה לזהות בעיות או ניצול לרעה וליישם אמצעי בקרה פרטניים יותר מאשר paymentIntegratorAccountId. ההשוואה הזו חשובה במיוחד כאשר המתקשר הוא ספק שירות ביניים שמקבל בקשות מכמה לקוחות חיצוניים.
| ייצוג JSON |
|---|
{ "organizationId": string, "organizationDescription": string, "agentId": string } |
| שדות | |
|---|---|
organizationId |
חובה: מזהה של החברה, הארגון או הקבוצה הארגונית שמהם הגיעה הבקשה חייב להיות ייחודי במסגרת |
organizationDescription |
חובה: שם או תיאור של הארגון שקריאים לאנשים. השם הזה יכול לשמש להקל על התקשורת בין עובדי Google לבין מבצע השילוב בנוגע לארגון. |
agentId |
אופציונלי: מזהה ייחודי של הסוכן הספציפי (עובד) של הארגון שזוהה על ידי |
GetDisputeInquiryReportResultCode
התוצאה של הפעלת ה-method getDisputeInquiryReport.
| טיפוסים בני מנייה (enum) | |
|---|---|
UNKNOWN_RESULT |
אל תגדירו את ערך ברירת המחדל הזה אף פעם! |
SUCCESS |
התשלום נמצא ומועבר דוח. |
PAYMENT_NOT_FOUND |
התשלום המבוקש לא נמצא. |
PAYMENT_TOO_OLD |
התשלום המבוקש נמצא, אבל לא סופק דוח בגלל גיל התשלום. |
ORDER_CANNOT_BE_RETURNED |
התשלום המבוקש שייך להזמנה קיימת, אך לא ניתן להחזיר אותו. הסיבות כוללות מקרים שבהם ההזמנה הוסרה לבקשת הבעלים שלה. |
NO_ADDITIONAL_DETAILS |
התשלום המבוקש נמצא, אבל אין דוח זמין. |
PurchaseReport
דוח שמכיל פרטים רלוונטיים של הרכישה שמשויכת לתשלום המבוקש.
| ייצוג JSON |
|---|
{ "customerAccount": { object ( |
| שדות | |
|---|---|
customerAccount |
חובה: מידע לגבי הלקוח והחשבון שלו. |
order |
חובה: מידע לגבי ההזמנה שבה בוצע התשלום. |
payment |
אופציונלי: מידע בנוגע לתשלום. הערה: ניתן לבצע כמה תשלומים בהזמנה אחת, אך הפרטים יכללו רק פרטים על התשלום שזוהה בבקשה המקורית. המבצע לא זמין לכל סוגי ההזמנות. |
CustomerAccount
מידע על החשבון של הלקוח
| ייצוג JSON |
|---|
{ "customerEmail": string, "customerName": string } |
| שדות | |
|---|---|
customerEmail |
חובה: כתובת האימייל שמשויכת לחשבון Google של הלקוח. |
customerName |
חובה: שם הלקוח. |
הזמנה
מידע על ההזמנה.
| ייצוג JSON |
|---|
{ "timestamp": string, "orderId": string, "currencyCode": string, "subTotalAmount": string, "totalAmount": string, "shippingAddress": { object ( |
| שדות | |
|---|---|
timestamp |
אופציונלי: חותמת הזמן של מועד ביצוע ההזמנה, מיוצגת כאלפיות שנייה מתחילת התקופה. המבצע לא זמין לכל סוגי ההזמנות. |
orderId |
אופציונלי: מחרוזת שמזהה את ההזמנה באופן ייחודי. המבצע לא זמין לכל סוגי ההזמנות. |
currencyCode |
אופציונלי: קוד מטבע בן 3 אותיות לפי תקן ISO 4217 לכל הסכומים בהזמנה הזו. המבצע לא זמין לכל סוגי ההזמנות. |
subTotalAmount |
אופציונלי: הסכום הכולל של ההזמנה לפני מס, מיוצג כמיקרו של המטבע שצוין ב- |
totalAmount |
אופציונלי: הסכום הכולל של ההזמנה הזו, כולל מס, מיוצג כמיקרו של המטבע שצוין ב- |
shippingAddress |
אופציונלי: כתובת למשלוח של פריטים פיזיים בהזמנה הזו. |
items[] |
חובה: רשימת פריטים שהיו חלק מההזמנה. |
taxes[] |
חובה: רשימת פריטים שהיו חלק מההזמנה. יכול להיות שהרשימה הזו ריקה. |
כתובת
מבנה שמכיל מידע על כתובת.
| ייצוג JSON |
|---|
{ "name": string, "addressLine": [ string ], "localityName": string, "administrativeAreaName": string, "postalCodeNumber": string, "countryCode": string } |
| שדות | |
|---|---|
name |
אופציונלי: השם המלא של הלקוח. |
addressLine[] |
אופציונלי: מכילה טקסט כתובת לא מובנה. |
localityName |
אופציונלי: זהו מונח מעורפל, אך הוא מתייחס באופן כללי לחלק של העיר/העיירה בכתובת. באזורים בעולם שבהם הרשויות המוניציפאליות לא מוגדרות היטב או שלא מתאימות למבנה הזה (לדוגמה, יפן וסין), יש להשאיר את השדה LocalityName ריק ולהשתמש בשורת הכתובת. דוגמאות: עיר בארה"ב, קהילת IT, עיר דואר בבריטניה. |
administrativeAreaName |
אופציונלי: חלוקת משנה מנהלית ברמה העליונה של המדינה הזו" דוגמאות: מדינה בארה"ב, אזור IT, מחוז CN, מחוז יפן." |
postalCodeNumber |
אופציונלי: למרות השם, בדרך כלל הערכים שלPostalCodeNumber מכילים אותיות וספרות. דוגמאות: '94043', 'SW1W', 'SW1W 9TQ'. |
countryCode |
אופציונלי: קוד המדינה של כתובת הלקוח, צריך להיות בפורמט ISO-3166-1 Alpha-2. |
פריט
מידע על פריט בהזמנה.
| ייצוג JSON |
|---|
{ "description": string, "merchant": string, "quantity": string, "totalPrice": string, "googleProductName": string } |
| שדות | |
|---|---|
description |
אופציונלי: תיאור של הפריט שנרכש. המבצע לא זמין לכל סוגי ההזמנות. |
merchant |
חובה: המוכר, האומן או היצרן של הפריט. |
quantity |
אופציונלי: הכמות שהוזמנה לפריט הזה. המערכת תשמיט את השדה הזה אם הכמויות במספרים שלמים לא רלוונטיות למוצר (לדוגמה, מוצרים עם מכסת מאמרים ללא תשלום יכולים לכלול כמויות חלקיות). |
totalPrice |
אופציונלי: המחיר הכולל של הפריט, מיוצג כמיקרו של המטבע שצוין ב- |
googleProductName |
חובה: השם של שירות המוצר של Google עבור הפריט. |
מס
מידע על המס שחל על ההזמנה הזו.
| ייצוג JSON |
|---|
{ "description": string, "amount": string } |
| שדות | |
|---|---|
description |
חובה: תיאור של המס. |
amount |
חובה: סכום המס, מיוצג כמיקרו של המטבע שצוין ב- |
תשלום
מידע על התשלום.
| ייצוג JSON |
|---|
{ "billingAddress": { object ( |
| שדות | |
|---|---|
billingAddress |
חובה: כתובת לחיוב המשויכת לתשלום הזה. |
amount |
חובה: סכום התשלום הזה, מיוצג כמיקרו של המטבע שצוין ב- |
refunds[] |
חובה: רשימת החזרים כספיים שבוצעו לתשלום הזה. יכול להיות שהרשימה הזו ריקה. |
שדה איחוד
|
|
cardDetails |
אופציונלי: פרטי תשלום ספציפיים לאשראי שדות של כרטיסי חיוב מיידי. |
החזר כספי
מידע על החזר כספי שבוצע.
| ייצוג JSON |
|---|
{ "amount": string, "initiatedTimestamp": string } |
| שדות | |
|---|---|
amount |
חובה: סכום ההחזר הכספי, מספר חיובי של מיקרו של המטבע שצוין ב- |
initiatedTimestamp |
חובה: חותמת הזמן של התחלת ההחזר הכספי, מיוצגת כאלפיות שנייה מתחילת התקופה. |
PaymentCardDetails
פרטי תשלום ספציפיים לאשראי כרטיסי חיוב מיידי.
| ייצוג JSON |
|---|
{
"authResult": enum ( |
| שדות | |
|---|---|
authResult |
חובה: התוצאה של אימות התשלום. |
AuthResult
תוצאות של אימות תשלום.
| טיפוסים בני מנייה (enum) | |
|---|---|
UNKNOWN_RESULT |
אל תגדירו את ערך ברירת המחדל הזה אף פעם! |
APPROVED |
האימות אושר. |
DENIED |
האימות נדחה. |
NOT_ATTEMPTED |
לא נעשה ניסיון לבצע אימות. |