BR-S-08تفصيل للفئة الخاضعة للنسبة الأساسية ولا شيء خاضع لها في الفاتورة
يفحص مطابق ملف XML للفاتورة الإلكترونية في المرحلة الثانية قبل إرساله: تحقق مسبق وفق متطلبات هيئة الزكاة والضريبة والجمارك المنشورة، لا اعتماداً من الهيئة. وتشرح هذه الصفحة قاعدة واحدة هي BR-S-08.
خمس عمليات فحص شهرياً في باقة المجان. يُفحص الملف في الذاكرة ولا يُحفظ.
الرسالة كما تنشرها هيئة الزكاة والضريبة والجمارك
[BR-S-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is " Standard rated" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Standard Rate".
ما الذي يذكره مطابق
مدخل لكل حالة تُذكر فيها هذه القاعدة في التقرير.
صورة القيمة في التقرير
صورة القيمة التي وُجدت — empty وnot_15_digits وما شابههما — لا القيمة نفسها.
تفصيل للفئة الخاضعة للنسبة الأساسية ولا شيء خاضع لها في الفاتورة
صورة القيمة في التقريرcategory_unusedتفصيل لفئة لا يستعملها شيء في الفاتورة
ما الخلل
يحمل تفصيل ضريبة القيمة المضافة للفاتورة عنصر cac:TaxSubtotal مرمَّزاً S، أي خاضعاً للنسبة الأساسية، تحت النظام الضريبي لضريبة القيمة المضافة، لكن لا صنف في أي بند ولا خصم ولا رسم على مستوى المستند مرمَّز S تحت هذا النظام. والقاعدة BR-S-08 من معيار EN 16931، التي تنفّذها أداة الفحص لدى هيئة الزكاة والضريبة والجمارك منذ الإصدار 3.4.8 من حزمة أدوات التطوير SDK، تفحص أن المبلغ الخاضع للفئة الخاضعة للنسبة الأساسية يساوي مبالغ البنود الخاضعة لها مطروحاً منها الخصومات ومضافاً إليها الرسوم، وترصد التفصيل الذي لا شيء فيه يُجمع. وتصنّف الهيئة هذه القاعدة تحذيراً لا خطأً، فالتحذير وحده لا يؤدي إلى رفض المستند.
ما الذي تتحقق منه في وحدة الفوترة الإلكترونية
فإما أن التفصيل لا مكان له، وإما أن البنود التي يلخّصها مرمَّزة بفئة أخرى. تحقّق أن رمز الفئة في صنف كل بند (cac:ClassifiedTaxCategory/cbc:ID) ونظامه الضريبي يطابقان التفصيل الذي يُجمع فيه البند؛ والسبب المعتاد بند أُعيد ترميزه خاضعاً بنسبة الصفر أو معفى أو خارجاً عن النطاق بينما بقي التفصيل على S.
المبلغ الخاضع في التفصيل الخاضع للنسبة الأساسية لا يطابق بنوده
صورة القيمة في التقريرtaxable_amount_mismatchالمبلغ الخاضع لا يطابق البنود
ما الخلل
المبلغ الخاضع في تفصيل الفئة الخاضعة للنسبة الأساسية (S)، أي عنصر cbc:TaxableAmount في عنصر cac:TaxSubtotal المرمَّز S تحت النظام الضريبي لضريبة القيمة المضافة مباشرة تحت كتلة cac:TaxTotal الخاصة بالفاتورة، لا يساوي مجموع مبالغ البنود الخاضعة للنسبة الأساسية، مضافاً إليه الرسوم على مستوى المستند من الفئة نفسها ومطروحاً منه خصوماتها. وتقارن القاعدة BR-S-08 من معيار EN 16931، التي تنفّذها أداة الفحص لدى هيئة الزكاة والضريبة والجمارك منذ الإصدار 3.4.8 من حزمة أدوات التطوير SDK، الطرفين مقارنة صارمة: لا هامش تسامح ولا خطوة تقريب، بخلاف القاعدتين BR-S-09 وBR-CO-17 اللتين تسمحان بهامش وحدة عملة واحدة حول مبلغ ضريبة الفئة، ففرق هللة واحدة يستدعي هذه الملاحظة. وأمر يخص قاعدة الفئة الخاضعة للنسبة الأساسية وحدها: إذا حملت الفاتورة أكثر من تفصيل خاضع للنسبة الأساسية، كمجموعة بنسبة 15% وأخرى بنسبة 5%، فإن الهيئة تجمع المبالغ الخاضعة لها كلها تحت كتلة cac:TaxTotal نفسها قبل المقارنة، فتُحكم المجموعات معاً لا واحدة واحدة، والتفصيل الذي لا مبلغ خاضع فيه لا يضيف شيئاً. وتصنّف الهيئة هذه القاعدة تحذيراً لا خطأً، فالتحذير وحده لا يؤدي إلى رفض المستند. وأمران عن المجموعين، لأنهما أضيق مما يوحي به اللفظ: يُؤخذان من العناصر المباشرة تحت جذر المستند وحدها، فالخصم الملحق ببند فاتورة ليس فيهما؛ وتُلتقط البنود والرسوم والخصومات المشاركة بحرف الفئة وحده، بلا اختبار أن يكون النظام الضريبي VAT.
ما الذي تتحقق منه في وحدة الفوترة الإلكترونية
أعِد بناء الرقم بيدك من الملف المصدَّر: اجمع عنصر cbc:LineExtensionAmount في كل بند فئته S، وأضف الرسوم على مستوى المستند المرمَّزة S، واطرح الخصومات على مستوى المستند المرمَّزة S، ثم قارن الناتج بعنصر cbc:TaxableAmount في التفصيل، أو بمجموع مبالغ تفاصيل S إن تعدّدت. والأسباب المتكرّرة: خصم على مستوى المستند تحمل كتلته cac:TaxCategory حرفاً آخر فلا تطرحه القاعدة؛ وخصم طُبِّق على التفصيل ولم يُطبَّق على عنصر cbc:LineExtensionAmount في البند؛ ومبلغ صافٍ للبند قُرِّب على غير ما قُرِّب به التفصيل؛ وتفصيل نُقل من نسخة سابقة للمستند بعد تغيّر بند. وابدأ بالملخّص الضريبي لكل فئة، فعنده يفترق التفصيل عن بنوده.
الفحص الذي يُنفَّذ
منقول حرفياً من ملفات قواعد التحقق التي تنشرها الهيئة، عند الملف والسطر المذكورين أدناه. والتعبير المُنفَّذ هو ما يُقيَّم على المستند، أما التعبير المذكور في التقرير فهو ما يظهر عند الإخفاق، وهما لا يتطابقان دائماً.
التعبير المُنفَّذ
count(/*/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT'])> 0 and not(exists(../../../cac:AllowanceCharge/cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'S']) or exists(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'S']])) or not( sum((../../cac:TaxSubtotal[cac:TaxCategory/normalize-space(cbc:ID)='S']/xs:decimal(cbc:TaxableAmount)))=(sum(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S']/xs:decimal(cbc:LineExtensionAmount) ) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S']/xs:decimal(cbc:Amount)) ))
التعبير المذكور في التقرير
count(/*/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT'])> 0 and (exists(../../../cac:AllowanceCharge/cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'S']) or exists(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'S']])) or ((xs:decimal(../cbc:TaxableAmount) =(sum(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S']/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S']/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S']/xs:decimal(cbc:Amount)) )))
كما يرد في الإصدار 3.4.8 من حزمة أدوات التطوير SDK التي تنشرها الهيئة: النسخة المقتبسة هنا هي الملف الذي يتضمنه ذلك الإصدار بايتاً ببايت. والتاريخ في اسم الملف هو الاسم الذي تعطيه الهيئة للملف، أما القواعد فيه فهي قواعد الإصدار 3.4.8.
مثال عملي
مستند اصطناعي من مجموعة الاختبار المقيسة تُرصد عليه هذه القاعدة، تُعرض منه الأسطر التي يختلف فيها عن مستند اجتاز الفحص. ولا يذكر تقرير مطابق سوى صورة القيمة، لا القيمة نفسها.
المستند
bad-113-s-taxable-amount-off-by-hundredth.xml
ما حكم به مطابق
اجتاز
صورة القيمة في التقرير
taxable_amount_mismatchالمبلغ الخاضع لا يطابق البنود