Web based validator

Hi Team,

We are getting the following error for xmls while validating through zatca web based validator.Please find the xmls and error attached(same form Zatca SDk sample file), Same issue coming for B2B cleared and no cleared invoices

<?xml version="1.0" encoding="UTF-8"?>

ext:UBLExtensions
ext:UBLExtension
ext:ExtensionURIurn:oasis:names:specification:ubl:dsig:enveloped:xades</ext:ExtensionURI>
ext:ExtensionContent
<sig:UBLDocumentSignatures xmlns:sig=“urn:oasis:names:specification:ubl:schema:xsd:CommonSignatureComponents-2” xmlns:sac=“urn:oasis:names:specification:ubl:schema:xsd:SignatureAggregateComponents-2” xmlns:sbc=“urn:oasis:names:specification:ubl:schema:xsd:SignatureBasicComponents-2”>
sac:SignatureInformation
cbc:IDurn:oasis:names:specification:ubl:signature:1</cbc:ID>
sbc:ReferencedSignatureIDurn:oasis:names:specification:ubl:signature:Invoice</sbc:ReferencedSignatureID>
<ds:Signature xmlns:ds=“XML-Signature Syntax and Processing Id=“signature”>
ds:SignedInfo
<ds:CanonicalizationMethod Algorithm=“http://www.w3.org/2006/12/xml-c14n11”/>
<ds:SignatureMethod Algorithm=“xmldsig-more namespace>
<ds:Reference Id=“invoiceSignedData” URI=“”>
ds:Transforms
<ds:Transform Algorithm=“http://www.w3.org/TR/1999/REC-xpath-19991116”>
ds:XPathnot(//ancestor-or-self::ext:UBLExtensions)</ds:XPath>
</ds:Transform>
<ds:Transform Algorithm=“http://www.w3.org/TR/1999/REC-xpath-19991116”>
ds:XPathnot(//ancestor-or-self::cac:Signature)</ds:XPath>
</ds:Transform>
<ds:Transform Algorithm=“http://www.w3.org/TR/1999/REC-xpath-19991116”>
ds:XPathnot(//ancestor-or-self::cac:AdditionalDocumentReference[cbc:ID=‘QR’])</ds:XPath>
</ds:Transform>
<ds:Transform Algorithm=“http://www.w3.org/2006/12/xml-c14n11”/>
</ds:Transforms>
<ds:DigestMethod Algorithm=“XML Encryption Syntax and Processing>
ds:DigestValueX8bJTYWHeDvj5LT5+3IYa+ZM1RsMCbb+jdiuJaLPtfI=</ds:DigestValue>
</ds:Reference>
<ds:Reference Type=“XML-Signature Syntax and Processing URI=“#xadesSignedProperties”>
<ds:DigestMethod Algorithm=“XML Encryption Syntax and Processing>
ds:DigestValueMzBjMzk4MzM0NGM3NDBiZDZjNTU5NDQzYmZjMjBhNWIzZDkxOTk3MzJhYjBlMDRiYzg3YzA1OTcwN2IxZTg2YQ==</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
ds:SignatureValueMEQCIDFNvs7e/01mu3S15HetngaMlTsN5YuSDtfBb+gCofZZAiBc4eo9nzaBuLK62dKCBByY0GIrw6SM+kwZk9AT1PADaw==</ds:SignatureValue>
ds:KeyInfo
ds:X509Data
ds:X509CertificateMIID3jCCA4SgAwIBAgITEQAAOAPF90Ajs/xcXwABAAA4AzAKBggqhkjOPQQDAjBiMRUwEwYKCZImiZPyLGQBGRYFbG9jYWwxEzARBgoJkiaJk/IsZAEZFgNnb3YxFzAVBgoJkiaJk/IsZAEZFgdleHRnYXp0MRswGQYDVQQDExJQUlpFSU5WT0lDRVNDQTQtQ0EwHhcNMjQwMTExMDkxOTMwWhcNMjkwMTA5MDkxOTMwWjB1MQswCQYDVQQGEwJTQTEmMCQGA1UEChMdTWF4aW11bSBTcGVlZCBUZWNoIFN1cHBseSBMVEQxFjAUBgNVBAsTDVJpeWFkaCBCcmFuY2gxJjAkBgNVBAMTHVRTVC04ODY0MzExNDUtMzk5OTk5OTk5OTAwMDAzMFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEoWCKa0Sa9FIErTOv0uAkC1VIKXxU9nPpx2vlf4yhMejy8c02XJblDq7tPydo8mq0ahOMmNo8gwni7Xt1KT9UeKOCAgcwggIDMIGtBgNVHREEgaUwgaKkgZ8wgZwxOzA5BgNVBAQMMjEtVFNUfDItVFNUfDMtZWQyMmYxZDgtZTZhMi0xMTE4LTliNTgtZDlhOGYxMWU0NDVmMR8wHQYKCZImiZPyLGQBAQwPMzk5OTk5OTk5OTAwMDAzMQ0wCwYDVQQMDAQxMTAwMREwDwYDVQQaDAhSUlJEMjkyOTEaMBgGA1UEDwwRU3VwcGx5IGFjdGl2aXRpZXMwHQYDVR0OBBYEFEX+YvmmtnYoDf9BGbKo7ocTKYK1MB8GA1UdIwQYMBaAFJvKqqLtmqwskIFzVvpP2PxT+9NnMHsGCCsGAQUFBwEBBG8wbTBrBggrBgEFBQcwAoZfaHR0cDovL2FpYTQuemF0Y2EuZ292LnNhL0NlcnRFbnJvbGwvUFJaRUludm9pY2VTQ0E0LmV4dGdhenQuZ292LmxvY2FsX1BSWkVJTlZPSUNFU0NBNC1DQSgxKS5jcnQwDgYDVR0PAQH/BAQDAgeAMDwGCSsGAQQBgjcVBwQvMC0GJSsGAQQBgjcVCIGGqB2E0PsShu2dJIfO+xnTwFVmh/qlZYXZhD4CAWQCARIwHQYDVR0lBBYwFAYIKwYBBQUHAwMGCCsGAQUFBwMCMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwMwCgYIKwYBBQUHAwIwCgYIKoZIzj0EAwIDSAAwRQIhALE/ichmnWXCUKUbca3yci8oqwaLvFdHVjQrveI9uqAbAiA9hC4M8jgMBADPSzmd2uiPJA6gKR3LE03U75eqbC/rXA==</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
ds:Object
<xades:QualifyingProperties xmlns:xades=“Assigned ETSI XML URIs Target=“signature”>
<xades:SignedProperties Id=“xadesSignedProperties”>
xades:SignedSignatureProperties
xades:SigningTime2025-07-22T16:37:09</xades:SigningTime>
xades:SigningCertificate
xades:Cert
xades:CertDigest
<ds:DigestMethod Algorithm=“XML Encryption Syntax and Processing>
ds:DigestValueZDMwMmI0MTE1NzVjOTU2NTk4YzVlODhhYmI0ODU2NDUyNTU2YTVhYjhhMDFmN2FjYjk1YTA2OWQ0NjY2MjQ4NQ==</ds:DigestValue>
</xades:CertDigest>
xades:IssuerSerial
ds:X509IssuerNameCN=PRZEINVOICESCA4-CA, DC=extgazt, DC=gov, DC=local</ds:X509IssuerName>
ds:X509SerialNumber379112742831380471835263969587287663520528387</ds:X509SerialNumber>
</xades:IssuerSerial>
</xades:Cert>
</xades:SigningCertificate>
</xades:SignedSignatureProperties>
</xades:SignedProperties>
</xades:QualifyingProperties>
</ds:Object>
</ds:Signature>
</sac:SignatureInformation>
</sig:UBLDocumentSignatures>
</ext:ExtensionContent>
</ext:UBLExtension>
</ext:UBLExtensions>

<cbc:ProfileID>reporting:1.0</cbc:ProfileID>
<cbc:ID>123456</cbc:ID>
<cbc:UUID>a79760f7-2f48-4da9-85a5-40459a147c80</cbc:UUID>
<cbc:IssueDate>2022-09-07</cbc:IssueDate>
<cbc:IssueTime>15:23:55</cbc:IssueTime>
<cbc:InvoiceTypeCode name="0100000">388</cbc:InvoiceTypeCode>
<cbc:DocumentCurrencyCode>USD</cbc:DocumentCurrencyCode>
<cbc:TaxCurrencyCode>SAR</cbc:TaxCurrencyCode>
<cac:AdditionalDocumentReference>
    <cbc:ID>ICV</cbc:ID>
    <cbc:UUID>2</cbc:UUID>
</cac:AdditionalDocumentReference>
<cac:AdditionalDocumentReference>
    <cbc:ID>PIH</cbc:ID>
    <cac:Attachment>
        <cbc:EmbeddedDocumentBinaryObject mimeCode="text/plain">NWZlY2ViNjZmZmM4NmYzOGQ5NTI3ODZjNmQ2OTZjNzljMmRiYzIzOWRkNGU5MWI0NjcyOWQ3M2EyN2ZiNTdlOQ==</cbc:EmbeddedDocumentBinaryObject>
    </cac:Attachment>
</cac:AdditionalDocumentReference>


<cac:AdditionalDocumentReference>
    <cbc:ID>QR</cbc:ID>
    <cac:Attachment>
        <cbc:EmbeddedDocumentBinaryObject mimeCode="text/plain">AW/YtNix2YPYqSDYqtmI2LHZitivINin2YTYqtmD2YbZiNmE2YjYrNmK2Kcg2KjYo9mC2LXZiSDYs9ix2LnYqSDYp9mE2YXYrdiv2YjYr9ipIHwgTWF4aW11bSBTcGVlZCBUZWNoIFN1cHBseSBMVEQCDzM5OTk5OTk5OTkwMDAwMwMTMjAyMi0wOS0wN1QxNToyMzo1NQQEMTAzNQUHMTA2OC43NQYsWDhiSlRZV0hlRHZqNUxUNSszSVlhK1pNMVJzTUNiYitqZGl1SmFMUHRmST0HYE1FUUNJREZOdnM3ZS8wMW11M1MxNUhldG5nYU1sVHNONVl1U0R0ZkJiK2dDb2ZaWkFpQmM0ZW85bnphQnVMSzYyZEtDQkJ5WTBHSXJ3NlNNK2t3Wms5QVQxUEFEYXc9PQhYMFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEoWCKa0Sa9FIErTOv0uAkC1VIKXxU9nPpx2vlf4yhMejy8c02XJblDq7tPydo8mq0ahOMmNo8gwni7Xt1KT9UeA==</cbc:EmbeddedDocumentBinaryObject>
    </cac:Attachment>

</cac:AdditionalDocumentReference>cac:Signature
cbc:IDurn:oasis:names:specification:ubl:signature:Invoice</cbc:ID>
cbc:SignatureMethodurn:oasis:names:specification:ubl:dsig:enveloped:xades</cbc:SignatureMethod>
</cac:Signature>cac:AccountingSupplierParty
cac:Party
cac:PartyIdentification
<cbc:ID schemeID=“CRN”>1010010000</cbc:ID>
</cac:PartyIdentification>
cac:PostalAddress
cbc:StreetNameالامير سلطان | Prince Sultan</cbc:StreetName>
cbc:BuildingNumber2322</cbc:BuildingNumber>
cbc:CitySubdivisionNameالمربع | Al-Murabba</cbc:CitySubdivisionName>
cbc:CityNameالرياض | Riyadh</cbc:CityName>
cbc:PostalZone23333</cbc:PostalZone>
cac:Country
cbc:IdentificationCodeSA</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
cac:PartyTaxScheme
cbc:CompanyID399999999900003</cbc:CompanyID>
cac:TaxScheme
cbc:IDVAT</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
cac:PartyLegalEntity
cbc:RegistrationNameشركة توريد التكنولوجيا بأقصى سرعة المحدودة | Maximum Speed Tech Supply LTD</cbc:RegistrationName>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingSupplierParty>
cac:AccountingCustomerParty
cac:Party
cac:PostalAddress
cbc:StreetNameصلاح الدين | Salah Al-Din</cbc:StreetName>
cbc:BuildingNumber1111</cbc:BuildingNumber>
cbc:CitySubdivisionNameالمروج | Al-Murooj</cbc:CitySubdivisionName>
cbc:CityNameالرياض | Riyadh</cbc:CityName>
cbc:PostalZone12222</cbc:PostalZone>
cac:Country
cbc:IdentificationCodeSA</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
cac:PartyTaxScheme
cbc:CompanyID399999999800003</cbc:CompanyID>
cac:TaxScheme
cbc:IDVAT</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
cac:PartyLegalEntity
cbc:RegistrationNameشركة نماذج فاتورة المحدودة | Fatoora Samples LTD</cbc:RegistrationName>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingCustomerParty>
cac:Delivery
cbc:ActualDeliveryDate2022-09-05</cbc:ActualDeliveryDate>
</cac:Delivery>
cac:PaymentMeans
cbc:PaymentMeansCode10</cbc:PaymentMeansCode>
</cac:PaymentMeans>
cac:AllowanceCharge
cbc:ChargeIndicatorfalse</cbc:ChargeIndicator>
<cbc:Amount currencyID=“USD”>100.00</cbc:Amount>
cac:TaxCategory
cbc:IDS</cbc:ID>
cbc:Percent15</cbc:Percent>
cac:TaxScheme
cbc:IDVAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:AllowanceCharge>
cac:TaxTotal
<cbc:TaxAmount currencyID=“SAR”>1068.75</cbc:TaxAmount>
</cac:TaxTotal>
cac:TaxTotal
<cbc:TaxAmount currencyID=“USD”>285</cbc:TaxAmount>
cac:TaxSubtotal
<cbc:TaxableAmount currencyID=“USD”>1900</cbc:TaxableAmount>
<cbc:TaxAmount currencyID=“USD”>285</cbc:TaxAmount>
cac:TaxCategory
cbc:IDS</cbc:ID>
cbc:Percent15.00</cbc:Percent>
cac:TaxScheme
cbc:IDVAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
cac:LegalMonetaryTotal
<cbc:LineExtensionAmount currencyID=“USD”>2000</cbc:LineExtensionAmount>
<cbc:TaxExclusiveAmount currencyID=“USD”>1900</cbc:TaxExclusiveAmount>
<cbc:TaxInclusiveAmount currencyID=“USD”>2185</cbc:TaxInclusiveAmount>
<cbc:AllowanceTotalAmount currencyID=“USD”>100</cbc:AllowanceTotalAmount>
<cbc:PrepaidAmount currencyID=“USD”>1150</cbc:PrepaidAmount>
<cbc:PayableAmount currencyID=“USD”>1035</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
cac:InvoiceLine
cbc:ID1</cbc:ID>
<cbc:InvoicedQuantity unitCode=“PCE”>1.00</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID=“USD”>2000</cbc:LineExtensionAmount>
cac:TaxTotal
<cbc:TaxAmount currencyID=“USD”>300</cbc:TaxAmount>
<cbc:RoundingAmount currencyID=“USD”>2300</cbc:RoundingAmount>
</cac:TaxTotal>
cac:Item
cbc:NameLaptop | حاسوب محمول</cbc:Name>
cac:ClassifiedTaxCategory
cbc:IDS</cbc:ID>
cbc:Percent15.00</cbc:Percent>
cac:TaxScheme
cbc:IDVAT</cbc:ID>
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
cac:Price
<cbc:PriceAmount currencyID=“USD”>2000.00</cbc:PriceAmount>
</cac:Price>
</cac:InvoiceLine>
cac:InvoiceLine
cbc:ID2</cbc:ID>
<cbc:InvoicedQuantity unitCode=“PCE”>0.00</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID=“USD”>0.00</cbc:LineExtensionAmount>
cac:DocumentReference
cbc:ID46531</cbc:ID>
cbc:UUIDa79760f7-2f48-4da9-85a5-40459a147c80</cbc:UUID>
cbc:IssueDate2022-08-15</cbc:IssueDate>
cbc:IssueTime12:28:17</cbc:IssueTime>
cbc:DocumentTypeCode386</cbc:DocumentTypeCode>
</cac:DocumentReference>
cac:TaxTotal
<cbc:TaxAmount currencyID=“USD”>0</cbc:TaxAmount>
<cbc:RoundingAmount currencyID=“USD”>0</cbc:RoundingAmount>
cac:TaxSubtotal
<cbc:TaxableAmount currencyID=“USD”>1000</cbc:TaxableAmount>
<cbc:TaxAmount currencyID=“USD”>150</cbc:TaxAmount>
cac:TaxCategory
cbc:IDS</cbc:ID>
cbc:Percent15.00</cbc:Percent>
cac:TaxScheme
cbc:IDVAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
cac:Item
cbc:NameAdvance received for Laptop | دفعة مقدمة لحاسوب محمول</cbc:Name>
cac:ClassifiedTaxCategory
cbc:IDS</cbc:ID>
cbc:Percent15.00</cbc:Percent>
cac:TaxScheme
cbc:IDVAT</cbc:ID>
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
cac:Price
<cbc:PriceAmount currencyID=“USD”>0.00</cbc:PriceAmount>
</cac:Price>
</cac:InvoiceLine>

Hi @mohan_manakkal

We are having the same issue. It seems ZATCA web validation is broken and useless. You cannot rely on it. We are testing the already reported documents and they are failing with the same “cryptic (file not found) error”

I have contacted the support and they suggested to use SDK… Why I need SDK if I just want to validate XML

– Sergei

The XML that you have pasted doesn’t have the appropriate tags, Please double check it these were removed while pasting to the editor, attached your file. Try to use the SDK to validate if you are getting the same error.

You can use the SDK to validate Xml file .

Hi @aws ,

SDK is good for developers for validation. But customers who are receiving invoices or companies B2B who also download invoices - want to validate the document. These guys usually do not have technical skills and easy-Googling bringing them to Web Validation…

And what is happening next? Correct, they send you emails sending that your document is invalid and that this document cannot be trusted etc…

Therefore I ask ZATCA guys, please fix web validator… You can build it on-top of your SDK, just run SDK, route XML to it and output the results.

@Ankit.K.Tiwari ^^

– Sergei

Hi @mohan_manakkal
Please retest and confirm.
From our end, the issue has been resolved.

Hi @sergei.shishov ,
Please note that the web-based validator is currently active and working properly.