Direct Debit US

Nium One platform clients in the United States can accept Automated Clearing House (ACH) Direct Debit payments from business customers with a US bank account.

You can use ACH Direct Debit as many times as you want. Direct Debit is a non-real-time payment method from payment creation, to processing, and acknowledgment of its success or failure.

For more information, see Direct Debit.

Prerequisites

These are the requirements for this funding mechanism:

  • Your customer needs to have a bank account in the US with Direct Debit ACH enabled and a Nium USD wallet.
  • Your customer needs to have sufficient balance in the added bank account before the payment is initiated, for example when you call the Fund Wallet API.
  • Your customer needs to authorize the Direct Debit mandate to debit their bank account and accept Nium's Terms and Conditions (T&C).
  • Your customer's bank account, to be added to the Nium wallet, needs to be verified.
  • Your customer needs to be a corporate customer.

Configuration

Nium verifies your customer's bank account through Nium's integration with Plaid Inc. through instant or micro-deposit verification. Your customer is redirected to the page rendered by Plaid through a URL called return_url. The return URL is returned as a response from calling the Add Funding Instrument API or the Confirm Funding Instrument ID API depending on whether your customer chooses to link their account via instant or micro-deposit verification.

URL redirect setup

Once your customer completes the authentication, they're redirected to your web page or application. You can then show the status of the account's addition to your customer. You provide your web page and application URL—customer host and port—during your Direct Debit setup. The URL redirect format below provides the fundingInstrumentId and shows the status of the fundingInstrumentId :
URL: GET https://<customerHost:Port>?fundingInstrumentId={fundingInstrumentId}&status={status}.

Customers have two options to link their bank account:

Option 1: Link bank account via instant verification

To link your customer's bank account to use Direct Debit via instant verification, they need to be redirected from your website to the Plaid website to authorize the connection. Your customer then selects the bank of the account to be linked and is redirected to the bank's website to complete their authentication.

Once your customer's bank account is associated with Plaid, they're redirected to your website, and they get a notification that their account is successfully linked. Plaid then sends the authentication information to Nium, which sends you a webhook.

Direct Debit instant verification endpoints

The following APIs support Direct Debit instant verification:

HTTP methodAPI nameAction
POSTAdd Funding InstrumentAdd the funding instrument to your customer's wallet to start a Direct Debit transaction. Use this API to add the payer's physical bank account to the customer's wallet so that Direct Debit payments can be initiated against it. Provide the funding instrument's country code and currency code.
GETGet Funding Instrument DetailsGet your customer's funding instrument details for a specific funding instrument ID. It's optional to use this API. The fundingInstrumentId is returned as a response in the Add Funding Instrument API call.
GETGet Funding Instrument ListGet the list of funding instruments registered with your customer. It's optional to use this API.
POSTFund WalletFund into your customer's wallet by selecting the funding channel as a direct_debit transaction. You also need to provide the fundingInstrumentId obtained from the response in the Add Funding Instrument API call.

Payment flow

  1. Call the Add Funding Instrument API to add your customer’s bank account.
  2. The API returns a return URL that lets you redirect the customer to the Plaid page.
  3. The customer chooses their bank account to add funds through Plaid and completes the authentication.
  4. Nium returns the funding instrument ID.
  5. Call the Fund Wallet API to pull funds into the wallet with the correct funding instrument ID.
  6. Your customer’s bank account is debited.
  7. Nium initiates compliance checks and, after a predetermined time, credits the money to your customer’s wallet.
  8. If the customer raises a chargeback, Nium manages the chargeback according to the terms and conditions agreement.
A diagram showing the instant verification Direct Debit flow.

A diagram showing the Direct Debit instant verification flow.

Option 2: Link bank account via micro-deposit verification

📌

IMPORTANT

Micro-deposits are not sent in real-time and can take two business days to appear on your customer's bank statement.

To link your customer's bank account to use Direct Debit via micro-deposit verification, they need to be redirected from your website to the Plaid website to authorize the connection. Your customer then provides the bank account details to be linked. They then authorize Nium to send a $0.01 micro-deposit to their bank account with a three-letter code that appears in their statement. Your customer authorizes the micro-deposit by entering the code.

Direct Debit micro-deposit verification endpoints

The following APIs support Direct Debit micro-deposit verification:

HTTP methodAPI nameDescription
POSTAdd Funding InstrumentAdd the funding instrument to your customer's wallet to start a Direct Debit transaction. Use this API to add the payer's physical bank account to the customer's wallet so that Direct Debit payments can be initiated against it. Provide the funding instrument's country code and currency code.
POSTConfirm Funding Instrument IDUse this API to confirm the payer's physical bank account against your customer's wallet so that Direct Debit payments can be initiated against it.
GETGet Funding Instrument DetailsGet your customer's funding instrument details for a specific funding instrument ID. It's optional to use this API. The fundingInstrumentId is returned as a response in the Add Funding Instrument API call.
GETGet Funding Instrument ListGet the list of funding instruments registered with your customer. It's optional to use this API.
POSTFund WalletFund into your customer's wallet by selecting the funding channel as a direct_debit transaction. You also need to provide the fundingInstrumentId obtained from the response in the Add Funding Instrument API call.

💁

TIP

To trigger micro-deposit scenarios in the sandbox environment, use the Simulate Funding Instrument Status Update (Sandbox Testing) API.

Payment flow

  1. Call the Add Funding Instrument API to add your customer’s bank account.
  2. The API returns a return URL that lets you redirect the customer to the Plaid page.
  3. If your customer chooses micro-deposit verification, they provide the details of their bank account to be linked, for example, their bank account number, routing code, account name, and account type. Nium then updates the funding instrument status as Pending and redirects the customer to the callback URL that you configured during the Direct Debit setup.

💁

TIP

When your customer receives a micro-deposit, they see a $0.01 deposit. Their account statement shows the sender as Nium and has ACCTVERFIY mentioned in the record. They also receive a three-letter code in the #XYZ format.

  1. You then receive a webhook notification Direct Debit Micro-Deposit Successful from Nium once the micro-deposit is sent to the customer account details provided in step 3.
  2. After receipt of the webhook, you send a notification to your customer, and you call the Confirm Funding Instrument ID API
  3. The API returns a return URL that lets you redirect the customer to the Plaid page again.
  4. Your customer enters the three-letter verification code received in their account statement.
  5. If the code matches, Nium saves the funding instrument or declines otherwise.
  6. Your customer is redirected to your website.
  7. Call the Fund Wallet API to pull funds into the wallet with the correct funding instrument ID.
  8. Your customer’s bank account is debited.
  9. Nium initiates compliance checks and, after a predetermined time, credits the money to your customer’s wallet.
  10. If the customer raises a chargeback, Nium manages it according to the T&C agreement.
A diagram showing the Direct Debit micro-deposit verification flow.

A diagram showing the Direct Debit micro-deposit verification flow.

Funds flow timeline

The customer's bank has two business days, after the day of the debit from their account, to reverse the payment. Thus, the cooling-off period takes two business days.

A diagram showing the settlement timing for ACH Direct Debit, which takes the standard three days.

A diagram showing the settlement timing for ACH Direct Debit, which takes the standard three days.

📌

IMPORTANT

A faster settlement time option is available to eligible clients after a risk assessment from Nium. Reach out to a Nium sales representative for more information.

Chargebacks

Your customer can initiate a dispute with their bank within two days for a business bank account after the funds are credited to their wallet. If their bank agrees, the money is pulled from the customer's Nium wallet.