Error while try to generate PCSID in Simulation Environment

Hello team,

I have done the invoice checks for all 6 invoices types and received PASS status for them.

But when try to generate a production CSID in simulation environment, i got the following error

{
    "code": "Missing-ComplianceSteps",
    "message": "The compliance certificate is not done with the following compliance steps yet [standard-compliant,standard-credit-note-compliant,standard-debit-note-compliant,simplified-compliant,simplified-credit-note-compliant,simplified-debit-note-compliant]"
}

The steps i took as following:-

1- CSR is sent successfully received the following response from /compliance API

{
   “csr”:“XXXXXXXXX”
}

Response

{
“requestID”:XXXXXX,
“dispositionMessage”:“ISSUED”,
“binarySecurityToken”:“XXXXX”,
“secret”:“XXXXXXXXX”,
“errors”:null
}

2- Second step, i have complete 6 invoice checks for Simplified and Standard, and i got PASS status for them

Here is the .cnf file

 [req]
  distinguished_name = req_distinguished_name
  req_extensions = v3_req
  prompt = no
  
  [req_distinguished_name]
  C = SA
  O = ${this.escapeOpenSSL(input['csr.organization.name'])}
  OU = ${this.escapeOpenSSL(input['csr.organization.unit.name'])}
  CN = ${this.escapeOpenSSL(commonName)}
  
  [v3_req]
  # Microsoft Certificate Template (for ZATCA compatibility)
  # OID: 1.3.6.1.4.1.311.20.2 (Microsoft Certificate Template)
  1.3.6.1.4.1.311.20.2 = ASN1:UTF8String:PREZATCA-Code-Signing
  
  # Subject Alternative Name with exact ZATCA DirectoryName format
  subjectAltName = @alt_names
  
  [alt_names]
  # DirectoryName with ZATCA-specific fields
  dirName.1 = zatca_section
  
  [zatca_section]
  # Serial Number (SN) - EGS Serial Number
  SN = ${this.escapeOpenSSL(egsSerialNumber)}
  
  # User ID (UID) - Organization Identifier (VAT number)
  UID = ${this.escapeOpenSSL(input['csr.organization.identifier'])}
  
  # Title - Invoice Type (hardcoded as 1100)
  title = 1100
  
  # Registered Address - Location
  registeredAddress = ${this.escapeOpenSSL(input['csr.location.address'])}
  
  # Business Category - Industry
  businessCategory = ${this.escapeOpenSSL(input['csr.industry.business.category'])}
'csr.common.name': 'ABCD',
      'csr.serial.number': this.generateEgsSerialNumber(),
      'csr.organization.identifier': '3000xxxxxxxx00003',
      'csr.organization.unit.name': 'Riyadh Branch',
      'csr.organization.name': 'ABCD',
      'csr.country.name': 'SA',
      'csr.invoice.type': '1100', // 1100
      'csr.location.address': 'RRRD0000',
      'csr.industry.business.category': 'Software Solution',

Kindly i need your support for this issue.

@mahmoud2299 please do not post your CSR details in public forum.
In case you find a PCSID onboarded in the “list of devices” on fatoora.zatca.gov.sa, please revoke it and generate a new one.

1 Like

Thanks @Ankit.K.Tiwari , but kindly what could be issue for i cannot create PCSID as i completed all 6 invoices checks.

The PCSID gave me that some compliance checks not done yet. Kindly need your help on this.

@idaoud request your input.

Dear @mahmoud2299

Thanks for reaching out. Welcome to our community.

To provide comprehensive support as usual, can I kindly ask you to check and confirm if all the samples XMLs shared on the compliance/invoices endpoint are for the same VAT#? This can be checked inside each XML following this path (cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID)

Thanks,
Ibrahem Daoud.

Any update please? i need your help to solve this @Ankit.K.Tiwari @idaoud

Thank you @idaoud for reaching out and support.

I checked now, yes all the 6 invoices have the same VAT number registered on the CSR config.

Also the comliance/invoice gave me PASS to all invoices.

Standard Response

{
    "validationResults": {
        "infoMessages": [
            {
                "type": "INFO",
                "code": "XSD_ZATCA_VALID",
                "category": "XSD validation",
                "message": "Complied with UBL 2.1 standards in line with ZATCA specifications",
                "status": "PASS"
            }
        ],
        "warningMessages": [],
        "errorMessages": [],
        "status": "PASS"
    },
    "reportingStatus": null,
    "clearanceStatus": "CLEARED",
    "qrSellertStatus": null,
    "qrBuyertStatus": null
}

Simplified Response

{
    "validationResults": {
        "infoMessages": [
            {
                "type": "INFO",
                "code": "XSD_ZATCA_VALID",
                "category": "XSD validation",
                "message": "Complied with UBL 2.1 standards in line with ZATCA specifications",
                "status": "PASS"
            }
        ],
        "warningMessages": [],
        "errorMessages": [],
        "status": "PASS"
    },
    "reportingStatus": "REPORTED",
    "clearanceStatus": null,
    "qrSellertStatus": null,
    "qrBuyertStatus": null
}

Dear @mahmoud2299

Can I kindly ask you to share the exact 6 samples along with the CCSID certificate and the CSR to the below email:

Additionally, please share the email address you will use when sending the email to SP mail
for our tracking.

SP mail: sp_support@zatca.gov.sa

Thanks,
Ibrahem Daoud.

Thank you for kind response and help, the details sent to the provided email address.

Here is the email i sent from to can trace: mahmoud.muhammed977@gmail.com

Looking forward to your response and help. @idaoud

Kindly any update on this? @Ankit.K.Tiwari @idaoud