Skip to main content

Loan Action : Receipt Creation

POST Receipt Creation

Screenshot 2023-04-22 at 4.49.03 AM.png

The Synofin API's Loan Receipt Action is linked to various closure that a user may initiate in accordance with their requirements. This feature involves different step which are :

  1. Retrieving Cancellation (Receipt)
  2. Retrieving Data for Loan Action (Receipt)
  3. Saving / Initiation Request for Loan Action (Receipt)
  4. Approving / Rejection Service Request for Loan Action (Receipt)




GET Receipt

This API is used for retrieving all the Receipt details for the specified Loan Id. 

URL: {{base_url}}/loan-management/v1/service-request/status

Request
Request Type: GET
Authorization: Bearer Token
Query Parameter
KeyData TypeValue
request*StringFixed = receipt
loanId*Integer-
* required Param

Response: 200

{
    "response": true,
    "data": true,
    "error": null
}



Fetch Data for Receipt

Upon fetching the SynoFin API. The user can choose the Receipt they must carry out in order to fulfil their demand at this point. 
Consequently, we use following APIs to retrieve the Data for the selected Receipt for the specified Loan Id.

  1. Data for Loan Action Receipt
  2. Master data for Receipt

POST Data For Loan Action

To obtain data for Receipt, utilise this API.

URL: {{base_url}}/loan-modification/v1/service-request/getDataForLoanActionssave

Run in Postman: Save Payment Request Details

Request: 

Request Type: POST
Authorization: Bearer Token

Query Parameter
No parameter

Loan Actions - Receipt

Request Body

Response: 200

Receipt

{
    "loan_id": "integer",
    "request_id": "receipt"
}

{
   "response": true,
   "data": {
      "outstanding_charges": [],
      "date_of_receipt": "2024-02-14",
      "addition_in_excess_money": 0
   },
   "error": null
}


Cheque Deposit

{
    "loan_id": "integer",
    "request_id": "deposit_receipt"
}

{
    "response": true,
    "data": {
        "deposit_receipts": []
    },
    "error": null
}

Receipt Realization / Bounce

{
    "loan_id": "integer",
    "request_id": "receipt_bounce"
}

{
   "response": true,
   "data": {
      "receipt_realize": [],
      "realization_date": "2024-02-14"
   },
   "error": null
}

Receipt Transfer

{
    "loan_id": "integer",
    "request_id": "receipt_transfer"
}

{
    "response": true,
    "data": {
        "receipt_transfer": [],
        "receipt_transfer_date": "2024-02-14"
    },
    "error": null
}

Receipt Bank Reconciliation

{
    "loan_id": "integer",
    "request_id": "receipt_bounce"
}

{
   "response": true,
   "data": {
      "receipt_bank_reconciliation": []
   },
   "error": null
}


POST Master Data for Receipt

To obtain Master data for Receipt, utilise this API.

URL: {{base_url}}/loan-management/v1/getMasterType

Request Type: POST
Authorization: Bearer Token

Query Parameter
No parameter

