שלב 1+2 - יצירת דף לתשלום & שליחת בקשה לקבלת פרטי עסקה (Iframe/ Redirect)
מתי להשתמש בפונקציות אלו?
מתכנתים המעוניינים להקים דף תשלום ללקוח לאחר בחירת מוצרים, או לשלוח דף לביצוע תרומה או הרשמה למנוי, יכולים להשתמש בפונקציה Create a new Iframe / Redirect page.
לאחר ביצוע העסקה, ניתן לקבל את פרטי העסקה באמצעות הפונקציה Get the result of an Iframe / Redirect deal.
דף התשלום נמצא לרוב לאחר שלב ה-checkout של בית העסק.
פעולות נפוצות בפונקציית יצירת דף תשלום.
הפונקציה מאפשרת להקים דף נחיתה שבו בית העסק יכול לבצע מגוון פעולות, כולל:
- חיוב רגיל
- עסקה מושהית עם תפיסת מסגרת
- חיוב ויצירת אסימון
- יצירת אסימון בלבד
- חיוב אסימון עם אימות 3DS (דורש מודל ממשק ישיר)
בנוסף, הפונקציה כוללת אפשרות להזין פרטים לצורך הפקת מסמכים, וכן מאפשרת פתיחת מסך לחיוב באמצעות מכשיר פיזי שמחובר למערכת.
חשוב לציין כי פעולות כגון שימוש באסימונים, הפקת מסמכים ועסקאות מושהות דורשות מודלים עסקיים כדי לפעול כראוי.
מודלים נחוצים
פרופיל נמוך - חיוני להפקת דף תשלום בAPI.
מסמכים - אפשרי להפקת מסמכים.
אסימונים - אפשרי יצירת אסימונים ועבודה עם אסימונים.
למפתחים - אתם יכולים להשתמש בPOSTMAN לבדיקות. בהתאם, אתם יכולים להוריד את כל הAPI של הממשק בבת אחת, בSwagger בכפתור שמודגם בתמונה:

