BR-53: مع عملة الضريبة (BT-6) يُذكر إجمالي الضريبة بها (BT-111)

الشرح من فريق ماثل، مبني على نص قواعد الهيئة والشرط اللي ينفّذه SDK 3.4.8 · آخر تحديث

تحذير: الفاتورة تنقبل مع تحذيربشرط، شوف الشرحالحقول: BT-6, BT-111

تنطبق القاعدة فقط عند وجود cbc:TaxCurrencyCode. وفق التنفيذ الفعلي، تفشل إذا وُجد عنصر cac:TaxTotal لا يحتوي على cac:TaxSubtotal وكان خاليًا من cbc:TaxAmount، أو كانت قيمة @currencyID في cbc:TaxAmount مختلفة عن cbc:TaxCurrencyCode. الاختبار المعروض هو شرط الفشل (لا شرط النجاح) ويشمل كل عناصر cac:TaxTotal، بينما يقتصر الفحص المنفَّذ على عناصر cac:TaxTotal التي لا تحتوي تفاصيل ضريبية، ولا يفشل إذا لم يوجد أي منها.

كيف تحلها

عند تحديد cbc:TaxCurrencyCode أضف عنصر cac:TaxTotal دون تفاصيل ضريبية يكون مبلغه بتلك العملة، مثلًا مع SAR: <cac:TaxTotal><cbc:TaxAmount currencyID="SAR">15.00</cbc:TaxAmount></cac:TaxTotal>.

نص الهيئة الرسمي

[BR-53]-If the VAT accounting currency code (BT-6) is present, then the Invoice total VAT amount in accounting currency (BT-111) shall be provided.
المصدر: ZATCA SDK 3.4.8 · EN 16931 (CEN) rules

متى تفشل (الشرط اللي ينفّذه SDK الهيئة)

(exists(cbc:TaxCurrencyCode) and not(every $taxcurrency in ./cac:TaxTotal[not(cac:TaxSubtotal)]/cbc:TaxAmount/@currencyID satisfies $taxcurrency = cbc:TaxCurrencyCode)) or (exists(cbc:TaxCurrencyCode) and not(every $taxamount in ./cac:TaxTotal[not(cac:TaxSubtotal)] satisfies exists($taxamount/cbc:TaxAmount)))

قواعد قريبة

افحص فاتورتك على قواعد الهيئة

الصق الـ XML وتشوف كل الأخطاء والتحذيرات، والفحص يصير في متصفحك وما ترسل الفاتورة لأي مكان.

افحص فاتورة أو جرّب ماثل