Direct Debit SG

Clients in Singapore can accept eGIRO Direct Debit payments from corporate customers with a Singaporean (SG) bank account.

eGIRO Direct Debit is reusable and can be used as many times as needed. Corporate customers that successfully set up eGIRO Direct Debit with their external SG bank account can use it to develop and create recurring direct debit offerings.

Please note that direct debits over $200,000 SGD are non-real-time and get processed on a delayed timeframe. Notifications for these transactions are not immediate; updates on payment creation, processing, and acknowledgment of success or failure can take some time.

For more information, see Direct Debit.

Prerequisites

Direct debit is only available for corporate customers. In order to accept and create direct debits, your customer must:

  • Own a Singaporean (SG) bank account with eGIRO enabled and a Nium SGD wallet.
  • Verify and authenticate the external bank account that'll be linked to the Nium SGD wallet
  • Authorize the Direct Debit mandate to debit their bank account and accept Nium's Terms and Conditions (T&C).
  • Verify the bank account associated with their Nium wallet has a sufficient balance before the transaction is initiated.

Verify Bank Account

Nium verifies your customer's bank account through eGIRO using instant verification:

  1. When you verify a customer's bank account, your customers get redirected to the return_url webpage.
  2. Here, your customers select the bank account they want to associate with their Nium wallet.
  3. Next, the customer verifies ownership by verifying their bank account credentials with the issuing bank to complete verification.

The return_url is returned in the Add Funding Instrument response.

URL Redirect Setup

Once the customer verifies their bank account, they're redirected to your website or application. You receive a webhook event notifying you that the bank account was successfully added to the Nium SGD wallet.

Keep your customers up to date on the verification status of their bank account on this website or application page by including the following during Direct Debit setup:

  • Web page to redirect customers to
  • Application URL
  • Customer host
  • Port

The following provides the format of the URL that will be generated to redirect customers. It includes the fundingInstrumentId that was created to represent the customer's bank account in Nium and the verification status:
URL: GET
https://<customerHost:Port>?fundingInstrumentId={fundingInstrumentId}&status={status}

Instant Verification

To link your customer's bank account to use Direct Debit via instant verification, redirect customers from your website to a page where they can select their bank and get redirected to their bank's website to authorize the connection.

Once they authorize the connection with their bank, the customer will need to be redirected back to your website. You'll receive a webhook event notifying you that the account has been successfully added to the wallet.

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 bank selection page.
  3. The customer chooses their bank account 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 (SG) instant verification flow.

Funds Flow Timeline

The movement of funds depends on the transaction involved:

  • If the amount of the transaction is under $200,000 SGD, then Nium credits funds in real-time.
  • If the amount is greater than $200,000 SGD, Nium will credit in T+1.

Chargebacks

Customers can dispute any transaction with their bank, including eGIRO Direct Debits, after funds are credited to their Nium wallet.

Please note, for non-real-time direct debits, where the transaction is greater than $200,000 SGD, it can take some time (up to 2 days, depending on when direct debit was initiated) for funds to appear in the Nium wallet.