I have recently integrated with Plaid (production account) to get the list of transactions. The US institutions work well.
The problem is that when I try to get Canada ("CA") it returns HTTP 400:
{
"display_message": null,
"documentation_url": "https://plaid.com/docs/#create-link-token",
"error_code": "INVALID_PRODUCT",
"error_message": "client is not authorized to access the following products: [\"transactions\"]",
"error_type": "INVALID_INPUT",
"request_id": "NsltK34WXQD84IP"
}
This is the Python request:
LinkTokenCreateRequest(
products=[Products("transactions")],
client_name="Company",
country_codes=[CountryCode("CA")],
language="en",
user=LinkTokenCreateRequestUser(client_user_id=client_user_id),
)
Any idea why this error happens when using "CA" but not "US"?
It sounds like your developer account might only be enabled for the US, in which case you'll have to ask Plaid that it also be enabled for Canadian institutions -- Plaid used to be auto-enabled for both US and Canada for new accounts but it's possible that that has changed. To request access, you can submit a support ticket or contact sales.