להלן גם קישור להורדת Postman:
שלב ראשון - יצירת דף תשלום - Create a new Iframe \ Redirect page
להלן קישור לפונקציה בJSON.
שיטת בקשה- POST
Create a new Iframe \ Redirect page.
https://secure.cardcom.solutions/api/v11/LowProfile/Create
מקרא:
פרמטר אדום - חובה
פרמטר מודגש - מומלץ
פרמטר לא אדום ולא מודגש - אופציונלי
להלן הטבלת פרמטרים.
|
מספר |
שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
1 |
TerminalNumber |
1000 | המסוף שמבצע את הפעולה. יש לקבל פרמטר זה מבית העסק. - מסוף פנימי, לא שבא. |
2 |
ApiName |
Cardcomtest26 | שם משתמש ממשקים. יש לקבל פרמטר זה מבית העסק. |
3 |
Operation |
"ChargeOnly" - חיוב בלבד "ChargeAndCreateToken" - חיוב ויצירת אסימון "CreateTokenOnly" - יצירת אסימון בלבד "SuspendedDeal" - עסקה מושהית "Do3DSAndSubmit" - ניתן להעביר טוקן, ולבצע ישר עסקה 3DS (הלקוח חייב להיות נוכח להכנסת קוד אישור לעסקה) |
סוג הפעולה שמערכת אישורית זהב צריכה לבצע. שים לב, לפעולת יצירת אסימון ועסקה מושהית יש פרמטרים אופציונליים נוספים למטה . |
4 |
ReturnValue |
AA-1234 | ערך להעביר למערכת הסליקה אשר יוחזר ל WebHookUrl עד 250 תווים. (נהוג להעביר מספר הזמנה ממערכת הזמנות באתר). |
5 |
Amount |
100.50 | הסכום לחיוב, ניתן עד שני תווים לאחר הנקודה. |
| 6 | SuccessRedirectUrl | https://secure.cardcom.solutions/SuccessAndFailDealPage/Success.aspx |
הדף אליו יופנה מחזיק הכרטיס בסיום עסקה שהסתיימה בהצלחה. ניתן גם להגדיר באופן קבוע בהגדרות מערכת. * במידה ויש שימוש ב-IFRAME יש לדאוג שהקישור יהיה בקידומת https ולא ב-http * חובה כתובת חיצונית, לא localhost. |
7 |
FailedRedirectUrl |
https://secure.cardcom.solutions/SuccessAndFailDealPage/Fail.aspx |
הדף שאליו יופנה מחזיק הכרטיס בסיום עסקה שהסתיימה בכישלון. ניתן גם להגדיר באופן קבוע בהגדרות מערכת. * במידה ויש שימוש ב IFRAME יש לדאוג שהקישור יהיה בקידומת https ולא ב-http * חובה כתובת חיצונית, לא localhost. |
8 |
WebHookUrl |
https://webhook.site/#!/view/ec2e566f-ce64-4596-9f26-42bbe2a97a50
|
webhook דף נסתר (דף דיווח לקבלת פרטי עסקה). לאחר ביצוע העסקה השרת של קארדקום מדווח לשרת של בית העסק שהעסקה הצליחה.
6.בכדי לקבל דיווחים גם על עסקאות סירוב יש לסמן ב V את הפונקציה "תמיד בצע דיווח של עסקה" (בממשק קארדקום הגדרות -> 4.סליקה בפרופיל נמוך ->2.הגדרות כלליות). |
9 |
ProductName | הזמנה מספר C101G | שם המוצר שיוצג למשתמש, אורך מקסימלי של 50 תווים. |
10 |
Language | he - עברית (עיצוב 5 + 6) |
שפת הדף סליקה. ראה שפות נוספות : שפות לדף פרופיל נמוך |
11 |
ISOCoinId |
1 - שקל 2 - דולר לקודי מטבע נוספים - רשימת קודי מטבעות |
מטבע לחיוב העסקה. |
בתוך האובייקט של הפונקציה של Create a new Iframe \ Redirect page, יש attribute שבהם אפשר להגדיר ולערוך דברים נוספים בתוך הדף סליקה שנוצר.
ערכים של האובייקט UIDefinition (12).
פרמטר אדום - חובה
פרמטר מודגש - מומלץ
פרמטר לא אדום ולא מודגש - אופציונלי
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
| 1 | IsHideCardOwnerName | (boolean) false \ true | האם להסתיר את השדה של השם בעל כרטיס. |
| 2 | CardOwnerNameValue | "Daniel Test" | string - שם בעל כרטיס |
| 3 | CardOwnerIdValue | NULL | ת''ז. |
| 4 | IsHideCardOwnerPhone | (boolean) false \ true |
האם להסתיר את השדה של המספר טלפון.
|
| 5 | CardOwnerPhoneValue | "0522222222" | string - טלפון בעל הכרטיס |
| 6 | IsCardOwnerPhoneRequired | (boolean) false \ true | האם חייב מספר טלפון של בעל הכרטיס (במקרה ויש 3DS, זה יחייב מספר טלפון בלי קשר). |
| 7 | CardOwnerEmailValue | "test@t.com" | אימייל בעל הכרטיס. |
| 8 | IsHideCardOwnerEmail | (boolean) false \ true | האם להסתיר שדה אימייל. |
| 9 | IsCardOwnerEmailRequired | (boolean) false \ true | האם חייב אימייל של לקוח. |
| 10 | IsHideCardOwnerIdentityNumber | (boolean) false \ true | האם להסתיר שדה ת.ז. (רק במקרה ואין דרישה לת.ז) |
| 11 | IsHideCVV | (boolean) false \ true | האם להסתיר את שדה CVV, משמש למסופים של הוראת קבע שבהם אין חובה של CVV |
| 12 | CSSUrl |
https://www.site.co.il/mycss.css
|
הURL יוזרק לדף סליקה. אפשר להשתמש בפרמטר זה רק ברגע שיש אישור מקארדקום. נועד בעיקר לחברות אתרים. |
| 13 |
CustomFields מערך עם אובייקטים בתוכו. |
Id (integer) - 1 עד id 25.
Value (string) - "ערך לדוגמא" עד 50 תווים. |
שדות מותאמות אישית. מצוין אם רוצים להעביר מידע נוסף של עסקה הלאה לצורך דיווחים ולצורך איסוף מידע. Id - המספר המזהה של השדה מותאם אישית Value - הערך של השדה המותאם אישית זה מערך שבתוכו יש אובייקטים.
|
| 14 |
GooglePayBtnDesign (אובייקט עם פרמטרים בתוכו) |
ButtonColor (integer) - 0 \ 1 \ 2 ButtonType (integer) - מ-0 עד 7 ButtonLocale (integer) - מ -0 עד 30 ButtonWidth (string) - לדוגמא "120" ButtonHeight (string) - לדוגמא "180"
|
לעיצוב הפתור של גוגל פיי, ButtonColor - הצבע של הפתור גוגל פי. ButtonType - סוג כפתור ButtonLocale - לא פעיל ButtonWidth - רוחב ButtonHeight - אורך
עיצוב כפתור גוגל נעשה רק דרך העיצוב מותאם אישית.
|
ערכים של האובייקט AdvancedDefinition (13).
פרמטר אדום - חובה
פרמטר מודגש - מומלץ
פרמטר לא אדום ולא מודגש - אופציונלי
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
1 |
VirtualTerminal (אובייקט עם פרמטרים בתוכו)
|
IsEnable : true \ false IsOpenSum : true \ false ChargeOnSwipe : true \ false
|
IsEnable (true) - קריאת ה- API תקים מסך של מסוף וירטואלי עם שדות נוספים בשביל שהבית עסק יזין בעצמו את הפרטים של העסקה. ניתן להעביר מספר אישור של חברת האשראי.
IsOpenSum (true) - המחיר לתשלום יהיה פתוח. הבית עסק יוכל לבחור בעצמו כמה לחייב את הלקוח.
ChargeOnSwipe (true) - בעסקאות של פס מגנטי, כמעט ולא בשימוש.
|
| 2 | JValidateType | (integer) - 2 \ 5 |
איזו סוג פעולה לעשות במקרה של עסקה מושהית או יצירת אסימון בלבד. 2 - J2 האם לעשות בדיקת כרטיס בלבד. 5 - J5 האם לעשות תפיסת מסגרת עם הסכום המועבר. |
| 3 | IsAVSEnable | false \ true |
האם להציג שדות AVS למחזיק הכרטיס בדף תשלום. נועד לאבטחת מסוף מוגברת. דרוש תמיכה מצד חברות האשראי בפיצ'ר AVS - פיצ'ר לא בשימוש. |
| 4 | SapakMutav | (string) \ 1234 | מספר לקוח בעבודה ברב מוטב |
| 5 | CreditType |
1 - חיוב רגיל 6 - קרדיט בתשלומים
|
שים לב! 1. חברות האשראי מגבילות את מספר התשלומים למינימום 3. במקרה זה אנו מסדרים את מספר התשלומים למינימום 3 באופן אוטומטי. 2. חברות האשראי מגבילות את הסכום המינימלי לחיוב עסקאות קרדיט. יש לדאוג להעביר סכום מתאים. במקרה זה הלקוח יועבר לדף כישלון. |
| 6 | IsRefundDeal | true \ false | האם העסקה תהיה עסקת זיכוי? |
| 7 | ApiPassword | "kzFKfohEvL6AOF8aMEJz" | סיסמת API, מיועד לזיכוי וביטול עסקאות. |
| 8 | ISOCoinName | ILS \ USD \ EUR | המקביל לפרמטר ISOCoinId, בפרמטר הזה מקבלים את השם מטבע ולא את המספר מטבע. |
| 9 | MinNumOfPayments | 1 | מספר תשלומים מינימלי |
| 10 | MaxNumOfPayments | 12 | מספר תשלומים מקסימלי |
| 11 | SelectedNumOfPayments | 5 | כמות התשלומים שנבחרת בצורה אוטומטית |
| 12 | FirstPayment | 50 (integer) | בעסקת תשלומים שהמתכנת רוצה מראש להגדיר מספר תשלומים כאשר התשלום הראשון גבוה משאר התשלומים (לא נתמך בסוג עסקת קרדיט) |
| 13 | ConstPayment | (integer) |
התשלום קבוע , בתשלום ראשון + קבוע לדוגמא עסקה של 100 ש"ח (חובה להעביר DefaultNumOfPayments ). מספר תשלומים = 3 (DefaultNumOfPayments) תשלום ראשון = 50 (FirstPayment) תשלום קבוע = 25 (ConstPayment) [לא מוצג בדף התשלום בפועל אבל מבוצע בצד שרת בעסקה יש להסתיר את האלמנט של תצוגה של הפיצול תשלומים בדף] |
| 14 | Token | "4cf8e168-261e-4613-8d20-000332986b24" |
בשלב 1, במקרה ורוצים לעשות עסקה באמצעות טוקן שכבר נוצר, אבל רוצים שיהיה עליו 3DS, צריך להעביר את הטוקן בפרמטר. בהתאם יהיה צריך לעשות סוג אופרציה:Do3DSAndSubmit |
| 15 | CardExpirationYear | "2026" | שנת תוקף תפוגה של הכרטיס אשראי (4 תווים) בשימוש של Do3DSAndSubmit |
| 16 | CardExpirationMonth | "06" | החודש של התוקף תפוגה של הכרטיס אשראי (01-12) בשימוש של Do3DSAndSubmit |
| 17 | CardNumber | 4580000000000000 | מספר כרטיס אשראי בשימוש של Do3DSAndSubmit |
| 18 | CVV | 758 |
מיועד רק במקרה ויש את הבדיקת 3DS Do3DSAndSubmit
|
| 19 | ThreeDSecureState | "Auto" \ "Enabled" \ "Disabled" |
האם הטרנזקציה צריכה לעבור 3DS? Auto - זה יהיה אוטומטי לפי ההגדרות בקארדקום. Enabled - היא כן תעבור 3DS Disabled - היא לא תעבור 3DS. נועד לאנשים שרוצים לעשות מסכומים מסוים או פריטים ספציפיים מבלי להגדיר באתר של קארדקום. |
| 20 |
ShouldOpenPinpad OnPageLoad |
true \ false | במקרה של מכשיר פיזי, האם לפתוח את הדף חיוב של הכרטיס אשראי פיזי ישירות. |
| 21 | IsExternal | true \ false | פרמטר להעברה במקרה שבית עסק שעובד עם קארדקום סליקה בלבד , ללא PG של קארדקום , ורוצה לקבל לינק חיצוני לתשלום ב BIT . |
ערכים לחשבונית ויצירת כרטיס לקוח במקרה ויש מודל מסמכים - אובייקט Document (14).
פרמטר אדום - חובה
פרמטר מודגש - מומלץ
פרמטר לא אדום ולא מודגש - אופציונלי
יש לשים לב שסכום הפריטים למסמך שווה לסכום החיוב בעסקה
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
| 1 |
Document TypeToCreate |
"Auto" - אוטומטי, לפי מה שיש בהגדרות 3->4. "TaxInvoiceAndReceipt" – חשבונית מס וקבלה "TaxInvoiceAndReceiptRefund" – חשבונית זיכוי והחזר כספים "Receipt" – קבלה מלכ''ר "ReceiptRefund" – קבלה מלכ"ר זיכוי ( החזר כספים) "Quote" – הצעת מחיר "Order" – הזמנה "OrderConfirmation" – אישור הזמנה - מאתר "OrderConfirmationRefund" – זיכוי אישור הזמנה - מאתר "DeliveryNote" – תעודת משלוח "DeliveryNoteRefund" – תעודת החזרה "ProformaInvoice" – חשבון עסקה "DemandForPayment" – דרישה לתשלום "DemandForPaymentRefund" – ביטול דרישה לתשלום "ProformaDealInvoice" – חשבון קבלה פרופורמה "ProformaDealInvoiceRefund" –חשבון קבלה זיכוי "TaxInvoice" – חשבונית מס "ProformaInvoiceRefund" – זיכוי חשבון עסקה "TaxInvoiceRefund" – חשבונית מס זיכוי "ReceiptForTaxInvoice" – קבלה (לחשבונית) "DonationReceipt" – קבלה על תרומה "DonationReceiptRefund" – זיכוי קבלה תרומה (החזר כספים) "ReceiptForTaxInvoiceRefund" – החזר כספים לקוחות (קבלה זיכוי)
|
סוג המסמך להפקה. |
| 2 | Name | מר טסט | שם הלקוח. |
| 3 | TaxId | 040617640 | מספר ת.ז. או ח.פ חברה |
| 4 | israel@gmail.com | כתובת דואר הלקוח , שלשם ישלח המסמך. (ניתן לשרשר כמה מיילים באמצעות נקודה פסיק ; ) | |
| 5 | IsSendByEmail | true \ false | האם לשלוח מסמך בדואר אלקטרוני. |
| 6 | AddressLine1 | Saharov 22 | כתובת לקוח , שורה ראשונה |
| 7 | AddressLine2 | P.O. 1234 | כתובת לקוח, שורה שנייה |
| 8 | City | Reshin-Le-Zion | עיר |
| 9 | Mobile | 0549876543 | טלפון נייד (במודול SMS ישלח SMS לנייד זה) |
| 10 | Phone | 03-9619611 | טלפון קווי |
| 11 | Comments | דוגמא: אחריות של שנה מיום החשבונית (עד 250 תווים ) | הערות למסמך - יודפסו במסמך למטה |
| 12 | IsVatFree |
true = מע"מ 0 false = מע"מ 18 |
האם המסמך כולו הוא ללא מע"מ - מתאים ללקוח חו"ל |
| 13 | DepartmentId | 123 (int) |
קוד מחלקה להצגה בדוחות והעברה להנח"ש ראה הגדרת המחלקות במסוף : מיון מסמכים ושימוש במחלקות |
| 14 |
AdvancedDefinition אובייקט עם פרמטרים בתוכו. |
IsAutoCreateUpdateAccount (bool) - false - כל הלקוחות ירשמו על "לקוחות שונים". ------------------------------ AccountForeignKey (string) - לדוגמא 300 ------------------------------ SiteUniqueId (string) ------------------------------ AccountID (integer) - 123 ------------------------------ IsLoadInfoFromAccountID (boolean) - true \ false
|
IsAutoCreateUpdateAccount (bool) - האם ליצור ללקוח כרטיס לקוח במערכת.TaxId במידה ולא מועבר יתבצע איתור לפי מפתח זר ולאחר מכן לפי מזהה ייחודי אתר ואז לפי EMAIL לקוח. (הפרמטר הראשון שנמצע בשרת מוצלב ולא ממשיך לחפש עוד ) ------------------------------ AccountForeignKey (string) - מספר מפתח זר של הלקוח - פעיל רק אם יוצר ללקוח כרטיס לקוח. (מספר הנח"ש) ------------------------------ SiteUniqueId (string) - מזהה ייחודי לאתר - פרמטר אינפורמטיבי. (מזהה נוסף) ------------------------------ AccountID (integer) - 123 - מספר הלקוח במערכת אישורית זהב לשיוך המסמך ------------------------------ IsLoadInfoFromAccountID (boolean) - אם יש AccountID. אפשר לקחת מהכרטיס לקוח שמשויך למספר לקוח את הנתונים ולהכניס אותם למסמך. |
| 15 |
Products מערך עם אובייקטים בתוכו. |
ProductID (string) - ZZASA AASSA - 12 ------------------------------ Description (string) - קורס אינטרנטי ------------------------------ Quantity (integer) - 2 ------------------------------ UnitCost (integer) - 50.57 ------------------------------ TotalLineCost (integer) - 51 ------------------------------ IsVatFree (boolean) - true \ false |
ProductID (string) - קוד פריט , מק"ט , קוד מוצר - מומלץ להעביר לשם דוחות , ניתן לראות ב דוח פריטים במסמך במקרה של שני פריטים ניתן להפריד כך: InvoiceLines1.ProductID=AAA
InvoiceLines2.ProductID=BBB
------------------------------
Description (string) - תיאור המוצר
------------------------------
Quantity (integer) -
כמות הפריטים
בהעברה של כמות מעל 1 , יש להכפיל במחיר ולשלוח אמצעי תשלום מתאים. ------------------------------
UnitCost (integer) - מחיר יחידה.
-----------------------------TotalLineCost (integer)- מומלץ במקרה וכמות המוצרים הוא מספר לא שלם. זה יכול למנוע בעיות עיגול מחיר.
-----------------------------
IsVatFree (boolean) - האם המוצר הזה יהיה עם מע''מ או בלי מע''מ.
|
| 16 | ExternalId | (String) | מזהה מערכת חיצוני ברמת מסמך בלבד (לא נשמר ברמת כרטיס לקוח) |
| 17 | IsAllowEditDocument | (boolean) |
לאפשר ללקוח, או לבית העסקה (תלוי כמובן מי מכניס את הפרטי אשראי) לשנות חלק מהפרטים של המסמך - כגון שם, עיר, רחוב והלאה. במידה וכן, הפרטים לחשבונית יוצגו בתוך הדף תשלום לשינוי. |
| 18 | IsShowOnlyDocument | (boolean) |
האם להראות את הפרטי המסמך בלבד מבלי להפיק מסמך? במידה וכן, הפרטים של המסמך יוצגו במעמד העסקה, באותו דף. |
| 19 | Language | "he" \ "en" | שפת מסמך |
ערכים לאובייקט (15) UTM
פרמטר אדום - חובה
פרמטר מודגש - מומלץ
פרמטר לא אדום ולא מודגש - אופציונלי
| פרמטר | ערכים אפשריים לדוגמא | תיאור |
| Source | string or null לדוגמא facebook |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
| Medium | string or null לדוגמא medium |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
| Campaign | string or null לדוגמא campaignNAME |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
| Content | string or null לדוגמא content |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
| Term | string or null לדוגמא term |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
RESPONSE של Create a new Iframe \ Redirect page.
לאחר ששולחים POST לפונקציה זאת יתקבלו הערכים הבאים בRESPONSE:
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
| 1 | ResponseCode | 0 |
0 - הפעולה תקינה ,אחרת שגוי - שגיאת פיתוח. |
| 2 | Description | "העסקה בוצעה בהצלחה" | תיאור התשובה , במידה ומתקבל תשובה שונה, העסקה לא בוצעה בהצלחה. |
| 3 | LowProfileId | AA-BB-CC | קוד העסקה הייחודי |
| 4 | Url |
"https://secure.cardcom.solutions/EA/ LPC6/1000/17bdd03c-b8c2-48c4-b511-bcda7602f9c7?t=24" |
הקישור לדף תשלום. |
| 5 | UrlToPayPal |
"https://secure.cardcom.solutions/External/ LowProfileRedirectToPayPal.aspx?TerminalNumber=1000&LowProfileCode=17bdd03c-b8c2-48c4-b511-bcda7602f9c7" |
קישור לכפתור של PayPal |
| 6 | UrlToBit |
"https://secure.cardcom.solutions/ api/LPC5/Bit?" |
קישור לכפתור של Bit |
שלב 2 - קבלת פרטי עסקה מהשרת - Get the result of an Iframe \ Redirect deal
חשוב
על מנת לשמור על בטיחות מוגברת ועל דרך תפעולה תקינה אנו לא נשתמש במידע שמגיע ישירות מהדיווח.
לאחר קבלת הדיווח אנו נשלח קריאה, Get the result of an Iframe \ Redirect deal, לשרת שלנו לקבלת פרטי עסקה מהשרת שלנו על מנת לבדוק את תקינות הדיווח.
פנייה למשיכה של התשובות:
לאחר שמושכים את הנתונים יש לסמן במערכת שלכם שהנתונים נמשכו, זאת כדי למנוע בעיה של משיכות חוזרות של העסקה.
ישנם מקרים שהלקוחות / CRAWLERS גולשים שוב לאותו דף הצלחה או מבצעים ריענון לדף.
מה שעלול לגרום לכפל עסקאות והזמנות במערכת שלכם. במידה ומסומן שהנתונים נמשכו אין לבצע משיכה שוב.
טבלת פרמטרים לפנייה לשרתים שוב למשוך את נתוני העסקה:
שיטת בקשה- POST
Get the result of an Iframe \ Redirect deal
https://secure.cardcom.solutions/api/v11/LowProfile/GetLpResult
להלן הפרמטרים שנחוצים לשליחת הקריאה:
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
| 1 | TerminalNumber |
1000 | המסוף שמבצע את הפעולה. מספר מסוף פנימי לא שבא. |
| 2 | ApiName |
test2025 | שם משתמש ממשקים |
| 3 | LowProfileId |
AA-BB-CC | קוד העסקה הייחודי |
טבלת פרמטרים, תשובה המתקבלת:
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
| 1 | ResponseCode |
0 |
0 - הפעולה תקינה ,אחרת שגוי - שגיאת פיתוח. |
| 2 | Description |
"העסקה בוצעה בהצלחה" | תיאור התשובה , במידה ומתקבל תשובה שונה, העסקה לא בוצעה בהצלחה. |
| 3 | TerminalNumber |
1000 | המסוף שמבצע את הפעולה |
| 4 | LowProfileId |
f47b241e-1861-4cf8-a9a2-bf0c05f9f36d | קוד העסקה הייחודי |
| 5 | TranzactionId | 654354685 |
מספר ייחודי של עסקה שבוצעה בעת חיוב אשראי. גודל התשובה יכול להיות Int64/ BigInt |
| 6 | ReturnValue | AA-1234 | ערך להעביר למערכת הסליקה אשר יוחזר ל IndicatorUrl עד 250 תווים. (נהוג להעביר מספר הזמנה ממערכת הזמנות באתר). |
| 7 | Operation |
"ChargeOnly" - חיוב בלבד "ChargeAndCreateToken" - חיוב ויצירת אסימון "CreateTokenOnly" - יצירת אסימון בלבד "SuspendedDeal" - עסקה מושהית "Do3DSAndSubmit" - חברות שיש להם PCI DSS, מעברים מספר כרטיס מלא , ומבצע עסקה 3DS (דורש ממשק ישיר) |
סוג הפעולה שבוצעה במערכת. |
| 11 | SuspendedDealId | 1234 | מספר עסקה מושהית. |
| 12 | ExternalPaymentVector | NoneOrUnknown = 0 (מערכת), |
מקור עסקה חיצוני , כמו BIT וכו' |
| 13 | Country | israel | המדינה שנכבתה בפרטי מסמך. |
ערכים של UIValues (8).
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
| 1 | CardOwnerEmail | eli@gmail.com | אימייל בעל הכרטיס |
| 2 | CardOwnerName | אלי כהן | שם בעל הכרטיס |
| 3 | CardOwnerPhone | 0508855881 | טלפון בעל הכרטיס |
| 4 | CardOwnerIdentityNumber | 040000000 | ת.ז. בעל הכרטיס |
| 5 | NumOfPayments | 3 | מספר תשלומים שהלקוח בוחר בטופס הסליקה. |
| 6 | CardYear | 28 | שנת כרטיס YY |
| 7 | CardMonth | 6 | חודש כרטיס MM |
| 8 | CustomFields - מערך של אובייקטים |
Id - המזהה של השדה מותאמם אישית Value - הערך של השדה מותאם אישית |
שדות מותאמים אישית שמועברים משלב 1. |
| 9 | IsAbroadCard | boolean - false \ true | האם הכרטיס אשראי הונפק בחו''ל (האם כרטיס תייר) |
ערכים של DocumentInfo(9).
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
| 1 | ResponseCode | 0 - הצלחה | קוד תשובה של יצירת חשבונית |
| 2 | Description | "העסקה בוצעה בהצלחה" | תיאור התשובה , במידה ומתקבל תשובה שונה, העסקה לא בוצעה בהצלחה. |
| 3 | DocumentType |
"Auto" - אוטומטי, לפי מה שיש בהגדרות 3->4. "TaxInvoiceAndReceipt" – חשבונית מס וקבלה "TaxInvoiceAndReceiptRefund" – חשבונית זיכוי והחזר כספים "Receipt" – קבלה מלכ''ר "ReceiptRefund" – קבלה מלכ"ר זיכוי ( החזר כספים) "Quote" – הצעת מחיר "Order" – הזמנה "OrderConfirmation" – אישור הזמנה - מאתר "OrderConfirmationRefund" – זיכוי אישור הזמנה - מאתר "DeliveryNote" – תעודת משלוח "DeliveryNoteRefund" – תעודת החזרה "ProformaInvoice" – חשבון עסקה "DemandForPayment" – דרישה לתשלום "DemandForPaymentRefund" – ביטול דרישה לתשלום "ProformaDealInvoice" – חשבון קבלה פרופורמה "ProformaDealInvoiceRefund" –חשבון קבלה זיכוי "TaxInvoice" – חשבונית מס "ProformaInvoiceRefund" – זיכוי חשבון עסקה "TaxInvoiceRefund" – חשבונית מס זיכוי "ReceiptForTaxInvoice" – קבלה (לחשבונית) "DonationReceipt" – קבלה על תרומה "DonationReceiptRefund" – זיכוי קבלה תרומה (החזר כספים) "ReceiptForTaxInvoiceRefund" – החזר כספים לקוחות (קבלה זיכוי)
|
סוג המסמך שהופק |
| 4 | DocumentNumber | 5000 | מספר מסמך |
| 5 | AccountId | 1030 | מספר כרטיס לקוח |
| 6 |
ForeignAccount Number |
21451 | מספר הנהלת חשבונות של הלקוח, רק אם נוצר או בוצע איחוד לכרטיס לקוח. |
| 7 | SiteUniqueId | 1005412 | מספר מזהה ייחודי של הלקוח, רק אם נוצר או בוצע איחוד לכרטיס לקוח. |
| 8 | DocumentUrl | נותן את הURL של המסמך | לא עובד |
ערכים של TokenInfo (10).
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
| 1 | Token | 12F678C4-BC08-4607-ACF2-755FD7FCD3DE | מספר האסימון, חוה לשמור בבסיס הנתונים. |
| 2 | TokenExDate |
YYYYMMDD | תוקף אסימון כמו תוקף הכרטיס , חובה לשמור בבסיס הנתונים. |
| 3 | CardYear |
2021 | תוקף הכרטיס-שנה, ביצירת אסימון יש לשמור בבסיס הנתונים. |
| 4 | CardMonth |
12 | תוקף הכרטיס-חודש, ביצירת אסימון יש לשמור בבסיס הנתונים. |
| 5 | TokenApprovalNumber |
12345 |
מספר אישור חד פעמי המתקבל בעת יצירת אסימון עם בדיקה מסוג J5. ביצירת אסימון יש לשמור בבסיס הנתונים על מנת לבצע חיוב עתידי על התפיסת מסגרת ביחד עם המספר אישור. |
| 6 | CardOwnerIdentityNumber | 213654987 | מספר ת''ז. |
ערכים של TranzactionInfo (12)
| מספר | שם פרמטר | ערכים אפשריים לדוגמא | תיאור |
| 1 | ResponseCode |
0 - הצליח 700 & 701 - הצליח עסקה J2 \ J5 |
0 - הפעולה תקינה |
| 2 | Description | "העסקה בוצעה בהצלחה" | תיאור התשובה , במידה ומתקבל תשובה שונה, העסקה לא בוצעה בהצלחה. |
| 3 | TranzactionId | 203990118 | מספר עסקה פנימי |
| 4 | TerminalNumber | 1001 | מספר מסוף |
| 5 | Amount | 500 | סכום עסקה |
| 6 | CoinId |
1 - שקל 2 - דולר לקודי מטבע נוספים - רשימת קודי מטבעות |
מספר מטבע. |
| 7 | CouponNumber | 38022395 | מספר שובר של הפתקית. לפעמים יכול לשמש להתאמות |
| 8 | CreateDate | "2025-03-12T08:46:45" | תאריך יצירת עסקה |
| 9 | Last4CardDigits | 5796 |
ארבע ספרות אחרונות של אשראי INT |
| 10 |
Last4Card DigitsString |
"5796" |
ארבע ספרות אחרונות של אשראי string |
| 11 | FirstCardDigits | 440066 | שש ספרות ראשונות. |
| 12 | JParameter |
|
J- פרמטר , סוג בדיקה לביצוע על הכרטיס |
| 13 | CardMonth | 12 | חודש כרטיס |
| 14 | CardYear | 2021 | שנת כרטיס |
| 15 | ApprovalNumber | 009491B | מספר אישור. חיוני במקרה של J5. אם יש J5 והבית עסק ירצה לחייב מאוחר יותר את מסגרת התפוסה, המספר אישור, יהיה חיוני לחיוב המסגרת. |
| 16 |
FirstPayment Amount |
50.00 | סכום תשלום הראשון |
| 17 |
ConstPayment Amount |
20.00 | סכום מספר התשלומים הנוספים |
| 18 | NumberOfPayments | 5 | מספר התשלומים |
| 19 | CardInfo | "Israeli" | סוג הכרטיס |
| 20 | CardOwnerName | "daniel" | שם בעל הכרטיס |
| 21 | CardOwnerPhone | "0522222222" | מספר טלפון של בעל הכרטיס |
| 22 | CardOwnerEmail | "test@gmail.com" | אימייל בעל הכרטיס |
| 23 |
CardOwner IdentityNumber |
"213654987" | מספר תעודת זהות |
| 24 | Token | "4cf8e168-261e-4613-8d20-000332986b24" | מספר האסימון, חוה לשמור בבסיס הנתונים. |
| 25 | CardName | "ויזה רגיל" | שם כרטיס |
| 26 | SapakMutav | 1234 | מספר לקוח בעבודה ברב מוטב |
| 27 | Uid | "21121517002429612920744" | מזהה עסקה יחודי. |
| 28 |
Concentration Number |
"156874" | מספר הפקדה / ריכוז |
| 29 | DocumentNumber | 300394 | מספר מסמך |
| DocumentType |
"Auto" - אוטומטי, לפי מה שיש בהגדרות 3->4. "TaxInvoiceAndReceipt" – חשבונית מס וקבלה "TaxInvoiceAndReceiptRefund" – חשבונית זיכוי והחזר כספים "Receipt" – קבלה מלכ''ר "ReceiptRefund" – קבלה מלכ"ר זיכוי ( החזר כספים) "Quote" – הצעת מחיר "Order" – הזמנה "OrderConfirmation" – אישור הזמנה - מאתר "OrderConfirmationRefund" – זיכוי אישור הזמנה - מאתר "DeliveryNote" – תעודת משלוח "DeliveryNoteRefund" – תעודת החזרה "ProformaInvoice" – חשבון עסקה "DemandForPayment" – דרישה לתשלום "DemandForPaymentRefund" – ביטול דרישה לתשלום "ProformaDealInvoice" – חשבון קבלה פרופורמה "ProformaDealInvoiceRefund" –חשבון קבלה זיכוי "TaxInvoice" – חשבונית מס "ProformaInvoiceRefund" – זיכוי חשבון עסקה "TaxInvoiceRefund" – חשבונית מס זיכוי "ReceiptForTaxInvoice" – קבלה (לחשבונית) "DonationReceipt" – קבלה על תרומה "DonationReceiptRefund" – זיכוי קבלה תרומה (החזר כספים) "ReceiptForTaxInvoiceRefund" – החזר כספים לקוחות (קבלה זיכוי) |
סוג מסמך | |
| 31 | Rrn | "500301575449" | מספר זיהוי אצל חברות האשראי |
| 32 | Brand | "PrivateCard" "MasterCard" "Visa" "Maestro" "AmericanExpress" "Isracard" "JBC" "Discover" "Diners" |
מותג כרטיס |
| 33 | Acquire | "Unknown" "Isracard" "CAL" "Diners" "AmericanExpress" "Laumicard" "CardCom" "PayPal" "Upay" "PayMe" |
חברה סולקת
|
| 34 | Issuer | "NonIsrael" "Isracard" "CAL" "Diners" "AmericanExpress" "JCB" "Laumicard" | חברה מנפיקה |
| 35 | PaymentType | "Unknown" "Standard" "SpecialCredits" "ImmediateCharge" "CreditClub" "SuperCredit" "InstallmentCredit" "Payments" "ClubPatments" | סוג אשראי - חיוב רגיל \ תשלום \ קרדיט \ ניכיון |
| 36 |
CardNumber EntryMode |
"MagneticStip" "SelfService" "GasStationSelfService" "Contactless" "EmvContactless" "MobileContactless" "EmvMobileContactless" "MobileNumber" "Emv" "Phone" "SignatureOnly" "Internet" "Fallback" "EmptyCandidateList" |
מקור עסקה - "מגנטיס טיפ" "שירות עצמי" "תחנת דלק שירות עצמי" "ללא מגע" "ללא מגע" "נייד ללא מגע" "נייד ללא מגע" "מספר נייד" "נייד ללא מגע" "טלפון" "חתימה בלבד" "אינטרנט" "חלופה" "רשימת מועמדים ריקה" |
| 37 | DealType | "Information" "Debit" "Discharge" "ForcedCharge" "CashBack" "CashTransaction" "Recurring" "BalanceQuery" "Cancel" "Refund" "Recharge" |
סוג עסקה Information" "Debit" "Discharge" "ForcedCharge" "CashBack" "CashTransaction" "Recurring" "BalanceQuery" "Cancel" "Refund" "Recharge" |
| 38 | IsRefund | boolean - true \ false | האם זו הייתה עסקה זיכוי |
| 39 | DocumentUrl | נותן את הURL של המסמך | בקבלת WEBHOOK קבלת URL למסמך |
| 40 |
CustomFields מערך של אובייקטים. |
Id - 20 Value - "value" |
הערכים של השדות המותאמים אישית. |
| 41 | IsAbroadCard | boolean (true\false) | האם הכרטיס הוא כרטיס מחו''ל? |
ערכים לUTM (אובייקט עם פרמטרים בתוכו)
| פרמטר | ערכים אפשריים לדוגמא | תיאור |
| Source | string or null לדוגמא facebook |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
| Medium | string or null לדוגמא medium |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
| Campaign | string or null לדוגמא campaignNAME |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
| Content | string or null לדוגמא content |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
| Term | string or null לדוגמא term |
פרמטרים נוספים שעוברים לדף הצלחה יש לסמן וי בממשק - העברת פרמטרים נוספים |
להלן קודים לדוגמא על שלב 1+2.
יצירת דף תשלום בלבד (שלב 1):
{
"TerminalNumber": 1000,
"ApiName": "CardTest1994",
"Amount": 10.5,
"Operation": "ChargeOnly",
"SuccessRedirectUrl": "https://www.google.com",
"FailedRedirectUrl": "https://www.yahoo.com",
"WebHookUrl": "https://webhook.site/c208ee79-0d2a-43b2-a52a-0860e9c86a0d"
}
יצירת דף תשלום עם הפקת מסמך (שלב 1):
{
"TerminalNumber": 1000,
"ApiName": "CardTest1994",
"ReturnValue": "Z12332X",
"Amount": 10.5,
"Language": "en",
"Operation": "ChargeAndCreateToken",
"ProductName": "הזמנה מספר C101G",
"SuccessRedirectUrl": "https://www.google.com",
"FailedRedirectUrl": "https://www.yahoo.com",
"WebHookUrl": "https://webhook.site/c208ee79-0d2a-43b2-a52a-0860e9c86a0d",
"ISOCoinId": 1,
"Document": {
"DocumentTypeToCreate": "Order",
"Name": "test client",
"Email": "test@testDomain.com",
"Products": [
{
"Description": "my item to sell",
"UnitCost": 10.5
}
]
}
}
קריאת GET (שלב 2):
{
"TerminalNumber": 1000,
"ApiName": "CardTest1994",
"LowProfileId": "9e26b925-9040-4f06-8644-8f92e036f3f8"
}
ה- RESPONSE:
{
"ResponseCode": 0,
"Description": "העסקה בוצעה בהצלחה",
"TerminalNumber": 1000,
"LowProfileId": "8c92820a-2f6f-4120-a699-ab1969b2f78b",
"TranzactionId": 209413394,
"ReturnValue": "Z12332X",
"Operation": "ChargeAndCreateToken",
"UIValues": {
"CardOwnerEmail": "testsite@test.co.il",
"CardOwnerName": "Card Owner",
"CardOwnerPhone": "039436100",
"CardOwnerIdentityNumber": "040617649 ",
"NumOfPayments": 1,
"CardYear": 2027,
"CardMonth": 10,
"CustomFields": [
{
"Id": 1,
"Value": "דגכדגכשע"
},
{
"Id": 3,
"Value": "1231231"
}
],
"IsAbroadCard": false
},
"DocumentInfo": {
"ResponseCode": 0,
"Description": "העסקה בוצעה בהצלחה",
"DocumentType": "TaxInvoiceAndReceipt",
"DocumentNumber": 593032,
"AccountId": 0,
"ForeignAccountNumber": null,
"SiteUniqueId": null,
"DocumentUrl": null
},
"TokenInfo": {
"Token": "4cf8e168-261e-4613-8d20-000332986b24",
"TokenExDate": "20271101",
"CardYear": 2027,
"CardMonth": 10,
"TokenApprovalNumber": "12345 ",
"CardOwnerIdentityNumber": "040617649 "
},
"SuspendedInfo": null,
"TranzactionInfo": {
"ResponseCode": 0,
"Description": "העסקה בוצעה בהצלחה",
"TranzactionId": 209413394,
"TerminalNumber": 1000,
"Amount": 10.5,
"CoinId": 1,
"CouponNumber": "38038259",
"CreateDate": "2025-05-06T10:48:21",
"Last4CardDigits": 0,
"Last4CardDigitsString": "0000",
"FirstCardDigits": 458000,
"JParameter": "0",
"CardMonth": 10,
"CardYear": 27,
"ApprovalNumber": "12345",
"FirstPaymentAmount": 0,
"ConstPaymentAmount": 0,
"NumberOfPayments": 1,
"CardInfo": "Israeli",
"CardOwnerName": "Card Owner",
"CardOwnerPhone": "039436100",
"CardOwnerEmail": "testsite@test.co.il",
"CardOwnerIdentityNumber": "040617649",
"Token": "4cf8e168-261e-4613-8d20-000332986b24",
"CardName": "ויזה רגיל",
"SapakMutav": "",
"Uid": "21121517002429612920744",
"ConcentrationNumber": null,
"DocumentNumber": 593032,
"DocumentType": "TaxInvoiceAndReceipt",
"Rrn": "",
"Brand": "Visa",
"Acquire": "Laumicard",
"Issuer": "CAL",
"PaymentType": "Standard",
"CardNumberEntryMode": "Phone",
"DealType": "Debit",
"IsRefund": false,
"DocumentUrl": null,
"CustomFields": [
{
"Id": 1,
"Value": "דגכדגכשע"
},
{
"Id": 3,
"Value": "1231231"
}
],
"IsAbroadCard": false,
"IssuerAuthCodeDescription": "אושר ע\"י החברה המנפיקה באמצעות בקשה לאישור ללא עסקה"
},
"ExternalPaymentVector": "NoneOrUnknown",
"Country": "IL",
"UTM": null,
"IssuerAuthCodeDescription": "אושר ע\"י החברה המנפיקה באמצעות בקשה לאישור ללא עסקה"
}
לינק למאמר של שלב 3 - חיוב אסימונים.
שאלה:
האם יש אפשרות לשלוט במס' הנסיונות שיוצא דיווח WEBHOOK אל המתכנת במידה והדיווח לא צלח?
תשובה:
אין אפשרות לשלוט במס' הדיווחים שיוצאים אל כתובת ה WEBHOOK במידה ולא הצלחנו לדווח לצד השרת של המתכנת
שאלה:
תשובה:
כן יש אפשרות להגדיר סכום ראשון נמוך או גבוה מהסכום הקבוע של שאר התשלומים