PDF Generation Service Technical Document

Overview

The objective of PDF generation service is to bulk generate pdf as per requirement.

Pre-requisites

Before you proceed with the documentation, make sure the following pre-requisites are met -

  • Install npm.

  • Kafka server is up and running.

  • egov-persister service is running and has pdf generation persister config path added in it.

  • PSQL server is running and database is created to store filestore id and job id of generated pdf.

Key Functionalities

  • Provide common framework to generate PDF.

  • Provide flexibility to customise the PDF as per the requirement.

  • Provide functionality to add an image, Qr Code in PDF.

  • Provide functionality to generate pdf in bulk.

  • Provide functionality to specify maximum number of records to be written in one PDF.

Environment Variables

Description

MAX_NUMBER_PAGES

Maximum number of records to be written in one PDF

DATE_TIMEZONE

Date timezone which will be use to convert epoch timestamp into date (DD/MM/YYYY)

DEFAULT_LOCALISATION_LOCALE

Default value of localisation locale

DEFAULT_LOCALISATION_TENANT

Default value of localisation tenant

DATA_CONFIG_URLS

File path/URL'S of data config

FORMAT_CONFIG_URLS

File path/URL'S of format config

External Libraries used :

Interaction Diagram

 

Deployment Details

  1. Create data config and format config for a PDF according to product requirement.

  2. Add data config and format config files in PDF configuration

  3. Add the file path of data and format config in environment yml file

  4. Deploy latest version of pdf-service in particular environment.

Configuration Details

For Configuration details please refer to the Customizing PDF Receipts & Certificates document in Reference Docs

Integration 

Integration Scope

The PDF configuration can be used by any module which need to show particular information in PDF format that can be print/downloaded by user.

Integration Benefits

  • Functionality to generate PDFs in bulk.

  • Avoid regeneration.

  • Support QR codes and Images.

  • Functionality to specify maximum number of records to be written in one PDF.

  • Uploading generated PDF to filestore and return filestore id for easy access.

Steps to Integration

  1. To download and print the required PDF _create API has to be called with required key
    (For Integration with UI, please refer to the links in Reference Docs)

Reference Docs

Doc Links

API List

(Note: All the API’s are in the same postman collection therefore same link is added in each row)