Collection and Bank Integrations
Introduction
A collection is to acknowledge the payment for a given service in ERP and issue a payment receipt as an acknowledgment. The scope is to generate and store payment receipts with account head breakup wise only. It's integrated with a double entry ERP Finance system that can post receipt vouchers.
A collection independent. Understands the Financials attributes, payee/owner information, allowed modes of payments, tax head wise dues and other configurations required for collection by a Bill XML which can be generated by revenue system with the help of Demand Framework
Prerequisites
- Define the service to be registered in the collection system with all required information to begin collecting taxes from this service.
- Define the Finance related attributes and values for it, for each service.
Functionality
A typical collection flow can be explained using the below diagram.
Various high-level functionalities in the collections and payment services are listed below-
Functionality | Description |
---|---|
Create Payment Receipt | The system allows collecting tax for a given service. Respective service has to send a valid Bill XML then collection allows to pay tax. |
Cancel Payment Receipt | The system allows canceling the payment receipt before the receipts are remitted to bank. Reason for cancel is to be provided. |
Customized Receipt Format | The system allows individual service to customize the payment receipt and system will give this format of the receipt on successful payment |
Integrate payment gateway | The system is capable of integrating with any new payment gateway by implementing the provided hooks and configurations |
Online payment reconciliation | The system reconciles the online failed/pending receipts at scheduled intervals. It provides hooks to implement payment gateway related changes |
Workflow | Receipts created in the system can go for an approval cycle based on the pre-configured workflow. Say an operator creates receipts and his manager or superiors approves it. |
Bank Remittance | All the collections done by the system using the various modes of payments are deposited to the bank at periodic intervals using the Bank remittance option. |
Reporting | Various reports like Collection summary, Receipt register, Online transaction, etc... designed to analyze collection with various parameters |
Configurations and Setup
- Define the service for which the tax to be collected in the collection service master.
- Define the payment gateway service (one for each bank integration) in the collection service master.
- Most of the configuration values will be sent by revenue service via Bill XML. A typical Bill XML looks below
<serviceCode>BPA</serviceCode>
<fundCode>01</fundCode>
<functionaryCode>1</functionaryCode>
<fundSourceCode>01</fundSourceCode>
<departmentCode>REV</departmentCode>
<displayMessage>BPA Permit Application Fee Collection</displayMessage>
<paidBy>ramana</paidBy>
<partPaymentAllowed>0</partPaymentAllowed>
<callbackForApportioning>0</callbackForApportioning>
<overrideAccountHeadsAllowed>0</overrideAccountHeadsAllowed>
<collectionType>F</collectionType>
<collectionModeNotAllowed>bankchallan</collectionModeNotAllowed>
<payees>
<payee>
<payeeName>ramana</payeeName>
<payeeAddress>knjbh</payeeAddress>
<bills>
<bill refNo="531" billDate="05/07/2019" consumerCode="01365-2019-HY">
<consumerType>01</consumerType>
<boundaryNum>1</boundaryNum>
<boundaryType>Ward</boundaryType>
<description>BPA Application Number: 01365-2019-HY</description>
<totalAmount>1603</totalAmount>
<minimumAmount>0</minimumAmount>
<accounts>
<account glCode="1401202" order="2" description="Permit Fees - BPA/19-20" isActualDemand="1" purpose="OTHERS">
<crAmount>598</crAmount>
<drAmount>0</drAmount>
<functionCode>5100</functionCode>
</account>
<account glCode="1401202" order="1" description="Scrutiny Fee - BPA/19-20" isActualDemand="1" purpose="OTHERS">
<crAmount>1000.0</crAmount>
<drAmount>0</drAmount>
<functionCode>5100</functionCode>
</account>
<account glCode="1401202" order="3" description="Labour cess - BPA/19-20" isActualDemand="1" purpose="OTHERS">
<crAmount>5</crAmount>
<drAmount>0</drAmount>
<functionCode>5100</functionCode>
</account>
</accounts>
</bill>
</bills>
</payee>
</payees>
</bill-collect>
Support Information
References and Notes
- ER Diagram
- Payment Gateway Integration Document