PayJunction's /plaid
API offers a way for integrators to create ACH WEB transactions that are compliant with industry standards for e-commerce solutions.
ACH transactions through PPD and CCD require the merchant to obtain explicit authorization from the customer via a signed form each time they charge the customer's bank account. By using PayJunction's /plaid
API, this step is eliminated because the customer directly authorized their account. Additionally, this API offers other benefits, such as verifying that the customer has sufficient funds available to cover the transaction, which can help reduce the number of transaction rejections.
General Overview
To process an ACH WEB transaction using a plaidAccessToken
, the general workflow is as follows:
-
Include the Plaid Javascript SDK in your web application:See: https://plaid.com/docs/link/web/
<script src="https://cdn.plaid.com/link/v2/stable/link-initialize.js"></script>
- Request a
plaidLinkToken
using POST /plaid/link/token/create. - Submit the
plaidLinkToken
to the Plaid Javascript SDK:Plaid.create({
token: plaidLinkToken,
onSuccess: async (plaidPublicToken) => {
...
}
}).open();The Plaid Link process takes control here and facilitates the customer authorizing with their bank to grant access to their account.
Once the user completes the process, a temporary
plaidPublicToken
is returned via theonSuccess
callback as seen in the code sample above. -
Submit the temporary
plaidPublicToken
using POST /plaid/item/public_token/exchange to create a non-expiringplaidAccessToken
. Conceptually, theplaidAccessToken
is similar to a PayJunctionvaultId
, and references the specific account the user provided access to. - Submit the
plaidAccessToken
using POST /transactions whenever an ACH WEB transaction needs to be processed.