Working With Routing & Account Number
General
When processing payments using NACHA files (and sometimes when using integrated processors), it is useful to be able to easily find the routing and account number for a customer. Because of privacy requirements, routing and account numbers are not as readily available as other data. This article will cover how to find your customers' routing and account numbers.
LoanPro API
The only place routing and account number can be found in LoanPro is at the payment level. Routing and account numbers are captured when payments are processed using a bank account as the payment method.
To get the routing and account numbers, you can pull payments through the /odata.svc/Payments endpoint.
GET https://loanpro.simnang.com/api/public/api/1/odata.svc/Payments
The example below shows the a sample response.
{
"d": {
"results": [
{
"__metadata": {
"uri": "http://securepayments.loanpro.io/api/public/api/1/odata.svc/Payments(id=638)",
"type": "Entity.Payment"
},
"id": 638,
"displayId": 5957,
"paymentInfoId": 8,
"paymentTypeId": 1,
"paymentMethodId": 4,
"paymentAccountId": 5,
"entityType": "Entity.Loan",
"entityId": 316,
"modId": null,
"cashDrawerId": null,
"cashDrawerTxId": null,
"txSnapshotId": null,
"amount": "400",
"extra": "payment.extra.tx.principal",
"lastExtra": null,
"early": 0,
"payoffFlag": 0,
"payoffApplyDiffAs": null,
"payoffOptions": null,
"customApplication": null,
"info": "AutoPay: Sample Autopay",
"date": "/Date(1507420800)/",
"chargeFeeType": "loan.cardfee.types.0",
"chargeFeeAmount": "0.00",
"chargeFeePercentage": "0.00",
"echeckAuthType": "payment.echeckauth.WEB",
"parentId": null,
"childId": null,
"status": "payment.status.success",
"reverseReason": null,
"reverseDate": null,
"comments": null,
"loanStatusId": 3,
"loanSubStatusId": 16,
"sourceCompanyId": null,
"beforePrincipalBalance": "23612.65",
"beforePayoff": "24312.06",
"beforeNextDueDate": "/Date(1506816000)/",
"beforeNextDueAmount": "1302.30",
"beforeAmountPastDue": "2383.95",
"beforeDaysPastDue": 56,
"afterPrincipalBalance": "23612.65",
"afterPayoff": "23912.06",
"afterNextDueDate": "/Date(1506816000)/",
"afterNextDueAmount": "1302.30",
"afterAmountPastDue": "2383.95",
"afterDaysPastDue": 56,
"systemComments": null,
"chargeOffRecovery": 0,
"resetPastDue": null,
"apdAdjustmentId": null,
"dpdAdjustmentId": null,
"paymentMethodOption": "12341354235-123124125",
"paymentMethodName": "Testing2",
"isSplit": null,
"splitId": null,
"nachaReturnCode": null,
"active": 1,
"created": "/Date(1506437558)/",
"reportExtendedData": null,
"createdBy": null
}
],
"summary": {
"start": "441",
"pageSize": "1",
"total": 1
}
}
}
The highlighted line shows the routing number and account number. You can also pull payments for a specific loan using the following call:
GET https://securepayments.loanpro.io/api/public/api/1/odata.svc/Loans({ID})
The {ID} portion of the URL should be replaced with the ID of the loan for which you want to pull payments.
You can try this method on our ReadMe page—an interactive API documentation page which lists each of our requests.
Secure Payments
You can get routing and account numbers from Secure Payments. This must be done either one account at a time in the user interface, or through the API. To get account information through the API, use the following call:
GET https://securepayments.loanpro.io/api/checking-account/all
The results of this call will look like this:
[
{
"address": "123 OAK LANE",
"account_type": "checking",
"city": "SCHENECTADY",
"bank_name": "WELLS FARGO BANK",
"state": "NY",
"zipcode": "12345",
"eft_branch_number": "",
"accountholder_name": "Andy Goodson",
"routing_number": "124002971",
"account_number": "582804511",
"eft_institution_number": "",
"country": "usa"
}
]
Loan Database
You can also pull routing and account number from the LoanPro database, but only if you have a dedicated RDS. You can pull this information from the payment_entity table, from the payment_method_options field. Remember that in order to get this data, a payment must exist, and the payment must have been made using the bank account in question.