טעינת נתונים מ-Stripe ל-BigQuery

אפשר לטעון נתונים מ-Stripe ל-BigQuery באמצעות מחבר Stripe עם שירות העברת הנתונים ל-BigQuery. באמצעות מחבר Stripe, אתם יכולים לתזמן משימות העברה חוזרות שמוסיפות את הנתונים העדכניים שלכם מ-Stripe ל-BigQuery.

מגבלות

העברות נתונים של Stripe כפופות למגבלות הבאות:

  • העברת נתונים מ-Stripe טוענת מטבעות לפי היחידות הקטנות של Stripe. מידע נוסף זמין במאמר בנושא יחידות משנה בסכומים של API.
  • המחבר של Stripe מעביר רק דוחות שנוצרו מראש לכל חשבון Stripe. מחבר Stripe לא יוצר דוחות חדשים על סמך נתונים חדשים מ-Stripe.
    • כדי להעביר דוחות עדכניים, צריך ליצור את הדוחות באופן ידני במרכז הבקרה של Stripe לפני שמתחילים את העברת הנתונים של Stripe.
    • מידע נוסף זמין במאמר בנושא דיווח ב-Stripe.
  • המחבר של Stripe לא תומך באירועים מבוססי webhook, בעדכונים בזמן אמת או ב-Stripe Sigma.
  • יכול להיות שיהיו בעיות בהעברת נתונים מ-Stripe אם הנתונים מגיעים מאזורים של Stripe שנמצאים בשלב התצוגה המקדימה:
    • אפשרויות הסינון מוגבלות או לא זמינות באזורים שמוצגים בתצוגה מקדימה ב-Stripe.
    • אזורי התצוגה המקדימה של Stripe לא תומכים בהעברות נתונים ובשאילתות מותנות.
    • יכול להיות שתיתקלו בזמני ריצה ארוכים של העברת נתונים כשמעבירים נתונים מאזורי תצוגה מקדימה של Stripe.
  • מחבר Stripe תומך בחלק מהאובייקטים עם המסנן StartDate.
    • הפורמט הנדרש למסנן StartDate הוא YYYY-MM-DD. אם לא מציינים תאריך התחלה, ברירת המחדל של המחבר היא שלוש שנים לפני התאריך הנוכחי. אם מציינים תאריך שלפני 1 בינואר 2011, המחבר משתמש אוטומטית בתאריך 1 בינואר 2011.
    • כאן אפשר לעיין ברשימת האובייקטים שתומכים במסנן StartDate.
  • כל הגדרה של העברת נתונים יכולה לתמוך רק בהרצה אחת של העברת נתונים בכל זמן נתון. אם מתוכננת העברת נתונים שנייה לפני שההעברה הראשונה מסתיימת, רק ההעברה הראשונה תסתיים, והעברות נתונים אחרות שחופפות להעברה הראשונה ייפסחו.
    • כדי להימנע מדילוג על העברות במסגרת הגדרת העברה יחידה, מומלץ להגדיר את תדירות החזרה כדי להגדיל את משך הזמן בין העברות של נתונים בכמות גדולה.

לפני שמתחילים

בקטעים הבאים מתוארים השלבים שצריך לבצע לפני שיוצרים העברת נתונים של Stripe.

דרישות מוקדמות ל-Stripe

  • כדי לאשר העברת נתונים מ-Stripe, צריך להיות לכם חשבון פיתוח ב-Stripe. הוראות לרישום חשבון Stripe מופיעות במאמר רישום ב-Stripe.
  • כדי להגדיר את אפליקציית הפלטפורמה של Stripe, מבצעים את השלבים הבאים:
    1. עוברים לקטע Developers בלוח הבקרה של Stripe.
    2. בקטע Connect (חיבור), מגדירים את הפלטפורמה כך שתתמוך בחשבונות Standard (רגיל) ו-Express (מהיר).
  • כדי ליצור העברת נתונים ב-Stripe, צריך את הפרטים הבאים:
    • רושמים את מספר חשבון Stripe. מידע נוסף זמין במאמר יצירת חשבון.
    • רושמים בצד את המפתח הסודי או את המפתח המוגבל. מידע נוסף זמין במאמר מפתחות API.
  • אם אתם מתכננים להעביר נתונים מחשבונות מקושרים, ודאו שהפלטפורמה שלכם מוגדרת ל-Stripe Connect ושיש לה גישה ליכולות החשבון הנדרשות. מידע נוסף על Stripe Connect זמין במאמר פלטפורמות ושווקים עם Stripe Connect.

התפקידים הנדרשים ב-BigQuery

כדי לקבל את ההרשאות שנדרשות ליצירת העברה, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין של BigQuery (roles/bigquery.admin) בפרויקט. להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

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

ההרשאות הנדרשות

כדי ליצור העברה, צריך את ההרשאות הבאות:

  • bigquery.transfers.update במשתמש
  • bigquery.datasets.get במערך נתוני היעד
  • bigquery.datasets.update במערך נתוני היעד

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