Query Parameter:
Schema
AttributeData TypeDescriptionMandatory
loan_idStringThe unique identifier for the loan.Yes
request_dataObjectContains various details related to the loan receipt request.Yes
addition_in_excess_moneyStringAdditional amount added beyond the specified limit.No
auto_allocatedStringIndicates whether the amount was auto-allocated. Possible values: "Yes" or "No".Yes
bank_account_numberStringThe bank account number for the transaction.Yes
bank_recon_ref_identifierStringThe bank reconciliation reference identifier.Yes
bounce_reason_for_nachStringReason for NACH bounce, if applicable.No
cash_receipt_numberStringThe cash receipt number.Yes
date_of_receiptDateThe date when the receipt was generated.Yes
deliverable_charge_codeStringThe code for any associated deliverable charge.No
fund_transfer_numberStringThe fund transfer number associated with the transaction.Yes
ifscStringThe IFSC code of the bank.Yes
instrument_bank_addressStringThe address of the bank.Yes
instrument_bank_nameStringThe name of the bank.Yes
instrument_dateDateThe date mentioned on the instrument (cheque or DD).Yes
instrument_numberStringThe number of the instrument (cheque or DD).Yes
is_chequeBooleanIndicates whether the payment method is a cheque.Yes
is_nachBooleanIndicates whether the payment method is NACH.Yes
loan_application_numberStringThe loan application number.No
payment_bankStringThe bank code associated with the payment.Yes
payment_modeStringThe mode of payment (e.g., IMPS, NEFT).Yes
receipt_amountStringThe amount received.Yes
receipt_purposeStringThe purpose of the receipt (e.g., installment, interest).Yes
receipts_allocationStringDetails of any allocation of receipts.No
receivablesArrayAn array containing details of receivables. (Can be passed empty)Yes
received_fromStringIdentifier of the entity from which payment is received.Yes
remarksStringAdditional remarks or notes.No
sourcing_branchStringThe code of the sourcing branch.Yes
transaction_dateDateThe date of the transaction.Yes
transaction_referenceStringThe reference number of the transaction.Yes
upiStringThe UPI ID associated with the transaction.No
service_request_idStringThe ID of the service request.No
service_request_subtypeStringThe subtype of the service request.Yes
service_request_typeStringThe type of service request.Yes
service_typeStringThe type of service.No
Body
{
    "service_request_type": "receipt",
    "service_request_subtype": "2",
    "service_type": "",
    "loan_id": "000",
    "request_data": {
        "loan_application_number": "",
        "date_of_receipt": "2026-02-03",
        "receipt_amount": "12345",
        "cash_receipt_number": "CASH123456",
        "payment_mode": "cash",
        "transaction_date": "2026-02-03",
        "received_from": "ACME_LLC",
        "receipt_purpose": "installment",
        "instrument_date": "2026-02-03",
        "instrument_number": "INSTR12345",
        "transaction_reference": "REF344",
        "payment_bank": "",
        "sourcing_branch": "Branch6",
        "deliverable_charge_code": "",
        "upi": "",
        "instrument_bank_name": "Mock Bank",
        "bank_account_number": "1234567890",
        "fund_transfer_number": "12345678",
        "ifsc": "MOCKIFSC123",
        "instrument_bank_address": "123 Mock Street, Mock City",
        "is_nach": true,
        "bounce_reason_for_nach": "",
        "addition_in_excess_money": "0",
        "bank_recon_ref_identifier": "12345678",
        "auto_allocated": "Yes",
        "receipts_allocation": "",
        "remarks": "This is a mock receipt",
        "is_cheque": true
    },
    "service_request_id": "REQ12345"
}

Response:

Success: 200 OK
Schema
AttributeData TypeDescriptionMandatory
responseBooleanIndicates the success of the request.Yes
dataObjectContains additional details about the request.Yes
resultAnyResult of the request.No
statusStringCurrent status of the service request.Yes
service_request_idIntegerUnique identifier for the service request.Yes
unique_transaction_numberAnyUnique transaction number, if applicable.No
errorAnyDetails of any errors, if applicable.No
Body
{
    "response": true,
    "data": {
        "result": null,
        "status": "initiated",
        "service_request_id": 1349,
        "unique_transaction_number": null
    },
    "error": null
}
Internal Server Error: 500

 

Internal Server Error: 200
Schema
Error Response Code and Messages
S. NoCodeMessageDescription
1.
107373
Receipt Reference Number should be Unique
Appears When receipt number is similar.
2.
1015000
Invalid LoanApplicationNumber
Appears when the loan_id is invalid, null or empty
3.
1016001
Invalid Receipt Amount
Appears When receipt amount is empty or null.
4.
1015000
Request already initiated for bank identifier <
bank_recon_ref_identifier
>
Appears If the request is already generated with same 
bank_recon_ref_identifier and no action is taken against it.
5.
101627
Receipt date cannot be before disbursal date.Appears if the receipt date is after the date of disbursal.
6.101754Receipt date can be on or before business dateAppears if the receipt date occurs after the business date.

