يفحص مطابق ملف XML للفاتورة الإلكترونية في المرحلة الثانية قبل إرساله: تحقق مسبق وفق متطلبات هيئة الزكاة والضريبة والجمارك المنشورة، لا اعتماداً من الهيئة. وتشرح هذه الصفحة قاعدة واحدة هي BR-KSA-14.
خمس عمليات فحص شهرياً في باقة المجان. يُفحص الملف في الذاكرة ولا يُحفظ.
الرسالة كما تنشرها هيئة الزكاة والضريبة والجمارك
[BR-KSA-14]-The buyer identification (BT-46), required only if buyer is not VAT registered, then the buyer identification (BT-46) must be provided with one of the scheme IDs (BT-46-1) (TIN, CRN, MOM, MLS, 700, SAG, NAT, GCC, IQA, PAS, OTH) and must contain only alphanumeric characters. Tax Identification Number "TIN" as schemeID ;Commercial registration number with "CRN" as schemeID ;MOMRAH license with "MOM" as schemeID ;MHRSD license with "MLS" as schemeID ;700 Number with "700" as schemeID ;MISA license with "SAG" as schemeID ;National ID with "NAT" as schemeID ;GCC ID with "GCC" as schemeID ;Iqama Number with "IQA" as schemeID ;Passport ID with "PAS" as schemeID ;Other ID with "OTH" as schemeID. ;In case of multiple commercial registrations, the seller should fill the commercial registration of the branch in respect of which the Tax Invoice is being issued. In case multiple IDs exist then one of the above must be entered following the sequence specified above
ما الذي يذكره مطابق
مدخل لكل حالة تُذكر فيها هذه القاعدة في التقرير.
صورة القيمة في التقرير
صورة القيمة التي وُجدت — empty وnot_15_digits وما شابههما — لا القيمة نفسها.
تعريف المشتري لا يحمل رمز نظام المعرِّف
صورة القيمة في التقريرscheme_id_missingلا رمز نظام معرِّف
ما الخلل
أحد تعريفات المشتري BT-46، وهو عنصر cbc:ID تحت cac:PartyIdentification في كتلة طرف المشتري، لا يحمل السمة schemeID أو يحملها فارغة. وهذه السمة تبيّن نوع المعرِّف الذي تحمله القيمة، وترفض هيئة الزكاة والضريبة والجمارك التعريف الخالي منها بموجب القاعدة BR-KSA-14. وانتبه عند قراءة مخرجات الهيئة نفسها هنا: فالاختبار الذي تطبعه إلى جانب هذه القاعدة يُغفل فحص الوجود، فيوحي نصه وحده بأن غياب السمة مقبول. أما الفحص الذي ينفَّذ فعلاً فيرفضه.
ما الذي تتحقق منه في وحدة الفوترة الإلكترونية
كل تعريف للمشتري يحتاج إلى شقّين: القيمة في العنصر والنوع في السمة schemeID. وتُقبل للمشتري أحد عشر نوعاً: NAT لرقم الهوية الوطنية، وTIN لرقم التعريف الضريبي، وIQA لرقم الإقامة، وPAS لجواز السفر، وCRN لرقم السجل التجاري، وMOM وMLS وSAG للرخص المقابلة، و700 للرقم الذي يذكره معيار تطبيق XML، وGCC لهوية خليجية، وOTH لما عدا ذلك. والمعرِّف ونوعه في أغلب الأنظمة عمودان في جدول واحد ولا يكتب التصدير إلا الأول.
رمز نظام معرِّف المشتري ليس من الرموز التي تقبلها الهيئة
صورة القيمة في التقريرscheme_id_not_listedرمز نظام معرِّف لا تقبله الهيئة
ما الخلل
أحد تعريفات المشتري BT-46 يحمل سمة schemeID ليست ضمن القائمة التي تقبلها هيئة الزكاة والضريبة والجمارك للمشتري، فيُرفض بموجب القاعدة BR-KSA-14. وفي الإصدار 3.4.8 من حزمة أدوات التطوير SDK الذي تقرؤه حزمة القواعد 2.0.0 تضم القائمة أحد عشر رمزاً، هي TIN وNAT وIQA وPAS وCRN وMOM وMLS و700 وSAG وGCC وOTH، وتطبعها رسالة الهيئة لهذه القاعدة كلها. وكانت الإصدارات السابقة (3.0.8) تقبل عشرة منها دون 700، وكانت رسالتها تُسقط الرمز TIN مع أن الفحص كان يقبله.
ما الذي تتحقق منه في وحدة الفوترة الإلكترونية
اربط كل معرِّف تحفظه للعميل بأحد الرموز الأحد عشر: NAT لرقم الهوية الوطنية السعودية، وIQA لرقم إقامة المقيم، وPAS لجواز السفر، وTIN لرقم التعريف الضريبي، وCRN للسجل التجاري للمنشأة، وGCC لهوية مواطن خليجي، وMOM أو MLS أو SAG للرخص، و700 للرقم الذي يذكره معيار تطبيق XML، وOTH لما لا ينطبق عليه شيء منها. وOTH إجابة مشروعة. وقائمة البائع أقصر إذ تقتصر على CRN وMOM وMLS وSAG وOTH و700، فالرمز الصالح للمشتري قد تُرصد عليه ملاحظة تحذير على البائع.
قيمة تعريف المشتري تحتوي على محارف غير الحروف والأرقام
صورة القيمة في التقريرvalue_not_alphanumericيحتوي على محارف غير الحروف والأرقام
ما الخلل
أحد تعريفات المشتري BT-46 يحمل قيمة فيها ما ليس حرفاً لاتينياً ولا رقماً. ولا ترصد هذه الملاحظة إلا حزم القواعد السابقة للإصدار 2.0.0: فالقاعدة BR-KSA-14 في الإصدار 3.0.8 من حزمة أدوات التطوير SDK التي تنشرها هيئة الزكاة والضريبة والجمارك كانت تشترط كذلك أن تكون القيمة أبجدية رقمية وترفض أي محرف آخر: مسافة أو شرطة أو شرطة مائلة أو نقطة أو نصاً عربياً. أما في الإصدار 3.4.8 الذي تقرؤه حزمة القواعد 2.0.0 فالقاعدة BR-KSA-14 لم تعد تفحص القيمة، وإن كانت رسالتها ما زالت تنص على اقتصارها على الحروف والأرقام، فلا يحمل هذه الملاحظة تقرير صادر عن الحزمة 2.0.0. ويضيف الإصدار 3.4.8 فحوصاً تحذيرية مستقلة لصيغة قيم المعرِّفات (من BR-KSA-F-07 إلى BR-KSA-F-13) لا يحاكيها مطابق.
ما الذي تتحقق منه في وحدة الفوترة الإلكترونية
أرسل المعرِّف كما يرد في المستند المأخوذ منه دون تنسيق: بلا مسافات داخل رقم جواز السفر أو الإقامة، وبلا شرطات بين المجموعات، وبلا بادئة. والأسباب الشائعة: قيمة محفوظة بفواصل للعرض وتُصدَّر كما هي، وسجل عميل استُعمل فيه حقل المعرِّف لحفظ ملاحظة مع الرقم.
الفحص الذي يُنفَّذ
منقول حرفياً من ملفات قواعد التحقق التي تنشرها الهيئة، عند الملف والسطر المذكورين أدناه. والتعبير المُنفَّذ هو ما يُقيَّم على المستند، أما التعبير المذكور في التقرير فهو ما يظهر عند الإخفاق، وهما لا يتطابقان دائماً.
التعبير المُنفَّذ
not( string-length(normalize-space( ./@schemeID)) > 2 and contains('TIN NAT IQA PAS CRN MOM MLS 700 SAG GCC OTH', normalize-space(./@schemeID)))
التعبير المذكور في التقرير
contains(' NAT TIN IQA PAS CRN MOM MLS SAG GCC OTH 700', ./@schemeID) and (matches((.), '^[a-zA-Z0-9]*$'))
كما يرد في الإصدار 3.4.8 من حزمة أدوات التطوير SDK التي تنشرها الهيئة: النسخة المقتبسة هنا هي الملف الذي يتضمنه ذلك الإصدار بايتاً ببايت. والتاريخ في اسم الملف هو الاسم الذي تعطيه الهيئة للملف، أما القواعد فيه فهي قواعد الإصدار 3.4.8.
مثال عملي
مستند اصطناعي من مجموعة الاختبار المقيسة تُرصد عليه هذه القاعدة، تُعرض منه الأسطر التي يختلف فيها عن مستند اجتاز الفحص. ولا يذكر تقرير مطابق سوى صورة القيمة، لا القيمة نفسها.