ما هو رمز QR في الفاتورة الإلكترونية؟

رمز الاستجابة السريعة على الفاتورة الضريبية المبسطة ليس صورة تزيينية — هو حقل بيانات نظامي. تشترط هيئة الزكاة والضريبة والجمارك أن يحمل بيانات الفاتورة الأساسية مُرمَّزة بصيغةTLV(وسم، طول، قيمة) ثم مُحوَّلة إلىBase64، بحيث يستطيع أي مفتش أو عميل مسحه والتحقق من الفاتورة فورًا.

الحقول الخمسة ومواصفتها

ترتيب الوسوم ثابت، وتغييره يجعل الرمز غير مقروء لدى الهيئة:

الوسم الحقل مثال
1اسم البائعمؤسسة النخبة التجارية
2الرقم الضريبي للبائع300000000000003
3تاريخ ووقت الفاتورة(ISO 8601)2026-07-25T14:30:00Z
4الإجمالي شامل الضريبة115.00
5قيمة ضريبة القيمة المضافة15.00

كل حقل يُرمَّز على هيئة: بايت للوسم، بايت لطول القيمة، ثم القيمة نفسها بترميزUTF-8. تُرصّ الحقول الخمسة متتابعة ثم يُحوَّل الناتج كاملًا إلىBase64— وهذا ما تراه في مربع الناتج أعلاه.

مخطط بنية رمز QR للفاتورة الإلكترونية السعودية: الحقول الخمسة للمرحلة الأولى مُرمَّزة TLV بوسم وطول وقيمة ثم محوّلة إلى Base64
بنية رمز QR في الفاتورة الإلكترونية — من الحقول الخمسة إلى سلسلة Base64 التي يقرأها الماسح.

الفرق بين رمز المرحلة الأولى والثانية

رمز المرحلة الأولى يقف عند الحقول الخمسة. أما فاتورة المرحلة الثانية فتضيف ثلاثة حقول لا تُولَّد يدويًا: تجزئة الفاتورة بصيغةXML، والتوقيع الرقميECDSA، والمفتاح العام للشهادة. هذه الثلاثة مشتقّة من شهادة المنشأة الصادرة من الهيئة، ولذلك لا توجد أداة على الإنترنت — هذه أو غيرها — قادرة على توليد رمز مرحلة ثانية صالح.

أخطاء شائعة تُبطل الرمز

  • كتابة التاريخ بصيغة محليةبدلISO 8601— أشيع سبب لفشل التحقق.
  • وضع الإجمالي قبل الضريبةفي الوسم 4؛ المطلوب الإجماليشاملًاالضريبة.
  • إضافة رمز العملةداخل القيمة الرقمية — تُكتب الأرقام مجردة.
  • ترميز النص العربي بغيرUTF-8، فيخرج اسم البائع مشوّهًا عند المسح.
  • تغيير ترتيب الوسوم— الترتيب جزء من المواصفة لا اجتهاد فيه.

كيف تتحقق من الرمز بعد توليده

امسحه بتطبيق «فاتورة» الرسمي من الهيئة: سيفكّ الترميز ويعرض الحقول الخمسة مقروءة. وأي قارئQRعادي سيعرض نصBase64كما هو — وهذا بحد ذاته دليل أن الترميز تم بشكل صحيح.