BR-KSA-30: طريقة التوقيع يجب أن تكون معرّف XAdES المغلّف
للفواتير المبسطة وإشعاراتها (@name يبدأ بـ x27;02')، على كل مرفق عدا مرفق PIH (عمليًا مرفق QR): يجب أن يكون cbc:EmbeddedDocumentBinaryObject في المرفق غير فارغ، وأن تساوي قيمة cac:Signature/cbc:SignatureMethod القيمة x27;urn:oasis:names:specification:ubl:dsig:enveloped:xades';. رغم أن النص الرسمي يذكر كل مستند، لا تُفحص الفواتير القياسية.
كيف تحلها
في cac:Signature ضع <cbc:SignatureMethod>urn:oasis:names:specification:ubl:dsig:enveloped:xades</cbc:SignatureMethod>، وتأكد أن مرفق QR غير فارغ.
نص الهيئة الرسمي
[BR-KSA-30]-The document cryptographic stamp (KSA-15) must contain the exact "urn:oasis:names:specification:ubl:dsig:enveloped:xades" value for signature method.
المصدر: ZATCA SDK 3.4.8 · ZATCA KSA rules
متى تفشل (الشرط اللي ينفّذه SDK الهيئة)
not(exists(cbc:EmbeddedDocumentBinaryObject) and (cbc:EmbeddedDocumentBinaryObject) != '' and (//cac:Signature/cbc:SignatureMethod) = 'urn:oasis:names:specification:ubl:dsig:enveloped:xades')
قواعد قريبة
- BR-KSA-28 · معرّف معلومات التوقيع يجب أن يكون ...ubl:signature:1
- BR-KSA-29 · معرّف التوقيع ومرجعه يجب أن يكونا ...signature:Invoice
- BR-KSA-60 · الفاتورة المبسطة تتطلب عنصر cac:Signature (KSA-15)
- BR-KSA-27 · الفاتورة المبسطة يجب أن تحتوي على رمز QR (KSA-14)
- BR-KSA-31 · الفاتورة المبسطة لا تكون فوترة ذاتية (الخانة 7 = 0)
- BR-KSA-33 · كل فاتورة تحتاج قيمة عداد الفاتورة (ICV، KSA-16)
افحص فاتورتك على قواعد الهيئة
الصق الـ XML وتشوف كل الأخطاء والتحذيرات، والفحص يصير في متصفحك وما ترسل الفاتورة لأي مكان.
افحص فاتورة أو جرّب ماثل