بداية سريعة: اختبر ربط الدفع خلال خمس دقائق

Team {دقائق} دقيقة قراءة 2,075 مشاهدة

اختبر ربطك خلال خمس دقائق

استخدم بيئة اختبار الواجهة البرمجية العامة ببيانات اعتماد تجريبية مشتركة. لا يُخصم مال حقيقي، والطلبات لا تصل إلى مزودي الدفع الفعليين.

الخطوة ١: احصل على بيانات بيئة الاختبار

افتح /sandbox وانسخ App ID وAPI Key (للتوقيع) وQuery Key (للاستعلام عن الطلب).

الخطوة ٢: أنشئ طلبًا تجريبيًا

استخدم نموذج بيئة الاختبار، أو أرسل طلب POST موقَّعًا إلى /api/createorder:

curl -X POST "https://your-domain.com/api/createorder" \
  -H "Content-Type: application/json" \
  -d '{
    "appid": "YOUR_SANDBOX_APPID",
    "action": "createorder",
    "clientip": "127.0.0.1",
    "amount": "9.99",
    "currency": "USD",
    "paymentMethod": "alipay",
    "description": "Test order",
    "notify_url": "https://your-domain.com/api/sandbox/webhook-receiver",
    "sign_type": "MD5",
    "sign": "CALCULATED_MD5_SIGN"
  }'

بيئة الاختبار تحسب توقيع MD5 نيابةً عنك. راجع وثائق الواجهة، قسم التوقيع للاطلاع على الخوارزمية.

الخطوة ٣: حاكِ عملية الدفع

افتح redirectUrl الوارد في رد إنشاء الطلب، أو استخدم Simulate pay داخل بيئة الاختبار. اضغط Simulate Success، فتضع البوابة إشعارًا في الطابور نحو notify_url الخاص بك.

الخطوة ٤: تحقق من توقيع الإشعار

تُرسَل الإشعارات بطريقة GET مع معاملات في الرابط تشمل sign وsign_type=MD5. تحقق منها بالخوارزمية نفسها المستخدمة في إنشاء الطلب، باستخدام مفتاح API الخاص بك.

// Node.js example (conceptual)
const crypto = require('crypto');
function verifyCallback(params, apiKey) {
  const copy = { ...params };
  delete copy.sign;
  delete copy.sign_type;
  const keys = Object.keys(copy).filter(k => copy[k] != null).sort();
  const str = keys.map(k => k + '=' + copy[k]).join('&') + apiKey;
  const expected = crypto.createHash('md5').update(str).digest('hex');
  return expected === params.sign;
}

يجب أن يرد خادمك بنص عادي هو success، دون حساسية لحالة الأحرف.

الخطوة ٥: استعلم عن حالة الطلب

GET /api/order?action=order&appid=APPID&key=QUERY_KEY&paymentId=ORDER_ID

أو استعلم عبر النقطة العامة: GET /api/order/status/:orderId

الانتقال إلى التشغيل الفعلي

المرجع الكامل: توثيق الواجهة البرمجية · للتجربة المباشرة: بيئة الاختبار

الكلمات المفتاحية: api, sandbox, integration, webhook

← جميع المنشورات