Plaid Link wrapper for AngularJS. Currently only supports custom integration.
Bower
bower install -S angular-plaid-link
NPM
npm install --save angular-plaid-link
Checkout the official documentation for additional details on using Plaid Link.
Make sure you have the plaid link script loaded on your page:
<body>
...
<script src="https://cdn.plaid.com/link/stable/link-initialize.js"></script>
</body>
Inject angular-plaid-link
into your app module:
angular.module('MyApp', [
...
'angular-plaid-link',
...
]);
You can configure the handler 2 ways, by using the plaidLinkProvider
and calling .init
inside a config block or
directly on the .create
method (see step 4). init
accepts a single object parameter.
Available configuration parameters
...
.config([
'plaidLinkProvider',
function(plaidLinkProvider) {
plaidLinkProvider.init({
clientName: 'My App',
env: 'tartan',
key: 'test_key',
product: 'auth'
});
}
])
...
The first parameter accepts a configuration object just like init
in plaidLinkProvider
. In addition you can pass the
onSuccess
and onExit
callback functions as the second and third parameters.
.controller('ctrl', [
'plaidLink'
function(plaidLink) {
plaidLink.create(
// configurations here will override matching plaidLinkProvider.init configurations
{
clientName: 'My App',
env: 'tartan',
key: 'test_key',
product: 'auth'
},
// success callback
function(token) {
console.log('token: ', token);
// pass the token to your sever to retrieve an `access_token`
// see https://github.com/plaid/link#step-3-write-server-side-handler
},
// user exit callback
function() {...});
}
]);
You can pass an optional bankType parameter to open directly to a specific bank.
https://plaid.com/docs/#institutions contains the valid bankType
's you can pass.
plaidLink.open(bankType); // bankType is optional
You can use plaidLink.isLoaded()
to determine if the link module has been loaded before attempting to call .open
.