משייך את חשבון הלקוח למעבד התשלומים לאמצעי התשלום של Google שנוסף.
שיוך החשבון מתרחש אחרי שהשילוב אימת את המשתמש. השיוך מתרחש באמצעות קריאה משרת לשרת שמכילה את השדה requestId
לתהליך האימות המשויך (authenticationRequestId
), associationId
ו-googlePaymentToken
(GPT). ספק שירותי התשלומים צריך לשייך את associationId
ואת googlePaymentToken
לחשבון הלקוח לצורך אימות. ה-GPT משמש לביצוע תשלומים. הקוד associationId
משמש לזיהוי החשבון לצורך אימות מחדש במהלך קריאות לאימות מחדש.
אם Google שולחת associationId
או googlePaymentToken
שהשילוב כבר ראה במהלך שיוך אחר, תתקבל הודעת שגיאה.
אם נקודת הקצה נתקלת בשגיאה במהלך עיבוד הבקשה, גוף התגובה מנקודת הקצה הזו צריך להיות מסוג
.ErrorResponse
בקשה לדוגמה נראית כך:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "cmVxdWVzdDE",
"requestTimestamp": "1481899949606"
},
"googlePaymentToken": "ZXhhbXBsZSB1bmlxdWUgcGF5bWVudCB0b2tlbiB2YWx1ZQ__",
"authenticationRequestId": "bnAxdWTydDX==",
"associationId": "LmddbXBsZSByZWZlcmVuY2UgdG9rZW4gdmFsdWU_",
"provideUserInformation": true
}
דוגמה לתשובה:
{
"responseHeader": {
"responseTimestamp": "1481899949611"
},
"paymentIntegratorAssociateAccountId": "xx77df88934hfd",
"accountId": "1234-5678-91",
"accountNickname": "***-91",
"tokenExpirationTime": "0",
"userInformation": {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"result": "SUCCESS"
}
בקשת HTTP
POST https://www.integratorhost.example.com/v1/associateAccount
גוף הבקשה
גוף הבקשה מכיל נתונים במבנה הבא:
ייצוג JSON |
---|
{ "requestHeader": { object ( |
שדות | |
---|---|
requestHeader |
חובה: כותרת משותפת לכל הבקשות. |
provideUserInformation |
חובה: True אם אנחנו רוצים שהשותף יספק את הכתובת המשויכת לחשבון הזה. |
googlePaymentToken |
חובה: האסימון שישמש את Google לביצוע רכישות אצל החברה לעיבוד תשלומים. האורך המקסימלי של המחרוזת הוא 100 תווים. |
associationId |
חובה: המזהה של השיוך הזה. המזהה הזה נוצר על ידי Google והוא נשלח בתהליך האימות מחדש כדי לזהות איזה חשבון צריך לאמת. האורך המקסימלי של המחרוזת הוא 100 תווים. |
שדה איחוד הערך של |
|
authenticationRequestId |
אופציונלי: |
otpVerification |
אופציונלי: הנתונים הנדרשים לאימות OTP שנוצר מ- |
גוף התגובה
אובייקט תשובה של שיטת החשבון המשויך.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכלול נתונים במבנה הבא:
ייצוג JSON |
---|
{ "responseHeader": { object ( |
שדות | |
---|---|
responseHeader |
חובה: כותרת נפוצה לכל התשובות. |
paymentIntegratorAssociateAccountId |
חובה: המזהה הזה הוא ספציפי למבצע השילוב, והוא נוצר על ידי מבצע השילוב. הוא משמש למטרות ניפוי באגים בלבד כדי לזהות את השיחה. זהו המזהה שלפיו מבצע השילוב יודע את הקריאה הזו. |
tokenExpirationTime |
אופציונלי: אלפיות השנייה מאז תחילת התקופה שבה יפוג תוקף האסימון. יש להשתמש ב- |
accountId |
חובה: מספר החשבון של המשתמש אצל מבצע השילוב. המידע הזה עוזר ל-Google להבין את אופן השימוש החוזר בחשבון ואת הקשרים בין החשבונות, ואת סוכני התפעול של הלקוחות של Google כדי לעזור ללקוחות לאבחן בעיות. המזהה צריך להיות מזוהה על ידי המשתמש (לדוגמה, המשתמש יודע את המזהה הזה כי הוא מופיע בדף החשבון שלו או מופיע באתר לאחר שהוא מתחבר לחשבון). אי אפשר לשנות את הערך הזה בכל משך החיים של החשבון. |
userMessage |
הוצא משימוש: תיאור של התוצאה שיוצג למשתמש אם התוצאה אינה |
userInformation |
חובה: פרטי משתמש שהשילוב יודע וישתף עם Google לגבי הלקוח. משמש למידע על סיכונים ולאכלוס מראש של כתובות. |
result |
חובה: התוצאה של השיוך הזה. |
שדה איחוד הערך של |
|
accountNickname |
אופציונלי: מחרוזת שלפיה המשתמש מכיר את החשבון הזה למטרות תצוגה. זוהי הסיומת של כינוי החשבון. לדוגמה, ארבע הספרות האחרונות של מספר טלפון. Google תציין בממשק המשתמש שזו רק סיומת של הכינוי. הערך הזה יוצג בממשקי משתמש כמו תהליך הרכישה כדי לאפשר למשתמש להבחין בין אמצעי התשלום. |
fullAccountNickname |
אופציונלי: מחרוזת שלפיה המשתמש מכיר את החשבון הזה למטרות תצוגה. בניגוד ל- הערך הזה יוצג בממשקי משתמש כמו תהליך הרכישה כדי לאפשר למשתמש להבחין בין אמצעי התשלום. |
UserInformation
המבנה שמכיל מידע על המשתמש.
ייצוג JSON |
---|
{ "name": string, "addressLine": [ string ], "localityName": string, "administrativeAreaName": string, "postalCodeNumber": string, "countryCode": string, "phone": string, "emailAddress": string } |
שדות | |
---|---|
name |
אופציונלי: השם המלא של הלקוח. |
addressLine[] |
אופציונלי: שדה זה כולל טקסט כתובת לא מובנה. |
localityName |
אופציונלי: זהו מונח מעורפל, אך בדרך כלל הוא מתייחס לחלק של העיר או היישוב בכתובת. באזורים בעולם שבהם הרשויות המוניציפאליות לא מוגדרות היטב או שאינם מתאימים היטב למבנה זה (לדוגמה, יפן וסין), יש להשאיר את השדה localityName ריק ולהשתמש ב-addressLine. דוגמאות: עיר בארה"ב, קומוניית IT, עיר דואר בבריטניה. |
administrativeAreaName |
אופציונלי: חלוקת משנה מנהלית ברמה העליונה של המדינה הזו. דוגמאות: מדינה בארה"ב, אזור IT, מחוז CN, מחוז יפן." |
postalCodeNumber |
אופציונלי: למרות השם, בדרך כלל הערכים של postCodeNumber הם אלפאנומריים. דוגמאות: 94043, SW1W, SW1W 9TQ. |
countryCode |
אופציונלי: קוד המדינה של כתובת הלקוח, הצפוי להיות ISO-3166-1 Alpha-2. |
phone |
אופציונלי: מספר הטלפון של הלקוח. |
emailAddress |
אופציונלי: כתובת אימייל של הלקוח. |
AssociateAccountResultCode
קודים של תוצאות לחשבון משויך.
טיפוסים בני מנייה (enums) | |
---|---|
UNKNOWN_RESULT |
אל תגדיר את ערך ברירת המחדל הזה אף פעם! |
SUCCESS |
השיוך בוצע בהצלחה. |
USER_AUTHENTICATION_FAILED |
למרות שהחבילה לאימות החשבון הוחזרה, אימות המשתמש נכשל. |
NOT_ELIGIBLE |
החשבון של המשתמש לא זכאי לשירות הזה. |
OTP_NOT_MATCHED |
הסיסמה החד-פעמית (OTP) לא תאמה למה השילוב שלח. |
OTP_ALREADY_USED |
כבר נעשה שימוש ב-OTP. |
OTP_LIMIT_REACHED |
המשתמש ביקש או ניסה לאמת יותר מדי סיסמאות חד-פעמיות. |
OTP_EXPIRED |
פג התוקף של OTP. |