ניתוח אוטומטי: זוהו 4 גורמי סיכון (הרצת סקריפטים, גישה למערכת קבצים, גישה לרשת, גישה למשתני סביבה). הרשאות: 7/100, טיפול בנתונים: 85/100.
התאמת בנק ידנית היא אחת המשימות הגוזלות הכי הרבה זמן בהנהלת חשבונות. בעלי עסקים ורואי חשבון מבלים שעות בהשוואת דפי בנק לחשבוניות, חיפוש אחר פערים ותיעוד אי-התאמות. בישראל, כשמנהלים מספר בנקים וכרטיסי אשראי, המורכבות גוברת עוד יותר.
יוצר: @skills-il
אוטומציה של התאמת בנק לבנקים ישראליים, כולל זיהוי פערים והפקת דוחות התאמה
npx skills-il add skills-il/accounting --skill israeli-bank-reconciliationאוטומציה של תהליך התאמת עסקאות בנק ישראליות מול רשומות הנהלת החשבונות שלך. מיומנות זו משתמשת בספריית הקוד הפתוח israeli-bank-scrapers לשליפת עסקאות ומספקת זרימת עבודה מובנית להתאמה, זיהוי פערים והפקת דוחות.
התקן את התלויות הנדרשות לסריקת בנקים ועיבוד נתונים.
npm init -y
npm install israeli-bank-scrapers csv-parse csv-stringify dayjsאם אתה מתכנן לייבא קבצי OFX במקום סריקה, התקן גם:
npm install ofx-jsלעיון, ספריית הסריקה המרכזית מתוחזקת כאן: https://github.com/eshaham/israeli-bank-scrapers
למשתמשים המעוניינים במעקב תקציבי אוטומטי לצד התאמה, מומלץ לבדוק את Caspion: https://github.com/brafdlog/caspion
צור קובץ הגדרות לחיבורי הבנק שלך. לעולם אל תכתוב פרטי גישה ישירות בסקריפטים.
צור קובץ בשם bank-config.json במבנה הבא:
{
"accounts": [
{
"id": "main-business",
"bank": "hapoalim",
"credentials": {
"userCode": "${BANK_USER_CODE}",
"password": "${BANK_PASSWORD}"
}
}
]
}מזהי בנקים נתמכים:
hapoalim - בנק הפועליםleumi - בנק לאומיdiscount - בנק דיסקונטmizrahi - מזרחי טפחותotsar-hahayal - אוצר החיילmercantile - מרכנתיל דיסקונטmax - מקס (לשעבר לאומי קארד)visa-cal - ויזה כאלisracard - ישראכרטשמור את פרטי הגישה האמיתיים במשתני סביבה, לא בקובץ ההגדרות.
צור סקריפט סריקה ששולף עסקאות לטווח תאריכים הניתן להגדרה.
const { createScraper } = require('israeli-bank-scrapers');
async function fetchTransactions(bankId, credentials, startDate) {
const scraper = createScraper({
companyId: bankId,
startDate: startDate,
combineInstallments: false,
showBrowser: false
});
const result = await scraper.scrape(credentials);
if (!result.success) {
throw new Error(`הסריקה נכשלה: ${result.errorType} - ${result.errorMessage}`);
}
return result.accounts.flatMap(account =>
account.txns.map(txn => ({
date: txn.date,
amount: txn.chargedAmount,
description: txn.description,
memo: txn.memo || '',
reference: txn.identifier || '',
status: txn.status,
accountNumber: account.accountNumber
}))
);
}טען את החשבוניות והקבלות שלך מ-CSV, או התחבר למערכת הנהלת החשבונות שלך. ההתאמה מצפה לרשומות בפורמט מנורמל.
פורמט רשומת חשבונאות צפוי:
| שדה | סוג | תיאור |
|---|---|---|
date |
YYYY-MM-DD |
תאריך עסקה |
amount |
number |
סכום בש"ח (שלילי להוצאות) |
reference |
string |
מספר חשבונית/קבלה |
vendor |
string |
שם הספק או מקבל התשלום |
category |
string |
קטגוריה חשבונאית |
בעת ייבוא CSV, טפל בפורמטים ישראליים:
הגדר כללים להתאמת עסקאות אוטומטית. מנוע ההתאמה תומך באסטרטגיות מרובות המופעלות לפי סדר עדיפות.
התאמה מדויקת: התאמה לפי מספר אסמכתא וסכום מדויק.
התאמה מקורבת: התאמה לפי טווח תאריכים (+/- 3 ימים), סטיית סכום (עד 1 ש"ח), ודמיון בשם הספק.
התאמת דפוסים: הגדר ביטויים רגולריים לעסקאות חוזרות (שכירות, חשבונות שירותים, מנויים).
const matchingRules = [
{
name: 'exact-reference',
priority: 1,
match: (bankTxn, accRecord) =>
bankTxn.reference === accRecord.reference &&
Math.abs(bankTxn.amount - accRecord.amount) < 0.01
},
{
name: 'amount-date-fuzzy',
priority: 2,
match: (bankTxn, accRecord) => {
const dateDiff = Math.abs(
dayjs(bankTxn.date).diff(dayjs(accRecord.date), 'day')
);
const amountDiff = Math.abs(bankTxn.amount - accRecord.amount);
return dateDiff <= 3 && amountDiff <= 1.0;
}
},
{
name: 'recurring-pattern',
priority: 3,
patterns: [
{ regex: /חשמל|electric/i, category: 'utilities' },
{ regex: /ארנונה|municipal/i, category: 'municipal-tax' },
{ regex: /ביטוח|insurance/i, category: 'insurance' }
]
}
];בצע את תהליך ההתאמה וסווג את התוצאות לשלוש קטגוריות:
בנוסף, סמן עסקאות חשודות:
הפק דוח מובנה המציג את סטטוס ההתאמה.
הדוח צריך לכלול:
פורמטי פלט:
המשתמש אומר: "התאם את חשבון העסק שלי בבנק הפועלים לינואר 2026 מול הייצוא מ-QuickBooks."
פעולות:
israeli-bank-scrapersתוצאה: דוח התאמה המציג שיעור התאמה של 98%. 8 הרשומות הלא מותאמות בבנק הן משיכות מזומן מכספומט ללא קבלות. 3 הרשומות החשבונאיות הלא מותאמות הן צ'קים שטרם נפרעו. הדוח מדגיש חיוב כפול חשוד של 2,450 ש"ח אצל אותו ספק באותו תאריך.
המשתמש אומר: "אני צריך להתאים גם את חשבון העו"ש שלי בלאומי וגם את כרטיס האשראי מקס מול מערכת הנהלת החשבונות שלי לרבעון 4 של 2025."
פעולות:
תוצאה: דוח התאמה משולב המכסה את שני החשבונות. עו"ש לאומי מציג שיעור התאמה של 97% עם 12 פריטים לא מותאמים. כרטיס אשראי מקס מציג שיעור התאמה של 91%, כאשר רוב הפריטים הלא מותאמים הם פיצולי תשלומים. הדוח כולל המלצה לפצל 4 רשומות חשבונאיות כדי להתאים לדפוס התשלומים. הפרש התאמה כולל: 127.50 ש"ח, שמקורו בהפרש עיגול של המרת מטבע חוץ.
המשתמש אומר: "אני צריך למצוא את כל עסקאות הבנק מ-2025 שאין להן חשבוניות תואמות לפני הגשת דוח המס השנתי."
פעולות:
תוצאה: נמצאו 34 עסקאות הוצאה בסך 18,200 ש"ח ללא חשבוניות תואמות. הפערים הגדולים ביותר הם: ציוד משרדי מספק שחייב במזומן (6 עסקאות, 3,400 ש"ח), מנויי תוכנה שחויבו בדולר והומרו (8 עסקאות, 5,100 ש"ח), וחיובי חניה/כבישי אגרה (20 עסקאות קטנות, 9,700 ש"ח). מסופקת רשימה מתועדפת לרואה החשבון לאיתור או יצירת חשבוניות חסרות.
israeli-bank-scrapers: https://github.com/eshaham/israeli-bank-scrapers - יש לעיין בעת הוספת תמיכה בסוגי בנקים חדשים או פתרון בעיות בהגדרת הסורק.סיבה: פרטי הגישה לבנק שגויים, פגי תוקף, או שהחשבון דורש איפוס סיסמה. חלק מהבנקים הישראליים אוכפים החלפת סיסמה תקופתית. פתרון: אמת את פרטי הגישה על ידי כניסה ידנית לאתר הבנק. אם הסיסמה שונתה לאחרונה, עדכן את משתני הסביבה. לבנקים הדורשים OTP או אימות דו-שלבי, ודא שהגדרות הסורק כוללות את השדות הנוספים הנדרשים.
סיבה: טווח התאריכים עשוי להיות צר מדי, ייתכן שאין פעילות בחשבון, או שסורק הבנק דורש פורמט תאריך שונה.
פתרון: הרחב את טווח התאריכים וודא ש-startDate הוא אובייקט Date תקף ב-JavaScript. בדוק שיש עסקאות בחשבון הבנק בתקופה המצוינת על ידי כניסה לאתר הבנק. חלק מהסורקים מחזירים עסקאות מתאריך ההתחלה ועד היום, לא עד תאריך סיום מוגדר.
סיבה: תוכנות הנהלת חשבונות ישראליות לעתים קרובות מייצאות CSV בקידוד Windows-1255 (עברית) או כוללות סמני BOM שמפריעים למפענחי UTF-8.
פתרון: המר את הקובץ ל-UTF-8 לפני הפענוח: iconv -f WINDOWS-1255 -t UTF-8 input.csv > output.csv. לחלופין, ציין את הקידוד באפשרויות מפענח ה-CSV. כמו כן, בדוק אם יש מפרידי נקודה-פסיק (נפוץ בייצוא Excel ישראלי) במקום פסיקים.
סיבה: הפרשי עיגול בהמרת מטבע, חישובי מע"מ, או פיצול תשלומים עלולים לגרום לפערים קטנים בין סכומי הבנק לרשומות החשבונאיות. פתרון: הגדר את סף סטיית ההתאמה. לסכומי שקלים, סטייה של 1.00 ש"ח מטפלת ברוב מקרי העיגול. לעסקאות הכוללות המרת מטבע חוץ, הגדל את הסטייה ל-5.00 ש"ח. אם הפערים שיטתיים, בדוק האם מע"מ (17% בישראל) כלול בסכומי הבנק אך מופרד ברשומות החשבונאיות.
סוכנים נתמכים
תתאים את דף הבנק של לאומי לחודש פברואר 2026 מול הרשומות החשבונאיות שלי. תזהה עסקאות שלא הותאמו.
תבדוק את כל חשבונות הבנק שלי ותמצא חשבוניות שלא נרשמו בהנהלת החשבונות.
תייצר דוח התאמת בנק מסכם עם עסקאות מותאמות, לא מותאמות וחשודות.
ציון אמון
הסקיל יכול להריץ סקריפטים ופקודות על המערכת שלך.
נמצאו 1 התאמות בקוד
הסקיל יכול לקרוא ולכתוב קבצים במערכת שלך.
נמצאו 1 התאמות בקוד
הסקיל יכול לבצע בקשות רשת לשירותים חיצוניים.
נמצאו 1 התאמות בקוד
הסקיל יכול לגשת למשתני סביבה שעלולים להכיל סודות.
נמצאו 14 התאמות בקוד
ייבוא וייצוא נתונים בין תוכנת חשבשבת לפורמטים מודרניים כמו JSON, CSV ו-Excel, כולל המרת קידוד עברית והעברת נתונים למערכות ענן
בניית חשבוניות אלקטרוניות תואמות שע"ם עם מספרי הקצאה לפי דרישות רשות המסים
סריקה וניתוח קבלות וחשבוניות ישראליות עם חילוץ טקסט בעברית ואנגלית
רוצים לבנות סקיל משלכם? נסו את יוצר הסקילס · הגשת סקיל