I am sending a simplified invoice and getting this warining: X509Certificate (CCSID / PCSID) used for signing is not valid certificate (CCSID / PCSID) for this VAT Registration Number.
I called the Production Csid API
I decoded the received binarySecurityToken
Put that decoded value in the sdk .cert.pem file
Sign the Invoice
Send invoice in Reporting , where i get this warning. (screenshots attached)
Please let me know what i am doing wrong
Kind regards
Junaid
Dear @junaidp ,
please make sure that you are using the production CSID and not the compliance CSID for signing invoices.
In the onboarding process, 2 CSIDs (X509 certificates) will be returned.
First one: after requesting the compliance CSID API, (which is the first step to do in onboarding process), we use this certifecate to sign invoices for the compliance checks step (compliance Invoice API), so we only use this certificate to sign invoices for the testing purposes in the compliance checks phase, as invoices in compliane checks are not being sent to ZATCA.
Second one: after requesting the production CSID API, we use this certificate to sign real invoices that are being sent to ZATCA by reporting API for simplified invoices or clearance API for standard invoices, however signing standard invoices is optional & not mandatory.
so what suggested is to make sure that you are using the PCSID X5509 certificate to sign your invoices, and check again.
thank you,
thanks for your message , As showing in my attached screenshot , We are indeed using /production/csid api. (I believe this is the Production CSID you refering to) . then we decoded the binarysecurityToken , and put that decoded binarySecurityToken in pem file, and then sign the invoice.
Please let me know what we are doing wrong in the above process. We are using Production CSID as per our understading (please refer to the screenshot)
Thanks
Junaid