GatoMalo: An Open-Source Integration for the Fiscal Printer
GatoMalo is an open-source integration that connects the Bixolon350 fiscal printer with Zoho Books and other digital platforms. It started as a practical solution for issuing invoices in Panama and has grown into a versatile tool, capable of integrating with accounting.
GatoMalo is an open-source integration between the Bixolon350 fiscal printer and the Zoho Books accounting system. GatoMalo started as an HTTP server capable of receiving invoices in JSON format and printing them on a Bixolon 350 fiscal printer. Shortly after, code was added to connect to Zoho Books while also providing a web interface to print X and Z reports, credit notes, and non-fiscal reprints.
From the very beginning, GatoMalo was conceived as open-source to promote more integrations with multiple other systems. Our idea was that, by being able to receive an invoice in JSON format, GatoMalo could be adopted as an easy way to print fiscal invoices from any web system.
It is important to mention that supposedly by 2020, it will be mandatory to use electronic invoicing in Panama according to the DGI. For GatoMalo, this means we will write a “printer” module that makes calls to the DGI API instead of the printer’s COM interface. We will be able to print invoices and credit notes from the same current interface, except that the communication will go directly to the DGI.
One might think that GatoMalo is just an open-source integration between the Bixolon350 fiscal printer and Zoho Books, but today, GatoMalo has been successfully integrated with the E-Commerce platforms Spree Commerce and Shopify. Although its main integration is still with Zoho Books, GatoMalo has the potential to integrate with any cloud-based accounting system. In the long run, the program’s architecture is intended to be a universal integration that supports multiple fiscal printers and allows integration with various systems, or even printing via a web interface.
How did GatoMalo come about?
The integration with Zoho Books arose from a particular need at our company, BlueTide. Since Zoho Books is a cloud-based accounting system, it has a much lower implementation cost compared to the well-known PeachTree.
Zoho allows extensive customization of templates for invoices, quotes, and payments, which adds value to a company’s brand. It is also compatible with payment gateways, enabling online invoice sending and payment collection via credit card.
At BlueTide, we have used Zoho Books almost since the company’s inception, and it has proven to be a valuable tool at a cost that has progressively adapted to the company’s usage. (I swear no one is paying me to write this).
Another particularity of GatoMalo is that it is designed to run on a Linux operating system, which means deployment is relatively inexpensive. Currently, it only supports x86 equipment, but we plan to use a library that is fully cross-platform. GatoMalo can run as a Linux service, keep logs within systemd, and be fully managed via SSH. These features allowed us to perform deployments and provide remote support for several GatoMalo instances across different client branches very efficiently.
GatoMalo currently resides on GitHub under the name gatomalo-fiscal. This is a version of the repository that does not have the full original history since we had, on several occasions, mistakenly included keys and credentials that should never have been there. Besides this version, there is another branch called gatomalo2, written in NodeJS with Docker, which essentially has the same functionality.
