BR-53: مع عملة الضريبة (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)))
قواعد قريبة
- BR-KSA-68 · كل فاتورة تحتاج رمز عملة الضريبة (BT-6)
- BR-KSA-89 · عملة الهدف في سعر الصرف تطابق عملة الضريبة
- BR-KSA-97 · فاتورة بغير الريال: إجمالي الضريبة بالريال يختلف عن الإجمالي
- BR-KSA-CL-02 · سمة currencyID لكل مبلغ تطابق عملة الفاتورة
- BR-KSA-EN16931-02 · عملة احتساب الضريبة TaxCurrencyCode يجب أن تكون SAR
افحص فاتورتك على قواعد الهيئة
الصق الـ XML وتشوف كل الأخطاء والتحذيرات، والفحص يصير في متصفحك وما ترسل الفاتورة لأي مكان.
افحص فاتورة أو جرّب ماثل