Continuing from the previous discussion regarding ERPNext Features, where we explored the Currency Exchange and Multi-Currency Accounting features, on this occasion, I would like to highlight the Printing feature. This feature has significant added value in the context of documentation, as every transaction will generate a receipt for documentation purposes and as proof of transaction. The advantage of this feature is its ease of use and clarity of functionality. With this Printing feature, users can easily create professional documents, customize layouts, and even print directly to labels and POS printers. Here, you can:
1. Print Format Settings: Laying the Foundation
Before diving into specific documents, let’s set up the Print Format first. This menu, found at Home > ERPNext Setting > Print Format, is the central hub for printing settings.

You can create a new Print Format by clicking “Add Print Format”.

Then, you can fill in the Name and the DocType you want to create, after which you can save it. Here, I want to create a Print Format for a Purchase Order.
2. Print Format Builder: Customizing Your Documents
Every transaction in ERPNext has a default “Standard” print format. But its true power lies in customization. You can create new print formats for any DocType, such as invoices, purchase orders, or delivery notes.
The Print Format Builder is where you can tweak the appearance of your printed documents. To access the Print Format Builder, you can click “Edit Format” on the Print Format settings page.

The Print Format Builder can be used by dragging and dropping the fields located on the left side of the page; then, you can customize the Print Format as you wish.

Above is a standard preset, and the printout will look like this.

It is sufficient, but there is too much unnecessary information being shown. So, to make it neater, I will reduce it and add only the necessary fields, like this.

And the print result will look neater compared to the initial one.

One of the important fields is “Custom HTML”. This “Custom HTML” allows you to add your own additional text in HTML format. Therefore, you can build it as if you were creating a webpage, meaning you can create italic, bold, and highlighted text, add images, clickable links, lists, and even forms. You can even create dynamic layouts that adapt to the data in each document using Jinja templates. For example, if there is {{ doc.name }} in the heading, the text during printing will follow the corresponding document ID name. You can create others by following the field names present in the DocType.

I will dive deeper into this in a future article.
3. PDF Generation
ERPNext allows you to generate PDF versions of documents directly from the system. This feature ensures that businesses can easily share professional-looking documents with clients, suppliers, or internal stakeholders. PDFs are widely accepted and provide a secure and consistent format for document exchange.

And if you want to adjust the PDF Size, that setting is found in the print settings, located under the three-dot menu icon.

Here you will find many PDF sizes; you can choose as you wish and then click save when done.

The Printing feature in ERPNext is a powerful tool that forms the foundation of document creation. This feature allows users to easily generate professional documents, such as transaction receipts, for documentation and proof purposes. Print Settings, accessible via the Print Format Builder, provide the ability to customize document appearances as needed. Additionally, ERPNext enables document generation in PDF format, ensuring secure and consistent document exchange within the business for sharing with clients, suppliers, or internal parties. With these features, ERPNext provides a complete solution for documentation and printing needs in a business environment. By mastering this feature, you can automate your workflow, improve document quality, and add a professional touch to your business interactions.
Share this article
Fitur-Fitur ERPNext: Currency Exchange dan Multi Currency Accounting
Implementasi Robot Framework pada Robot Process Automation – Mengelola Data