v51

latestOpenAPI 3.0.0raw.githubusercontent.com2026-07-313352,3122.9 MB
plaid

Create payment consent

The /payment_initiation/consent/create endpoint is used to create a payment consent, which can be used to initiate payments on behalf of the user. Payment consents are created with UNAUTHORISED status by default and must be authorised by the user before payments can be initiated.

Consents can be limited in time and scope, and have constraints that describe limitations for payments.

post/payment_initiation/consent/create

Request body

client_idstring

Your Plaid API client_id. The client_id is required and may be provided either in the PLAID-CLIENT-ID header or as part of a request body.

secretstring

Your Plaid API secret. The secret is required and may be provided either in the PLAID-SECRET header or as part of a request body.

recipient_idstring required

The ID of the recipient the payment consent is for. The created consent can be used to transfer funds to this recipient only.

referencestring required

A reference for the payment consent. This must be an alphanumeric string with at most 18 characters and must not contain any special characters.

scopesPaymentInitiationConsentScope[]

An array of payment consent scopes.

type'SWEEPING' | 'COMMERCIAL'

Payment consent type. Defines possible use case for payments made with the given consent.

SWEEPING: Allows moving money between accounts owned by the same user.

COMMERCIAL: Allows initiating payments from the user's account to third parties.

Response

OK

consent_idstring required

A unique ID identifying the payment consent.

status'UNAUTHORISED' | 'AUTHORISED' | 'REVOKED' | 'REJECTED' | 'EXPIRED' required

The status of the payment consent.

UNAUTHORISED: Consent created, but requires user authorisation.

REJECTED: Consent authorisation was rejected by the bank.

AUTHORISED: Consent is active and ready to be used.

REVOKED: Consent has been revoked and can no longer be used.

EXPIRED: Consent is no longer valid.

request_idstring required

A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.