نقطة التحقق من المعاملات (Check Payment)
POST
/api/check-payment
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
| client_number | String | نعم | رقم هاتف العميل مرسل الدفع (مثل 771234567) |
| amount | Float | نعم | سعر الطلب الإجمالي المطلوب التحقق منه |
| currency | String | لا | العملة الافتراضية للمعاملة (YER, SAR, USD) |
| product_info | String | لا | قائمة روابط المنتجات والكميات منفصلة بفواصل لتفعيل الحماية |
| coupon_enc | String | لا | التوقيع المشفر لخصم الكوبون المستخلص عبر مفتاح التاجر السري |
| merchant_secret_key | String | نعم | مفتاح التاجر السري للتحقق من هوية الطلب |
الأخطاء المحتملة (Possible Errors)
401 Unauthorized: مفتاح التاجر السري غير صحيح404 Not Found: لم يتم العثور على المعاملة أو رقم العميل خاطئ400 Bad Request: تم التلاعب في الأسعار (Price Tampering Detected)
مثال للرد (Example Output)
{
"status": "success",
"data": {
"transaction_id": "AP-998273645",
"amount": 93280,
"currency": "YER",
"verified": true,
"timestamp": "2026-06-19T02:57:03Z"
}
}
نماذج أكواد التحقق من الطلب
check_payment.sh
curl -X POST https://yemenpay.app/api/check-payment \
-H "Content-Type: application/json" \
-d '{
"merchant_secret_key": "YOUR_SECRET_KEY",
"client_number": "771234567",
"amount": 93280,
"currency": "YER",
"product_info": "/product/1:1, /product/2:2",
"coupon_enc": "A95EDB0CF3566989A51E68E2DB"
}'
معلومات التاجر (Merchant Details)
GET
/api/merchant-details
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
| merchant_id | String | نعم | المعرف الفريد الخاص بالمتجر |
| merchant_secret_key | String | نعم | مفتاح التاجر السري للتحقق من هوية الطلب |
الأخطاء المحتملة (Possible Errors)
401 Unauthorized: مفتاح التاجر السري غير صحيح404 Not Found: التاجر غير موجود
مثال للرد (Example Output)
{
"status": "success",
"data": {
"merchant_id": "yemenpay",
"merchant_name": "Sama Yemen Store",
"active_gateways": ["jaib", "kuraimi", "jawaly"],
"created_at": "2025-01-10T14:00:00Z"
}
}
نماذج أكواد بيانات التاجر
merchant_details.sh
curl -G "https://yemenpay.app/api/merchant-details" \
-d "merchant_id=yemenpay" \
-d "merchant_secret_key=YOUR_SECRET_KEY"
ملاحظة أمنية بالغة الأهمية
لا تشارك مفتاح التاجر السري (Merchant Secret Key) أبداً في الكود البرمجي للواجهة الأمامية (JavaScript). يجب الاحتفاظ به على الخادم الخلفي فقط واستخدامه لتشفير الكوبونات وتوليد التواقيع.