Plaid logo
Docs
ALL DOCS

API

  • Overview
  • Libraries
  • API versioning
  • Postman Collection
  • Webhooks
Payments and Funding
  • Auth
  • Balance
  • Identity
  • Signal
  • Transfer
  • Investments Move
  • Payment Initiation
  • Virtual Accounts
Financial Insights
  • Transactions
  • Investments
  • Liabilities
  • Enrich
KYC/AML and anti-fraud
  • Look up Dashboard users
  • Identity Verification
  • Monitor
  • Beacon (beta)
Instant Onboarding
  • Layer
Credit and Underwriting
  • Consumer Report (by Plaid Check)
  • Assets
  • Statements
  • Income
Fundamentals
  • Items
  • Accounts
  • Institutions
  • Sandbox
  • Link
  • Users
  • Consent
  • Network
  • OAuth
Partnerships
  • Processor tokens
  • Processor partners
  • Reseller partners
Plaid logo
Docs
Close search modal
Ask Bill!
Ask Bill!
Hi! I'm Bill! You can ask me all about the Plaid API. Try asking questions like:
    Note: Bill isn't perfect. He's just a robot platypus that reads our docs for fun. You should treat his answers with the same healthy skepticism you might treat any other answer on the internet. This chat may be logged for quality and training purposes. Please don't send Bill any PII -- he's scared of intimacy. All chats with Bill are subject to Plaid's Privacy Policy.
    Plaid.com
    Log in
    Get API Keys
    Open nav

    Transfer Platform Payments

    API reference for Transfer Platform Payments endpoints

    For how-to guidance, see the Platform Payments documentation.

    Platform Payments
    /transfer/originator/createCreate a new originator
    /transfer/originator/getGet the status of an originator's onboarding
    /transfer/originator/listGet the status of all originators' onboarding
    /transfer/originator/funding_account/createCreate a new funding account for an originator
    /transfer/questionnaire/createGenerate a Plaid-hosted onboarding UI URL

    /transfer/originator/create

    Create a new originator

    Use the /transfer/originator/create endpoint to create a new originator and return an originator_client_id.

    transfer/originator/create

    Request fields

    client_id
    stringstring
    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.
    secret
    stringstring
    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.
    company_name
    requiredstringrequired, string
    The company name of the end customer being created. This will be displayed in public-facing surfaces, e.g. Plaid Dashboard.

    Min length: 1
    Select Language
    1const request: TransferOriginatorCreateRequest = {
    2 company_name: 'Marketplace of Shannon',
    3};
    4
    5try {
    6 const response = await client.transferOriginatorCreate(request);
    7} catch (error) {
    8 // handle error
    9}
    transfer/originator/create

    Response fields and example

    originator_client_id
    stringstring
    Client ID of the originator. This identifier will be used when creating transfers and should be stored associated with end user information.
    company_name
    stringstring
    The company name of the end customer.
    request_id
    stringstring
    A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
    1{
    2 "originator_client_id": "6a65dh3d1h0d1027121ak184",
    3 "company_name": "Marketplace of Shannon",
    4 "request_id": "4zlKapIkTm8p5KM"
    5}
    Was this helpful?

    /transfer/originator/get

    Get status of an originator's onboarding

    The /transfer/originator/get endpoint gets status updates for an originator's onboarding process. This information is also available via the Transfer page on the Plaid dashboard.

    transfer/originator/get

    Request fields

    client_id
    stringstring
    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.
    secret
    stringstring
    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.
    originator_client_id
    requiredstringrequired, string
    Client ID of the end customer (i.e. the originator).
    Select Language
    1const request: TransferOriginatorGetRequest = {
    2 originator_client_id: '6a65dh3d1h0d1027121ak184',
    3};
    4
    5try {
    6 const response = await client.transferOriginatorGet(request);
    7} catch (error) {
    8 // handle error
    9}
    transfer/originator/get

    Response fields and example

    originator
    objectobject
    Originator and their status.
    client_id
    stringstring
    Originator’s client ID.
    transfer_diligence_status
    stringstring
    Originator’s diligence status.

    Possible values: not_submitted, submitted, under_review, approved, denied, more_information_required
    company_name
    stringstring
    The company name of the end customer.
    outstanding_requirements
    [object][object]
    List of outstanding requirements for scaled platform originators. Only populated when transfer_diligence_status is more_information_required.
    requirement_type
    stringstring
    The type of requirement.
    person_id
    nullablestringnullable, string
    UUID of the person associated with the requirement. Only present for individual-scoped requirements.
    request_id
    stringstring
    A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
    1{
    2 "originator": {
    3 "client_id": "6a65dh3d1h0d1027121ak184",
    4 "transfer_diligence_status": "approved",
    5 "company_name": "Plaid"
    6 },
    7 "request_id": "saKrIBuEB9qJZno"
    8}
    Was this helpful?

    /transfer/originator/list

    Get status of all originators' onboarding

    The /transfer/originator/list endpoint gets status updates for all of your originators' onboarding. This information is also available via the Plaid dashboard.

    transfer/originator/list

    Request fields

    client_id
    stringstring
    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.
    secret
    stringstring
    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.
    count
    integerinteger
    The maximum number of originators to return.

    Maximum: 25
    Minimum: 1
    Default: 25
    offset
    integerinteger
    The number of originators to skip before returning results.

    Minimum: 0
    Default: 0
    Select Language
    1const request: TransferOriginatorListRequest = {
    2 count: 14,
    3 offset: 2,
    4};
    5
    6try {
    7 const response = await client.transferOriginatorList(request);
    8} catch (error) {
    9 // handle error
    10}
    transfer/originator/list

    Response fields and example

    originators
    [object][object]
    client_id
    stringstring
    Originator’s client ID.
    transfer_diligence_status
    stringstring
    Originator’s diligence status.

    Possible values: not_submitted, submitted, under_review, approved, denied, more_information_required
    request_id
    stringstring
    A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
    1{
    2 "originators": [
    3 {
    4 "client_id": "6a65dh3d1h0d1027121ak184",
    5 "transfer_diligence_status": "approved"
    6 },
    7 {
    8 "client_id": "8g89as4d2k1d9852938ba019",
    9 "transfer_diligence_status": "denied"
    10 }
    11 ],
    12 "request_id": "4zlKapIkTm8p5KM"
    13}
    Was this helpful?

    /transfer/originator/funding_account/create

    Create a new funding account for an originator

    Use the /transfer/originator/funding_account/create endpoint to create a new funding account for the originator.

    transfer/originator/funding_account/create

    Request fields

    client_id
    stringstring
    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.
    secret
    stringstring
    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.
    originator_client_id
    requiredstringrequired, string
    The Plaid client ID of the transfer originator.
    funding_account
    requiredobjectrequired, object
    The originator's funding account, linked with Plaid Link or /transfer/migrate_account.
    access_token
    requiredstringrequired, string
    The access token associated with the Item data is being requested for.
    account_id
    requiredstringrequired, string
    The Plaid account_id for the newly created Item.
    display_name
    stringstring
    The name for the funding account that is displayed in the Plaid dashboard.
    Select Language
    1const request: TransferOriginatorFundingAccountCreateRequest = {
    2 originator_client_id: '6a65dh3d1h0d1027121ak184',
    3 funding_account: {
    4 access_token: 'access-sandbox-71e02f71-0960-4a27-abd2-5631e04f2175',
    5 account_id: '3gE5gnRzNyfXpBK5wEEKcymJ5albGVUqg77gr',
    6 display_name: "New Funding Account",
    7 },
    8};
    9
    10try {
    11 const response = await client.transferOriginatorFundingAccountCreate(request);
    12} catch (error) {
    13 // handle error
    14}
    transfer/originator/funding_account/create

    Response fields and example

    funding_account_id
    stringstring
    The id of the funding account to use, available in the Plaid Dashboard. This determines which of your business checking accounts will be credited or debited.
    request_id
    stringstring
    A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
    1{
    2 "funding_account_id": "8945fedc-e703-463d-86b1-dc0607b55460",
    3 "request_id": "saKrIBuEB9qJZno"
    4}
    Was this helpful?

    /transfer/questionnaire/create

    Generate a Plaid-hosted onboarding UI URL.

    The /transfer/questionnaire/create endpoint generates a Plaid-hosted onboarding UI URL. Redirect the originator to this URL to provide their due diligence information and agree to Plaid’s terms for ACH money movement.

    transfer/questionnaire/create

    Request fields

    client_id
    stringstring
    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.
    secret
    stringstring
    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.
    originator_client_id
    requiredstringrequired, string
    Client ID of the end customer.
    redirect_uri
    requiredstringrequired, string
    URL the end customer will be redirected to after completing questions in Plaid-hosted onboarding flow.
    Select Language
    1const request: TransferQuestionnaireCreateRequest = {
    2 originator_client_id: '6a65dh3d1h0d1027121ak184',
    3 redirect_uri: 'https://example.com',
    4};
    5
    6try {
    7 const response = await client.transferQuestionnaireCreate(request);
    8} catch (error) {
    9 // handle error
    10}
    transfer/questionnaire/create

    Response fields and example

    onboarding_url
    stringstring
    Plaid-hosted onboarding URL that you will redirect the end customer to.
    request_id
    stringstring
    A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
    1{
    2 "onboarding_url": "https://plaid.com/originator/hIFGXx1zM5pFerygu7lw",
    3 "request_id": "saKrIBuEB9qJZno"
    4}
    Was this helpful?
    Developer community
    GitHub
    GitHub
    Stack Overflow
    Stack Overflow
    YouTube
    YouTube
    Discord
    Discord