דלג לתוכן הראשי

Wallet Passes API

כרטיסי Wallet (Apple Wallet ו-Google Wallet) מונפקים ומנוהלים מלוח הבקרה והמסעות של Joryio. ה-API הזה מכסה את השלב היחיד שקורה מחוץ ל-Joryio: תיעוד הרגע שבו כרטיס נסרק/מומש בנקודת המכירה.

הסריקה הזו היא מה שמזין את שלב נסרקו במשפך אימוץ ה-Wallet ואת שיעור הסריקה ב-Analytics -> Wallet Analytics. לא Apple ולא Google מודיעים ל-Joryio כשכרטיס נעשה בו שימוש בחנות, ולכן נקודת המכירה שלך (או שכבת ביניים) חייבת לשלוח את הסריקה לכאן.

אימות

כל הבקשות משתמשות במפתח API כאסימון bearer ודורשות את ההרשאה wallet:write:

Authorization: Bearer jry_live_xxxxxxxxxxxxxxxxxxxx

תיעוד סריקה / מימוש של כרטיס

POST /wallet-passes/scan
שדהסוגהערות
serialNumberstringחובה. המזהה הייחודי של הכרטיס, נקרא מהברקוד/QR המודפס על הכרטיס.
propertiesobjectאופציונלי. מטא-דאטה חופשי של המימוש (חנות, סכום, קופאי, ...). נשמר כפי שהוא באירוע pass.scanned וזמין בניתוחים.

דוגמה

TOKEN=jry_live_xxxxxxxxxxxxxxxxxxxx
BASE=https://api-eu1.joryio.com

curl -sX POST "$BASE/wallet-passes/scan" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"serialNumber": "a1b2c3d4-e5f6-4789-abcd-1234567890ab",
"properties": { "storeId": "store_42", "amount": 19.90, "currency": "EUR" }
}'

תגובה

{ "recorded": true }

הערך recorded הוא false כאשר לא קיים כרטיס עם ה-serialNumber הזה בארגון שלך - במקרה כזה דבר לא נרשם.

הערות

  • אידמפוטנטי לכל כרטיס בניתוחים. המשפך סופר כרטיסים ייחודיים, ולכן סריקה חוזרת של אותו serialNumber עדיין נספרת ככרטיס נסרק אחד. כל קריאה כן פולטת אירוע pass.scanned משלה, כך שה-properties של כל סריקה נשמרים.
  • מהו ה-serial. serialNumber הוא מזהה הכרטיס המקודד בברקוד/QR של הכרטיס. קרא אותו בקופה ושלח אותו כפי שהוא.
  • היכן זה מופיע. סריקות מזינות את זרם האירועים pass.scanned ואת שלב נסרקו / שיעור הסריקה ב-Wallet Analytics. שיעור הסריקה מחושב כ-scanned / downloaded (בסיס נקי חוצה-פלטפורמות).
  • מפתחות מרובי-סביבות עבודה. אם מפתח ה-API שלך משתרע על כמה סביבות עבודה, הוסף כותרת X-Workspace-Id: <workspace-id>. היא אופציונלית עבור מפתח של סביבת עבודה יחידה.