13 October 2020
This blog explains why and the way to use Plaid for bank payment over the manual bank payment process.
Introduction to Plaid
Plaid is a technology platform which enables applications to attach with a user’s checking account, eliminating the necessity for users to enter the account and routing numbers or cope with micro-deposits which is an error-prone process, that is hard for users and forces businesses to withstand through sensitive information on their own systems.
Key Advantages of using Plaid
- Instant ACH authentication: Automated Clearing House (ACH), is a secure bank payment transfer system that coordinates inland Electronic Fund Transfer (EFT) transactions and connects all U.S. Banking channels.
- Account Information: Get the bank account information that is connected to Plaid
- Transaction Data: Audit account and transaction data
- Balance Check: Real-time balance checks
How to start?
Step 1: Register on the Plaid website
- First, Register on the Plaid website with this link (https://dashboard.plaid.com/signup), it is free for a sandbox mode.
- Login to dashboard > Account > Keys
- Collect sandbox API key, client_id, public_key, secret key
Step 2: Install Plaid Library
- Install the Plaid library in your Project using Nu-Get Package Manager for interacting with Plaid banking APIs.
Step 3: Integrate Plaid link
- Plaid Link is the easiest way to integrate with the Plaid API. Plaid Link is a drop-in module that handles authentication and credential verification. It works with all browsers and platforms including Android and iOS.
- Plaid.create accepts configuration objects and returns two functions open and exit.
- Open will display the “Select bank” view and close will exit from the Plaid window.
- Response: Public token, selected account ID
Step 4: Exchange Token flow
- Once the user has successfully logged in the Plaid link, the public token can be fetched on the client-side via onsuccess callback. The public_token is transitory and expires after 30 minutes. A public token is revoked once it has been successfully exchanged for an access token.
- API: POST item/public_token/exchange
- Response: Access token
Step 5: Selected account information flow
- Bypassing the access token and the selected account Id you’ll get all the account information.
- API: POST auth/get
- Result: List of all connected verified account Ids and each account Id retrieves each account’s bank name, routing number, account number, current balance
Step 6: Use of verified account ID
- You can use this verified account ID and access token with any third party payment gateway API like Stripe for the payment.