فودكس: فحص ملف الفاتورة الإلكترونية
أسماء المنتجات تُذكر هنا لتعيين الأنظمة لا غير. ومطابق مستقل عن الشركات التي تنتجها، ولا يتبع أياً منها ولا يحمل تأييدها.
الملف الذي يحتاجه مطابق
يفحص مطابق الفاتورة الإلكترونية نفسها: ملف XML بصيغة UBL 2.1 الذي يُنشأ لكل فاتورة وإشعار دائن وإشعار مدين في المرحلة الثانية من الفوترة الإلكترونية لدى هيئة الزكاة والضريبة والجمارك، سواء أنشأه نظامك أو أنشأته إضافة أو خدمة تكامل للفوترة الإلكترونية مربوطة به. ويصلح كذلك ملف PDF يتضمن فاتورة بصيغة XML، أي ملف PDF/A-3. أما ملف PDF الذي لا يتضمن ذلك الملف، أو النسخة المطبوعة، أو التصدير إلى جدول بيانات، أو لقطة الشاشة، فليس فيها ما يستطيع مطابق فحصه.
ما تقوله الوثائق المنشورة
- تُفعَّل المرحلة الثانية في فودكس (Foodics) لكل فرع ولكل جهاز كاشير على حدة. فدليل التفعيل لديها يبدأ ببيانات الفرع: رقم السجل التجاري واسم التسجيل الضريبي ورقم التسجيل في ضريبة القيمة المضافة والعنوان الوطني لكل فرع، من لوحة التحكم ثم الإدارة ثم الفروع ثم تعديل الفرع؛ ونسبة ضريبة واحدة هي 15% على كل صنف خاضع؛ ثم رمز تحقق يُنشأ في منصة «فاتورة» تحت «تهيئة وحدة/جهاز جديد»، رمز لكل جهاز، يُدخل في الكاشير تحت Home > E-Invoice (Zatca) ثم يُفعَّل (دليل تفعيل المرحلة الثانية من الفوترة الإلكترونية). وتقول صفحة فودكس عن الموضوع إن الطلبات المغلقة والمرتجعة الجديدة تُرسل إلى الهيئة بعد التفعيل (المرحلة الثانية من الفوترة الإلكترونية).
- وتُقرأ حالة تفعيل كل جهاز من لوحة التحكم: عمود ZATCA Activation Status تحت الأجهزة، لكل جهاز كاشير، مفعَّل أو غير مفعَّل أو لم تتم مزامنته (متابعة حالة التفعيل من لوحة التحكم). وتُقرأ حالة إرسال كل طلب هناك أيضاً: عمود Invoice Sync Status في الطلبات، وقسم Zatca Sync Status في صفحة الطلب (حالة مزامنة فواتير الطلبات مع الهيئة).
- وملف XML الذي ترسله فودكس هو المستند الذي تحكم عليه الهيئة، والحالة التي تعرضها فودكس هي جواب الهيئة عنه. ولا توثّق فودكس حقلاً لرقم التسجيل في ضريبة القيمة المضافة للعميل على الطلب ولا مساراً للفاتورة الضريبية بين المنشآت؛ وما توثّقه هو الفاتورة المبسطة للطلب المغلق أو المرتجع، المُبلَّغ عنها إلى الهيئة. فالفاتورة الضريبية لعميل شركات أو مناسبات لا يغطيها هذا الدليل.
أين يوجد الملف عادةً
يتوقف مكان ملف XML على الطريقة التي تصل بها مستندات نظامك إلى الهيئة، لا على اسم النظام وحده، ولا يسمّي هذا الدليل شاشة أو قائمة إلا حيث تنصّ عليها وثائق المزوِّد نفسه، مع الإحالة إليها وتاريخ قراءتها. والمواضع المعتادة للبحث:
- قسم الفوترة الإلكترونية أو قسم الهيئة في نظامك، أو في الإضافة التي تتولى الفوترة الإلكترونية له؛ فقد يعرض كل مستند مع حالته ويتيح عرض ملف XML الخاص به أو تنزيله.
- بوابة مزوّد حلول الفوترة الإلكترونية، إن كان مزوّد يرسل مستنداتك إلى الهيئة نيابةً عنك؛ فكثيراً ما يُحفظ ملف XML هناك إلى جانب نتيجة تقديم كل مستند للاعتماد أو الإبلاغ عنه.
- تصدير المستند أو تنزيله بعد تقديمه للاعتماد أو الإبلاغ عنه، وقد يأتي مع ملف PDF المرسل إلى العميل.
- مزوّد حلول الفوترة الإلكترونية أو الجهة التي نفّذت النظام لديك. فإن لم يظهر الملف في أيٍّ مما سبق، فاطلب ملف XML بصيغة UBL للمستند كما أُنشئ للهيئة تماماً.
افحص الملف كما أنشأه نظامك. فالنسخة التي تُفتح وتُحفظ من جديد في برنامج آخر قد لا تبقى الملف الذي تتسلّمه الهيئة.
من أين أحصل على ملف XML من فودكس؟
توثّق فودكس تنزيلاً لكل طلب من لوحة التحكم، لا من الكاشير ولا عبر واجهة برمجية. وهذه خطواته كما يذكرها سجل تحديثاتها، وقد قُرئ في 2026-10-15:
- افتح الطلب في لوحة التحكم: الطلبات، ثم صفحة تفاصيل الطلب.
- استخدم زر Download E-Invoice في صفحة تفاصيل الطلب. ويقول سجل التحديثات إن الملف بصيغة XML مقروءة لدى الهيئة، وإن الزر متاح للفواتير التي تمت مزامنتها مع الهيئة بالحالة Success أو Failure (تصدير الفاتورة الإلكترونية).
- ولمعرفة الطلبات التي تستحق الفحص، توثّق فودكس تقريراً تحت التقارير ثم تقارير الأعمال باسم ZATCA Invoice List، يُرشَّح بمرجع الطلب والفرع وحالة المزامنة (Success أو Success with Warning أو Failure) ورمز الخطأ أو التحذير وتاريخ العمل، مع نافذة عرض تُظهر رموز الأخطاء والتحذيرات ورسائلها كما أعادتها الهيئة (تقرير قائمة فواتير الهيئة).
فعيّنة يوم واحد من جهاز واحد هي مجموعة طلبات من ذلك الفرع وذلك التاريخ، تُنزَّل طلباً طلباً؛ ولا توثّق فودكس تصديراً جماعياً. والطلب الذي حالته Failure هو ما تنزّله أولاً: فرمز الهيئة في التقرير يقول أي قاعدة رفضته، وتقرير مطابق على ملف XML نفسه يقول أي عنصر وما الذي تتحقق منه، قبل إعادة إرسال الطلب. وفهرس وثائق المطوّرين لدى فودكس لا يذكر قسماً لملف الفاتورة الإلكترونية أو رمز الاستجابة السريعة أو حالة الهيئة (وثائق المطوّرين لدى فودكس)، فلا طريقة موثَّقة فيه لجلب الملفات عبر واجهة برمجية.
والقوائم تتغيّر، ولم يتحقق مطابق من هذه الشاشات بنفسه. فإن اختلف ما تراه، أو لم يظهر الزر لطلب تحتاجه، فاطلب من دعم فودكس ملف XML للطلب كما أُرسل إلى الهيئة تماماً. وإن تعذّر الحصول على الملف فليس لدى مطابق ما يفحصه: فما يفحصه هو الملف.
ما الذي تتحقق منه في الملف المصدَّر
- بيانات البائع في كل فرع: تكتب فودكس الفاتورة من سجل الفرع، فالفرع الذي تُرك رقم تسجيله فارغاً أو عنوانه نصاً حراً يخفق وحده. تحقّق من أن
cac:PartyTaxScheme/cbc:CompanyIDللبائع هو الأرقام الخمسة عشر وحدها، يبدأ بالرقم 3 وينتهي به (ويذكر MTB-BR-KSA-40 الرقم الفارغ)، ومن وجودcbc:StreetNameتحتcac:PostalAddressللبائع (MTB-BR-KSA-09)، ومن أن رقم السجل التجاري مكتوب فيcac:PartyIdentification/cbc:IDمع السمةschemeIDبالقيمةCRN(MTB-BR-KSA-08). - شكل الفاتورة المبسطة: تحقّق من أن
cbc:InvoiceTypeCodeيحمل388في البيع و381في المرتجع، ومن أن السمةnameعليه تبدأ بـ02(ويذكر MTB-STRUCT-01 السمة)، ومن وجود مرجع المستندQRبحمولة غير فارغة بترميز base64 (MTB-BR-KSA-27). - النسبة: تطلب فودكس نسبة واحدة هي 15% على كل صنف خاضع. تحقّق من أن كل تفصيل خاضع للنسبة الأساسية يحمل
cbc:Percentبالقيمة15؛ ويذكر MTB-BR-KSA-84 أي نسبة أخرى تحت الفئةS. - العدّاد والبصمة لكل جهاز: كل جهاز كاشير وحدة فوترة مستقلة، فعدّاد
ICVفيه يسير وحده، وبصمةPIHفيه هي بصمة المستند السابق من الجهاز نفسه. تحقّق من وجود المرجعين (MTB-BR-KSA-33 وMTB-BR-KSA-61)؛ وطلبات يوم واحد من جهاز واحد ينبغي أن تُظهر العدّاد يزيد واحداً واحداً. - المرتجعات: الطلب المرتجع يصدر إشعاراً دائناً. تحقّق من أنه يحمل سبباً في
cac:PaymentMeans/cbc:InstructionNote(MTB-BR-KSA-17) ورقم فاتورة الطلب الأصلي فيcac:BillingReference/cac:InvoiceDocumentReference/cbc:ID(MTB-BR-KSA-56).
وليس شيء من هذا إعداداً يغيّره الفرع من الكاشير: فالملاحظة على ملف من فودكس تذهب إلى من يدير لوحة التحكم لديك، ومنه إلى دعم فودكس مع معرِّف القاعدة ومسار العنصر.
ما الذي تفعله بالملاحظات
- أصلح المصدر لا الملف. فكل ملاحظة تسمّي عنصراً في ملف XML، والقيمة التي فيه جاءت من نظامك: من إعداد، أو من سجل رئيس كسجل المنشأة أو العميل أو الصنف أو الرمز الضريبي، أو من الربط الذي يكتب الملف. صحّحها هناك ليُنشأ المستند التالي سليماً.
- لا تعدّل ملف XML يدوياً ثم ترسل النسخة المعدَّلة. فالملف الذي يذهب إلى الهيئة هو الذي ينشئه نظامك ويوقّعه، والنسخة المعدَّلة ليست ذلك الملف.
- وإن كان الخلل في الربط نفسه، فاعرض الملاحظة على من يتولى الفوترة الإلكترونية لديك: مزوِّد النظام، أو مزوّد الإضافة أو التكامل، أو الجهة المنفِّذة. فمعرِّف القاعدة ومسار العنصر وصفحة القاعدة هي ما يحتاجونه ليجدوه.
- والمستند الذي قُبل بعد تقديمه للاعتماد أو أُبلغ عنه لا يُصحَّح بإرساله مرة أخرى. اسأل محاسبك أو مزوّدك عن الطريقة التي يصحّحه بها نظامك؛ وهي في الغالب إشعار دائن أو مدين، ومستند جديد عند الحاجة.
- وبعد إصلاح المصدر، افحص الملف التالي الذي ينشئه نظامك.
المصادر
- مركز مساعدة فودكس: دليل تفعيل المرحلة الثانية من الفوترة الإلكترونية (بالإنجليزية)
- فودكس: المرحلة الثانية من الفوترة الإلكترونية
- سجل تحديثات فودكس: تصدير الفاتورة الإلكترونية (المملكة فقط)
- سجل تحديثات فودكس: تقرير قائمة فواتير الهيئة
- سجل تحديثات فودكس: متابعة حالة التفعيل من لوحة التحكم
- سجل تحديثات فودكس: حالة مزامنة فواتير الطلبات مع الهيئة
- وثائق المطوّرين لدى فودكس
قُرئت الصفحات كلها في 2026-10-15؛ وسجل التحديثات يؤرّخ مدخلاته تأريخاً نسبياً، فهي مقتبسة كما كانت في ذلك اليوم. ووثائق المزوِّدين تتغيّر.
القواعد التي تقرؤها
صفحات القواعد التي يربطها هذا الدليل، بترتيب ورودها أعلاه. تنقل كل صفحة نص الفحص المنشور، وتذكر ما يذكره مطابق، وتسمّي ما تتحقق منه في الربط داخل وحدة الفوترة الإلكترونية.
MTB-BR-KSA-40رقم التسجيل في ضريبة القيمة المضافة للبائع فارغMTB-BR-KSA-09عنوان البائع لا يحمل اسم الشارعMTB-BR-KSA-08تعريف البائع لا يحمل رمز نظام المعرِّفMTB-STRUCT-01رمز نوع معاملة الفاتورة غير مكتوب على عنصر رمز نوع الفاتورةMTB-BR-KSA-27الفاتورة المبسطة لا تحمل مرجع رمز الاستجابة السريعةMTB-BR-KSA-84نسبة الفئة الأساسية ليست 15 ولا 5MTB-BR-KSA-33قيمة عدّاد الفواتير غير موجودةMTB-BR-KSA-61الفاتورة لا تحمل بصمة الفاتورة السابقةMTB-BR-KSA-17الإشعار الدائن أو المدين لا يذكر سبب إصدارهMTB-BR-KSA-56الإشعار الدائن أو المدين لا يشير إلى الفاتورة الأصلية