סקיל ישראלי ל-Claude · כספים ומסים

תזמור תשלומים ישראלי

בונים שכבת ניתוב אחת מעל כמה שערי תשלום ישראליים, עם נפילה בטוחה בין שערים

מאתskills-il כוכבים בגיטהאב35 סוגסקיל רישיוןMIT עדכון אחרון במאגר14.09.2026 בדיקת התקנהעבדה בבדיקה אוטומטית, 30.09.2026

מה זה תזמור תשלומים ישראלי?

הסקיל מלמד איך לבנות שכבת תזמור אחת מעל כמה שערי תשלום ישראליים, כדי שאם שער אחד נופל אפשר לעבור לשני בלי לשכתב את כל הקוד. הוא משווה בין שישה ספקים (Cardcom, Tranzila, PayMe, Meshulam, iCredit, פלאקארד) לפי תשלומים, ביט, וטוקניזציה, ומסביר בפירוש שהוא לא נוקב בעמלות כי אלה נקבעות בחוזה נפרד לכל בית עסק. הדגש המרכזי הוא על תוצאה שלישית, לא ידוע, שקורה כשקריאה עושה timeout, כדי שלא תחייבו לקוח פעמיים.

עסק ישראלי שגדל לרוב לא נשאר עם שער תשלום אחד. הוא רוצה לתמוך בתשלומים, בביט, ובגיבוי אם שער נופל. הבעיה היא שלכל שער פורמט API שונה לגמרי, Cardcom משתמשת ב-JSON, טרנזילה ב-form-encoded במשטח הישן ובJSON בחדש, ומשולם ב-multipart. סוכן שמנסה לבנות שכבת תזמור לבד נוטה להחיל פורמט של שער אחד על אחר, או להתייחס לתשובת 200 כהצלחה בלי לבדוק את גוף התשובה, כשכל השערים מחזירים 200 גם כשהעסקה נכשלה.

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

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

למי זה מתאים

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

מה הוא עושה

מטריצת השוואה בין שישה שערים

Cardcom, Tranzila, PayMe, Meshulam, iCredit ופלאקארד, לפי פורמט API, תשלומים, ביט, טוקניזציה ויחידת הסכום, עם סימון מפורש איפה אין תיעוד ציבורי.

הודעה כנה על עמלות

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

תוצאה שלישית לחיוב, לא רק הצלחה או כישלון

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

מפתח אידמפוטנטיות ממופה נכון לכל שער

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

מטריצת ביטול, זיכוי והחזר חלקי

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

סקריפט השוואה שמסרב לנחש

compare_gateways.py מדפיס יכולות מתועדות בלבד וללא הערכת עלות, כדי לא להוביל להחלטה על בסיס מספרים שאף ספק לא אישר.

דוגמאות שימוש

מה כותבים ל-Claude אחרי ההתקנה, ומה מקבלים.

בניית שכבת תזמור עם גיבוי

מה לכתוב
תשתמש בסקיל israeli-payment-orchestrator ותעצב לי שכבת תשלום שמנתבת ל-Cardcom כשער ראשי ועוברת לטרנזילה רק על כשל חיבור שאפשר להוכיח, לא על timeout.

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

בדיקה אם כדאי להוסיף שער בשביל ביט

מה לכתוב
אנחנו עובדים עם טרנזילה ורוצים להוסיף PayMe רק כדי לקבל ביט, זה הגיוני?

מה מקבלים: תשובה שמסבירה שטרנזילה כבר תומכת בביט דרך API ייעודי, ושכדאי קודם לבדוק אם ביט מופעל במסוף עצמו לפני הוספת שער שלם.

השוואת עלויות לנפח גבוה

מה לכתוב
איזה שער הכי זול ל-500 עסקאות ביום בממוצע 200 שקל?

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

טיפול בטיימאאוט בלי חיוב כפול

מה לכתוב
קריאת החיוב שלנו עשתה timeout מול השער, מה עושים לפני שמנסים שוב?

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

מה צריך לפני שמתחילים

  • חשבון פעיל בלפחות שער תשלום ישראלי אחד, ורצוי בשניים לצורך fallback אמיתי
  • שרת שיודע לשמור מצב עסקה זמני לצורך בירור אחרי timeout
  • Python להרצת סקריפט ההשוואה המצורף
  • לכל שער ספציפי מומלץ להתקין גם את הסקיל הייעודי שלו, כמו pelecard-payment-gateway

אין עדיין Claude Code? במדריך הזה יש התקנה צעד אחרי צעד.

מדריך התקנה

איך מתקינים את תזמור תשלומים ישראלי.

יש 3 דרכים, ומספיקה אחת מהן. הראשונה הכי פשוטה, בלי קוד בכלל.

1

הכי פשוט: באפליקציה של Claude, בלי שום קוד

