Appropriation Service

Overview

Apportion service is used to apportion the amount paid against a bill among the different tax heads based on the implemented algorithm. The default algorithm uses the order of the tax head to apportion the tax head with the lowest order apportioned off first and the highest order tax head apportioned last.

Pre-requisites

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

  • Java 8

  • Kafka server is up and running

  • egov-persister service is running and has apportioned persister config path added to it

  • PSQL server is running and a database is created to store apportion audit data

Key Functionalities

  • Apportion payment in tax heads of bill

  • Apportion advance amount in tax heads of demand during demand creation

Environmental VariablesDescription

egov.apportion.default.value.order

If set to true will apportion of the negative amount first irrespective of tax head order

Deployment Details

  1. Deploy the latest version of egov-apportion-service

  2. Add apportion persister yaml path in persister configuration

Configuration Details

There is no separate configuration required. The TaxHead master that is configured in the billing service is only used

Integration Details

Integration Scope

Any payment service which wants to divide the paid amount into different tax head buckets can integrate with apportion service.

Integration Benefits

  • Apportions amount in tax heads

Steps to Integration

  1. To integrate, the host of egov-apportion-service should be overwritten in the helm chart

  2. /apportion-service/v2/bill/_apportion should be called to apportion the bill

  3. /apportion-service/v2/demand/_apportion should be called to apportion the advance amount in demands

Interaction Diagram

Reference Docs

DescriptionLink

Collection Service

Billing Service

API Swagger Documentation

API List

DescriptionLink

/apportion-service/v2/bill/_apportion

/apportion-service/v2/demand/_apportion

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

​All content on this page by eGov Foundation is licensed under a Creative Commons Attribution 4.0 International License.