ما رقم بطاقة الاختبار؟
رقم بطاقة الاختبار رقمٌ يشبه رقم البطاقة الحقيقية في كل ما يستطيع الموقع فحصه بنفسه: يبدأ ببادئة العلامة الصحيحة، وطوله مناسب، ورقم التحقق الأخير فيه صحيح. الفرق أن أي بنك لم يُصدره، فهو غير مرتبط بحساب أو شخص أو رصيد. يستخدم المطورون ومختبرو البرمجيات هذه الأرقام لاختبار نماذج الدفع ومسارات إتمام الشراء وقواعد البيانات دون تعريض بيانات العملاء الحقيقية للخطر.
يبني مولد بطاقات الائتمان هذا كل رقم بالطريقة نفسها التي تتبعها شبكات الدفع: يبدأ ببادئة جهة إصدار حقيقية (IIN أو BIN)، ثم يملأ أرقام الحساب عشوائيًا باستخدام مولّد الأرقام العشوائية المشفّر في متصفحك، ويحسب الرقم الأخير بخوارزمية لون (Luhn). بعد ذلك يضيف تاريخ انتهاء في المستقبل ورمز أمان بالطول المناسب لكل علامة. تجري العملية كلها على جهازك، ولا يُرسل أي شيء إلى خادمنا.
صيغة رقم البطاقة حسب العلامة التجارية
تحدد الأرقام الأولى من البطاقة الشبكةَ والبنك المُصدِر. يلخّص الجدول التالي النطاقات التي يستخدمها المولّد، لتعرف ما يجب أن تقبله شيفرة التحقق في تطبيقك:
| العلامة | تبدأ بـ (IIN) | عدد الأرقام | أرقام CVV |
|---|---|---|---|
| Visa | 4 | 13, 16, 19 | 3 |
| Mastercard | 51–55, 2221–2720 | 16 | 3 |
| American Express | 34, 37 | 15 | 4 |
| Discover | 6011, 644–649, 65 | 16–19 | 3 |
| JCB | 3528–3589 | 16–19 | 3 |
| Diners Club | 300–305, 36, 38–39 | 14–19 | 3 |
| UnionPay | 62 | 16–19 | 3 |
| Maestro | 5018, 5020, 5038, 5893, 6304, 6759, 6761–6763 | 12–19 | 3 |
كيف يعمل رقم التحقق (خوارزمية لون)
نشر مهندس IBM هانز بيتر لون خوارزميته المعروفة أيضًا باسم «المقياس 10» في خمسينيات القرن الماضي، وتعتمدها اليوم جميع العلامات الكبرى لاكتشاف أخطاء الكتابة. لنطبّقها على رقم الاختبار الأشهر 4111 1111 1111 1111:
- ابدأ من الرقم الأخير على اليمين، وضاعف رقمًا من كل رقمين (الأرقام المظللة في الجدول).
- إذا تجاوز الناتج 9 فاطرح منه 9 (يبقى 8 كما هو، أما 7 × 2 = 14 فيصبح 5).
- اجمع القيم كلها. المجموع هنا 30.
- إذا انتهى المجموع بصفر فالرقم صالح. و30 من مضاعفات 10، لذا يجتاز هذا الرقم الفحص.
| الرقم | 4 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| مضاعَف؟ | 8 | – | 2 | – | 2 | – | 2 | – | 2 | – | 2 | – | 2 | – | 2 | – |
| القيمة المضافة | 8 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 |
ولتوليد رقم نطبّق الخطوات نفسها بالعكس: نملأ كل الأرقام عدا الأخير، ونحسب المجموع، ثم نختار الرقم الأخير الذي يوصل المجموع إلى أقرب مضاعف تالٍ للعدد 10. يمكنك فحص أي رقم خطوة بخطوة باستخدام مدقق بطاقات الائتمان.
طريقة استخدام المولّد
- اختر العلامة التجارية: فيزا أو ماستركارد أو أمريكان إكسبريس أو ديسكفر أو JCB أو داينرز كلوب أو يونيون باي أو مايسترو.
- أدخل رقم BIN أو نمطًا إن شئت. يمنحك رقم BIN من 6 إلى 8 أرقام بطاقات من نطاق جهة إصدار محددة. استخدم
xحرفًا بديلًا (مثل5425xxxxxxxx1234) لتثبيت بعض الأرقام: يحتفظ المولّد بكل رقم تكتبه ويحسب أحد الأحرف البديلة لكي يجتاز الرقم خوارزمية لون. - حدّد العدد والتفاصيل: حتى 1000 بطاقة، مع شهر وسنة انتهاء عشوائيين أو محددين، ورمز CVV عشوائي أو ثابت.
- صدّر النتائج: انسخ القائمة أو نزّلها بصيغة CSV أو JSON أو XML أو نص مفصول بشرطة عمودية (
number|mm|yyyy|cvv).
استخدامات أرقام بطاقات الاختبار
- التحقق من النماذج: تأكّد من أن صفحة الدفع تقبل كل العلامات والأطوال (أمريكان إكسبريس بـ 15 رقمًا، وماستركارد من السلسلة 2، والبطاقات ذات 19 رقمًا) وترفض الأرقام ذات رقم التحقق الخاطئ.
- التعرّف على العلامة وأقنعة الإدخال: تحقّق من ظهور الشعار الصحيح ومن تجميع الأرقام بشكل سليم (4-4-4-4، أو 4-6-5 لأمريكان إكسبريس).
- بيانات الاختبار: املأ قواعد بيانات بيئة التجهيز والعروض التوضيحية ولقطات الشاشة بأرقام واقعية بدلًا من بطاقات العملاء، فتبقى خارج نطاق معيار PCI DSS.
- اختبارات الأداء والواجهة: ولّد مئات السجلات المختلفة لاختبار الأداء والتصفح بين الصفحات والبحث.
- التعليم: اشرح عمليًا كيف تعمل أرقام IIN وأرقام التحقق ومعادلة لون.
الاختبار مع بوابة دفع
عند اختبار تكامل حقيقي مع بوابة دفع في وضع الاختبار (Sandbox)، استخدم بطاقات الاختبار التي توثّقها البوابة نفسها؛ فهي مهيأة لإرجاع نتائج محددة مثل القبول أو الرفض أو طلب التحقق 3-D Secure، وهو ما لا يستطيعه رقم عشوائي. أما الأرقام المولّدة فهي مثالية لكل ما يحدث قبل وصول الطلب إلى البوابة. القوائم الرسمية لبطاقات الاختبار:
- بطاقات الاختبار في Stripe
- اختبار البطاقات في بيئة PayPal التجريبية
- قيم الاختبار في Braintree
- أرقام بطاقات الاختبار في Adyen
الأسئلة الشائعة
هل هذه أرقام بطاقات ائتمان حقيقية؟
لا. تتبع الأرقام قواعد الصيغة المعلنة لكل شبكة (البادئة والطول ورقم التحقق وفق خوارزمية لون)، لكنها غير مرتبطة بأي حساب مصرفي أو حامل بطاقة أو حد ائتماني. الغرض الوحيد منها هو اختبار البرمجيات.
هل يمكنني الشراء أو تفعيل اشتراك ببطاقة مولّدة؟
لا. تتطلب أي عملية دفع حقيقية موافقة البنك المُصدِر، ولم يُصدر أي بنك هذه الأرقام، لذا تُرفض كل عملية خصم. ومحاولة الدفع برقم بطاقة لا تملكه تُعد احتيالًا. استخدمها فقط في بيئات الاختبار (Sandbox) والنماذج وبيانات التجربة.
لماذا تجتاز الأرقام فحص التحقق؟
تكتفي معظم نماذج الدفع بفحص الصيغة: بادئة العلامة والطول ومجموع لون. أرقامنا مبنية لتستوفي هذه القواعد الثلاث، وهذا بالضبط ما تحتاجه لاختبار شيفرة التحقق لديك. أما بوابة الدفع في الوضع الحقيقي فسترفضها في كل الأحوال.
هل يمكنني توليد بطاقات من رقم BIN محدد؟
نعم. اكتب رقم BIN (أول 6 إلى 8 أرقام) في حقل BIN / النمط. ويمكنك أيضًا استخدام x حرفًا بديلًا، مثل 453201xxxxxxxxxx: يُملأ كل x عشوائيًا ويُحسب رقم التحقق بحيث يجتاز الرقم خوارزمية لون.
ما صيغة التصدير المناسبة لي؟
الصيغة المفصولة بشرطة (number|mm|yyyy|cvv) مناسبة للنسخ واللصق السريع، وCSV للجداول وبيانات الاختبار الثابتة، وJSON لمحاكاة واجهات API واختبارات الوحدات، وXML للأنظمة القديمة. يمكنك توليد حتى 1000 بطاقة دفعة واحدة.
هل توليد أرقام بطاقات للاختبار قانوني؟
نعم. توليد أرقام تتبع صيغة منشورة أمر قانوني، وهو الطريقة المعتادة لاختبار برمجيات الدفع يوميًا. غير القانوني هو استخدام رقم بطاقة لا تملك تفويضًا باستخدامه. لا يخزّن هذا الموقع بيانات بطاقات حقيقية ولا يبيعها ولا يعالجها.