Our Client is a large US Bank - TD Bank, offers a range of financial services and products to more than 10 million US customers through more than 1,100 branches and 2,600 "Green Machine” ATMs.
The customer needed an advanced way to connect the Salesforce CRM with ACH Processing Co API. ACH Processing Co is an online software product to perform online payment transactions. It also supports billing applications that allows the user to send an invoice or payment directly to a customer’s email address. Once the invoice is received, a link is provided to submit the payment directly to the account. ACH Processing Co also provides an API which allows third parties to programmatically access their business logic and data. The API allows access to ACH Processing Co API’s aggregate class and transaction data for third-party web developers, as well as integration with individual business websites. The ACH Processing Co API also allows customers to push their payments thereby eliminating the hassle of manually entering transactions.
The data that we need to query are related to Create, track and schedule the Transaction and Track Payments of ACH Processing Co API. So we have to fetch this type of data through custom SOAP based API Queries. The ACH Processing Co API is developed using industry standard technologies (SOAP web services, using XML Data transport format) and it follows Basic Authentication based authorization to validate the API connections. The challenges was syncing of Transaction data with Salesforce. So a solution had to be developed to find an approach to made the data synchronization in batch jobs.
The step- wise process to integrate Salesforce with ACH Processing API is given below:
- Initial Setup: When you will enter ACH information on a Repayment record(custom object).
- Create a Repayment record
- Enter Amount and Enter Bank Information
- Apex Batch will run Each Night at 12 pm and Create Payment records with status “Pending”.
- Payment Record will be Created
- Apex Batch runs every day at 3.30 pm to send all Payment records with status of Pending to ACH API and marks Payment records as Scheduled.
- Payment Records Updated(Scheduled), After Scheduling the Payment record Status of Payment record will change to pending.
- Return Back to ACH API
- Apex Batch Runs daily to pull the ACH returns files and Update the Payment records, and apply fees based on the fees table.
- Payment Record Updated(Paid or Failed) & Fees are applied.
- Return Back to ACH API.
If payment will fail status
If Payment fails Status field in Repayment Object will changed from Active to Pause and color payoff % field will changed to Red. We don’t track failed payments.
After successful payment payoff% field progress (in Repayment object) will change(depends on the payment i.e. Total payment is of $300 and you have paid only $200 payoff% filed progress will change from 0% to 67%).
- As ACH Processing CO API is a online payment and transactions web service, with integration of this API with Salesforce, users are able to track the status of all the transaction and payments in Salesforce which processed through the ACH electronic network for financial transactions in the United States.
- Customer can easily check their daily status of Transaction and payments in Salesforce once the batch processed daily at night time.
- ACH processes large volumes of credit and debit transactions in batches. ACH credit transfers include direct deposit, payroll and vendor payments. ACH direct debit transfers include consumer payments on insurance premiums, mortgage loans, and other kinds of bills. With the establishment of integration of the ACH Processing Co API with Salesforce CRM, the bank easily process the exchange of electronic transactions for the merchants.