מתאים ל-Claude במחשב ובדפדפן. לוקח דקה, ועושים את זה פעם אחת.

  1. מורידים את הסקילהורדת israeli-payment-orchestrator.zip (51 KB)לא פותחים את הקובץ, מעלים אותו כמו שהוא.
  2. מדליקים פעם אחת את היכולתב-Claude נכנסים ל-Settings, ואז Capabilities, ומדליקים את Code execution and file creation.
  3. מעלים את הקובץנכנסים ל-Customize, ואז Skills, לוחצים על הפלוס, בוחרים Create skill ואז Upload a skill, ובוחרים את הקובץ שהורדתם.
  4. זהו, עובדיםמבקשים מ-Claude את המשימה במילים רגילות, והוא משתמש בסקיל לבד כשהוא רלוונטי.
2

ב-Claude Code: מדביקים הודעה אחת

פותחים שיחה חדשה ב-Claude Code, מעתיקים את ההודעה ומדביקים. כש-Claude מבקש אישור להריץ, לוחצים Allow.

ההודעה להדבקה
תתקין לי בבקשה את הסקיל israeli-payment-orchestrator ממאגר skills-il/tax-and-finance לתיקיית הסקילים שלי. תריץ את הפקודה הזו בדיוק:

D="$(mktemp -d)" && git clone --depth 1 -q https://github.com/skills-il/tax-and-finance "$D/repo" && mkdir -p ~/.claude/skills && cp -R "$D/repo/israeli-payment-orchestrator" ~/.claude/skills/ && rm -rf "$D" && echo "הותקן ✓"
3

בטרמינל, ידנית

למי שמעדיף להריץ בעצמו. מעתיקים לטרמינל ומריצים.

פקודות לטרמינל
D="$(mktemp -d)" && git clone --depth 1 -q https://github.com/skills-il/tax-and-finance "$D/repo" && mkdir -p ~/.claude/skills && cp -R "$D/repo/israeli-payment-orchestrator" ~/.claude/skills/ && rm -rf "$D" && echo "הותקן ✓"
אופציה ב, CLI רשמי, דורש Node.js 20 ומעלה: npx skills-il add skills-il/tax-and-finance@v1.3.1-israeli-payment-orchestrator --skill israeli-payment-orchestrator -a claude-code -y -g
אחרי ההתקנה

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

איך יודעים שזה עבד
  • מריצים ls ~/.claude/skills/israeli-payment-orchestrator ומוודאים שקובץ SKILL.md קיים
  • פותחים שיחה חדשה ומבקשים את מטריצת ההשוואה בין השערים בלי להריץ חיוב אמיתי
  • בודקים שהתשובה מבחינה בין timeout לכישלון חיבור לפני שממשיכים לבנות לוגיקת fallback
עדכון

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

הסרה
פקודת הסרה
rm -rf ~/.claude/skills/israeli-payment-orchestrator

איך משתמשים ביום יום

  1. מבקשים מהסוכן לפרט קודם את היכולות הידועות של השערים הרלוונטיים, ולא לקבוע דירוג לפי עלות שלא פורסמה
  2. לפני שמוסיפים שער fallback מוודאים שהוא אומת לגבי יחידת הכסף ולגבי שדה מפתח האידמפוטנטיות שלו
  3. כשקריאת חיוב עושה timeout, מבקשים מהסוכן לברר קודם ולא לנסות לחייב שוב באופן אוטומטי
  4. לתמיכה בביט או בתשלומים, שואלים קודם אם השער הקיים כבר תומך בהם לפני שמוסיפים שער נוסף

טיפים שימושיים

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

תקלות נפוצות

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

שאלות ותשובות

הסקיל מגיד לי איזה שער הכי זול?
לא, ובכוונה. אף אחד מששת השערים לא מפרסם מחירון, ועמלת הסליקה נקבעת בחוזה נפרד לפי נפח, ענף ופרופיל charge-back.
אפשר להשתמש בזה בלי הסקילים הייעודיים של כל שער?
אפשר להבין את עקרונות התזמור, אבל לשמות שדות מדויקים ולקודי שגיאה כדאי להתקין גם את הסקיל הייעודי, למשל pelecard-payment-gateway.
טוקן שמור עובר בין שערים אם שער אחד נופל?
לא. טוקן של שער אחד קנייני לו בלבד, ולכן חיוב מחזורי או חיוב על טוקן שמור מקובע לשער שבו הוא נוצר, לא לרשימת ה-fallback.
מתי כדאי להוסיף שער נוסף רק בשביל ביט?
כמעט אף פעם. רוב השערים הגדולים כבר תומכים בביט, והבעיה השכיחה היא שביט לא מופעל במסוף עצמו, לא שהשער לא תומך בו.

קרדיט ומקור. תזמור תשלומים ישראלי נכתב על ידי skills-il ונמצא ב-skills-il/tax-and-finance ברישיון MIT. skills-il הוא פרויקט קוד פתוח ישראלי של סקילים ל-AI, ואפשר למצוא את כל הסקילים שלהם גם ב-agentskills.co.il. את העמוד כתב קורן בן עזרא אחרי בדיקה של המאגר ושל פקודות ההתקנה (30.09.2026). מאגרים מתעדכנים, ולכן אם משהו השתנה, המאגר הוא המקור הקובע.

נתקעתם בהתקנה?

כתבו לי בוואטסאפ, אני קורא הכל ועונה.