تحقّق من صحة رقم البطاقة داخل متصفحك
تفحص هذه الأداة رقم بطاقة بنكية باستخدام خوارزمية لوهن الحسابية (Luhn) التي تكشف أخطاء الطباعة الشائعة: رقمين متبادلي الموضع، أو خانة محذوفة، أو رقم منقول خطأ. تناسب أي نموذج دفع يريد رفض رقم مكتوب خطأ قبل محاولة معالجته فعليًا.
شغّل الأداة مجانًا
تعمل هذه الأداة داخل متصفحك — مجانًا، ولا تُرسل بياناتك إلى أي خادم
خوارزمية لوهن ببساطة
كل رقم بطاقة بنكية حديث مبني بحيث يحقق معادلة حسابية محددة (خوارزمية لوهن)، صُممت خصيصًا لكشف أخطاء الطباعة الشائعة كرقمين متبادلي الموضع أو خانة واحدة كُتبت خطأ. تحسب الأداة هذه المعادلة فورًا وتخبرك إن كان الرقم يحقق الشرط الحسابي أم لا، دون التحقق من رصيد البطاقة أو صلاحيتها.
ما لا تفعله هذه الأداة بالمرة
فحص لوهن لا يتحقق من وجود البطاقة فعليًا، ولا من رصيدها، ولا من تاريخ انتهائها؛ يكشف فقط أن الرقم يحقق الشرط الحسابي المتوقع لبطاقات بنكية حقيقية. رقم يحقق الشرط قد يكون بطاقة فعلية أو رقمًا مُولَّدًا اختباريًا يحقق المعادلة نفسها بالصدفة.
لا يُحفظ رقم بطاقتك مطلقًا
الفحص كله يجري داخل متصفحك؛ رقم البطاقة الذي تُدخله لا يُرسَل إلى أي خادم، ولا يُسجَّل، ولا يُخزَّن في أي مكان لدينا. هذا مبدأ ثابت في تصميم الأداة نفسها لا مجرد سياسة معلنة: التحقق حسابي بحت يمكن إجراؤه بالكامل على جهازك دون الحاجة لأي اتصال شبكي.
السعر والاستخدام
مجانية بلا حد من هذه الصفحة. للدمج المباشر في نموذج دفع حي كخطوة تحقق أولية قبل إرسال الرقم لبوابة الدفع، تتوفر الوظيفة نفسها عبر الـAPI بسعر $0.002 لكل طلب.
حالات الاستخدام
خطوة تحقق قبل بوابة الدفع
يضيف موقع شركة الخليج الرقمية هذا الفحص كخطوة أولى في نموذج الدفع، فيرفض رقمًا مكتوبًا خطأ فورًا قبل إرساله لبوابة الدفع الفعلية وتحمّل رسوم محاولة فاشلة.
تحقق يدوي عند استلام دفعة هاتفيًا
عند استلام رقم بطاقة عبر الهاتف من عميل، تتحقق موظفة الاستقبال في مؤسسة النخيل للمقاولات من صحته حسابيًا قبل تمريره للمحاسب المسؤول عن المعالجة.
اختبار نموذج دفع قبل الإطلاق
قبل إطلاق نموذج دفع جديد، يستخدم فريق تطوير شركة الواحة للتجارة المحدودة أرقامًا تحقق الشرط الحسابي للتأكد أن النموذج يقبل الأرقام الصحيحة ويرفض الخاطئة.
الأسئلة الشائعة
هل تُحفظ أرقام البطاقات التي أُدخلها؟
لا مطلقًا. الفحص حسابي بحت يجري داخل متصفحك؛ رقم البطاقة لا يُرسَل لأي خادم ولا يُسجَّل ولا يُخزَّن في أي مكان لدينا.
هل يعني "صحيح" أن البطاقة نشطة أو لها رصيد؟
لا، يعني فقط أن الرقم يحقق الشرط الحسابي المتوقع لبطاقات بنكية حقيقية. التأكد من نشاط البطاقة أو رصيدها يحتاج بوابة دفع فعلية متصلة بالبنك المُصدِر.
هل الأداة مجانية؟
نعم، بلا حد من هذه الصفحة. الفحص الآلي عبر الـAPI سعره $0.002 لكل طلب.
لماذا رُفض رقم بطاقتي الحقيقية؟
غالبًا لخطأ طباعي في إحدى الخانات عند النسخ اليدوي؛ راجع الرقم على البطاقة نفسها خانة بخانة قبل إعادة المحاولة.
هل تكشف الأداة نوع البطاقة أيضًا؟
لا، هذه الوظيفة تتحقق من صحة الرقم حسابيًا فقط. معرفة نوع البطاقة (فيزا أم ماستركارد أم غيرها) وظيفة منفصلة مخصصة لذلك.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/verify/card-luhn \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"items":["valor-1","valor-2"]}'const res = await fetch("https://api.kit.forhosting.com/verify/card-luhn", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"items": [
"valor-1",
"valor-2"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/verify/card-luhn",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"items": [
"valor-1",
"valor-2"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/verify/card-luhn", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"items":["valor-1","valor-2"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"items":["valor-1","valor-2"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/verify/card-luhn", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"items": [
"valor-1",
"valor-2"
]
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "verify.card_luhn",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |