Request for Guidance on Integrating Manager API with KSA Fatoora E-Invoicing (Phase II)

If you can provide an account on the Fatoora , can you help?

@zeem
Thank you for your trust and assistance in this project by lending us your account to try.
Currently the application is running well in the Simulation environment.

The application successfully Onboarded and successfully reported Standard and Simplified Invoice without any problems in the Simulation Environment.

Thank you for your efforts, and I hope to assist anytime

I hope you can explain how the integration and Zakat work on the Fatoorah website

In short like this:

Onboarding Device:

  • User accesses ZatcaEGS services,
  • Setup CustomField on business data (automatically done by web service via Api2)
  • Adding Business Information, Creating Certificates and PrivateKeys for Business Data according to the selected environment.
  • Getting Compliance CSID, users need OTP for Simulation and Production environments, for Sandbox can use any letters or numbers.
  • Sending 6 Sample Invoices to Compliance Check.
  • Getting Production CSID.
  • User needs to add this certificate information to business data.
  • Zatca EGS does not store any data on the server. User must save all information that will be downloaded automatically when the process is complete.

Reporting & Clearance

  • Manager sends Invoice data to ZatcaEGS via relay.
  • ZatcaEGS will process the Invoice data, convert it to XML, Sign it and then send the Invoice to Zatca Portal.
  • The response from the portal will be checked, if the Transaction is accepted, REPORTED. CLEARED or REJECTED, ZatcaEGS will update the business data, change the ICV and PIH in Business Detail as the next delivery reference, and update the Invoice by adding the UUID sent to the Portal, Approval Status and QRCode.
  • Zatca EGS does not store any data on the server. Users must save all information that will be downloaded automatically when the process is complete.

If you have any other Ideas for this project, I would really appreciate it.

I will make a Video Guide, when this application is published to the public.

I’m pleased to announce that I have released ZatcaEGS with new relay data adjustments. I would appreciate it if someone could try it out in the Simulation Environment and provide feedback.

For a usage guide, please check out the Video Guide.

You can access the application here: ZatcaEGS.

If you need technical assistance or have suggestions for improving the application, please feel free to contact me via private message. Your feedback is greatly appreciated!

Thank you!

Thank you, @Mabaega, for your efforts. We’ve tested the new update, and it integrates well; however, several key features we rely on in Manager are now missing. We’ve used Manager for years, leveraging custom themes to implement essential functionalities that were not available by default.

The new update introduces QR Phase II in the footers, but these do not function with custom themes, creating a significant challenge. We cannot fully utilize custom features without an adequate alternative, and we also require seamless integration without compromising on these themes.

We request either the ability to use footers with custom themes or a comprehensive solution that ensures compatibility between themes and the integration. Our custom themes are vital for rearranging columns, adding auto-calculating fields, and implementing additional discount types—capabilities that are currently not available through standard options.

We would greatly appreciate @lubos and your guidance @Mabaega on maintaining consistency in our workflow while adopting these new features.

@Ehab

try to add this footer code to your custom themes before the </tbody> element

        
        
        <!-- show footer -->
        {% for footer in footers %}
            {{ footer }}
        {% endfor %}
        
        
    </tbody>
</table>

This should work with the default custom themes, or you can send me your custom themes via PM, if you have a specific place to put the QRCode in your Invoice.

What about the desktop version?

In addition to this there are also design customisations that let customers and suppliers easily recognise the business and that are consistent with brand recognition. The overhaul of themes and templates customisation is long overdue. Yes moving away from Liquid made common sense but only putting footers where you can inject with difficulty code is far from ideal.

Having worked with programmers I understand that they often pay less attention to design and user interfaces (UIs) for several reasons:

  1. Focus on Functionality Over Design
  • Programmers are typically more focused on making sure that the software works correctly, efficiently, and reliably. This often means prioritising backend logic, data processing, and system performance over the aesthetics and usability of the user interface.
  1. Lack of Design Expertise
  • Many programmers may not be as skilled in creating intuitive, attractive interfaces, leading to a tendency to overlook design and UI considerations.
  1. Time Constraints
  • Under pressure to deliver working software quickly, programmers might prioritise core functionality and leave design and UI enhancements for later stages, which sometimes get delayed or neglected altogether.
  1. Underestimating the Importance of Design and UI
  • Some developers might consider design and UI improvements as “nice-to-haves” rather than essential components of the product.
  1. Different Mindsets
  • Programming and design involve different ways of thinking. While programming is often about solving logical problems and optimising performance, UI/UX design is more about empathy, psychology, and aesthetics. Balancing these can be challenging.
  1. Assumption that design and UI “Can Be Fixed Later”
  • There’s a common belief in software development that the design and UI can be improved in later stages or versions of the product, which never or half-heartedly happen because of new programming challenges.
  1. Technical Challenges
  • Some design and UI features can be technically challenging to implement and may end-up as obsolete features :slight_smile: . Programmers might avoid complex design and UI tasks if they believe the effort isn’t justified.
  1. Personal Bias
  • Some programmers may prefer working on backend systems, algorithms, and technical challenges rather than dealing with what they perceive as the more subjective and less intellectually stimulating task of UI design :wink:.

Anyway, I hope that @Lubos soon would prioritise developing a means for us to style and customize our documents and reports. For example by making it possible to use HTML5 + CSS themes and templates.

The Azure App Service cannot send data to an API hosted on localhost to update “Manager Business Data.”

I will soon release a portable version for Windows OS that can run on a local computer or a local network as a Windows Service, so users won’t need to worry about data being sent through a relay. This version will also be compatible with the Desktop Version.

I am currently analyzing my code to make sure it is still compatible with the latest SDK released by Zatca.

Can anyone try to scan QRCode with the tools provided by Zatca? Is our QRcode still readable?

That sound like a good idea.
In my opinion better solutions again (in my order of preference) would be one of

  • including it in the Manager install or at least download options
  • NG software hosting the relay including a .manager.io url
  • NG software providing / controlling a .manager.io url to the relay

As a reminder, it is essential to have the capability to add multiple access keys and assign different keys to various users, especially since we are utilizing the cloud version.

We are waiting for stand alone guidance.

There is an issue that the EGS.exe file not running in proper way.
it gives the alert screen to Run Anyway, then disappear.
It happened very fast so I can’t make a screenshot.

I am working on windows 11 pro.

image

Try download and Install .NET SDK

many thanks, it works

I followed the steps until this stage :slight_smile:

but stopped at specific point when request to get the CCSID OTP I received this message

kindly, guide me to pass it.

image

Have you input an OTP?
You can use any number or character for Non Production Environment.
Or get OTP from Fatoora Portal for Other Environment.

And as a note, in Non-production Environment, you do not need to use the real VAT Number. The certificate that the server gives us will use the VAT Number 39999999990003.

Maybe you will get a Warning in the test because of the difference in the VAT Number in the Certificate with the VAT Number listed in the Invoice

.