The Automated Clearing House (ACH) network is a widely-used electronic funds transfer system in the United States that enables the movement of funds between bank accounts. It processes a large volume of transactions, such as direct deposits, bill payments, and business-to-business transactions. It's important to note that ACH transactions are not processed in real time like wire transfers. They typically follow specific processing windows and settlement schedules, which may vary based on the type of transaction and the participating financial institutions.

Link Money is an ACH payments platform that can provide merchants with a way to offer ACH payments integrated with Radial’s payment solution. Link Money enables Merchants to easily accept payments from their customers directly from customers' bank accounts. This can be achieved by integrating with Link Money's SDK and APIs. Link Money enables Merchants to easily accept payments from their customers directly from customer's bank accounts.

There are two steps in Link Money Processing

  • Account Linking: The end customer can link their bank account with Link Money. The webstore or merchant integrates with Link Money's SDK to link a customer's bank accounts. For details, see Link Money SDK Javascript Integration.
  • Pay by Bank: The customer can pay using the bank account linked with Link Money. Radial integrates with Link Money APIs to initiate payments, refunds and cancellations.

Link Money Process Flow

The Link Money process is shown in the flow diagram below and detailed in the numbered steps that follow.

  1. Customer initiates the payment using the "Pay by Bank" button on the Webstore.
  2. Webstore sends an Initialize Payment Authorization request with the relevant customer information and billing information. Radial calls the get Session Key API to get the Session Key. Radial then sends to the webstore the Initialize Payment Authorization response with the session key, which is required for the SDK requests. The webstore needs the session key to link the Customer's Bank account with Link Money (SDK).
    • In case of failure, the webstore should correct the request based on the response code and response code description, and retry the Initialize Payment Authorization Request.
    • In case of fault response, the webstore should retry the Initialize Payment Authorization Request. If the request consistently fails, reach out to Radial support for troubleshooting.
    • In case of timeout response, the webstore should retry the Initialize Payment Authorization request.
    • If there is no response from Radial or response timed out between webstore and Radial, the webstore should retry the Initialize Payment Authorization request.
  3. After the Customer's Bank account is successfully linked, Link Money redirects to the webstore redirect URL with the CUSTOMER_ID.
  4. The webstore sends the Get Payment Authorization request with the CUSTOMER_ID (received during account linking) and PAYMENT_ID (received in the Initialize Payment Authorization response). Radial calls the initiate payment API and returns the Get Payment Authorization response.
    • In case of success response, the webstore should accept the order.
    • In case of pending response, the transaction must be confirmed by the order management system using a confirm funds api call before the order is released.
    • If there is a Get Payment Authorization timeout response, the webstore should retry the Get Payment Authorization request with the same orderId, but with a new request ID.
    • If there is no response from Radial, or response timed out between webstore and Radial, or the webstore couldn't get a response from Radial for any reason, the webstore should retry the Get Payment Authorization request with the same orderId and the same request ID.