A JSON to PDF template for invoices is a tool that allows users to generate professional-looking PDF documents that detail product or service transactions between a seller and a buyer. The JSON data contains the necessary values and variables that are used to populate the template, which is then converted into a PDF.
One of the most common use cases for this tool is in accounting or finance, where companies need to issue invoices to their customers for products or services sold. The JSON data could include information such as the customer's name, the product or service being sold, the unit price, the quantity, the total amount due, and any applicable taxes or fees. This data would be used to populate a template that is designed to display the invoice information in a clear and organized manner.
Another potential use case would be in the e-commerce industry, where online retailers need to issue invoices to their customers for purchases made on their websites. The JSON data could contain information such as the customer's name, the order number, the products being sold, the unit price, the quantity, the total amount due, and any applicable taxes or fees. This data would be used to populate a template that is designed to display the invoice information in a clear and easy-to-understand manner.
A JSON to PDF template for creating invoices could also be useful for businesses that offer subscription-based services, where customers are billed on a recurring basis. The JSON data could include information such as the customer's name, the subscription plan, the billing period, the start and end dates of the billing cycle, the amount due, and any applicable taxes or fees. This data would be used to populate a template that is designed to display the invoice information in a clear and easy-to-understand manner.
Overall, a JSON to PDF template that generates invoices can be a powerful tool for automating the invoice generation process and ensuring consistency in the formatting of the resulting PDFs. By using a template that is designed to display invoice information in a clear and organized manner, users can create professional-looking documents that are easily customizable with JSON data.
documentSettings - A JSON object which contains the settings of the template (primaryHEXColour, secondaryHEXColour, textHEXColour, font, documentName, logo, logoType, logoWidth, margins, headSep, footSkip, showframe, header, footer).
primaryHEXColour - An optional string which contains the primary font colour of the document.
secondaryHEXColour - An optional string which contains the secondary font colour of the document.
textHEXColour - An optional string which contains the text font colour of the document.
font - An optional string which contains the font of the document. Possible options are: 'helvetica', 'avant garde', 'sans serif', 'charter', 'open sans', 'bera', 'venturis', 'raleway', 'overlock', 'roboto', 'spectral', 'clear sans', 'noto sans', 'noto mono', 'josefin', 'bera sans', 'latin modern', 'theano modern', 'droid sans', 'fira sans', 'XCharter', 'bookman', 'gyre bonum', 'gyre schola', 'gyre termes'.
documentName - An optional string for the name of the document.
logo - An optional string which contains base64 encoded jpg or png image of your logo.
logoType - An optional string which contains the type of logo image. Possible options are: 'jpg' or 'png'.
logoWidth - An optional string which contains the width of the logo (in cm).
margins - An array containing strings of the margin sizes (in cm).
headheight - An optional string relating to the height of the header (in cm). See LaTeX geometry package documentation for more information on this parameter.
headSep - An optional string relating to the space between the header and the beginning of the document (in cm). See LaTeX geometry package documentation for more information on this parameter.
footSkip - An optional string relating to the space between the end of the document and the footer (in cm). See LaTeX geometry package documentation for more information on this parameter.
includehead - A boolean expression which determines whether the header is part of the top margin (false) or below it (true).
includehead - A boolean expression which determines whether the footer is part of the bottom margin (false) or below it (true).
showFrame - A boolean expression (true/false) to show the frame of the document.
header - An object containing settings to control the header.
headerLine - A boolean expression that generates a horizontal line between the header and the beginning of the document.
leftContent - The content that appears on the left-hand side of the header. Can contain LaTeX commands, text or simply 'logo'.
centreContent - The content that appears in the centre of the header. Can contain LaTeX commands, text or simply 'logo'.
rightContent - The content that appears of the right-hand side of the header. Can contain LaTeX commands, text or simply 'logo'.
footer - An object containing settings to control the footer.
footerLine - A boolean expression that generates a horizontal line between the footer and the end of the document.
leftContent - The content that appears on the left-hand side of the footer. Can contain LaTeX commands, text or simply 'logo'.
centreContent - The content that appears in the centre of the footer. Can contain LaTeX commands, text or simply 'logo'.
rightContent - The content that appears of the right-hand side of the footer. Can contain LaTeX commands, text or simply 'logo'.
documentContent - A JSON object which contains the content of the template (firstColumnDetails, secondColumnDetails, totalPayable, invoiceDetails, text).
firstColumnDetails - An object which contains the data for the first column of the invoice. Includes headings and values.
headings - An array containing strings describing headings. Can contain LaTeX commands and text.
values - An array containing strings describing it's associated values. Can contain LaTeX commands and text.
secondColumnDetails - An object which contains the data for the second column of the invoice. Includes headings and values.
headings - An array containing strings describing headings. Can contain LaTeX commands and text.
values - An array containing strings describing it's associated values. Can contain LaTeX commands and text.
totalPayable - Contains strings which describe the amount payable, it's currency, and due date.
currency - An optional string which identifies the currency of the amount payable ($, R, etc.).
amount - An optional string specifying the amount.
subtitle - An optional string object controls the subtitle below the amount.
tableDetails - An object which describes the format of the main invoice table. Includes columnNames, columnType, content, totals, values.
columnNames - An array of strings which describes the name of each column.
columnType - An array of strings which describes the alignment and width of each column with LaTeX specification.
content - An array of strings which is used to add data to each column in the table.
totals - An object which contains the headings and associated values of the total amounts at the end of the table.
headings - An array containing strings describing headings. Can contain LaTeX commands and text.
values - An array containing strings describing it's associated values. Can contain LaTeX commands and text.
text - An optional string which can be added to the document after the invoice table. Can contain LaTeX commands and text.