תהליך להחזר כספי

סקירה כללית

ניתן לבצע החזרים כספיים על ידי פעולה פעילה של משתמש (בלחיצה על הלחצן 'החזר כספי') או שהם מופעלים באופן אוטומטי בשמו של המשתמש. ללא קשר לטריגר, בקשה אסינכרונית של החזר כספי תישלח מ-Google אל כלי שילוב התשלומים. מבצע השילוב צריך לאשר את הבקשה ולהודיע ל-Google לאחר השלמת ההחזר הכספי.

איך פועל הזרימה

תהליך ההחזר הכספי

זוהי דוגמה לתהליך אסינכרוני של החזר כספי שהמשתמש יזם:

תהליך ההחזר הכספי

הנה רשימת האובייקטים בתרשים שלמעלה:

  • משתמש: האדם שרוצה לקבל החזר כספי מלא או חלקי.
  • שרת Google: שרת הקצה העורפי ב-Google ששולח את פקודת ההחזר הכספי לשילוב התשלומים.
  • כלי לשילוב תשלומים: מבצע השילוב שמעביר את הבקשה להחזר כספי למנפיק התשלומים.
  • המנפיק: המנפיק שמשמש לביצוע התשלום, שמאשר את הבקשה להחזר כספי.

ההחזר הכספי בדוגמה הזו הוא ביוזמת המשתמש.

  1. המשתמש יוזם את ההחזר הכספי לשרת Google.
  2. Google מפעילה את נקודת הקצה AsynchronousRefund של משלב התשלומים.
  3. מבצע השילוב שולח אל Google תגובה מסוג Acknowledged.
  4. מבצע השילוב מפעיל את נקודת הקצה המתאימה של Refund במנפיק.
  5. המנפיק מעבד את ההחזר הכספי ומשיב למבצע השילוב באמצעות Success.
  6. מבצע השילוב מפעיל את נקודת הקצה RefundResultNotification בשרת Google כדי להודיע ל-Google על התוצאה.
  7. Google מאשרת את RefundResultNotification.
  8. Google מעדכנת את הכספים הזמינים למשתמש.
  9. המשתמש מקבל החזר כספי.

שיטות מומלצות ושיקולים נוספים

מאחר שמוצרי Google מסוימים, כגון AdWords, תומכים בהחזרים כספיים כל עוד יש זיכוי בחשבון, יש לתמוך בבקשות להחזרים כספיים עבור עסקאות ללא הגבלת זמן. אם קיימת מגבלה טכנית, תקופת ההחזר הכספי צריכה להיות כל עוד הפלטפורמה מאפשרת.

ניתן לדחות החזרים כספיים רק אם היתרה בעסקה המקורית לא מספיקה כדי לכסות את סכום ההחזר הכספי, או אם החשבון נסגר או נמצא בהשהיה, ולמבצע השילוב אין יכולת להעביר את הכסף הזה למשתמש.

ניתן לבצע החזרים כספיים תוך שניות ספורות לאחר הצילום. תזמון ההחזרים הכספיים נתון לשיקול דעתה של Google.

אין להתייחס להחזר כספי כהחזר כספי מלא. כשמבצעים החזר כספי לחשבון, תמיד צריך להביא בחשבון את השדה refundAmount.

חייבת להיות תמיכה בהחזרים כספיים חלקיים מרובים. לדוגמה, נניח שבוצעה עסקה בשווי 44 ש"ח, ומשתמש יכול לקבל החזרים כספיים חלקיים בסך 16 ש"ח, 20 ש"ח ו-4 ש"ח מהעסקה המקורית. במקרה כזה, לכל שלושת ההחזרים הכספיים יהיה אותו captureRequestId אבל ערכי requestId שונים. כמו כן, נותרו בעסקה הזו רק 4.00 ש"ח.

עכשיו נניח שבוצעה רכישה בסכום של 48.00 ש"ח. לצורך הדוגמה הזו, המשתמש יכול לבצע שני החזרים כספיים בסך 6.00$. אם לשני ההחזרים הכספיים יש ערכי requestId שונים (ואותו captureRequestId), צריך להתייחס אליהם כאל החזרים כספיים נפרדים על אותה עסקה. במקרה כזה, יישארו למשתמש $0 בעסקה לאחר השלמת ההחזרים הכספיים.