Skip to main content

Loan Action : Receipt Creation

POST Receipt Creation

This API facilitates the creation of a receipt for a loan transaction within the SynoFin platform. Users can submit a request for receipt generation, providing various transaction details. After successful creation, the request undergoes validation by a checker, who takes appropriate action (Service Request Actions | SynoFin Docs) to either approve or reject it.

Attribute Priority: Attributes fetched from SynoFin master are prioritized for inclusion in SynoFin masters.

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

Run in Postman: Receipt Creation Request

Request: 

Request Type: POST
Authorization: Bearer Token

Query Parameter:
Schema
Attribute Data Type Description Mandatory
loan_id String The unique identifier for the loan. Yes
request_data Object Contains various details related to the loan receipt request. Yes
addition_in_excess_money String Additional amount added beyond the specified limit. No
auto_allocated String Indicates whether the amount was auto-allocated. Possible values: "Yes" or "No". Yes
bank_account_number String The bank account number for the transaction. No
bank_recon_ref_identifier String The bank reconciliation reference identifier. No
bounce_reason_for_nach String Reason for NACH bounce, if applicable. No
cash_receipt_number String The cash receipt number. No
date_of_receipt Date The value date of the receipt Yes
deliverable_charge_code String The code for any associated deliverable charge. No
fund_transfer_number String The fund transfer number associated with the transaction. No
ifsc String The IFSC code of the bank. No
instrument_bank_address String The address of the bank. No
instrument_bank_name String The name of the bank. No
instrument_date Date The date mentioned on the instrument (cheque or DD). No
instrument_number String The number of the instrument (cheque or DD). No
is_cheque Boolean Indicates whether the payment method is a cheque. No
is_nach Boolean Indicates whether the payment method is NACH. No
loan_application_number String The loan application number. No
payment_bank String Lender's bank account in which the money was received. Fetched from bank master Yes
payment_mode String The mode of payment (e.g., IMPS, NEFT). Fetched from masters Yes
receipt_amount String The amount received from the customer Yes
receipt_purpose String The purpose of the receipt (e.g., installment, Any Due). This is fetched from masters. Yes
receipts_allocation String Details of any allocation of receipts. No
receivables Array An array containing details of receivables. (Can be passed empty) No
received_from String Identifier of the entity from which payment is received. No
remarks String Additional remarks or notes. No
sourcing_branch String The code of the sourcing branch. No
transaction_date Date Business date of the system. Can be skipped. No
transaction_reference String The reference number of the transaction. No
upi String The UPI ID associated with the transaction. No
service_request_id String The ID of the service request. No
service_request_subtype String The subtype of the service request. Yes
service_request_type String The type of service request. Yes
service_type String The type of service. No
Body
{
    "service_request_type": "receipt",
    "service_request_subtype": "2",
    "service_type": "",
    "loan_id": "239",
    "request_data": {
        "loan_application_number": "",
        "date_of_receipt": "2024-08-29",
        "receipt_amount": "2000",
        "cash_receipt_number": "",
        "payment_mode": "neft", //Fetched From SynoFin Master {neft, rtgs, imps, internet_banking, nach, upi etc..}
        "transaction_date": "2024-09-01",
        "received_from": "LPPLHYDER012610466441",
        "receipt_purpose": "any_due", //Fetched From SynoFin Master {any_due, installment, charges etc..}
        "payment_gateway_partner": "paytm", //Fetched From SynoFin Master {paytm, razorpay, payu etc..}
        "e_nach_type": "", //Fetched From SynoFin Master {emandate_dc, upisi, papernach, nach_esign etc..}
        "instrument_date": "2024-09-01",
        "instrument_number": "",
        "transaction_reference": "",
        "collection_agency_code": "",
        "ifsc": "",
        "payment_bank": "12312", //Fetched From Admin Master(id in Bank Accounts)
        "instrument_bank_name": "",
        "instrument_bank_address": "",
        "bank_account_number": "",
        "sourcing_branch": "",
        "deliverable_charge_code": "",
        "upi": "",
        "is_nach": true,
        "bounce_reason_for_nach": "", //Fetched From SynoFin Master {invalid_umrn, invalid_mandate, mandate_cancelled etc..}
        "fund_transfer_number": "76464E5733322",
        "addition_in_excess_money": "0",
        "bank_recon_ref_identifier": "",
        "auto_allocated": "Yes",
        "receipts_allocation": "",
        "receivables": //Fetched From Get Data for Loan Actions API using "request_id" = "receipt"
        [
            {
                "charge_id": -2,
                "charge_label": "Loan Processing fee",
                "total_outstanding_amount": 26,
                "type": "charges",
                "original_amount": 26,
                "charge_definition_id": null,
                "excess_money_id": null,
                "loan_id": null,
                "disbursal_schedule_id": null,
                "charge_code": "processing_fee",
                "outstanding_amount": 26,
                "amount_in_process": 0,
                "payment_status": null,
                "paid_amount": null,
                "total_paid_amount": null,
                "total_paid_amount_in_process": null,
                "paid_amount_in_process": null,
                "allocated_amount": "26",
                "reason": null,
                "payment_date": null,
                "repayment_id": null,
                "balance_payable": 0
            },
            {
                "charge_id": -1,
                "charge_label": "Total Outstanding Installment Amount",
                "total_outstanding_amount": 1401,
                "type": null,
                "original_amount": null,
                "charge_definition_id": null,
                "excess_money_id": null,
                "loan_id": null,
                "disbursal_schedule_id": null,
                "charge_code": null,
                "outstanding_amount": 1401,
                "amount_in_process": 0,
                "payment_status": null,
                "paid_amount": null,
                "total_paid_amount": null,
                "total_paid_amount_in_process": null,
                "paid_amount_in_process": null,
                "allocated_amount": "200",
                "reason": null,
                "payment_date": null,
                "repayment_id": null,
                "balance_payable": 1201
            }
        ],
        "remarks": ""
    },
    "service_request_id": ""
}

Response:

Success: 200 OK
Schema
Attribute Data Type Description Mandatory
response Boolean Indicates the success of the request. Yes
data Object Contains additional details about the request. Yes
result Any Result of the request. No
status String Current status of the service request. Yes
service_request_id Integer Unique identifier for the service request. Yes
unique_transaction_number Any Unique transaction number, if applicable. No
error Any Details 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: 200
Schema
Error Response Code and Messages
S. No Code Message Description
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. 101754 Receipt date can be on or before business date Appears if the receipt date occurs after the business date.
Attribute
Type Description
Mandatory
response
Boolean true Yes
data
Object Fail Response Object
Yes



Data : Fail Response Attribute
unique_transaction_number
null
Yes

error

Object
Error : Fail Response Attribute
code Please Refer Error Response Code and Messages
text
Yes
Body
{
    "response": false,
    "data": {
        "unique_transaction_number": null
    },
    "error": {
        "code": 107373,
        "text": "Receipt Reference Number should be Unique"
    }
}

Unauthorized: 401

Note: If the API is not authorized with the Token or if the authorization token has expired, this error is going to show up.

Body
{
    "code": 401,
    "message": "auth fail, you can retry!"
}