ACH transaction times are notoriously slow. Frequently, companies wait up to 60 days to confirm that a bank account transfer was successful. However, in some cases, the risk of an ACH transfer being returned for various reasons, such as insufficient funds or fraud, can be mitigated to such a degree that transaction success can be assumed with a large degree of success. In these cases, instant ACH might be a useful tool in your payments flow.
Instant ACH is in closed beta
To use instant ACH with Sila, end-users must undergo additional verification steps:
- Device verification. With Iovation, the device an end-user is using, along with an approximate location (whether an Android tablet in Brazil or a jailbroken iPhone in Iceland) can be verified along with other standard KYC information. To verify a device, the INSTANT-ACHV2 KYC level must have been requested and subsequently passed.
- SMS confirmation. An end-user must opt-in to accept SMS notifications about all instant-ACH transactions. After confirmation, the end-user is expected to confirm or deny all instant ACH transactions within 5 minutes of requesting the transfer (and if not confirmed or denied, the transaction will be
UNCONFIRMEDand must be re-requested). This is handled by Sila directly through SMS. You will receive a webhook notification of a failed instant ACH transaction if the user denies the transaction. See https://docs.silamoney.com/docs/transaction-error-codes
- Plaid-linked bank account. The bank account used in the instant ACH transaction must be a bank account linked with Plaid, and Balance should be able to be requested for it. Balance will be checked in a user's risk assessment.
- Per-transaction risk assessment. Each transaction will go through a risk assessment to estimate the risk of getting an ACH return. If the proposed transaction fails the risk assessment, it will be set to a "failed" status and must be re-requested with a different processing type.
Multiple Instant ACH Transactions
Currently, only a single pending confirmation SMS message can exist at once. Therefore, either a user must approve or reject the transaction, or the pending transaction must time out (occurs after 5 minutes of inactivity) before another IACH request is made.
Any subsequent requests beyond the first prior to the SMS request receiving a response will not result in an SMS request, and will fail after 5 minutes, with no means to prevent this from happening.
As an app looking to use Instant ACH, you will need:
- to be configured to be able to send SMS notifications to end-users
- to be configured to request the INSTANT-ACHV2 KYC level when requesting KYC
- to register device tokens to end-users (see links below)
- to be provisioned a default Business UUID in production. All sandbox apps can use "business_uuid": "a9f38290-ce34-42db-95ab-630ebba6084a" for testing. ****
- to use Sila's Plaid implementation or a Plaid Processor Token implementation of your own.
A sandbox business_uuid is provided for all Sandbox applications.
All production apps have a business UUID mapped directly to the production application by default.
Below are some links to SDKs provided by Iovation:
We use a third party for Behavior Validation on the register page. This requires the installation of an SDK. Sila customers can contact their representative for installation instructions.
Documentation for the web component & server side implementation is available to those approved for the Instant ACH closed beta.
Updated 3 months ago