BR-CL-01رمز نوع الفاتورة ليس من رموز الفواتير في القائمة UNTDID 1001

يفحص مطابق ملف XML للفاتورة الإلكترونية في المرحلة الثانية قبل إرساله: تحقق مسبق وفق متطلبات هيئة الزكاة والضريبة والجمارك المنشورة، لا اعتماداً من الهيئة. وتشرح هذه الصفحة قاعدة واحدة هي BR-CL-01.

افحص 5 فواتير مجاناً

خمس عمليات فحص شهرياً في باقة المجان. يُفحص الملف في الذاكرة ولا يُحفظ.

الرسالة كما تنشرها هيئة الزكاة والضريبة والجمارك

[BR-CL-01]-The document type code MUST be coded by the invoice and credit note related code lists of UNTDID 1001.

فحوص أخرى تُذكر في التقرير نفسه

  • BR-KSA-05

    [BR-KSA-05]-The invoice type code (BT-3) must be equal to one of value from the subset of UN/CEFACT code list 1001, D.16B agreed for KSA electronic invoices. Please refer paragraph 11.2.1 of XML implementation Standards.

ما الذي يذكره مطابق

مدخل لكل حالة تُذكر فيها هذه القاعدة في التقرير.

صورة القيمة في التقرير
صورة القيمة التي وُجدت — empty وnot_15_digits وما شابههما — لا القيمة نفسها.

رمز نوع الفاتورة ليس من رموز الفواتير في القائمة UNTDID 1001

صورة القيمة في التقريرnot_in_untdid1001ليس من رموز الفواتير في القائمة UNTDID 1001

ما الخلل

قيمة العنصر cbc:InvoiceTypeCode ليست من رموز مستندات الفواتير في القائمة UNTDID 1001 التي يعتمدها معيار EN 16931، فترفض هيئة الزكاة والضريبة والجمارك المستند بموجب القاعدة BR-CL-01. وتُزال المسافات من أول القيمة وآخرها قبل البحث عنها، أما القيمة التي في وسطها مسافة فلا تطابق أي رمز. وهذا الفحص يسبق فحص المملكة: فالقاعدة BR-KSA-05 تحصر القائمة بعده في 388 و383 و381، فالرمز 386 مثلاً يجتاز هذه القاعدة ويخفق في تلك، والرمز الذي ليس في القائمة UNTDID 1001 أصلاً يخفق في الاثنتين.

ما الذي تتحقق منه في وحدة الفوترة الإلكترونية

راجع القيمة التي يكتبها نظامك في العنصر cbc:InvoiceTypeCode. فهي عند الهيئة 388 للفاتورة الضريبية و383 للإشعار المدين و381 للإشعار الدائن، ولا شيء غيرها في العنصر. والأسباب الشائعة: رقم المستند أو رمز داخلي لنوع المستند مربوط بهذا الحقل، وأحرف يضيفها قالب إلى القيمة، ورمز محشو بأصفار في أوله ليبلغ عرضاً ثابتاً.

الفحص الذي يُنفَّذ

منقول حرفياً من ملفات قواعد التحقق التي تنشرها الهيئة، عند الملف والسطر المذكورين أدناه. والتعبير المُنفَّذ هو ما يُقيَّم على المستند، أما التعبير المذكور في التقرير فهو ما يظهر عند الإخفاق، وهما لا يتطابقان دائماً.

التعبير المُنفَّذ

not((self::cbc:InvoiceTypeCode and ((not(contains(normalize-space(.), ' ')) and contains(' 80 82 84 130 202 203 204 211 295 325 326 380 381 383 384 385 386 387 388 389 390 393 394 395 456 457 527 575 623 633 751 780 935 ', concat(' ', normalize-space(.), ' '))))) or (self::cbc:CreditNoteTypeCode and ((not(contains(normalize-space(.), ' ')) and contains(' 81 83 261 262 296 308 396 420 458 532 ', concat(' ', normalize-space(.), ' '))))))

التعبير المذكور في التقرير

(self::cbc:InvoiceTypeCode and ((not(contains(normalize-space(.), ' ')) and contains(' 80 82 84 130 202 203 204 211 295 325 326 380 381 383 384 385 386 387 388 389 390 393 394 395 456 457 527 575 623 633 751 780 935 ', concat(' ', normalize-space(.), ' '))))) or (self::cbc:CreditNoteTypeCode and ((not(contains(normalize-space(.), ' ')) and contains(' 81 83 261 262 296 308 396 420 458 532 ', concat(' ', normalize-space(.), ' ')))))
العناصر التي يُقيَّم عليها
cbc:InvoiceTypeCode | cbc:CreditNoteTypeCode
المصدر
vendor/zatca/schematron/CEN-EN16931-UBL.xsl:1814

كما يرد في الإصدار 3.4.8 من حزمة أدوات التطوير SDK التي تنشرها الهيئة: النسخة المقتبسة هنا هي الملف الذي يتضمنه ذلك الإصدار بايتاً ببايت. والتاريخ في اسم الملف هو الاسم الذي تعطيه الهيئة للملف، أما القواعد فيه فهي قواعد الإصدار 3.4.8.

مثال عملي

مستند اصطناعي من مجموعة الاختبار المقيسة تُرصد عليه هذه القاعدة، تُعرض منه الأسطر التي يختلف فيها عن مستند اجتاز الفحص. ولا يذكر تقرير مطابق سوى صورة القيمة، لا القيمة نفسها.

الأسطر التي يختلف فيها عن مستند اجتاز الفحص

  • هذا المثال
  • مستند اجتاز الفحص
<cbc:IssueDate>2026-09-01</cbc:IssueDate><cbc:IssueTime>10:00:00</cbc:IssueTime>هذا المثال: <cbc:InvoiceTypeCode name="0100000">3888</cbc:InvoiceTypeCode>مستند اجتاز الفحص: <cbc:InvoiceTypeCode name="0100000"> 388 </cbc:InvoiceTypeCode><cbc:DocumentCurrencyCode>SAR</cbc:DocumentCurrencyCode><cbc:TaxCurrencyCode>SAR</cbc:TaxCurrencyCode>
المستند
bad-10-overlong-type-code.xml
ما حكم به مطابق
لم يجتز
صورة القيمة في التقرير
not_in_untdid1001ليس من رموز الفواتير في القائمة UNTDID 1001

نزّل هذا المثال (.xml)افحصه في مطابق

مثال هذه الصفحة، يُفحص بالقواعد نفسها التي يمر بها ملفك عند الرفع. بلا رفع وبلا تسجيل دخول.

قواعد تُقيَّم على الموضع نفسه من المستند، وكثيراً ما تُرصد عدة قواعد منها معاً بسبب قيمة واحدة خاطئة.

افحص فاتورة

افحص فاتورتك

© 2026 Hayatiq AI Solutions F.Z.E. جميع الحقوق محفوظة.