Integration of Salesforce with ACH Processing Co API

Client

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.

Challenges

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.


Solution

The step- wise process to integrate Salesforce with ACH Processing API is given below:

  1. Initial Setup: When you will enter ACH information on a Repayment record(custom object).
  2. The steps are given below:-
    • Create a Repayment record
    • Enter Amount and Enter Bank Information
  3. Creating Payment Records: A Scheduled Apex process runs each night at midnight, querying all Repayment records and creating the corresponding Payment records.
  4. The steps are given below:-
    • Apex Batch will run Each Night at 12 pm and Create Payment records with status “Pending”.
    • Payment Record will be Created
    ACH Processing Co API image

  5. Send to API: A Scheduled class run each day at 3.30 pm that sends the Payment records that have a Date of today- the records are sent to the ACH API.
  6. The steps are given below:-
    • 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.

    • ACH Processing Co API image

    • Payment Records Updated(Scheduled), After Scheduling the Payment record Status of Payment record will change to pending.

    • ACH Processing Co API image

    • Return Back to ACH API

  7. ACH Return: A Scheduled Apex process runs every day to retrieve the return files from the ACH API, and it will update the salesforce records with return records.
  8. The steps are given below:-
    • Apex Batch Runs daily to pull the ACH returns files and Update the Payment records, and apply fees based on the fees table.
    • If payment will fail status

      ACH Processing Co API image

      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.

      ACH Processing Co API image

    • Payment Record Updated(Paid or Failed) & Fees are applied.

    • 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%).


      ACH Processing Co API image

    • Return Back to ACH API.

Result

  • 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.