أدوات المطورين الجزائريين — DZ-DevTools Pro

Algerian Developer SDKs, 58 Wilayas & Communes Explorer & Fiscal Validators

58 / 58

الرقم التعريفي الجبائي (NIF)

يتكون من 15 رقماً ويبدأ برمز الولاية (01-58) متبوعاً برمز النشاط والتعريف الجبائي.

الرقم التعريفي الإحصائي (NIS)

يتكون من 20 رقماً مخصصاً من الديوان الوطني للإحصائيات.

السجل التجاري (Registre de Commerce)

صيغة السجل التجاري الوطني المعتمد لدى المركز الوطني للسجل التجاري CNRC.

حساب مفتاح CCP وتوليد RIP البريدي

تطبيق خوارزمية Modulo-97 الرسمية لبريد الجزائر لتوليد مفتاح الحساب ورقم RIP الكامل (20 رقماً).

مدقق البطاقة الذهبية و CIB

التحقق من صحة أرقام بطاقات الدفع الإلكتروني (خوارزمية Luhn) والتعرف على مصدر البطاقة.

مدقق أرقام الهواتف والمتعاملين في الجزائر

اكتشاف شبكة المتعامل (موبيليس، جيزي، أوريدو، اتصالات الجزائر)، التحقق من صحة الرقم، والتحويل إلى الصيغة الدولية E.164.

مختبر التفقيط البرمجي بالدينار الجزائري

تحويل فوري لأي مبلغ مالي إلى صيغته القانونية بالأحرف (عربية، فرنسية) مع حساب أجزاء السنتيم.

باللغة العربية:

En Français:

JavaScript / TypeScript — Algerian Phone Validator

export function isValidAlgerianPhone(phone) {
  const clean = String(phone).replace(/[\s\-.()]/g, '');
  const normalized = clean.startsWith('+213') ? '0' + clean.slice(4) : clean;
  return /^0[2-7]\d{8}$/.test(normalized);
}
          

Python — Algérie Poste CCP Clé Mod-97 Calculator

def calculate_ccp_key(ccp_number: str) -> str:
    """Calculates Algérie Poste Modulo-97 Check Digit."""
    clean = ''.join(filter(str.isdigit, str(ccp_number)))
    n = int(clean)
    rem = (n * 100) % 97
    key = 0 if rem == 0 else 97 - rem
    return f"{key:02d}"
          

JavaScript — Edahabia & CIB Luhn Check

export function isEdahabiaCard(cardNumber) {
  const clean = String(cardNumber).replace(/[\s-]/g, '');
  if (!clean.startsWith('628058') || clean.length !== 16) return false;
  let sum = 0, alt = false;
  for (let i = clean.length - 1; i >= 0; i--) {
    let d = parseInt(clean.charAt(i), 10);
    if (alt) { d *= 2; if (d > 9) d -= 9; }
    sum += d;
    alt = !alt;
  }
  return sum % 10 === 0;
}