דרישות מוקדמות ל-BigQuery

סוגי חשבונות Stripe

מחבר Stripe תומך גם בחשבונות פלטפורמה של Stripe וגם בחשבונות מחוברים של Stripe. מידע נוסף זמין במאמר סוגי חשבונות ב-Connect.

קישור לחשבונות בפלטפורמות

כדי להפעיל העברת נתונים ב-Stripe רק מחשבון פלטפורמה אחד, צריך לבצע את הפעולות הבאות כשמגדירים את העברת הנתונים:

  • בשדה Account Id (מספר החשבון), מזינים את מספר החשבון בפלטפורמה.
  • בשדה Secret/API Key (מפתח סודי או מפתח API), מזינים את המפתח הסודי או המוגבל של חשבון הפלטפורמה.
  • בשדה SyncAllConnectedAccounts, בוחרים באפשרות False.

כדי להפעיל העברת נתונים של Stripe לכמה חשבונות, למשל לחשבון פלטפורמה שמקושר לחשבונות מקושרים, צריך לבצע את הפעולות הבאות כשמגדירים את העברת הנתונים:

  • בשדה Account Id (מספר החשבון), מזינים את מספר החשבון בפלטפורמה.
  • בשדה Secret/API Key (מפתח סודי או מפתח API), מזינים את המפתח הסודי או המוגבל של חשבון הפלטפורמה.
  • בשדה SyncAllConnectedAccounts, בוחרים באפשרות True.

קישור לחשבונות מקושרים

חשבונות מקושרים הם חשבונות Stripe שמקושרים ל-Stripe באמצעות Stripe Connect.

כדי להפעיל העברת נתונים של Stripe מחשבון מקושר, צריך לבצע את הפעולות הבאות כשמגדירים את העברת הנתונים:

  • בשדה מספר החשבון, מזינים את מספר החשבון בפלטפורמה של החשבון המקושר.
  • בשדה Secret/API Key (סוד/מפתח API), מזינים את הסוד או את המפתח המוגבל של חשבון הפלטפורמה שאליו מחובר החשבון המקושר.
  • בשדה SyncAllConnectedAccounts, בוחרים באפשרות False.

הגדרת העברת נתונים מ-Stripe

כדי להוסיף נתונים מ-Stripe ל-BigQuery, צריך להגדיר העברה באחת מהדרכים הבאות:

המסוף

  1. עוברים לדף 'העברות נתונים' במסוף Google Cloud .

    מעבר אל "העברות נתונים"

  2. לוחצים על Create transfer (יצירת העברה).

  3. בקטע סוג המקור, בשדה מקור, בוחרים באפשרות Stripe.

  4. בקטע Data source details (פרטים של מקור הנתונים):

    • בשדה Platform/Connected Account ID (מזהה פלטפורמה או חשבון מקושר), מזינים את מספר חשבון Stripe. מידע נוסף זמין במאמר בנושא דרישות מוקדמות לשימוש ב-Stripe.
    • בשדה Stripe Secret Key (המפתח הסודי של Stripe), מזינים את מפתח ה-API של חשבון Stripe. מידע נוסף זמין במאמר בנושא דרישות מוקדמות לשימוש ב-Stripe.
    • בשדה תאריך התחלה, מזינים תאריך בפורמט YYYY-MM-DD. העברת הנתונים טוענת נתונים מ-Stripe החל מהתאריך הזה.
    • בוחרים באפשרות סנכרון כל החשבונות המקושרים כדי לסנכרן את כל החשבונות המקושרים.
    • בשדה Stripe objects to transfer (אובייקטים של Stripe להעברה), מזינים את השמות של האובייקטים של Stripe שרוצים להעביר או לוחצים על Browse (עיון) ובוחרים את האובייקטים שרוצים להעביר.
  5. בקטע הגדרות יעד, בשדה מערך נתונים, בוחרים את מערך הנתונים שיצרתם לאחסון הנתונים.

  6. בקטע שם הגדרת ההעברה, בשדה שם מוצג, מזינים שם להעברת הנתונים.

  7. בקטע Schedule options:

    • ברשימה Repeat frequency, בוחרים אפשרות כדי לציין באיזו תדירות תתבצע העברת הנתונים הזו. כדי לציין תדירות חזרה מותאמת אישית, בוחרים באפשרות בהתאמה אישית. אם בוחרים באפשרות על פי דרישה, ההעברה הזו תתבצע כשמפעילים אותה ידנית.
    • אם רלוונטי, בוחרים באפשרות התחלה מיידית או התחלה בשעה שנקבעה, ומזינים תאריך התחלה ומשך זמן הפעלה.
  8. אופציונלי: בקטע אפשרויות התראות, מבצעים את הפעולות הבאות:

    • כדי להפעיל התראות באימייל, לוחצים על המתג התראות באימייל. אחרי שמפעילים את האפשרות הזו, האדמין של ההעברה מקבל הודעת אימייל אם ההעברה נכשלת.
    • כדי להפעיל התראות על הרצת העברה ב-Pub/Sub להעברה הזו, לוחצים על המתג Pub/Sub notifications. אפשר לבחור את שם הנושא או ללחוץ על יצירת נושא כדי ליצור נושא.
  9. לוחצים על Save.

BQ

מזינים את הפקודה bq mk ומספקים את דגל יצירת ההעברה --transfer_config:

bq mk
    --transfer_config
    --project_id=PROJECT_ID
    --data_source=DATA_SOURCE
    --display_name=DISPLAY_NAME
    --target_dataset=DATASET
    --params='PARAMETERS'

כאשר:

  • PROJECT_ID (אופציונלי): מזהה הפרויקט ב- Google Cloud . אם לא מציינים את --project_id כדי לציין פרויקט מסוים, המערכת משתמשת בפרויקט ברירת המחדל.
  • DATA_SOURCE: מקור הנתונים – stripe.
  • DISPLAY_NAME: השם המוצג של הגדרת העברת הנתונים. שם ההעברה יכול להיות כל ערך שיעזור לכם לזהות את ההעברה אם תצטרכו לשנות אותה בהמשך.
  • DATASET: מערך הנתונים היעד להגדרת ההעברה.
  • PARAMETERS: הפרמטרים של הגדרת ההעברה שנוצרה בפורמט JSON. לדוגמה: --params='{"param":"param_value"}'. אלה הפרמטרים להעברת נתונים ב-Stripe:

    • assets: רשימה של אובייקטים של Stripe שייכללו בהעברה הזו.
    • connector.accountId: מזהה חשבון Stripe.
    • connector.secretKey: מפתח ה-API של חשבון Stripe.
    • connector.syncAllConnectedAccounts: מציינים true כדי לסנכרן את כל החשבונות המקושרים.
    • connector.startDate: צריך להזין תאריך בפורמט YYYY-MM-DD. העברת הנתונים טוענת נתונים מ-Stripe החל מהתאריך הזה.

לדוגמה, הפקודה הבאה יוצרת העברת נתונים של Stripe בפרויקט שמוגדר כברירת מחדל עם כל הפרמטרים הנדרשים:

  bq mk \
      --transfer_config \
      --target_dataset=mydataset \
      --data_source=stripe \
      --display_name='My Transfer' \
      --params= ' {
  "assets" : [ "Customers" , "Accounts", "BalanceSummaryReport"] ,
  "connector.accountId" : "acct_000000000000",
  "connector.secretKey" : "sk_test_000000000",
  "connector.syncAllConnectedAccounts" : "true",
  "connector.startDate": "2025-05-20"
  }'

API

משתמשים ב-‎projects.locations.transferConfigs.create method ומספקים מופע של TransferConfig resource.

כששומרים את הגדרות ההעברה, מחבר Stripe מפעיל באופן אוטומטי העברה בהתאם לאפשרות של לוח הזמנים שהגדרתם. בכל הפעלה של העברה, המחבר של Stripe מעביר את כל הנתונים הזמינים מ-Stripe אל BigQuery.

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

מיפוי סוגי נתונים

בטבלה הבאה מפורט מיפוי של סוגי נתונים ב-Stripe לסוגי הנתונים התואמים ב-BigQuery.

סוג הנתונים של Stripe סוג נתונים ב-BigQuery הערות
String STRING
Dictionary STRING כשמעלים אובייקט מקונן ל-BigQuery, הוא מומר לאובייקט שטוח. האובייקט המפושט הזה נשמר בטבלה כמחרוזת ליטרלית יחידה.
Integer INT64
Double DOUBLE
Float FLOAT
Decimal BIGNUMERIC
BigInt (long) BIGNUMERIC
Boolean BOOL
Datetime TIMESTAMP
Unix timestamp TIMESTAMP

אובייקטים עם תמיכה במסנן StartDate

אובייקטים של Stripe הבאים תומכים במסנן StartDate, שמאפשר לטעון נתונים שמבוססים על זמן:

  • חשבונות
  • ApplicationFees
  • BalanceTransactions
  • בעלי כרטיסים
  • חיובים
  • שוברים
  • לקוחות
  • מחלוקות
  • EarlyFraudWarnings
  • אירועים
  • FileLinks
  • קבצים
  • InvoiceItems
  • חשבוניות
  • IssuingCards
  • IssuingDisputes
  • PaymentIntent
  • תשלומים
  • תוכניות
  • מחירים
  • מוצרים
  • PromotionCodes
  • החזרים כספיים
  • ביקורות
  • ShippingRates
  • מינויים
  • TaxRates
  • TopUps
  • העברות
  • ValueListItems
  • ValueLists

פתרון בעיות בהגדרת ההעברה

אם נתקלתם בבעיות בהגדרת העברת הנתונים, כדאי לעיין במאמר בעיות בהעברה ב-Stripe.

תמחור

העברת נתונים מ-Stripe ל-BigQuery לא כרוכה בתשלום בזמן שהתכונה הזו נמצאת בגרסת Preview.

המאמרים הבאים