Exemple #1
0
 def __init__(self, config: Mapping[str, Any]):
     plaid_config = plaid.Configuration(
         host=SPEC_ENV_TO_PLAID_ENV[config["plaid_env"]], api_key={"clientId": config["client_id"], "secret": config["api_key"]}
     )
     api_client = plaid.ApiClient(plaid_config)
     self.client = plaid_api.PlaidApi(api_client)
     self.access_token = config["access_token"]
     self.start_date = datetime.datetime.strptime(config.get("start_date"), "%Y-%m-%d").date() if config.get("start_date") else None
Exemple #2
0
 def __init__(self, config: Mapping[str, Any]):
     plaid_config = plaid.Configuration(
         host=SPEC_ENV_TO_PLAID_ENV[config["plaid_env"]],
         api_key={
             "clientId": config["client_id"],
             "secret": config["api_key"]
         })
     api_client = plaid.ApiClient(plaid_config)
     self.client = plaid_api.PlaidApi(api_client)
     self.access_token = config["access_token"]
Exemple #3
0
 def check_connection(self, logger: AirbyteLogger, config: Mapping[str, Any]) -> Tuple[bool, Optional[Any]]:
     try:
         plaid_config = plaid.Configuration(
             host=SPEC_ENV_TO_PLAID_ENV[config["plaid_env"]], api_key={"clientId": config["client_id"], "secret": config["api_key"]}
         )
         api_client = plaid.ApiClient(plaid_config)
         client = plaid_api.PlaidApi(api_client)
         try:
             request = AccountsBalanceGetRequest(access_token=config["access_token"])
             client.accounts_balance_get(request)
             return True, None
         except plaid.ApiException as e:
             response = json.loads(e.body)
             return False, response
     except Exception as error:
         return False, error
Exemple #4
0
# Set PLAID_REDIRECT_URI to 'http://localhost:3000/'
# The OAuth redirect flow requires an endpoint on the developer's website
# that the bank website should redirect to. You will need to configure
# this redirect URI for your client ID through the Plaid developer dashboard
# at https://dashboard.plaid.com/team/api.
PLAID_REDIRECT_URI = empty_to_none('PLAID_REDIRECT_URI')

configuration = plaid.Configuration(host=plaid.Environment.Sandbox,
                                    api_key={
                                        'clientId': PLAID_CLIENT_ID,
                                        'secret': PLAID_SECRET,
                                        'plaidVersion': '2020-09-14'
                                    })

api_client = plaid.ApiClient(configuration)
client = plaid_api.PlaidApi(api_client)

products = []
for product in PLAID_PRODUCTS:
    products.append(Products(product))

# We store the access_token in memory - in production, store it in a secure
# persistent data store.
access_token = None
# The payment_id is only relevant for the UK Payment Initiation product.
# We store the payment_id in memory - in production, store it in a secure
# persistent data store.
payment_id = None

item_id = None