Working With Routing & Account Number


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.

If you are using the routing and account number to scrub some payments before processing occurs, this source for pulling the routing and account number will not work for you. You will need to get the routing and account numbers from Secure Payments to have them before payments are processed.

To get the routing and account numbers, you can pull payments through the /odata.svc/Payments endpoint.


The example below shows the a sample response.

"d": {
"results": [
"__metadata": {
"uri": "",
"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:


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:


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.

How did we do?

Powered by HelpDocs (opens in a new tab)