BR-DEC-02المبلغ الأساس للخصم على مستوى المستند مكتوب بأكثر من منزلتين عشريتين

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

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

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

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

[BR-DEC-02]-The allowed maximum number of decimals for the Document level allowance base amount (BT-93) is 2.

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

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

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

المبلغ الأساس للخصم على مستوى المستند مكتوب بأكثر من منزلتين عشريتين

صورة القيمة في التقريرmore_than_two_decimalsأكثر من منزلتين عشريتين

ما الخلل

العنصر cbc:BaseAmount في كتلة خصم على مستوى المستند، وهو الحقل BT-93 الذي يحمل المبلغ الذي طُبِّقت عليه نسبة الخصم المئوية، يحمل أكثر من محرفين بعد أول نقطة فيه، وترصد هيئة الزكاة والضريبة والجمارك ذلك بموجب القاعدة BR-DEC-02 من معيار EN 16931، وتصنّفه تحذيراً لا خطأً، فالتحذير وحده لا يؤدي إلى رفض المستند. وتعدّ القاعدة المحارف الواقعة بعد أول نقطة في نص العنصر ولا تحكم على مقدار القيمة، فالقيمة المكتوبة بثلاث منازل تخفق ولو كان الرقم الثالث صفراً، والقيمة التي لا نقطة فيها تجتاز مهما كان مقدارها، والعنصر الغائب أو الخالي يجتاز كذلك. وهذا العنصر اختياري وُضِع لبيان طريقة الحساب، حتى يرى القارئ النسبة والمبلغ الأساس وقد أنتجا مبلغ الخصم. ولا تقرؤه هذه القاعدة إلا حين تقع كتلة الخصم مباشرةً تحت عنصر الفاتورة وتكون قيمة العنصر cbc:ChargeIndicator فيها false؛ أما العنصر نفسه في بند فكان موضوع القاعدة BR-DEC-25 التي لم يعد الإصدار 3.4.8 يبلغها. ولجاريه في الكتلة قاعدتان خاصتان بهما: مبلغ الخصم في الحقل BT-92 تفحصه القاعدة BR-DEC-01، والنسبة المئوية في الحقل BT-94 تفحصها قاعدة الهيئة BR-KSA-DEC-01 التي تسمح بست منازل عشرية لا بمنزلتين، فتوقّع ورود هذه الملاحظة إلى جانبهما.

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

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

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

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

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

not(string-length(substring-after(cbc:BaseAmount,'.'))<=2)

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

string-length(substring-after(cbc:BaseAmount,'.'))<=2
العناصر التي يُقيَّم عليها
/ubl:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = false()] | /cn:CreditNote/cac:AllowanceCharge[cbc:ChargeIndicator = false()]
المصدر
vendor/zatca/schematron/CEN-EN16931-UBL.xsl:228

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

مثال عملي

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

المستند
bad-86-document-allowance-base-decimals.xml
ما حكم به مطابق
اجتاز
صورة القيمة في التقرير
more_than_two_decimalsأكثر من منزلتين عشريتين

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

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

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

افحص فاتورة

افحص فاتورتك

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