plaid

Evaluate a planned ACH transaction

Use /signal/evaluate to evaluate a planned ACH transaction to get a return risk assessment (such as a risk score and risk tier) and additional risk signals.

In order to obtain a valid score for an ACH transaction, Plaid must have an access token for the account, and the Item must be healthy (receiving product updates) or have recently been in a healthy state. If the transaction does not meet eligibility requirements, an error will be returned corresponding to the underlying cause. If /signal/evaluate is called on the same transaction multiple times within a 24-hour period, cached results may be returned. For more information please refer to the error documentation on Item errors and Link in Update Mode.

Note: This request may take some time to complete if Signal is being added to an existing Item. This is because Plaid must communicate directly with the institution when retrieving the data for the first time.

post/signal/evaluate

Request body

client_idstring

Your Plaid API client_id. The client_id is required and may be provided either in the PLAID-CLIENT-ID header or as part of a request body.

secretstring

Your Plaid API secret. The secret is required and may be provided either in the PLAID-SECRET header or as part of a request body.

access_tokenstring required

The access token associated with the Item data is being requested for.

account_idstring required

The Plaid account_id of the account that is the funding source for the proposed transaction. The account_id is returned in the /accounts/get endpoint as well as the onSuccess callback metadata.

This will return an INVALID_ACCOUNT_ID error if the account has been removed at the bank or if the account_id is no longer valid.

client_transaction_idstring required

The unique ID that you would like to use to refer to this transaction. For your convenience mapping your internal data, you could use your internal ID/identifier for this transaction. The max length for this field is 36 characters.

amountnumber double required

The transaction amount, in USD (e.g. 102.05)

user_presentboolean nullable

true if the end user is present while initiating the ACH transfer and the endpoint is being called; false otherwise (for example, when the ACH transfer is scheduled and the end user is not present, or you call this endpoint after the ACH transfer but before submitting the Nacha file for ACH processing).

client_user_idstring

A unique ID that identifies the end user in your system. This ID is used to correlate requests by a user with multiple Items. Personally identifiable information, such as an email address or phone number, should not be used in the client_user_id.

is_recurringboolean nullable

true if the ACH transaction is a recurring transaction; false otherwise

default_payment_methodstring nullable

The default ACH or non-ACH payment method to complete the transaction. SAME_DAY_ACH: Same Day ACH by NACHA. The debit transaction is processed and settled on the same day NEXT_DAY_ACH: Next Day ACH settlement for debit transactions, offered by some payment processors STANDARD_ACH: standard ACH by NACHA REAL_TIME_PAYMENTS: real-time payments such as RTP and FedNow DEBIT_CARD: if the default payment is over debit card networks MULTIPLE_PAYMENT_METHODS: if there is no default debit rail or there are multiple payment methods Possible values: SAME_DAY_ACH, NEXT_DAY_ACH, STANDARD_ACH, REAL_TIME_PAYMENTS, DEBIT_CARD, MULTIPLE_PAYMENT_METHODS

risk_profile_keystring nullable

The key of the risk profile to use for this transaction. You can configure a risk profile using the Signal dashboard located within the Plaid Dashboard. If not provided, no risk profile will be used. This feature is currently in closed beta; to request access, contact your account manager.

Response

OK

request_idstring required

A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.

Changes