200

[
      {
         "payment_mode": {},
         "receipt_purpose": {},
         "bounce_reason_for_nach": {},
         "payment_bank": {}
      }
   ],
   "error": null
}


Loan Actions - ReceiptAttribute


Request -Type

Request Body

Description
Response:Mandatory
response
BooleantrueYes
data
ObjectFail Response Object
Yes

Receipt


[
 

Data   {
        "type": "payment_mode"
 Fail  Response },
 Attribute
 {
   
{
 
 "response":true,
 
 
"type":
unique_transaction_number
"receipt_purpose"
    },
    {
        "type": "payment_bank"
    },
    {
        "type": "bounce_reason_for_nach"
    }
]

null
 "data":
Yes

Cheque Depositerror

[
    {
        "type": "payment_bank"
    }
]

Object
{
 Error  "response": true,
 Fail  "data":Response [
 Attribute
  {
   
code Please  Refer  "payment_bank":Error {}
 Response  Code  and }
   ],
   "error": null
} Messages

Receipt Realization / Bounce

[
    {
        "type": "bounce_reason_for_cheque"
    }
]

{
    "response": true,
    "data": [
        {
            "bounce_reason_for_cheque": {}
        }
    ],
    "error": null
}

Receipt Transfer

[]

{
    "response": true,
    "data": [
        {}
    ],
    "error": null
}

Receipt Bank Reconciliation

[]

{
    "response": true,
    "data": [
        {}
    ],
    "error": null
}
text
Yes

{
    

"response":

Savingfalse, /"data": Initiation{ Request"unique_transaction_number": fornull Loan}, Action"error": (Receipt)

{

These"code": are107373, the"text": APIs that are used to save loan "Receipt orReference initiateNumber serviceshould requestsbe initiatedUnique" by} maker}

so that the checker can review them and then determine what they want to accomplish and either Approve or Reject the Request.

Consequently, we use following APIs to save or intiated the Loan Receipt for the selected Receipt for the specified Loan Id.

POST Save Service Request

To save data for Receipt, utilise this API.

URL: {{base_url}}/loan-modification/v1/service-request/save

Request Type: POST
Authorization: Bearer Token

Query Parameter
No parameter

Loan Actions - Receipt

Request Body

Response: 200

Receipt

{
   "service_request_type": "receipt",
   "service_request_subtype": "0",
   "service_type": "",
   "loan_id": "0",
   "request_data": {
      "date_of_receipt": "2024-02-14",
      "receipt_amount": "0",
      "cash_receipt_number": "",
      "payment_mode": "string",
      "transaction_date": "2024-02-14",
      "received_from": "string",
      "receipt_purpose": "string",
      "instrument_date": "2024-02-14",
      "instrument_number": "",
      "transaction_reference": "",
      "payment_bank": "",
      "upi": "",
      "instrument_bank_name": "",
      "bank_account_number": "",
      "fund_transfer_number": "",
      "ifsc": "",
      "instrument_bank_address": "",
      "is_nach": true,
      "bounce_reason_for_nach": "",
      "addition_in_excess_money": "0",
      "bank_recon_ref_identifier": "",
      "auto_allocated": "Yes",
      "receipts_allocation": "",
      "remarks": "",
      "receivables": []
   },
   "service_request_id": ""
}

{
    "response": true,
    "data": {
        "result": null,
        "service_request_id": 0
    },
    "error": null
}


Cheque Deposit

{}

{
    "response": true,
    "data": {
        "result": null,
        "service_request_id": 0
    },
    "error": null
}

Receipt Realization / Bounce

{
   "service_request_type": "receipt_bounce",
   "service_request_subtype": "0",
   "service_type": "",
   "loan_id": "0",
   "request_data": {
      "total_instruments": 0,
      "total_amount": 0,
      "realization_date": "2024-02-14",
      "bounce_reason_for_cheque": "string",
      "receipt_realize": [
         {
            "receipt_reference": "string",
            "fund_transfer_receipt": "0",
            "receipt_amount": 0,
            "bounce_reason": null,
            "charge_id": null,
            "instrument_number": "0",
            "pay_slip_number": null,
            "source_id": null,
            "receipt_purpose": "string",
            "receipt_id": null,
            "deposit_bank_acc_number": "string",
            "reason_code": null,
            "reason_description": null,
            "loan_account": "string",
            "receipt_payment_type": null,
            "date_of_receipt": "14/02/2024",
            "repayment_indicator": null,
            "receipt_status": "string",
            "payment_type": "string",
            "transaction_date": "14/02/2024",
            "service_request_id": 0,
            "receipt_state": "string",
            "receipts_breakup": null,
            "deposit_date": "14/02/2024",
            "instrument_date": "14/02/2024",
            "bank_reconciliation_reference_identifier": null
         }
      ],
      "remarks": "",
      "transaction_date": "2024-02-14"
   },
   "service_request_id": ""
}

{
    "response": true,
    "data": {
        "result": null,
        "service_request_id": 0
    },
    "error": null
}

Receipt Transfer

{
   "service_request_type": "receipt_transfer",
   "service_request_subtype": "0",
   "service_type": "",
   "loan_id": "0",
   "request_data": {
      "receipt_transfer": [
         {
            "receipt_reference": "string",
            "fund_transfer_receipt": "string",
            "receipt_amount": 0,
            "bounce_reason": null,
            "charge_id": null,
            "instrument_number": "",
            "pay_slip_number": null,
            "source_id": null,
            "receipt_purpose": "string",
            "receipt_id": null,
            "deposit_bank_acc_number": null,
            "reason_code": null,
            "reason_description": null,
            "loan_account": "string",
            "receipt_payment_type": null,
            "date_of_receipt": "30/01/2024",
            "repayment_indicator": null,
            "receipt_status": "string",
            "payment_type": "string",
            "transaction_date": "30/01/2024",
            "service_request_id": 0,
            "receipt_state": "string",
            "receipts_breakup": null,
            "deposit_date": "30/01/2024",
            "instrument_date": "30/01/2024",
            "bank_reconciliation_reference_identifier": null
         }
      ],
      "receipt_transfer_date": "2024-02-14",
      "loan_application_number": "0",
      "transaction_date": "2024-02-14"
   },
   "service_request_id": ""
}

{
    "response": true,
    "data": {
        "result": null,
        "service_request_id": 0
    },
    "error": null
}

Receipt Bank Reconciliation

{
   "service_request_type": "receipt_bank_reconciliation",
   "service_request_subtype": "0",
   "service_type": "",
   "loan_id": "0",
   "request_data": {
      "receipt_bank_reconciliation": [
         {
            "receipt_reference": "string",
            "fund_transfer_receipt": null,
            "receipt_amount": null,
            "bounce_reason": null,
            "charge_id": null,
            "instrument_number": null,
            "pay_slip_number": null,
            "source_id": null,
            "receipt_purpose": null,
            "receipt_id": 0,
            "deposit_bank_acc_number": null,
            "reason_code": null,
            "reason_description": null,
            "loan_account": "string",
            "receipt_payment_type": null,
            "date_of_receipt": "2024-02-14 00:00:00.0",
            "repayment_indicator": null,
            "receipt_status": "string",
            "payment_type": "string",
            "transaction_date": null,
            "service_request_id": null,
            "receipt_state": "string",
            "receipts_breakup": null,
            "deposit_date": "2024-02-14 00:00:00.0",
            "instrument_date": null,
            "bank_reconciliation_reference_identifier": ""
         }
      ],
      "bank_recon_ref_identifier": "",
      "transaction_date": "2024-02-14"
   },
   "service_request_id": ""
}

{
    "response": true,
    "data": {
        "result": null,
        "service_request_id": 0
    },
    "error": null
}




Request Approval / Rejection 

The request must now be approved at the Request page, where users may examine requests and take action.

SynoFin - Request