יש הסבר כללי על השימוש ב-API של כספית כאן:
https://www.caspit.biz/%d7%94-api-%d7%a9%d7%9c-%d7%9b%d7%a1%d7%a4%d7%99%d7%aa/
פירוט של ה END POINTS נמצא כאן: https://app.caspit.biz/apihelp
ה-API שרלוונטי ליצירת הוראות קבע הוא זה:
https://app.caspit.biz/ApiHelp/Api/POST-api-v1-PreAuthorizedDebits_token_inCaseOfErrorReturnHttpCode
הנה הסבר קצר על מנגנון חיוב כרטיסי האשראי בכספית:
המנגנון מסתמך על כך שבכספית נשמר אסימון יחודי (ממומש כ-GUID) שבאמצעותו כספית פונה לזד קרדיט, ספק שירותי הסליקה, ומחייבת את הלקוח מדי חודש.
כאשר מקימים ה"ק ידנית אז מתבצע תהליך בן שני שלבים:
- הקמת הלקוח בכספית.
בשלב זה מזינים את פרטי הלקוח (שם העסק, ח.פ. וכו') ואת פרטי כ"א (מספר הכרטיס, תוקף, CVV, ת"ז).
כספית מייצרת אסימון ושומרת אותו. מספר הכרטיס המלא לא נשמר בכספית.

2. מקימים ה"ק.
ה"ק מתבססת על תבנית שנראית כמו חשבונית ובה מפרטים את החיוב.
בכל חודש כספית משתמשת בתבנית בכדי לייצר את החשבונית החודשית.
בנוסף מזינים את מספר החיובים, התכיפות (חודשית, רבעונית, וכו'),
תאריך ההתחלה (שיכול להיות גם בעבר ואז כספית תחייב את החיובים החסרים מייד בהתחלת העבודה, תאריך הסיום מחושב מיום ההתחלה + מספר החיובים X תכיפות),
סטטוס (פעיל=כספית תחייב או לא פעיל=כספית לא תחייב),
סכום החיוב החודשי מחושב מן התבנית.
ה-GUI (גישה למסך דרך הכנסות והוצאות, הוראת קבע) נראה כך:

סדר הפעולות הזה מועתק גם ל-API.
- עליך להקים את הלקוח בכספית .
https://app.caspit.biz/ApiHelp/Api/POST-api-v1-Contacts_token_inCaseOfErrorReturnHttpCode
אתה יכול לשלוח את מספר כרטיס האשראי המלא (16 ספרות, שדה CCNumber) ואז כספית תיצור את האסימון, או שאתה יכול לשלוח את האסימון בלבד (שדה CCNumberToken).
אם אתה שולח את האסימון חובה להקים אותו מול המסוף (= הרשומה של בראשית במערכת של זד קרדיט) שבו משתמשת כספית משום שהאסימון הוא יחודי למסוף.
לא ניתן להשתמש באסימון שהוקם מול מסוף X ולחייב באמצעותו במסוף Y.
- הקמה של הוראת הקבע.
אתה שולח את ה-ID של הלקוח שקיבלת בצעד מספר 1, ואת פרטי התבנית (שזהה לחשבונית החודשית שאתה רוצה להפיק, בשדה Document).
https://app.caspit.biz/ApiHelp/Api/POST-api-v1-PreAuthorizedDebits_token_inCaseOfErrorReturnHttpCode
מושגי יסוד
TrxCodeNumber = סיווג של המסמך. 3-מכירות הוא הסטנדרט. מציע לא לשחק עם זה כרגע.
שורות החשבונית (DocumentLines):
אפשר לקשר את שורות החשבונית עם המלאי/פריטים דרך השדה ProductId.לא חובה. אתה יכול להתחיל בלי זה (לא לשלוח את השדה או לשלוח NULL) עד שתכיר את המערכת.
הנה שורת חשבונית פשוטה (המטבע יהיה ₪):
"DocumentLines": [
{
"Number": 1,
"ProductName": "תא שירותים בסיסי",
"Details": "תא שירותים בסיסי כולל שירות ריקון דו-שבועי",
"UnitPrice": 240.67,
"Qty": 1,
"ChargeVAT": true // חובה לציין שיש לגבות מעמ, אחרת כספית לא תגבה מעמ
}
]
NextDocument
ה"ק הנפוצה ביותר מחייבת את הלקוח ויוצרת חש/קבלה מתאימה.
אבל כספית יכולה ליצור כל מיני מסמכים , כמו: לא לחייב את הלקוח וליצור חש/עסקה, או לחייב את הלקוח אבל ליצור רק קבלה, ועוד.
דוגמאות:
POST /api/v1/PreAuthorizedDebits HTTP/1.1
Host: localhost:44310
Caspit-Token: 859D7175136F169CF7C9FB5B3E33DAD94A84AA81AE3DC9D6
Content-Type: application/json
Content-Length: 1833
{
"ContactId": "494b281e-e1ac-42ab-8e4b-7c518de1ee22",
"Description": "קורס ציור אקריליק",
"Comments": "דוגמה ליצירת הוראת קבע מ-API",
"Document": {
"Date": "2026-06-22T00:00:00",
"Details": "דוגמה ליצירת תבנית מה-API",
"Comments": "תודה על שבחרת בנו.",
"DocumentLines": [
{
"Number": 1,
"ProductName": "פריט 100",
"Details": " ",
"UnitPrice": 123.56,
"Qty": 1,
"ChargeVAT": true
},
{
"Number": 2,
"ProductName": "פריט 101",
"Details": "כולל חפירה ודיפון",
"UnitPrice": 637.8290,
"Qty": 2.400,
"ChargeVAT": true
}
],
"TrxCodeNumber": 3
},
"Status": 1,
"ChargePeriod": 1,
"DateStart": "2026-06-30T10:35:33",
"NumOfCharges": 15,
"NextDocument": 5,
"NextDocumentTrxCodeId": 3
}
והנה ה"ק שנוצרה בכספית:

דוגמה מורכבת יותר
POST /api/v1/PreAuthorizedDebits HTTP/1.1
Host: localhost:44310
Caspit-Token: 293DCE7342E65FA8EE9AF01E64816A974E2F1D3F55D27977
Content-Type: application/json
Content-Length: 2188
{
"ContactId": "c3258539-49cf-400a-9eef-6319aa656117",
"Description": "קורס ציור אקריליק",
"Comments": "דוגמה ליצירת הוראת קבע מ-API",
"Document": {
"Date": "2026-05-24T00:00:00",
"TrxTypeId": 51, //51=תבנית של הוראת קבע
"Details": "דוגמה ליצירת תבנית מה-API",
"Comments": "תודה על שבחרת בנו.",
"Rebate": 0.15,
"DocumentLines": [
{
"Number": 1,
"ProductId": "78108d15-d544-4137-8451-6c080d0a2c2f",
"ProductCatalogNumber": null,
"ProductName": "פריט $",
"Details": " ",
"UnitPrice": 0.4237,
"Qty": 1.0000,
"CurrencySymbol": "$",
"Rate": 3.7930,
"Rebate": 0.0000,
"ChargeVAT": true
},
{
"Number": 2,
"ProductId": "0b0c7f50-49ae-47db-a358-0502121e0c16",
"ProductCatalogNumber": "101010",
"ProductName": "פריט 100",
"Details": " מק\"ט: 101010 ",
"UnitPrice": 1.6949,
"Qty": 1.0000,
"CurrencySymbol": "₪",
"Rate": 1.0000,
"Rebate": 0.0000,
"ChargeVAT": true
}
],
"TrxCodeNumber": 3 //3 =מכירות
},
//1=Active, 0=Not Active
"Status": 1,
/*
שבועי = 999,
חודשי = 1,
דו_חודשי = 2,
תלת_חודשי = 3,
חצי_שנתי = 6,
שנתי = 12
*/
"ChargePeriod": 1,
"DateStart": "2026-06-30T10:35:33",
"NumOfCharges": 15,
/*
חש_קבלה = 0,
קבלה = 2,
קבלה_לתרומה = 3,
חש_עסקה = 4,
חשבונית = 5
*/
"NextDocument": 0, //איזה מסמך ליצור לאחר החיוב
"NextDocumentTrxCodeId": 3 //3 =מכירות
}
אתה גם יכול לשלוף את ה"ק הקיימות בח-ן הדמו ולהשוות ל-GUI בכדי להבין את המיפוי של ה-API.
https://app.caspit.biz/ApiHelp/Api/GET-api-v1-PreAuthorizedDebits_token_page
