Document version: 0.9
מידע נפוץ
נקודת קצה של API
https://mp.axtonpay.com/api/v1/private/checkout
Content-type
API מקבלת בקשות HTTP עם 2 סוגי תוכן: 'application/x-www-form-urlencoded', 'application/json'.
הכותרת HTTP צריכה להתאים לתוכן של הגוף POST.
ראשי תיבות והגדרות
- {PID} - זיהוי של החשבונית, בדרך כלל זהו רצף אלפאנומרי ייחודי בן 8 תווים.
- Shop - האתר שלך שמקבל תשלומים דרך שירות AxtonPay
אלגוריתם לעבודה עם API
רצף הפעולות הרגיל כדי לקבל תשלום:
- ליצור חשבונית ('/api/v1/private/checkout/payment/create'), תגובת ה-API תחזיר את כתובת ה-URL של החשבונית ('invoice_url'),
- שלח את הקונה לחשבונית זו על מנת לבצע תשלום,
- חכה להודעות מהשרת AxtonPay, שהן יגיעו ל-'server_notification_url',
- בתוך קבלת כל הודעה מ-AxtonPay, לבדוק את תקפות החתימה שלה ועדיף לשלוח אישור קבלה ל-AxtonPay ('/api/v1/private/checkout/payment/confirm/{PID}'),
- אם מצב של חשבונית משתנה, בצע פעולות המתאימות למצב זה (למשל, בקש מידע מלא על החשבונית, שלח את המוצרים, צור פנייה לצוות התמיכה וכו').
אם תגדיר 'server_notification_url' ריק או לא תקין בעת יצירת חשבונית, השירות אינו יכול לשלוח הודעות על שינויים במצב; במקרים כאלה, עליך לבדוק את החשבונית בעצמך מדי פעם ('/api/v1/private/checkout/payment/get/{PID}').
אישור בקשות
כדי לאשר בקשה יש לחשב Hash ממחרוזת שנוצרה בצורה מיוחדת. המחרוזת מורכבת מהדבקה (חיבור) של פרמטרי ה-URL (QUERY_STRING) ושל גוף הבקשה POST (REQUEST_BODY). חשוב שכל הרכיבים יילקחו בדיוק בצורתם כפי שיועברו לשרת. פרמטרי ה-URL (QUERY_STRING) יש לקחת מה-URL בשורה אחת, מבלי לשנות את סדר הפרמטרים ומבלי להשמיט אף אלמנט. גוף הבקשה POST (REQUEST_BODY) יש להשתמש בו גם כן ללא כל שינוי, כולל לא להסיר ממנו גרשיים, רווחים, סוגריים ושברים של שורות.
במקרים של גוף בקשה POST ריק, ובמקרה של פרמטרי URL ריקים, אותו רכיב יהיה פשוט מחרוזת ריקה.
רצף הנתונים בבקשת החתימה: QUERY_STRING קודם, ואז הנתונים של POST. לא צריך להכניס שום סימני חיבור ביניהם, פשוט לצרף שני מחרוזות טקסט.
שוב, כל סימן הוא משמעותי. אין להוסיף או להסיר אפילו רווח או סימן של שורה חדשה. יש להשתמש רק בנתונים הגולמיים שהתקבלו מהשרת.
גִּלּוּי SHA-256 עם המפתח 'Secret key' נלקח מהמחרוזת שנוצרה ונעשה בו שימוש כארגומנט השני של הפונקציה hash_hmac().
חובה להעביר את הפרמטר 'time' שמכיל את POSIX timestamp (Unix time) הנוכחי.
חתימה זו תקפה למשך 24 שעות. אם ערכו של הפרמטר 'time' שונה מזמן השרת הנוכחי ביותר מ-24 שעות (לא משנה קדימה או אחורה), הבקשה תיכשל גם אם החתימה מחושבת ללא שגיאות.
אם לוח המסחר קיבל בקשה עם חתימה מסוימת, אותה חתימה לא יכולה לשמש שוב, אפילו לשליחת הבקשה עם אותם הפרמטרים (זה כולל את הפרמטר 'time').
הקוד הגרעיני שנוצר נשלח בכותרת HTTP 'Sign'.
בנוסף לחתימה המחושבת, הבקשה חייבת להכיל גם כותרת 'Api-Key' המכילה את מפתח ה-API בו נעשה שימוש. לדוגמה:
$headers = [
'Api-Key: ' . $the_api_key,
'Sign: ' . $signature_sha256
];
אתה יכול לחתום על הבקשה שנשלחה ל-AxtonPay עם כל מפתח חוקי השייך לצ'קאאוט הזה. עם זאת, ה-AxtonPay תמיד ישתמש במפתח שבחרת בלוח המסחר.
דוגמה לחישוב חתימה:
/* Imagine there is the POST request: URI: '/api/v1/private/checkout/payment/create?time=1735084500.3561' POST body: '[email protected]&shop_payment_id=INVOICE-1746&pms=all&amount=19.95¤cy=USD' So there are HTTP query string and request body: */ $the_query_string = 'time=1735084500.3561'; $the_request_body = '[email protected]&shop_payment_id=INVOICE-1746&pms=all&amount=19.95¤cy=USD'; // • A pair of 'API key' and 'Secret key' gathered from the admin panel $the_api_key = 'key1'; $the_api_secret = 'secret1'; // • Concatenation: $string_for_sha = $the_query_string . $the_request_body; // Value: '[email protected]&shop_payment_id=INVOICE-1746&pms=all&amount=19.95¤cy=USD' // • Calculating the HTTP header 'Sign' // hash method is SHA-256 $signature_sha256 = hash_hmac("sha256", $string_for_sha, $the_api_secret); // '31ca271a15e45802e07b7559a5f520656c050dda79e6fa46d52a15fc51d193cd' /* • Signed HTTP request: Method: POST URI: '/api/v1/private/checkout/payment/create?time=1735084500.3561' HTTP header 'Api-Key': 'key1' HTTP header 'Sign': '31ca271a15e45802e07b7559a5f520656c050dda79e6fa46d52a15fc51d193cd' POST body: '[email protected]&shop_payment_id=INVOICE-1746&pms=all&amount=19.95¤cy=USD' */
שְׁים לֵב לְרִיוּשִׁים וּלְהַפְסְקֵי שׁוּרוֹת בְּדֻגְמָה אֲחֵרֶת:
/*
Imagine there is the POST request:
URI: '/api/v1/private/checkout/payment/create?shop_name=Very%20useful%20service'
POST body: '{
"shop_user_id": "[email protected]",
"shop_payment_id": "INVOICE-1746",
"shop_payment_desc": "Premium service
(1 month)",
"pms": "all",
"amount": "19.95",
"currency": "USD",
"time": "1735084500.3561"
}'
Attention! It's important to keep the raw data 'as is', including all tabulations, whitespaces, and line breaks.
For example, the signature becomes invalid if your software formats json, adds or removes spaces.
So there are such HTTP query string and POST request body:
*/
$the_query_string = 'shop_name=Very%20useful%20service';
$the_request_body = '{
"shop_user_id": "[email protected]",
"shop_payment_id": "INVOICE-1746",
"shop_payment_desc": "Premium service
(1 month)",
"pms": "all",
"amount": "19.95",
"currency": "USD",
"time": "1735084500.3561"
}';
// • A pair of 'API key' and 'Secret key' gathered from the merchant panel
$the_api_key = 'key1';
$the_api_secret = 'secret1';
// • Concatenation:
//
// hash method is SHA-256 (HTTP query string + request body)
$string_for_sha = $the_query_string . $the_request_body;
/* Value: 'shop_name=Very%20useful%20service{
"shop_user_id": "[email protected]",
"shop_payment_id": "INVOICE-1746",
"shop_payment_desc": "Premium service
(1 month)",
"pms": "all",
"amount": "19.95",
"currency": "USD",
"time": "1735084500.3561"
}'
*/
// • Calculating the HTTP header 'Sign'
$signature_sha256 = hash_hmac("sha256", $string_for_sha, $the_api_secret);
// 'ef15476f28b379e4b137a2dcd9ed495332e4766004ac3610bb92a69ba2303c28'
/* • Signed HTTP request:
Method: POST
URI: '/api/v1/private/checkout/payment/create'
HTTP header 'Api-Key': 'key1'
HTTP header 'Sign': 'ef15476f28b379e4b137a2dcd9ed495332e4766004ac3610bb92a69ba2303c28'
POST body: '{
"shop_user_id": "[email protected]",
"shop_payment_id": "INVOICE-1746",
"shop_payment_desc": "Premium service
(1 month)",
"pms": "all",
"amount": "19.95",
"currency": "USD",
"time": "1735084500.3561"
}'
*/
הדוגמה Python להרכבת המחרוזת לצורך חישוב החתימה:
string_for_hash_calculation = f'{request.query_params.urlencode()}{request.data.urlencode()}'
פרמטרים
ממשק ה-API מקבל את כל הפרמטרים גם ב-QUERY_STRING וגם בגוף של בקשת ה-POST.
משתני בוליאן
הממשק הצפוי לקבל '0' או '1' במשתני Boolean, אך בגלל המרת סוגים משתמעת, כל מחרוזת טקסט תטופל כ-'1', אפילו המילה 'false'. לכן, כדי לקבוע במפורש ערך 'FALSE' למשתנה Boolean, יש להעביר לו את הערך '0' או מחרוזת ריקה.
מפריד עשרוני
רק הנקודה העשרונית משמשת כמפריד עשרוני במספרים.
רישיות תווים בפרמטרים
למעט כמה יוצאים מהכלל, כל הפרמטרים רגישים לאותיות רישיות/קטנות.
כתובת URL להחזרה
בלוח הניהול של AxtonPay, בדף הגדרות התשלום, ניתן להגדיר כתובות URL של החנות לקבלת התראות שרת-לשרת מ-AxtonPay, כמו גם כתובות URL להפניית הקונה לאחר תשלום החשבונית או ביטולה, וכן במקרה של שגיאה.
ניתן לעקוף כתובות URL אלו בבקשת יצירת החשבונית.
שיטות של AxtonPay API
יצירת חשבונית: /api/v1/private/checkout/payment/create
המתודה /api/v1/private/checkout/payment/create מתחילה את יצירת החשבונית.
אם ההצלחה, השיטה מחזירה קישור ('invoice_url') אליו עליך להפנות את הלקוח לתשלום.
פרמטרים של חשבונית אישית:
- time (נדרש) - POSIX timestamp (Unix time)
- amount (נדרש) - סכום לתשלום (מחיר המוצר או השירות שהחנות רוצה לקבל)
- currency (נדרש) - קוד מטבע בן 3 אותיות לפי ISO 4217-alpha, לא רגיש לאותיות גדולות/קטנות
- pms (נדרש) - שיטות התשלום מוצגות בעמוד החיוב. אם ברצונך לאפשר את כל שיטות התשלום, הערך הוא 'all'; אם ברצונך לאפשר רק חלק מהן, פרט את מזהי המספרים שלהן המופרדים בפסיקים.
- pm - מזהה של שיטת התשלום שנבחרה. חשוב שאם הפרמטר 'pm' יעבור, החשבונית תיווצר ב'מצב שקוף', כלומר הקונה לא יראה את דף החשבונית, אלא יגיע ישירות למערכת התשלום.
- extra_data - מערך אסוציאטיבי המכיל כל נתון נוסף; נתון זה מוחזר לחנות בשלמותו
- shop_user_id - מזהה המשתמש בחנות, הוא מוחזר לחנות בצורתו שאין בה שינוי
- shop_payment_id - מזהה תשלום בחנות, הוא מוחזר לחנות בצורתו שאין בה שינוי
- shop_name - שם החנות (יופיע בדף החשבונית)
- shop_payment_desc - תיאור הזמנה (מוצג בדף החשבונית)
- shop_payment_remark - ההערות שלך לגבי התשלום הזה (זהו שדה לכל הערות שיש לך על התשלום, שאינו AxtonPay עובר לשום מקום; הוא נראה רק ברשימת התשלומים; הוא לא חוזר לחנות)
- valid_time - המרווח הזמני שבו ניתן לשלם את החשבונית; בשניות
- view_time - מרווח זמן שבו החשבונית זמינה לצפייה דרך קישור חיצוני; בשניות; הספירה לאחור מתחילה לאחר שהתקופה 'valid_time' מסתיימת
- server_notification_method - שיטה לשליחת הודעות משרת לשרת לגבי סטטוסי תשלום לחנות; ערכים תקפים: POST, GET
חלק מההגדרות של החשבונית מוגדרות בעמוד הגדרות הסליקה. אך הערכים שנשלחים בבקשה יקבלו עדיפות על פני ההגדרות האלה.
פרמטרי התשלום שניתן לעקוף עבור חשבונית זו:
- customer_success_url - קישור אליו ינותב הקונה אם החשבונית תשלם בהצלחה (כלומר אם מצב החשבונית הוא 'paid' או 'overpaid').
- customer_cancel_url - קישור שאליו הקונה יועבר אם התשלום יבוטל
- customer_fail_url - קישור שאליו יועבר הקונה אם התשלום יסתיים בשגיאה
- server_notification_url - קישור לשליחת התראות סטטוסי תשלום משרת לשרת לחנות
הערה: כדי לעמוד במדיניות הפרטיות שלך, בדרך כלל אין צורך לכלול את הנתונים האישיים של הלקוח בנכסי החשבונית. לדוגמה, בפרמטר "shop_user_id", עדיף לציין מזהה לקוח מופשט במקום את הדואר האלקטרוני או מספר הטלפון שלהם. גם בפרמטר "shop_payment_desc", עדיף לא לכלול נתוני לקוח בכלל, משום שהם כבר יודעים הכל על עצמם; במקום זאת, תוכל לכתוב מידע על הסחורות או השירותים ששולמו, או אפילו פשוט לציין את סוג הפעולה, לדוגמה, "רכישה" או "הטענת יתרה".
כל ההפניות מועברות בהכרח עם הפרוטוקול.
דוגמה לבקשה:
<?php
// API credentials - get it from settings of the checkout
$api_key = 'API_KEY';
$api_secret = 'API_SECRET';
// API endpoint
$api_endpoint = 'https://mp.axtonpay.com/api/v1/private/checkout';
// Current POSIX timestamp
$time = time();
// API method URL
$api_url = $api_endpoint . '/payment/create';
// Prepare POST parameters
$post_data = [
'amount' => 4.99,
'currency' => 'USD',
'pms' => 'all', // visible payment methods; either 'all' or comma-separated list of selected GUIDs
// 'pm' => '92807385', // define the certain payment method if you do not want payer to see the list of all possible payment methods
// Below parameters are optional
'extra_data' => ['param1'=>'value 1', 'param2'=>'value 2'],
'shop_user_id' => '[email protected]',
'shop_payment_id' => 'TEST-333-' . $time,
'shop_name' => 'TEST-333 web shop',
'shop_payment_desc' => 'TEST-333 payment description visible to payer',
'shop_payment_remark' => 'TEST-333 payment remark for admin',
'customer_success_url' => 'https://example.com/?status=paid-or-overpaid&once=TEST-333-' . $time,
'customer_cancel_url' => 'https://example.com/?status=cancelled-by-payer&once=TEST-333-' . $time,
'customer_fail_url' => 'https://example.com/?status=error&once=TEST-333-' . $time,
'server_notification_url' => 'https://example.com/?for=server-to-server-notificataions',
'server_notification_method' => 'POST',
'valid_time' => 60*60*24*7, // seconds
'view_time' => 60*60*24*21, // seconds, clock starts after ending of 'valid_time' period
];
// Prepare GET parameters
$query_string = 'time=' . $time;
// Build the request body
$request_body = json_encode($post_data); // Encode as JSON
// $request_body = http_build_query($post_data);
// Concatenate QUERY_STRING and REQUEST_BODY
$string_for_sha = $query_string . $request_body;
// Calculate the signature
$signature = hash_hmac('sha256', $string_for_sha, $api_secret);
// Prepare HTTP headers
$headers = [
'Api-Key: ' . $api_key,
'Sign: ' . $signature,
'Content-Type: application/json'
];
// Initialize cURL
$ch = curl_init($api_url . '?' . $query_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $request_body);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
// Execute the request
$response = curl_exec($ch);
// Close cURL
curl_close($ch);
?>
דוגמה לתגובה מוצלחת בבקשה ליצירת חשבונית:
{
"status": "ok",
"data": "invoice created",
"pid": "HNQ5CAHM",
"test": false,
"created_at": "2025-12-27T08:14:55.000000Z",
"invoice_url": "https:\/\/27375212.b88pay.com\/i\/HNQ5CAHM"
}
השגת מידע על החשבונית: /api/v1/private/checkout/payment/get/{PID}
כדי לקבל את המידע שאתה צריך לקרוא למתודה /api/v1/private/checkout/payment/get/{PID}, על ידי ציון PID של החשבונית בסוף כתובת ה-URL.
פרמטרי הבקשה:
- time (נדרש) - POSIX timestamp (Unix time)
דוגמה לשורה להכנת חתימה:
// Full URL: https://mp.axtonpay.com/api/v1/private/checkout/payment/get/GIKR3XPY?time=1766837343 // String for signature calculation: time=1766837343
דוגמה לתשובה:
{
"status": "ok",
"data": {
"pid": "HNQ5CAHM",
"checkout_guid": 34677320,
"created_at": "2025-12-27 12:07:21",
"updated_at": "2025-12-27 12:07:34",
"data": {
"ip": "1.2.3.4",
"pms": "all",
"extra_data": {
"param1": "val1",
"param2": "val2",
"server_notification_url": "https:\/\/example.com\/?for=server-to-server-notificataions"
},
"redirect_url": "\/wait\/HNQ5CAHM",
"customer_fail_url": "https:\/\/example.com\/?status=error&id=TEST-333-1766837240",
"allow_change_amount": false,
"customer_cancel_url": "https:\/\/example.com\/?status=cancelled-by-payer&id=TEST-333-1766837240",
"customer_success_url": "https:\/\/example.com\/?status=paid-or-overpaid&id=TEST-333-1766837240"
},
"payment_status": 0,
"amount": "4.99",
"filled": "0.00",
"currency_id": 5,
"transparent": 1,
"expires_at": "2026-01-03 12:07:21",
"invisible_at": "2026-01-26 12:07:21",
"paid_at": null,
"confirmed_at": null,
"shop_name": "TEST-333 web shop",
"shop_user_id": "[email protected]",
"shop_payment_id": "TEST-333-1766837240",
"shop_payment_desc": "TEST-333 payment description visible to payer",
"shop_payment_remark": "TEST-333 payment remark for merchant",
"payment_method_id": 92807385,
"gateway_id": 40056646,
"payment_option_id": 297,
"txid": null,
"account_from": null,
"account_to": "TEnYvbfg9YqJeaVtVHAwEvG2kmAJcTzxTh",
"payment_option_amount": "17.865973",
"payment_option_filled": "0.000000",
"payment_option_currency_id": 317,
"exchange_rates_expires_at": "2025-12-27 12:27:33",
"test": false,
"initiator": "api",
"initiator_info": null,
"payment_option": {
"id": 297,
"gateway_id": 40056646,
"pm": "trx",
"currency_id": 317,
"name": "Tron",
"icon": "crypto\/tron.png",
"min_invoice": null,
"max_invoice": null
},
"payment_option_currency": {
"id": 317,
"name": "Tron",
"code": "TRX",
"minor_unit": 6
},
"currency": {
"id": 5,
"name": "United States dollar",
"code": "USD",
"minor_unit": 2
},
"invoice_url": "https:\/\/27375212.b88pay.com\/i\/HNQ5CAHM"
}
}
השוואה בין הסכום שנדרש לבין הסכום ששולם
התגובה מכילה כמה סכומים שונים (במטבע שבו הופקה החשבונית):
- "amount" - סכום מחושב
- "filled" - שילם חלק מהחשבונית,
- "total_filled" - כמה הלקוח שילם בסך הכל, כולל עמלות.
אם "filled = amount", אז זה משולם בדיוק כפי שצריך להיות.
אם "filled > amount", יש תשלום יתר.
אם "filled < amount", החשבונית לא שולמה במלואה (תשלום חלקי).
חשבונית: עיבוד הודעה מ-AxtonPay על שינוי מצב
בכל פעם שמצב החשבונית משתנה, AxtonPay שולח הודעה ל-server_notification_url (בשימוש ב-server_notification_method)
נתוני דוגמה:
{
"pid": "U5IB4WIO",
"status": "3",
"shop_user_id": "3q23g",
"shop_payment_id": "h76r5",
"amount": "240.00000000",
"filled": "0.00000000",
"fee": "0",
"total_filled": "0.00000000",
"currency": "DASH",
"test": "0"
}
כתגובה להודעה זו AxtonPay מצפה לקבל HTTP code 200, שמאשרת את קבלתה המוצלחת. אחרת, AxtonPay ינסה שוב 12 פעמים נוספות ברווחי זמן הולכים וגדלים, ואז מצב ההודעה משתנה ל-'error' (אך זה לא משפיע על מצב החשבונית עצמה).
ערכי מצב אפשריים:
- 0 - pending
- 1 - paid
- 2 - error
- 3 - cancelled by customer
- 4 - underpaid
- 5 - overpaid
- 8 - expired
סטטוסים של תשלום מוצלח הם 1 (paid) ו-5 (overpaid); במקרה של קבלתם ניתן להעביר את הקנייה ששולמה ללקוח או לטעון את היתרה. עבור תשלומים עם סטטוס 5 (overpaid), במקרה של טעינת יתרת חשבון ניתן לטעון את היתרה בסכום של התשלום שהתקבל בפועל, אך במקרה של מכירת סחורות/שירותים וסכום משמעותי של תשלום יתר מומלץ ליצור קשר עם המשלם ולהחליט איתו כיצד להתמודד עם תשלום היתר.
סטטוס החלקי הצלחות הוא 4 (underpaid); במקרה של קבלת סטטוס זה ניתן להטעין מחדש את היתרה בסכום של התשלום שהתקבל בפועל. עם זאת, סטטוס זה אינו נחשב כהצלחה במכירת סחורות/שירותים.
כל שאר הסטטוסים - 0 (pending), 2 (error), 3 (canceled by customer) משמעותם חוסר מוחלט בתשלום; במקרה של קבלתם אין לבצע פעולות של הפקדת יתרה או מכירת סחורות/שירותים.
בדיקת חתימה
כדי להיות בטוחים שההודעה נשלחת על ידי AxtonPay בדיוק, יש צורך לאמת את החתימה של ההודעה שהתקבלה לפני שמאמינים לה. האימות דומה לחתימה על הבקשות שלך, רק שנוספת שלב אחרון, שבו יש להשוות את החתימה המחושבת עם כותרת ה-HTTP שהתקבלה 'Sign'.
הצעדים העיקריים לאחר קבלת הודעה על שינוי מצב התשלום הם כדלקמן:
- קח את כל מחרוזת הטיעונים (QUERY_STRING) מההודעה שהתקבלה,
- קח את כל הPOST data (REQUEST_BODY) מההודעה שהתקבלה,
- חשב את החתימה באמצעות אותם QUERY_STRING + REQUEST_BODY ואת ה-'Secret key' המתאים,
- השווה את החתימה המחושבת עם זו שהתקבלה בכותרת ה-HTTP 'Sign',
- אם החתימות זהות, ההודעה באמת הגיעה מ-AxtonPay;
- אם החתימות שונות, ייתכן שמדובר בניסיון לרמות מצד המשלם.
דוגמה לשורה ליצירת חתימה:
// Full URL: https://EXAMPLE.COM?time=1737027838.1237 // POST body: pid=ABCD5678&status=1&shop_user_id=&shop_payment_id=&amount=25.00000000&filled=25.00000000&fee=0&total_filled=25.00000000¤cy=RDD&test=0 // String for signature calculation: time=1737027838.1237pid=ABCD5678&status=1&shop_user_id=&shop_payment_id=&amount=25.00000000&filled=25.00000000&fee=0&total_filled=25.00000000¤cy=RDD&test=0
אישור שהחנות עיבדה את פרטי התשלום: /api/v1/private/checkout/payment/confirm/{PID}
בקשה זו נשלחת לAxtonPay בתגובה להודעה שנמסרה ממנו. מבחינת פונקציונליות, מדובר באישור שהחנות קיבלה ועיבדה בהצלחה את ההודעה שהתקבלה.
כדי לשלוח בקשה, יש לקרוא למתודה /api/v1/private/checkout/payment/confirm/{PID}, על ידי ציון ה-pid של החשבונית בסוף כתובת ה-URL.
פרמטרי בקשה:
- time (נדרש) - POSIX timestamp (Unix time)
- status (נדרש, מספר שלם) - מספר מצב התשלום עבורו החנות שולחת אישור
אם הסטטוס המשודר תואם את הסטטוס הנוכחי של חשבונית זו במערכת, AxtonPay יגיב עם 'OK' ואם הוא לא תואם, הוא יגיב עם שגיאה.
דוגמה לשורה ליצירת חתימה:
// Full URL:
https://mp.axtonpay.com/api/v1/private/checkout/payment/confirm/ABCD5678?time=1737011414
// POST body:
{"status":"1"}
// String for signature calculation:
time=1737011414{"status":"1"}
דוגמה לתגובה אם מצב התשלום הנוכחי זהה:
{
"status": "ok",
"data": "\"Paid\" status notification is confirmed"
}
דוגמה לתגובה אם מצב התשלום הנוכחי שונה מהמצב שנשלח בבקשה:
{
"status": "error",
"message": "Something went wrong"
}
קודי מטבע
המטבעות שניתן להשתמש בהם ליצירת חשבונית.
רוב קודי המטבעות בהם משתמשים שייכים למטבעות פיאט, והם שווים ל-ISO 4217. גם הרשימה כוללת כמה מטבעות קריפטוגרפיים.
| קוד | שם | ספרות עשרוניות | סוג |
| BCH | Bitcoin Cash | 8 | מטבע קריפטוגרפי |
| BLK | Blackcoin | 8 | מטבע קריפטוגרפי |
| BNB | Binancecoin | 18 | מטבע קריפטוגרפי |
| BTC | Bitcoin | 8 | מטבע קריפטוגרפי |
| BTT | BitTorrent | 18 | אסימון קריפטו |
| BUSD | Binance USD | 18 | אסימון קריפטו |
| DAI | Dai | 18 | אסימון קריפטו |
| DASH | Dash | 8 | מטבע קריפטוגרפי |
| DOGE | Dogecoin | 8 | מטבע קריפטוגרפי |
| ETC | Ethereum Classic | 18 | מטבע קריפטוגרפי |
| ETH | Ethereum | 18 | מטבע קריפטוגרפי |
| LTC | Litecoin | 8 | מטבע קריפטוגרפי |
| NLG | Gulden | 8 | מטבע קריפטוגרפי |
| RDD | ReddCoin | 8 | מטבע קריפטוגרפי |
| TRX | Tron | 6 | מטבע קריפטוגרפי |
| USDC | USD Coin | 6 | אסימון קריפטו |
| USDD | Decentralized USD | 18 | אסימון קריפטו |
| USDT | Tether USDT | 6 | אסימון קריפטו |
| VTC | Vertcoin | 8 | מטבע קריפטוגרפי |
| XVG | Verge | 8 | מטבע קריפטוגרפי |
| AED | United Arab Emirates dirham | 2 | מטבע פיאט |
| AFN | Afghan afghani | 2 | מטבע פיאט |
| ALL | Albanian lek | 2 | מטבע פיאט |
| AMD | Armenian dram | 2 | מטבע פיאט |
| ANG | Netherlands Antillean guilder | 2 | מטבע פיאט |
| AOA | Angolan kwanza | 2 | מטבע פיאט |
| ARS | Argentine peso | 2 | מטבע פיאט |
| AUD | Australian dollar | 2 | מטבע פיאט |
| AWG | Aruban florin | 2 | מטבע פיאט |
| AZN | Azerbaijani manat | 2 | מטבע פיאט |
| BAM | Bosnia and Herzegovina convertible mark | 2 | מטבע פיאט |
| BBD | Barbados dollar | 2 | מטבע פיאט |
| BDT | Bangladeshi taka | 2 | מטבע פיאט |
| BGN | Bulgarian lev | 2 | מטבע פיאט |
| BHD | Bahraini dinar | 3 | מטבע פיאט |
| BIF | Burundian franc | 2 | מטבע פיאט |
| BMD | Bermudian dollar | 2 | מטבע פיאט |
| BND | Brunei dollar | 2 | מטבע פיאט |
| BOB | Boliviano | 2 | מטבע פיאט |
| BRL | Brazilian real | 2 | מטבע פיאט |
| BSD | Bahamian dollar | 2 | מטבע פיאט |
| BTN | Bhutanese ngultrum | 2 | מטבע פיאט |
| BWP | Botswana pula | 2 | מטבע פיאט |
| BYN | Belarusian ruble | 2 | מטבע פיאט |
| BZD | Belize dollar | 2 | מטבע פיאט |
| CAD | Canadian dollar | 2 | מטבע פיאט |
| CDF | Congolese franc | 2 | מטבע פיאט |
| CHF | Swiss franc | 2 | מטבע פיאט |
| CLP | Chilean peso | 2 | מטבע פיאט |
| CNY | Renminbi (Chinese) yuan | 2 | מטבע פיאט |
| COP | Colombian peso | 2 | מטבע פיאט |
| CRC | Costa Rican colon | 2 | מטבע פיאט |
| CUC | Cuban convertible peso | 2 | מטבע פיאט |
| CUP | Cuban peso | 2 | מטבע פיאט |
| CVE | Cape Verde escudo | 2 | מטבע פיאט |
| CZK | Czech koruna | 2 | מטבע פיאט |
| DJF | Djiboutian franc | 2 | מטבע פיאט |
| DKK | Danish krone | 2 | מטבע פיאט |
| DOP | Dominican peso | 2 | מטבע פיאט |
| DZD | Algerian dinar | 2 | מטבע פיאט |
| EGP | Egyptian pound | 2 | מטבע פיאט |
| ERN | Eritrean nakfa | 2 | מטבע פיאט |
| ETB | Ethiopian birr | 2 | מטבע פיאט |
| EUR | Euro | 2 | מטבע פיאט |
| FJD | Fiji dollar | 2 | מטבע פיאט |
| FKP | Falkland Islands pound | 2 | מטבע פיאט |
| GBP | Pound sterling | 2 | מטבע פיאט |
| GEL | Georgian lari | 2 | מטבע פיאט |
| GHS | Ghanaian cedi | 2 | מטבע פיאט |
| GIP | Gibraltar pound | 2 | מטבע פיאט |
| GMD | Gambian dalasi | 2 | מטבע פיאט |
| GNF | Guinean franc | 0 | מטבע פיאט |
| GTQ | Guatemalan quetzal | 2 | מטבע פיאט |
| GYD | Guyanese dollar | 2 | מטבע פיאט |
| HKD | Hong Kong dollar | 2 | מטבע פיאט |
| HNL | Honduran lempira | 2 | מטבע פיאט |
| HRK | Croatian kuna | 2 | מטבע פיאט |
| HTG | Haitian gourde | 2 | מטבע פיאט |
| HUF | Hungarian forint | 2 | מטבע פיאט |
| IDR | Indonesian rupiah | 2 | מטבע פיאט |
| ILS | Israeli new shekel | 2 | מטבע פיאט |
| INR | Indian rupee | 2 | מטבע פיאט |
| IQD | Iraqi dinar | 3 | מטבע פיאט |
| IRR | Iranian rial | 2 | מטבע פיאט |
| ISK | Icelandic krona | 2 | מטבע פיאט |
| JMD | Jamaican dollar | 2 | מטבע פיאט |
| JOD | Jordanian dinar | 3 | מטבע פיאט |
| JPY | Japanese yen | 3 | מטבע פיאט |
| KES | Kenyan shilling | 2 | מטבע פיאט |
| KGS | Kyrgyzstani som | 2 | מטבע פיאט |
| KHR | Cambodian riel | 2 | מטבע פיאט |
| KMF | Comoro franc | 2 | מטבע פיאט |
| KPW | North Korean won | 2 | מטבע פיאט |
| KRW | South Korean won | 2 | מטבע פיאט |
| KWD | Kuwaiti dinar | 3 | מטבע פיאט |
| KYD | Cayman Islands dollar | 2 | מטבע פיאט |
| KZT | Kazakhstani tenge | 2 | מטבע פיאט |
| LAK | Lao kip | 2 | מטבע פיאט |
| LBP | Lebanese pound | 2 | מטבע פיאט |
| LKR | Sri Lankan rupee | 2 | מטבע פיאט |
| LRD | Liberian dollar | 2 | מטבע פיאט |
| LSL | Lesotho loti | 2 | מטבע פיאט |
| LYD | Libyan dinar | 3 | מטבע פיאט |
| MAD | Moroccan dirham | 2 | מטבע פיאט |
| MDL | Moldovan leu | 2 | מטבע פיאט |
| MGA | Malagasy ariary | 2 | מטבע פיאט |
| MKD | Macedonian denar | 2 | מטבע פיאט |
| MMK | Myanmar kyat | 2 | מטבע פיאט |
| MNT | Mongolian togrog | 2 | מטבע פיאט |
| MOP | Macanese pataca | 2 | מטבע פיאט |
| MRU | Mauritanian ouguiya | 2 | מטבע פיאט |
| MUR | Mauritian rupee | 2 | מטבע פיאט |
| MVR | Maldivian rufiyaa | 2 | מטבע פיאט |
| MWK | Malawian kwacha | 2 | מטבע פיאט |
| MXN | Mexican peso | 2 | מטבע פיאט |
| MYR | Malaysian ringgit | 2 | מטבע פיאט |
| MZN | Mozambican metical | 2 | מטבע פיאט |
| NAD | Namibian dollar | 2 | מטבע פיאט |
| NGN | Nigerian naira | 2 | מטבע פיאט |
| NIO | Nicaraguan cordoba | 2 | מטבע פיאט |
| NOK | Norwegian krone | 2 | מטבע פיאט |
| NPR | Nepalese rupee | 2 | מטבע פיאט |
| NZD | New Zealand dollar | 2 | מטבע פיאט |
| OMR | Omani rial | 3 | מטבע פיאט |
| PAB | Panamanian balboa | 2 | מטבע פיאט |
| PEN | Peruvian sol | 2 | מטבע פיאט |
| PGK | Papua New Guinean kina | 2 | מטבע פיאט |
| PHP | Philippine peso | 2 | מטבע פיאט |
| PKR | Pakistani rupee | 2 | מטבע פיאט |
| PLN | Polish zloty | 2 | מטבע פיאט |
| PYG | Paraguayan guarani | 2 | מטבע פיאט |
| QAR | Qatari riyal | 2 | מטבע פיאט |
| RON | Romanian leu | 2 | מטבע פיאט |
| RSD | Serbian dinar | 2 | מטבע פיאט |
| RUB | Russian ruble | 2 | מטבע פיאט |
| RWF | Rwandan franc | 2 | מטבע פיאט |
| SAR | Saudi riyal | 2 | מטבע פיאט |
| SBD | Solomon Islands dollar | 2 | מטבע פיאט |
| SCR | Seychelles rupee | 2 | מטבע פיאט |
| SDG | Sudanese pound | 2 | מטבע פיאט |
| SEK | Swedish krona/kronor | 2 | מטבע פיאט |
| SGD | Singapore dollar | 2 | מטבע פיאט |
| SHP | Saint Helena pound | 2 | מטבע פיאט |
| SLL | Sierra Leonean leone | 2 | מטבע פיאט |
| SOS | Somali shilling | 2 | מטבע פיאט |
| SRD | Surinamese dollar | 2 | מטבע פיאט |
| SSP | South Sudanese pound | 2 | מטבע פיאט |
| STN | Sao Tome and Pricipe dobra | 2 | מטבע פיאט |
| SVC | Salvadoran colon | 2 | מטבע פיאט |
| SYP | Syrian pound | 2 | מטבע פיאט |
| SZL | Swazi lilangeni | 2 | מטבע פיאט |
| THB | Thai baht | 2 | מטבע פיאט |
| TJS | Tajikistani somoni | 2 | מטבע פיאט |
| TMT | Turkmenistan manat | 2 | מטבע פיאט |
| TND | Tunisian dinar | 3 | מטבע פיאט |
| TOP | Tongan paanga | 2 | מטבע פיאט |
| TRY | Turkish lira | 2 | מטבע פיאט |
| TTD | Trinidad and Tobago dollar | 2 | מטבע פיאט |
| TWD | New Taiwan dollar | 2 | מטבע פיאט |
| TZS | Tanzanian shilling | 2 | מטבע פיאט |
| UAH | Ukrainian hryvnia | 2 | מטבע פיאט |
| UGX | Ugandan shilling | 0 | מטבע פיאט |
| USD | United States dollar | 2 | מטבע פיאט |
| UYU | Uruguayan peso | 2 | מטבע פיאט |
| UZS | Uzbekistan som | 2 | מטבע פיאט |
| VES | Venezuelan bolivar soberano | 2 | מטבע פיאט |
| VND | Vietnamese dong | 2 | מטבע פיאט |
| VUV | Vanuatu vatu | 0 | מטבע פיאט |
| WST | Samoan tala | 2 | מטבע פיאט |
| XAF | CFA franc BEAC | 3 | מטבע פיאט |
| XCD | East Caribbean dollar | 2 | מטבע פיאט |
| XOF | CFA franc BCEAO | 2 | מטבע פיאט |
| XPF | CFP franc (franc Pacifique) | 3 | מטבע פיאט |
| XTS | קודים שמיועדים במיוחד למטרות בדיקה | 2 | קוד שמור |
| XXX | הקודים שהוקצו לעסקאות שבהן אין מטבע מעורב | 2 | קוד שמור |
| YER | Yemeni rial | 2 | מטבע פיאט |
| ZAR | South African rand | 2 | מטבע פיאט |
| ZMW | Zambian kwacha | 2 | מטבע פיאט |
| ZWL | Zimbabwean dollar | 2 | מטבע פיאט |
