المقدمة
يشرح هذا القسم Alfa Pay - ألفا باي واجهة برمجة التطبيقات الخاصة ببوابة الدفع
Alfa Pay - ألفا باي واجهة برمجة التطبيقات (API) سهلة التكامل مع برامج أعمالك. تم تصميم واجهتنا بشكل جيد باستخدام روابط URL منظمة، وتقبل طلبات cURL، وتعيد استجابات بصيغة JSON
يمكنك استخدام الـ API في وضع الاختبار، والذي لن يؤثر على بياناتك الحية. يتم استخدام مفتاح API لتوثيق الطلبات والتحقق من صحة الدفع. لوضع الاختبار، استخدم رابط البيئة التجريبية (Sandbox URL)، وللوضع الحي، استخدم الرابط الحي (Live URL) المذكور في القسم المخصص بدء عملية الدفع .
العملات المدعومة
يشرح هذا القسم العملات المدعومة من قبل النظام Alfa Pay - ألفا باي
Alfa Pay - ألفا باي allows to make transaction with below currencies. Any new currency may update in future.
اسم العملة | رمز العملة | رمز العملة |
---|---|---|
دولار امريكي | $ | USD |
جنيه سوداني | SDG | SDG |
الحصول على مفتاح API
يشرح هذا القسم عملية بدء عملية الدفع.
قم بتسجيل الدخول إلى . Alfa Pay - ألفا باي حسابك التجاري If you don't have any ? Click Here
الخطوة التالية هي البحث عن Api Key القائمة في الشريط الجانبي لحسابك. اضغط على القائمة
ستجد هناك مفاتيح API الخاصة بك، وهي: المفتاح العام (Public Key) والمفتاح السري (Secret Key). يمكنك إنشاء مفتاح API جديد في كل مرة بالضغط على الزر المخصص لذلك Generate Api Key تذكر: لا تشارك هذه المفاتيح مع أي شخص.
بدء عملية الدفع
يشرح هذا القسم عملية بدء عملية الدفع.
لمبادرة عملية الدفع، اتبع الكود المثال المقدم وكن حذرًا بشأن البارامترات (المعلمات). ستحتاج إلى إرسال طلب باستخدام النقاط النهائية (Endpoints) التالية:
نقطة النهاية الحية https://alfapay.net/payment/initiate
نقطة النهاية التجريبية https://alfapay.net/sandbox/payment/initiate
البريد الإلكتروني الخاص بالوضع التجريبي: [email protected]
رمز التحقق الخاص بالوضع التجريبي: 222666
طريقة الطلب POST
أرسل الطلب إلى نقطة النهاية باستخدام البارامترات (المعلمات) التالية أدناه:
اسم البارامتر | نوع البارامتر | الوصف |
---|---|---|
public_key | string (50) | مطلوب مفتاح API العام الخاص بك |
identifier | string (20) | مطلوب المُعرف الأساسي لتحديد عملية الدفع من طرفكم. |
currency | string (4) | مطلوب رمز العملة، يجب أن يكون بأحرف كبيرة. على سبيل المثال: USD, EUR |
amount | decimal | مطلوب قيمة الدفع. |
details | string (100) | مطلوب تفاصيل الدفع أو العملية. |
ipn_url | string | مطلوب رابط إشعار الدفع الفوري (IPN). |
success_url | string | مطلوب رابط إعادة التوجيه بعد نجاح الدفع. |
cancel_url | string | مطلوب رابط إعادة التوجيه عند إلغاء الدفع. |
site_logo | string/url | مطلوب شعار موقع عملك التجاري. |
checkout_theme | string | اختياري نسق نموذج الدفع (داكن/فاتح). النسق الافتراضي هو الفاتح. |
customer_name | string (30) | مطلوب إسم العميل |
customer_email | string (30) | مطلوب البريد الإلكتروني الصحيح للعميل. |
<?php
$parameters = [
'identifier' => 'DFU80XZIKS',
'currency' => 'USD',
'amount' => 100.00,
'details' => 'Purchase T-shirt',
'ipn_url' => 'http://example.com/ipn_url.php',
'cancel_url' => 'http://example.com/cancel_url.php',
'success_url' => 'http://example.com/success_url.php',
'public_key' => 'your_public_key',
'site_logo' => 'https://alfapay.net/assets/images/logoIcon/logo.png',
'checkout_theme' => 'dark',
'customer_name' => 'John Doe',
'customer_email' => '[email protected]',
];
//live end point
$url = "https://alfapay.net/payment/initiate";
//test end point
$url = "https://alfapay.net/sandbox/payment/initiate";
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $parameters);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
//$result contains the response back.
?>
//Error Response.
{
"error": "true",
"message": "Invalid api key"
}
//Success Response.
{
"success": "ok",
"message": "Payment Initiated. Redirect to url.",
"url":"http://example.com/initiate/payment/checkout?payment_id=eJSAASDxdrt4DASDASVNASJA7893232432cvmdsamnvASF"
}
التحقق من صحة الدفع وإشعار الدفع الفوري (IPN)
يشرح هذا القسم الخطوات اللازمة للحصول على إشعار الدفع الفوري الخاص بكم.
لمبادرة عملية الدفع، اتبع الكود المثال المقدم وكن حذرًا بشأن البارامترات (المعلمات). ستحتاج إلى إرسال طلب باستخدام النقاط النهائية (Endpoints) التالية:
نقطة النهاية: رابط IPN الخاص بتطبيق عملك التجاري.
طريقة الطلب POST
ستتلقى المعلمات التالية أدناه.
اسم البارامتر | الوصف |
---|---|
status | تمت عملية الدفع بنجاح |
identifier | المعرّف يُستخدم لتحديد عملية الدفع في نظامك |
signature | توقيع تشفير للتحقق من صحة عملية الدفع في نظامك |
data | تتضمن البيانات معلومات أساسية مثل الرسوم، المبلغ، العملة، ومعرّف المعاملة المالية |
<?php
//Receive the response parameter
$status = $_POST['status'];
$signature = $_POST['signature'];
$identifier = $_POST['identifier'];
$data = $_POST['data'];
// Generate your signature
$customKey = $data['amount'].$identifier;
$secret = 'YOUR_SECRET_KEY';
$mySignature = strtoupper(hash_hmac('sha256', $customKey , $secret));
$myIdentifier = 'YOUR_GIVEN_IDENTIFIER';
if($status == "success" && $signature == $mySignature && $identifier == $myIdentifier){
//your operation logic
}
?>