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-

FunctionalityDescription
Create Payment ReceiptThe 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 ReceiptThe system allows canceling the payment receipt before the receipts are remitted to bank. Reason for cancel is to be provided.
Customized Receipt FormatThe system allows individual service to customize the payment receipt and system will give this format of the receipt on successful payment
Integrate payment gatewayThe system is capable of integrating with any new payment gateway by implementing the provided hooks and configurations
Online payment reconciliationThe system reconciles the online failed/pending receipts at scheduled intervals. It provides hooks to implement payment gateway related changes
WorkflowReceipts 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 RemittanceAll 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.
ReportingVarious 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


<bill-collect>
<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