Transaction Monitoring
ACH Risk Management
To enhance the management of the risks associated with ACH funding deposit transfer returns, we introduce the transaction monitoring feature that analyzes the originator of the ACH pull transfer, and, based on the Plaid Signal score, we determine if we need to place the transfer on hold due to high-risk customers.
Cybrid assesses each ACH funding deposit transfer, and if the customer is considered high-risk, the Cybrid platform automatically places a 2-day administrative hold on the customer's transfers once they move into the pending state.
The goal is to capture ACH returns within the standard 2-day window and protect Cybrid partners from issues related to ACH returns, while helping you keep your reserve account intact. If an ACH return occurs during the hold period, Cybrid will credit the customer's external bank account instead. This also ensures complete transparency, allowing you to display accurate account balances to end users.
ACH pull transfer lifecycle
The transfer can potentially progress through the following stages:
storing
-> reviewing
-> pending
-> holding
-> completed
, or failed
.
The
reviewing
andholding
states may or may not happen.
How to know if an ACH pull transfer is on hold?
You can monitor the state
and check the hold_details
block on any of the ACH pull funding deposit transfers.
API polling
The first method is to call the following API request:
GET /api/transfers/{transfer_guid}
{
"guid": "string",
"transfer_type": "string",
"side": "string",
"payment_rail": "ach",
"state": "string",
// ... other fields ...
"hold_details": {
"applicable_types": [
"administrative"
],
"duration": 172800, // 172800 seconds = 2 days
"started_at": "datetime"
}
// ... other fields ...
}
The applicable_types
will be set very soon after creating the transfer to indicate the type of hold that will apply. However, the other fields (duration
and started_at
) will only be populated/updated once the hold has started.
You can use the summation of started_at
+ duration
to calculate when funds will be released and available (automatically) in the platform_available
field of the customer's fiat account.
Web event deliveries
The second approach is to monitor the delivery of webhook events for transfer.holding
, and after that, use API polling to retrieve the ACH transfer details, such as the duration
of the holding period. As soon as a transfer gets submitted to the Cybrid partner processor and enters the pending
state, you can inspect hold_details
information, and other information such as the applicable_types
and whether it has been set to administrative
.
Updated about 5 hours ago