The way in which you add a Plaid product to an Item depends on the product you would like to add.
Transactions, Investments, Liabilities, Identity, Auth, and Transfer can be added post-Link by making a call to that product's endpoint for the Item, so long as these products were originally included in the required_if_supported_products
, optional_products
, or additional_consented_products
parameters passed to /link/token/create
when the Item was first created. This will initialize the Item with the new product. For example, if you want to add the Transactions product to an existing Item, you can call the /transactions/get
endpoint.
If the product was not included in the initial /link/token/create
request, then you will need to send the user through the update mode to gather consent for the new product. This involves creating a new link_token
for Update mode using the access_token
of the existing Item and specifying the new product in the additional_consented_products
array. Once the user has re-authenticated, you can call the necessary product endpoints.
Bank Income and Assets both can be initialized post-Link, but may require re-launching Link to obtain additional consent. See the Verifying Bank Income for existing Items and Getting an Asset Report for an existing Item sections of our docs.
Identity Verification and Payment Initiation additional products cannot be added once an Item has been created.
Before implementing a process to add products we recommend reviewing our docs on how to optimize Link conversion and best practices on initializing products. They go into more detail about how to add products and any limitations that you might encounter.