Plaid Module
  • 04 Dec 2023
  • 8 Minutes to read
  • Dark
    Light

Plaid Module

  • Dark
    Light

Article summary

Overview

Module Details

Core or Github ModuleDecisions.Plaid
Restart Required No
Steps ExposedYes
Step Location Integrations > Plaid
Settings Location Settings > Plaid Settings

The Plaid module facilitates seamless integration with Plaid services, enabling users to securely authenticate bank accounts, retrieve account details, and perform financial transactions within workflows. Ensure you have the credentials and permissions from Plaid to establish a secure connection and access banking information effectively. For detailed information, refer to Plaid's official documentation or support resources tailored to the use case.


Prerequisites

Create a Plaid Account

  • Sign up for a Plaid account. 
  • Access the Plaid Dashboard to manage applications, obtain API keys, and configure settings.

Choose a Product and Obtain API Keys

  • Select Plaid products suitable for the project needs (e.g., Transactions, Auth, Identity).
  • Obtain the unique Client ID and Secret keys for the desired environment.

Configuration

  1. In Decisions, install the Plaid Module.
  2. Navigate to Settings > Plaid Settings.
  3. Set the Base URL; Plaid has three different environments (Sandbox, Development, Production).
    • Sandbox: https://sandbox.plaid.com
    • Development: https://development.plaid.com
    • Production: https://production.plaid.com

Steps Available

Explore Plaid's comprehensive functionality through various steps available in the module:

Step NameDescription
Get AccountsRetrieve a list of accounts associated with any linked Item. Plaid will only return active bank accounts — accounts that are not closed and capable of carrying a balance.
Get Accounts BalanceReturns the real-time balance for each of an Item's accounts.
Get ApplicationRetrieve information about a specific application within the Plaid integration.
List ApplicationsRetrieve a list of applications available in Plaid.
Update Application ScopesModify or update the scopes associated with a particular application in the Plaid integration.
Create Asset ReportInitiates creating an Asset Report, which can then be retrieved by passing the asset_report_token return value to the /asset_report/get or /asset_report/pdf/get endpoints.
Create Asset Report Audit CopyCreate an audit copy of the asset report in Plaid.
Filter Asset ReportApply filters to refine the content of the asset report.
Get Asset ReportRetrieves the Asset Report in JSON format. Before calling /asset_report/get, you must first create the Asset Report using /asset_report/create (or filter an Asset Report using /asset_report/filter) and then wait for the PRODUCT_READY webhook to fire, indicating that the Report is ready to be retrieved.
Get Asset Report Audit CopyRetrieve an audit copy of the asset report Plaid.
Get Asset Report PDFObtain the asset report in PDF format.
Refresh Asset ReportCreate a new Asset Report based on the old one but with the most recent data available.
Remove Asset ReportRemove an Asset Report. Removing an Asset Report invalidates its asset_report_token, meaning you will no longer be able to use it to access Report data or create new Audit Copies.
Remove Asset Report Audit CopyRemove an Audit Copy. Removing an Audit Copy invalidates the audit_copy_token associated with it, meaning you and any third parties holding the token can no longer access Report data.
Get Auth DataRetrieve authentication-related data from Plaid.
Cancel Bank TransferCancel a bank transfer transaction.
Create Bank TransferInitiate the creation of a bank transfer.
Get Bank TransferFetches information about the transfer corresponding to the given transfer_id.
Get Bank Transfer BalanceRetrieve the balance related to a bank transfer.
Get SweepFetches a sweep corresponding to the given sweep_id.
List Bank Transfer EventsGet a list of Plaid-initiated ACH or bank transfer events based on specified filter criteria.
List Bank TransfersSee a list of all transfers and their statuses.
List SweepsFetches sweeps matching the given filters.
Migrate Account into Bank TransfersMigrate known account and routing numbers to Plaid Items.
Sync Bank Transfer EventsRequest up to the next 25 Plaid-initiated bank transfer events after a specific event_id.
Get CategoriesGet detailed information on categories returned by Plaid. This endpoint does not require authentication.
Create Deposit SwitchInitiates the process of creating a deposit switch.
Create Deposit Switch TokenGenerates a token required for creating a deposit switch.
Create Non-Plaid Deposit SwitchSimilar to the "Create Deposit Switch" step but specifically designed for creating a deposit switch involving non-Plaid entities or systems.
Get Deposit SwitchRetrieves information or details about a previously created deposit switch.
Find EmployerInformation about an employer associated with an account.
Get Employment VerificationReturns a list of items with employment information from a user's payroll provider verified by an end user.
Get IdentityRetrieve various account holder information on file with the financial institution, including names, emails, phone numbers, and addresses. Only name data is guaranteed to be returned; other fields will be empty arrays if not provided by the institution.
Create Income VerificationCreate a new Identity Verification for the user specified by the client_user_id field.
Get Income Verification (Paystubs)Gets payroll income information for a specific user, either as a result of the user connecting to their payroll provider or uploading a pay-related document.
Get Income Verification (Tax forms)Gets payroll income information for a specific user, either as a result of the user connecting to their payroll provider or uploading a pay-related document.
Get Income Verification SummaryRetrieve a previously created identity verification.
Get Original DocumentationRetrieve original documentation or records associated with a specific transaction, account, or financial action.
Income Verification Precheck
Refresh Income VerificationAllow a customer to retry their identity verification.
Find InstitutionsReturns a JSON response containing details for institutions that match the query parameters, up to a maximum of ten institutions per query.
Get Institution by IdReturns a JSON response containing details on a specified financial institution currently supported by Plaid.
Get InstitutionsReturns a JSON response containing details on all financial institutions currently supported by Plaid. Because Plaid supports thousands of institutions, results are paginated.
Get Investment HoldingsReceive user-authorized stock position data for investment-type accounts.
Get Investment TransactionsRetrieve up to 24 months of user-authorized transaction data for investment accounts.
Create Public TokenCreate a valid public_token for an arbitrary institution ID, initial products, and test credentials.
Exchange Public Token For access_tokenExchange a Link public_token for an API access_token. Link hands off the public_token client-side via the onSuccess callback once a user has created an Item. The public_token is ephemeral and expires after 30 minutes. An access_token does not expire but can be revoked using the Remove Item step.
Get ItemReturns information about the status of an Item.
Import Item
Invalidate access_tokenRotate the access_token associated with an Item. The endpoint returns a new access_token and immediately invalidates the previous access_token.
Remove ItemRemove an Item. Once removed, the access_token, as well as any processor tokens or bank account tokens associated with the Item, is no longer valid and cannot be used to access any data that was associated with the Item.
Update Item WebhookUpdate the webhook URL associated with an Item. This request triggers a WEBHOOK_UPDATE_ACKNOWLEDGED webhook to the newly specified webhook URL.
Get LiabilitiesReturns various details about an Item with loan or credit accounts. Liabilities data is available primarily for US financial institutions, with some limited coverage of Canadian institutions.
Create Link TokenCreates a link_token, which is required as a parameter when initializing Link. Once Link has been initialized, it returns a public_token, which can then be exchanged for an access_token
Get Link TokenGets information about a previously-created link_token using the /link/token/create endpoint.
Create PaymentAfter creating a payment recipient, use this step to create a payment to that recipient.
Create Payment RecipientCreate a payment recipient for payment initiation. The recipient must be in Europe, within a country that is a member of the Single Euro Payment Area (SEPA) or a non-Eurozone country supported by Plaid. For payments in the US, see the Transfer steps.
Create Payment Token
Get Payment DetailsCheck the payment status and receive basic information such as recipient and payment amount.
Get Payment RecipientGet details about a payment recipient previously created.
List Payment RecipientsList the payment recipients previously created.
List PaymentsRetrieve all created payments. By default, the 10 most recent payments are returned. You can request more payments and paginate through the results using the optional count and cursor parameters.
Reverse PaymentReverse a settled payment from a Plaid virtual account. The original payment must be in a settled state to be refunded.
Create Apex Bank Account TokenUsed to create a token suitable for sending to Apex to enable Plaid-Stripe integrations.
Create Bank Transfer as Processor
Create Processor TokenUsed to create a token suitable for sending to one of Plaid's partners to enable integrations.
Create Stripe Bank Account TokenUsed to create a token suitable for sending to Stripe to enable Plaid-Stripe integrations.
Get Auth DataUsed to get a processor token's product permissions. The products field will be an empty list if the processor can access all available products.
Get Balance DataReturns the real-time balance for each of an Item's accounts.
Retrieve Identity DataRetrieve various account holder information on file with the financial institution, including names, emails, phone numbers, and addresses.
Create Test ItemCreate a valid public_token for an arbitrary institution ID, initial products, and test credentials. The created public_token maps to a new Sandbox Item.
Create Test Item and Processor TokenCreate a valid processor_token for an arbitrary institution ID and test credentials. The created processor_token corresponds to a new Sandbox Item.
Fire Test WebhookTest that the code correctly handles webhooks.
Force Sandbox Item into Error StateForces an Item into an ITEM_LOGIN_REQUIRED state in order to simulate an Item whose login is no longer valid. This makes it easy to test Link's update mode flow in the Sandbox environment.
Manually Fire Bank Transfer WebhookManually trigger a TRANSFER_EVENTS_UPDATE webhook in the Sandbox environment.
Manually Fire Income WebhookManually trigger a Payroll or Document Income webhook in the Sandbox environment.
Save Selected Accounts for Platypus OAuth
Set Verification Status for Sandbox AccountChange the verification status of an Item in in the Sandbox in order to simulate the Automated Micro-deposit flow.
Simulate Bank Transfer Event in Sandbox
Simulate Transfer Event in SandboxSimulate a transfer event in the Sandbox environment. Note that while an event will be simulated and appear, no transactions will occur, and funds will not move between accounts, even within the Sandbox.
Evaluate Planned ACH TransactionEvaluate a planned ACH transaction to get a return risk assessment (such as a risk score and risk tier) and additional risk signals.
Report ACH Transaction InitiationReport whether you initiated an ACH transaction.
Report ACH Transaction ReturnReport a returned transaction previously sent to the Evaluate Planned ACH Transaction endpoint.
Get Incremental Transaction Updates on ItemSubscribe to all transactions associated with an Item and get updates synchronously.
Get Recurring Transaction StreamsReceive a summary of the recurring outflow and inflow streams (expenses and deposits) from a user’s checking, savings, or credit card accounts. Additionally, Plaid provides key insights about each recurring stream, including the category, merchant, last amount, and more.
Get Transaction DataReceive user-authorized transaction data for credit, depository, and some loan-type accounts (only those with account subtype student; coverage may be limited).
Refresh Transaction DataInitiates an on-demand extraction to fetch the newest transactions for an Item.
Cancel TransferCancel a transfer. A transfer is eligible for cancellation if the cancellable property is true.
Create TransferInitiate a new transfer.
Create Transfer AuthorizationAuthorize a transfer. This endpoint must be called prior to calling Create Transfer.
Get TransferFetches information about the transfer corresponding to the given transfer_id.
List Transfer EventsGet a list of transfer events based on specified filter criteria.
List TransfersList of all transfers and their statuses. Results are paginated; the count and offset query parameters retrieve the desired transfers.
Sync Transfer EventsRequest up to the next 25 transfer events after a specific event_id. 
Get Webhook Verification KeyRetrieve the verification key used for webhook endpoints. This verification key is used to verify the integrity and origin of the data received via webhooks, enhancing the overall security of your integration by confirming the authenticity of incoming Plaid webhook notifications.

Was this article helpful?