Transfer for Platforms 
=======================

#### API reference for Transfer for Platforms endpoints 

For how-to guidance, see the [Transfer for Platforms documentation](https://plaid.com/docs/transfer/platform-payments/index.html.md) .

| Transfer for Platforms |  |
| --- | --- |
| [/transfer/platform/originator/create](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferplatformoriginatorcreate) | Pass transfer specific onboarding info for the originator |
| [/transfer/platform/person/create](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferplatformpersoncreate) | Create each individual who is a beneficial owner or control person of the business |
| [/transfer/platform/requirement/submit](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferplatformrequirementsubmit) | Pass additional data Plaid needs to make an onboarding decision for the originator |
| [/transfer/platform/document/submit](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferplatformdocumentsubmit) | Submit documents Plaid needs to verify information about the originator |
| [/transfer/originator/get](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferoriginatorget) | Get the status of an originator's onboarding |
| [/transfer/originator/list](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferoriginatorlist) | Get the status of all originators' onboarding |
| [/transfer/originator/funding\_account/create](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferoriginatorfunding_accountcreate) | Create a new funding account for an originator |

\=\*=\*=\*=

#### /transfer/platform/originator/create 

#### Create an originator for Transfer for Platforms customers 

Use the [/transfer/platform/originator/create](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferplatformoriginatorcreate) endpoint to submit information about the originator you are onboarding, including the originator's agreement to the required legal terms.

#### Request fields 

string

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.

string

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.

required, string

The client ID of the originator

required, object

Metadata related to the acceptance of Terms of Service

required, boolean

Indicates whether the TOS agreement was accepted

required, string

The IP address of the originator when they accepted the TOS. Formatted as an IPv4 or IPv6 IP address

required, string

ISO8601 timestamp indicating when the originator accepted the TOS

Format: `date-time`

required, string

ISO8601 timestamp indicating the most recent time the platform collected onboarding data from the originator

Format: `date-time`

string

The webhook URL to which a `PLATFORM_ONBOARDING_UPDATE` webhook should be sent.

Format: `url`

```node
const request: TransferPlatformOriginatorCreateRequest = {
    originator_client_id: "6a65dh3d1h0d1027121ak184",
    tos_acceptance_metadata: {
      agreement_accepted: true,
      originator_ip_address: "192.0.2.42",
      agreement_accepted_at: "2017-09-14T14:42:19.350Z"
    },
    originator_reviewed_at: "2024-07-29T20:22:21Z",
    webhook: "https://webhook.com/webhook"
};

try {
  const response = await client.transferPlatformOriginatorCreate(request);
} catch (error) {
  // handle error
}

```

```bash
curl -X POST https://sandbox.plaid.com/transfer/platform/originator/create \
 -H 'Content-Type: application/json' \
 -d '{
    "originator_client_id": "6a65dh3d1h0d1027121ak184",
      "tos_acceptance_metadata": {
      "agreement_accepted": true,
      "originator_ip_address": "192.0.2.42",
      "agreement_accepted_at": "2017-09-14T14:42:19.350Z"
    },
    "originator_reviewed_at": "2024-07-29T20:22:21Z",
    "webhook": "https://webhook.com/webhook"
 }'

```

```ruby
request = Plaid::TransferPlatformOriginatorCreateRequest.new(
  {
    originator_client_id: "6a65dh3d1h0d1027121ak184",
    tos_acceptance_metadata: {
      agreement_accepted: true,
      originator_ip_address: "192.0.2.42",
      agreement_accepted_at: "2017-09-14T14:42:19.350Z"
    },
    originator_reviewed_at: "2024-07-29T20:22:21Z",
    webhook: "https://webhook.com/webhook"
  }
)
response = client.transfer_platform_originator_create(request)

```

```java
TransferPlatformTOSAcceptanceMetadata tosMetadata = new TransferPlatformTOSAcceptanceMetadata()
  .agreementAccepted(true)
  .originatorIpAddress("192.0.2.42")
  .agreementAcceptedAt(OffsetDateTime.parse("2017-09-14T14:42:19.350Z"));

TransferPlatformOriginatorCreateRequest request = new TransferPlatformOriginatorCreateRequest()
  .originatorClientId("6a65dh3d1h0d1027121ak184")
  .tosAcceptanceMetadata(tosMetadata)
  .originatorReviewedAt(OffsetDateTime.parse("2024-07-29T20:22:21Z"))
  .webhook("https://webhook.com/webhook");

Response response = client()
  .transferPlatformOriginatorCreate(request)
  .execute();

TransferPlatformOriginatorCreateResponse originator =
  response.body();

```

```python
request = TransferPlatformOriginatorCreateRequest(
    originator_client_id="6a65dh3d1h0d1027121ak184",
    tos_acceptance_metadata={
      "agreement_accepted": True,
      "originator_ip_address": "192.0.2.42",
      "agreement_accepted_at": "2017-09-14T14:42:19.350Z"
    },
    originator_reviewed_at="2024-07-29T20:22:21Z",
    webhook="https://webhook.com/webhook"
)
response = client.transfer_platform_originator_create(request)

```

```go
tosMetadata := plaid.TransferPlatformTOSAcceptanceMetadata{
  AgreementAccepted:   true,
  OriginatorIpAddress: "192.0.2.42",
  AgreementAcceptedAt: time.Date(2017, 9, 14, 14, 42, 19, 350000000, time.UTC),
}

request := plaid.NewTransferPlatformOriginatorCreateRequest(
  "6a65dh3d1h0d1027121ak184",
  tosMetadata,
  time.Date(2024, 7, 29, 20, 22, 21, 0, time.UTC),
)
request.SetWebhook("https://webhook.com/webhook")

response, _, err := client.PlaidApi.TransferPlatformOriginatorCreate(ctx).
  TransferPlatformOriginatorCreateRequest(*request).
  Execute()

```

#### Response fields 

string

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

Response Object

```json
{
  "request_id": "saKrIBuEB9qJZno"
}
```

\=\*=\*=\*=

#### /transfer/platform/person/create 

#### Create a person associated with an originator 

Use the [/transfer/platform/person/create](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferplatformpersoncreate) endpoint to create a person associated with an originator (e.g. beneficial owner or control person) and optionally submit personal identification information for them.

#### Request fields 

string

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.

string

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.

required, string

The client ID of the originator

object

The person's legal name

required, string

A string with at least one non-whitespace character, with a max length of 100 characters.

required, string

A string with at least one non-whitespace character, with a max length of 100 characters.

string

A valid email address. Must not have leading or trailing spaces.

string

A valid phone number in E.164 format. Phone number input may be validated against valid number ranges; number strings that do not match a real-world phone numbering scheme may cause the request to fail, even in the Sandbox test environment.

object

Home address of a person

required, string

The full city name.

required, string

Valid, capitalized, two-letter ISO code representing the country of this object. Must be in ISO 3166-1 alpha-2 form.

required, string

The postal code of the address.

required, string

An ISO 3166-2 subdivision code. Related terms would be "state", "province", "prefecture", "zone", "subdivision", etc.

required, string

The primary street portion of an address. A string with at least one non-whitespace alphabetical character, with a max length of 80 characters.

string

Extra street information, like an apartment or suite number. If provided, a string with at least one non-whitespace character, with a max length of 50 characters.

object

ID number of the person

required, string

Value of the person's ID Number. Alpha-numeric, with all formatting characters stripped.

required, string

A globally unique and human readable ID type, specific to the country and document category. For more context on this field, see [Input Validation Rules](https://plaid.com/docs/identity-verification/hybrid-input-validation/index.html.md#id-numbers) .

Possible values: `ar_dni`, `au_drivers_license`, `au_passport`, `br_cpf`, `ca_sin`, `cl_run`, `cn_resident_card`, `co_nit`, `dk_cpr`, `eg_national_id`, `es_dni`, `es_nie`, `hk_hkid`, `in_pan`, `it_cf`, `jo_civil_id`, `jp_my_number`, `ke_huduma_namba`, `kw_civil_id`, `mx_curp`, `mx_rfc`, `my_nric`, `ng_nin`, `nz_drivers_license`, `om_civil_id`, `ph_psn`, `pl_pesel`, `ro_cnp`, `sa_national_id`, `se_pin`, `sg_nric`, `tr_tc_kimlik`, `us_ssn`, `us_ssn_last_4`, `za_smart_id`

string

The date of birth of the person. Formatted as YYYY-MM-DD.

Format: `date`

string

The relationship between this person and the originator they are related to.

integer

The percentage of ownership this person has in the onboarding business. Only applicable to beneficial owners with 25% or more ownership.

Minimum: `25`

Maximum: `100`

string

The title of the person at the business. Only applicable to control persons - for example, "CEO", "President", "Owner", etc.

```node
const request: TransferPlatformPersonCreateRequest = {
  originator_client_id: "6a65dh3d1h0d1027121ak184",
  name: {
    given_name: "Owen",
    family_name: "Gillespie"
  },
  email_address: "ogillespie@plaid.com",
  phone_number: "+12223334444",
  address: {
    street: "123 Main St.",
    street2: "Apt 456",
    city: "San Francisco",
    region: "CA",
    postal_code: "94580",
    country: "US"
  },
  id_number: {
    type: "us_ssn",
    value: "111223333"
  },
  date_of_birth: "2000-01-20",
  relationship_to_originator: "BENEFICIAL_OWNER",
  ownership_percentage: 50,
  title: "COO"
};

try {
  const response = await client.transferPlatformPersonCreate(request);
} catch (error) {
  // handle error
}

```

```bash
curl -X POST https://sandbox.plaid.com/transfer/platform/person/create \
 -H 'Content-Type: application/json' \
 -d '{
  "originator_client_id": ,
  "name": {
    "given_name": "Owen",
    "family_name": "Gillespie"
  },
  "email_address": "ogillespie@plaid.com",
  "phone_number": "+12223334444",
  "address": {
    "street": "123 Main St.",
    "street2": "Apt 456",
    "city": "San Francisco",
    "region": "CA",
    "postal_code": "94580",
    "country": "US"
  },
  "id_number": {
    "type": "us_ssn",
    "value": "111223333"
  },
  "date_of_birth": "2000-01-20",
  "relationship_to_originator": "BENEFICIAL_OWNER",
  "ownership_percentage": 50,
  "title": "COO"
 }'

```

```ruby
request = Plaid::TransferPlatformPersonCreateRequest.new(
  {
    originator_client_id: "6a65dh3d1h0d1027121ak184",
    name: {
      given_name: "Owen",
      family_name: "Gillespie"
    },
    email_address: "ogillespie@plaid.com",
    phone_number: "+12223334444",
    address: {
      street: "123 Main St.",
      street2: "Apt 456",
      city: "San Francisco",
      region: "CA",
      postal_code: "94580",
      country: "US"
    },
    id_number: {
      type: "us_ssn",
      value: "111223333"
    },
    date_of_birth: "2000-01-20",
    relationship_to_originator: "BENEFICIAL_OWNER",
    ownership_percentage: 50,
    title: "COO"
  }
)
response = client.transfer_platform_person_create(request)

```

```java
TransferPlatformPersonCreateRequest request = new TransferPlatformPersonCreateRequest()
  .originatorClientId("6a65dh3d1h0d1027121ak184")
  .name(new TransferPlatformPersonName()
      .givenName("Owen")
      .familyName("Gillespie")
  )
  .emailAddress("ogillespie@plaid.com")
  .phoneNumber("+12223334444")
  .address(new TransferPlatformPersonAddress()
      .street("123 Main St.")
      .street2("Apt 456")
      .city("San Francisco")
      .region("CA")
      .postalCode("94580")
      .country("US")
  )
  .idNumber(new TransferPlatformPersonIDNumber()
      .type("us_ssn")
      .value("111223333")
  )
  .dateOfBirth(LocalDate.parse("2000-01-20"))
  .relationshipToOriginator("BENEFICIAL_OWNER")
  .ownershipPercentage(50)
  .title("COO");

Response response = client()
  .transferPlatformPersonCreate(request)
  .execute();

TransferPlatformPersonCreateResponse person =
  response.body();

```

```python
request = TransferPlatformPersonCreateRequest(
    originator_client_id="6a65dh3d1h0d1027121ak184",
    name={
      "given_name": "Owen",
      "family_name": "Gillespie"
    },
    email_address="ogillespie@plaid.com",
    phone_number="+12223334444",
    address={
      "street": "123 Main St.",
      "street2": "Apt 456",
      "city": "San Francisco",
      "region": "CA",
      "postal_code": "94580",
      "country": "US"
    },
    id_number={
      "type": "us_ssn",
      "value": "111223333"
    },
    date_of_birth="2000-01-20",
    relationship_to_originator="BENEFICIAL_OWNER",
    ownership_percentage=50,
    title="COO"
)
response = client.transfer_platform_person_create(request)

```

```go
request := plaid.NewTransferPlatformPersonCreateRequest(
  "6a65dh3d1h0d1027121ak184",
)

name := plaid.TransferPlatformPersonName{
  GivenName:  plaid.PtrString("Owen"),
  FamilyName: plaid.PtrString("Gillespie"),
}

address := plaid.TransferPlatformPersonAddress{
  Street:     plaid.PtrString("123 Main St."),
  Street2:    plaid.PtrString("Apt 456"),
  City:       plaid.PtrString("San Francisco"),
  Region:     plaid.PtrString("CA"),
  PostalCode: plaid.PtrString("94580"),
  Country:    plaid.PtrString("US"),
}

idNumber := plaid.TransferPlatformPersonIDNumber{
  Type:  plaid.PtrString("us_ssn"),
  Value: plaid.PtrString("111223333"),
}

request.SetName(name)
request.SetEmailAddress("ogillespie@plaid.com")
request.SetPhoneNumber("+12223334444")
request.SetAddress(address)
request.SetIdNumber(idNumber)
dob, _ := time.Parse(time.RFC3339, "2000-01-20T00:00:00Z")
request.SetDateOfBirth(dob)
request.SetRelationshipToOriginator("BENEFICIAL_OWNER")
request.SetOwnershipPercentage(plaid.PtrFloat32(50))
request.SetTitle("COO")

response, _, err := client.PlaidApi.TransferPlatformPersonCreate(ctx).
  TransferPlatformPersonCreateRequest(*request).
  Execute()

```

#### Response fields 

string

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

string

An ID that should be used when submitting additional requirements that are associated with this person.

Response Object

```json
{
  "person_id": "4aa32e78-0cb3-4c13-b45e-7f9f2fc709d1",
  "request_id": "qpCtcJz6g3fhMdJ"
}
```

\=\*=\*=\*=

#### /transfer/platform/requirement/submit 

#### Submit additional onboarding information on behalf of an originator 

Use the [/transfer/platform/requirement/submit](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferplatformrequirementsubmit) endpoint to submit additional onboarding information that is needed by Plaid to approve or decline the originator. See [Requirement type schema documentation](https://docs.google.com/document/d/1NEQkTD0sVK50iAQi6xHigrexDUxZ4QxXqSEfV_FFTiU/) for a list of requirement types and possible values.

#### Request fields 

string

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.

string

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.

required, string

The client ID of the originator

required, \[object\]

Use the `/transfer/platform/requirement/submit` endpoint to submit a list of requirement submissions that all relate to the originator. Must contain between 1 and 50 requirement submissions. See [Requirement type schema documentation](https://docs.google.com/document/d/1NEQkTD0sVK50iAQi6xHigrexDUxZ4QxXqSEfV_FFTiU/) for a list of requirements and possible values.

Max items: `50`

Min items: `1`

required, string

The type of requirement being submitted. See [Requirement type schema documentation](https://docs.google.com/document/d/1NEQkTD0sVK50iAQi6xHigrexDUxZ4QxXqSEfV_FFTiU/) for a list of requirement types and possible values.

required, string

The value of the requirement, which can be a string or an object depending on the `requirement_type`. If it is an object, the object should be JSON marshaled into a string. See [Requirement type schema documentation](https://docs.google.com/document/d/1NEQkTD0sVK50iAQi6xHigrexDUxZ4QxXqSEfV_FFTiU/) for a list of requirement types and possible values.

string

The `person_id` of the person the requirement submission is related to. A `person_id` is returned by `/transfer/platform/person/create`. This field should not be included for requirements that are not related to a person.

Format: `uuid`

```node
const request: TransferPlatformRequirementSubmitRequest = {
  originator_client_id: "6a65dh3d1h0d1027121ak184",
  requirement_submissions: [
    {
      requirement_type: "BUSINESS_NAME",
      value: "Owen's Widgets Inc."
    },
    {
      requirement_type: "BUSINESS_EIN",
      value: "123-45-6789"
    },
    {
      requirement_type: "BUSINESS_BANK_ACCOUNT",
      value: "{\"access_token\": \"\",\"account_id\": \"\"}"
    },
    {
      requirement_type: "BUSINESS_ORG_TYPE",
      value: "LIMITED LIABILITY COMPANY"
    },
    {
      requirement_type: "BUSINESS_INDUSTRY",
      value: "TELECOMMUNICATIONS"
    },
    {
      requirement_type: "BUSINESS_ADDRESS",
      value: "{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 400\"}"
    },
    {
      requirement_type: "BUSINESS_WEBSITE",
      value: "https://plaid.com"
    },
    {
      requirement_type: "BUSINESS_PRODUCT_DESCRIPTION",
      value: "This is a sample description."
    },
    {
      requirement_type: "ASSOCIATED_PEOPLE",
      value: "[\"8b0e3210-767a-4882-9154-89b1e4c20493\",\"6ce1022c-d2c6-416d-a587-ed5e3f9bf941\"]"
    },
    {
      requirement_type: "PERSON_NAME",
      person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      value: "{\"given_name\": \"Jane\",\"family_name\": \"Smith\"}"
    },
    {
      requirement_type: "PERSON_ID_NUMBER",
      person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      value: "{\"type\": \"us_ssn\",\"value\": \"123456789\"}"
    },
    {
      requirement_type: "PERSON_ADDRESS",
      person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      value: "{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 100\"}"
    },
    {
      requirement_type: "PERSON_DOB",
      person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      value: "1999-12-31"
    },
    {
      requirement_type: "PERSON_EMAIL",
      person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      value: "sample@example.com"
    },
    {
      requirement_type: "PERSON_PHONE",
      person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      value: "+12345678909"
    },
    {
      requirement_type: "PERSON_RELATIONSHIP",
      person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      value: "BENEFICIAL_OWNER"
    },
    {
      requirement_type: "PERSON_PERCENT_OWNERSHIP",
      person_id: "8b0e3210-767a-4882-9154-89b1e4c20493",
      value: "50"
    },
    {
      requirement_type: "PERSON_TITLE",
      person_id: "8b0e3210-767a-4882-9154-89b1e4c20493",
      value: "COO"
    }
  ]
};


try {
  const response = await client.transferPlatformRequirementSubmit(request);
} catch (error) {
  // handle error
}

```

```bash
curl -X POST https://sandbox.plaid.com/transfer/platform/requirement/submit \
  -H "Content-Type: application/json" \
  -d '{
    "originator_client_id": "6a65dh3d1h0d1027121ak184",
    "requirement_submissions": [
      {
        "requirement_type": "BUSINESS_NAME",
        "value": "Owen'\''s Widgets Inc."
      },
      {
        "requirement_type": "BUSINESS_EIN",
        "value": "123-45-6789"
      },
      {
        "requirement_type": "BUSINESS_BANK_ACCOUNT",
        "value": "{\"access_token\": \"\",\"account_id\": \"\"}"
      },
      {
        "requirement_type": "BUSINESS_ORG_TYPE",
        "value": "LIMITED LIABILITY COMPANY"
      },
      {
        "requirement_type": "BUSINESS_INDUSTRY",
        "value": "TELECOMMUNICATIONS"
      },
      {
        "requirement_type": "BUSINESS_ADDRESS",
        "value": "{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 400\"}"
      },
      {
        "requirement_type": "BUSINESS_WEBSITE",
        "value": "https://plaid.com"
      },
      {
        "requirement_type": "BUSINESS_PRODUCT_DESCRIPTION",
        "value": "This is a sample description."
      },
      {
        "requirement_type": "ASSOCIATED_PEOPLE",
        "value": "[\"8b0e3210-767a-4882-9154-89b1e4c20493\",\"6ce1022c-d2c6-416d-a587-ed5e3f9bf941\"]"
      },
      {
        "requirement_type": "PERSON_NAME",
        "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        "value": "{\"given_name\": \"Jane\",\"family_name\": \"Smith\"}"
      },
      {
        "requirement_type": "PERSON_ID_NUMBER",
        "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        "value": "{\"type\": \"us_ssn\",\"value\": \"123456789\"}"
      },
      {
        "requirement_type": "PERSON_ADDRESS",
        "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        "value": "{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 100\"}"
      },
      {
        "requirement_type": "PERSON_DOB",
        "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        "value": "1999-12-31"
      },
      {
        "requirement_type": "PERSON_EMAIL",
        "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        "value": "sample@example.com"
      },
      {
        "requirement_type": "PERSON_PHONE",
        "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        "value": "+12345678909"
      },
      {
        "requirement_type": "PERSON_RELATIONSHIP",
        "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        "value": "BENEFICIAL_OWNER"
      },
      {
        "requirement_type": "PERSON_PERCENT_OWNERSHIP",
        "person_id": "8b0e3210-767a-4882-9154-89b1e4c20493",
        "value": "50"
      },
      {
        "requirement_type": "PERSON_TITLE",
        "person_id": "8b0e3210-767a-4882-9154-89b1e4c20493",
        "value": "COO"
      }
    ]
  }'

```

```ruby
request = Plaid::TransferPlatformRequirementSubmitRequest.new(
  {
    originator_client_id: "6a65dh3d1h0d1027121ak184",
    requirement_submissions: [
      {
        requirement_type: "BUSINESS_NAME",
        value: "Owen's Widgets Inc."
      },
      {
        requirement_type: "BUSINESS_EIN",
        value: "123-45-6789"
      },
      {
        requirement_type: "BUSINESS_BANK_ACCOUNT",
        value: "{\"access_token\": \"\",\"account_id\": \"\"}"
      },
      {
        requirement_type: "BUSINESS_ORG_TYPE",
        value: "LIMITED LIABILITY COMPANY"
      },
      {
        requirement_type: "BUSINESS_INDUSTRY",
        value: "TELECOMMUNICATIONS"
      },
      {
        requirement_type: "BUSINESS_ADDRESS",
        value: "{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 400\"}"
      },
      {
        requirement_type: "BUSINESS_WEBSITE",
        value: "https://plaid.com"
      },
      {
        requirement_type: "BUSINESS_PRODUCT_DESCRIPTION",
        value: "This is a sample description."
      },
      {
        requirement_type: "ASSOCIATED_PEOPLE",
        value: "[\"8b0e3210-767a-4882-9154-89b1e4c20493\",\"6ce1022c-d2c6-416d-a587-ed5e3f9bf941\"]"
      },
      {
        requirement_type: "PERSON_NAME",
        person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        value: "{\"given_name\": \"Jane\",\"family_name\": \"Smith\"}"
      },
      {
        requirement_type: "PERSON_ID_NUMBER",
        person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        value: "{\"type\": \"us_ssn\",\"value\": \"123456789\"}"
      },
      {
        requirement_type: "PERSON_ADDRESS",
        person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        value: "{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 100\"}"
      },
      {
        requirement_type: "PERSON_DOB",
        person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        value: "1999-12-31"
      },
      {
        requirement_type: "PERSON_EMAIL",
        person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        value: "sample@example.com"
      },
      {
        requirement_type: "PERSON_PHONE",
        person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        value: "+12345678909"
      },
      {
        requirement_type: "PERSON_RELATIONSHIP",
        person_id: "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
        value: "BENEFICIAL_OWNER"
      },
      {
        requirement_type: "PERSON_PERCENT_OWNERSHIP",
        person_id: "8b0e3210-767a-4882-9154-89b1e4c20493",
        value: "50"
      },
      {
        requirement_type: "PERSON_TITLE",
        person_id: "8b0e3210-767a-4882-9154-89b1e4c20493",
        value: "COO"
      }
    ]
  }
)
response = client.transfer_platform_requirement_submit(request)

```

```java
List submissions = Arrays.asList(
    new TransferPlatformRequirementSubmission()
        .requirementType("BUSINESS_NAME")
        .value("Owen's Widgets Inc."),
    new TransferPlatformRequirementSubmission()
        .requirementType("BUSINESS_EIN")
        .value("12-3456789"),
    new TransferPlatformRequirementSubmission()
        .requirementType("BUSINESS_BANK_ACCOUNT")
        .value("{\"access_token\": \"\", \"account_id\": \"\"}"),
    new TransferPlatformRequirementSubmission()
        .requirementType("BUSINESS_ORG_TYPE")
        .value("LIMITED LIABILITY COMPANY"),
    new TransferPlatformRequirementSubmission()
        .requirementType("BUSINESS_INDUSTRY")
        .value("TELECOMMUNICATIONS"),
    new TransferPlatformRequirementSubmission()
        .requirementType("BUSINESS_ADDRESS")
        .value("{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 400\"}"),
    new TransferPlatformRequirementSubmission()
        .requirementType("BUSINESS_WEBSITE")
        .value("https://plaid.com"),
    new TransferPlatformRequirementSubmission()
        .requirementType("BUSINESS_PRODUCT_DESCRIPTION")
        .value("This is a sample description."),
    new TransferPlatformRequirementSubmission()
        .requirementType("ASSOCIATED_PEOPLE")
        .value("[\"8b0e3210-767a-4882-9154-89b1e4c20493\",\"6ce1022c-d2c6-416d-a587-ed5e3f9bf941\"]"),
    new TransferPlatformRequirementSubmission()
        .requirementType("PERSON_NAME")
        .personId("6ce1022c-d2c6-416d-a587-ed5e3f9bf941")
        .value("{\"given_name\":\"Jane\",\"family_name\":\"Smith\"}"),
    new TransferPlatformRequirementSubmission()
        .requirementType("PERSON_ID_NUMBER")
        .personId("6ce1022c-d2c6-416d-a587-ed5e3f9bf941")
        .value("{\"type\":\"us_ssn\",\"value\":\"123456789\"}"),
    new TransferPlatformRequirementSubmission()
        .requirementType("PERSON_ADDRESS")
        .personId("6ce1022c-d2c6-416d-a587-ed5e3f9bf941")
        .value("{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 100\"}"),
    new TransferPlatformRequirementSubmission()
        .requirementType("PERSON_DOB")
        .personId("6ce1022c-d2c6-416d-a587-ed5e3f9bf941")
        .value("1999-12-31"),
    new TransferPlatformRequirementSubmission()
        .requirementType("PERSON_EMAIL")
        .personId("6ce1022c-d2c6-416d-a587-ed5e3f9bf941")
        .value("sample@example.com"),
    new TransferPlatformRequirementSubmission()
        .requirementType("PERSON_PHONE")
        .personId("6ce1022c-d2c6-416d-a587-ed5e3f9bf941")
        .value("+12345678909"),
    new TransferPlatformRequirementSubmission()
        .requirementType("PERSON_RELATIONSHIP")
        .personId("6ce1022c-d2c6-416d-a587-ed5e3f9bf941")
        .value("BENEFICIAL_OWNER"),
    new TransferPlatformRequirementSubmission()
        .requirementType("PERSON_PERCENT_OWNERSHIP")
        .personId("8b0e3210-767a-4882-9154-89b1e4c20493")
        .value("50"),
    new TransferPlatformRequirementSubmission()
        .requirementType("PERSON_TITLE")
        .personId("8b0e3210-767a-4882-9154-89b1e4c20493")
        .value("COO")
);

TransferPlatformRequirementSubmitRequest request = new TransferPlatformRequirementSubmitRequest()
    .originatorClientId("6a65dh3d1h0d1027121ak184")
    .requirementSubmissions(submissions);

TransferPlatformRequirementSubmitResponse response =
    client.transferPlatformRequirementSubmit(request);

```

```python
request = TransferPlatformRequirementSubmitRequest(
  requirement_submissions=[
    {
      "requirement_type": "BUSINESS_NAME",
      "value": "Owen's Widgets Inc."
    },
    {
      "requirement_type": "BUSINESS_EIN",
      "value": "123-45-6789"
    },
    {
      "requirement_type": "BUSINESS_BANK_ACCOUNT",
      "value": "{\"access_token\": \"\",\"account_id\": \"\"}"
    },
    {
      "requirement_type": "BUSINESS_ORG_TYPE",
      "value": "LIMITED LIABILITY COMPANY"
    },
    {
      "requirement_type": "BUSINESS_INDUSTRY",
      "value": "TELECOMMUNICATIONS"
    },
    {
      "requirement_type": "BUSINESS_ADDRESS",
      "value": "{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 400\"}"
    },
    {
      "requirement_type": "BUSINESS_WEBSITE",
      "value": "https://plaid.com"
    },
    {
      "requirement_type": "BUSINESS_PRODUCT_DESCRIPTION",
      "value": "This is a sample description."
    },
    {
      "requirement_type": "ASSOCIATED_PEOPLE",
      "value": "[\"8b0e3210-767a-4882-9154-89b1e4c20493\",\"6ce1022c-d2c6-416d-a587-ed5e3f9bf941\"]"
    },
    {
      "requirement_type": "PERSON_NAME",
      "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      "value": "{\"given_name\": \"Jane\",\"family_name\": \"Smith\"}"
    },
    {
      "requirement_type": "PERSON_ID_NUMBER",
      "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      "value": "{\"type\": \"us_ssn\",\"value\": \"123456789\"}"
    },
    {
      "requirement_type": "PERSON_ADDRESS",
      "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      "value": "{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 100\"}"
    },
    {
      "requirement_type": "PERSON_DOB",
      "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      "value": "1999-12-31"
    },
    {
      "requirement_type": "PERSON_EMAIL",
      "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      "value": "sample@example.com"
    },
    {
      "requirement_type": "PERSON_PHONE",
      "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      "value": "+12345678909"
    },
    {
      "requirement_type": "PERSON_RELATIONSHIP",
      "person_id": "6ce1022c-d2c6-416d-a587-ed5e3f9bf941",
      "value": "BENEFICIAL_OWNER"
    },
    {
      "requirement_type": "PERSON_PERCENT_OWNERSHIP",
      "person_id": "8b0e3210-767a-4882-9154-89b1e4c20493",
      "value": "50"
    },
    {
      "requirement_type": "PERSON_TITLE",
      "person_id": "8b0e3210-767a-4882-9154-89b1e4c20493",
      "value": "COO"
    }
  ]
)
response = client.transfer_platform_requirement_submit(request)

```

```go
submissions := []plaid.TransferPlatformRequirementSubmission{
  {
    RequirementType: plaid.PtrString("BUSINESS_NAME"),
    Value:           plaid.PtrString("Owen's Widgets Inc."),
  },
  {
    RequirementType: plaid.PtrString("BUSINESS_EIN"),
    Value:           plaid.PtrString("123-45-6789"),
  },
  {
    RequirementType: plaid.PtrString("BUSINESS_BANK_ACCOUNT"),
    Value:           plaid.PtrString("{\"access_token\": \"\",\"account_id\": \"\"}"),
  },
  {
    RequirementType: plaid.PtrString("BUSINESS_ORG_TYPE"),
    Value:           plaid.PtrString("LIMITED LIABILITY COMPANY"),
  },
  {
    RequirementType: plaid.PtrString("BUSINESS_INDUSTRY"),
    Value:           plaid.PtrString("TELECOMMUNICATIONS"),
  },
  {
    RequirementType: plaid.PtrString("BUSINESS_ADDRESS"),
    Value:           plaid.PtrString("{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 400\"}"),
  },
  {
    RequirementType: plaid.PtrString("BUSINESS_WEBSITE"),
    Value:           plaid.PtrString("https://plaid.com"),
  },
  {
    RequirementType: plaid.PtrString("BUSINESS_PRODUCT_DESCRIPTION"),
    Value:           plaid.PtrString("This is a sample description."),
  },
  {
    RequirementType: plaid.PtrString("ASSOCIATED_PEOPLE"),
    Value:           plaid.PtrString("[\"8b0e3210-767a-4882-9154-89b1e4c20493\",\"6ce1022c-d2c6-416d-a587-ed5e3f9bf941\"]"),
  },
  {
    RequirementType: plaid.PtrString("PERSON_NAME"),
    PersonId:        plaid.PtrString("6ce1022c-d2c6-416d-a587-ed5e3f9bf941"),
    Value:           plaid.PtrString("{\"given_name\": \"Jane\",\"family_name\": \"Smith\"}"),
  },
  {
    RequirementType: plaid.PtrString("PERSON_ID_NUMBER"),
    PersonId:        plaid.PtrString("6ce1022c-d2c6-416d-a587-ed5e3f9bf941"),
    Value:           plaid.PtrString("{\"type\": \"us_ssn\",\"value\": \"123456789\"}"),
  },
  {
    RequirementType: plaid.PtrString("PERSON_ADDRESS"),
    PersonId:        plaid.PtrString("6ce1022c-d2c6-416d-a587-ed5e3f9bf941"),
    Value:           plaid.PtrString("{\"city\":\"San Francisco\",\"country\":\"US\",\"postal_code\":\"94105\",\"region\":\"CA\",\"street\":\"123 Market St\",\"street2\":\"Suite 100\"}"),
  },
  {
    RequirementType: plaid.PtrString("PERSON_DOB"),
    PersonId:        plaid.PtrString("6ce1022c-d2c6-416d-a587-ed5e3f9bf941"),
    Value:           plaid.PtrString("1999-12-31"),
  },
  {
    RequirementType: plaid.PtrString("PERSON_EMAIL"),
    PersonId:        plaid.PtrString("6ce1022c-d2c6-416d-a587-ed5e3f9bf941"),
    Value:           plaid.PtrString("sample@example.com"),
  },
  {
    RequirementType: plaid.PtrString("PERSON_PHONE"),
    PersonId:        plaid.PtrString("6ce1022c-d2c6-416d-a587-ed5e3f9bf941"),
    Value:           plaid.PtrString("+12345678909"),
  },
  {
    RequirementType: plaid.PtrString("PERSON_RELATIONSHIP"),
    PersonId:        plaid.PtrString("6ce1022c-d2c6-416d-a587-ed5e3f9bf941"),
    Value:           plaid.PtrString("BENEFICIAL_OWNER"),
  },
  {
    RequirementType: plaid.PtrString("PERSON_PERCENT_OWNERSHIP"),
    PersonId:        plaid.PtrString("8b0e3210-767a-4882-9154-89b1e4c20493"),
    Value:           plaid.PtrString("50"),
  },
  {
    RequirementType: plaid.PtrString("PERSON_TITLE"),
    PersonId:        plaid.PtrString("8b0e3210-767a-4882-9154-89b1e4c20493"),
    Value:           plaid.PtrString("COO"),
  },
}

request := plaid.NewTransferPlatformRequirementSubmitRequest("6a65dh3d1h0d1027121ak184", submissions)

response, _, err := client.PlaidApi.TransferPlatformRequirementSubmit(ctx).
  TransferPlatformRequirementSubmitRequest(*request).
  Execute()

```

#### Response fields 

string

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

Response Object

```json
{
  "request_id": "saKrIBuEB9qJZno"
}
```

\=\*=\*=\*=

#### /transfer/platform/document/submit 

#### Upload documentation on behalf of an originator 

Use the [/transfer/platform/document/submit](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferplatformdocumentsubmit) endpoint to upload documents requested by Plaid to verify an originator's onboarding information. Unlike other endpoints, this one requires `multipart/form-data` as the content type. This endpoint is also not included in the Plaid client libraries.

#### Request fields 

required, string

The client ID of the originator

required, string

The path to the document file to upload

required, string

The type of requirement this document fulfills

string

The `person_id` of the person the requirement submission is related to.

A `person_id` is returned by `/transfer/platform/person/create`. This field should not be included for requirements that are not related to a person.

Format: `uuid`

```node
import fs from 'fs';
import fetch from 'node-fetch';
import FormData from 'form-data';

const form = new FormData();
form.append('originator_client_id', '6a65dh3d1h0d1027121ak184');
form.append('document_submission', fs.createReadStream('/path/to/sample/file.txt'));
form.append('requirement_type', 'BUSINESS_ADDRESS_VALIDATION');

const res = await fetch(`https://sandbox.plaid.com/transfer/platform/document/submit`, {
  method: 'POST',
  headers: {
    'Plaid-Client-ID': '',
    'Plaid-Secret': '',
    ...form.getHeaders(),
  },
  body: form,
});
const data = await res.json();

```

```bash
curl -X POST https://sandbox.plaid.com/transfer/platform/document/submit \
  -H "Content-Type: multipart/form-data" \
  -H "Plaid-Client-ID: " \
  -H "Plaid-Secret: " \
  -F "originator_client_id=6a65dh3d1h0d1027121ak184" \
  -F "document_submission=@/path/to/sample/file.txt" \
  -F "requirement_type=BUSINESS_ADDRESS_VALIDATION"

```

```ruby
require 'net/http'
require 'uri'
require 'openssl'

uri = URI.parse("https://sandbox.plaid.com/transfer/platform/document/submit")
request = Net::HTTP::Post.new(uri)
request["Plaid-Client-ID"] = ''
request["Plaid-Secret"] = ''

form_data = [[
  'document_submission',
  File.open('/path/to/sample/file.txt'),
  { filename: 'file.txt', content_type: 'text/plain' }
], ['originator_client_id', '6a65dh3d1h0d1027121ak184'], ['requirement_type', 'BUSINESS_ADDRESS_VALIDATION']]
request.set_form form_data, 'multipart/form-data'

req_options = { use_ssl: uri.scheme == 'https' }
response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
  http.request(request)
end

```

```java
import java.io.File;
import okhttp3.*;

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("text/plain");
RequestBody fileBody = RequestBody.create(new File("/path/to/sample/file.txt"), mediaType);

MultipartBody requestBody = new MultipartBody.Builder()
  .setType(MultipartBody.FORM)
  .addFormDataPart("originator_client_id", "6a65dh3d1h0d1027121ak184")
  .addFormDataPart("requirement_type", "BUSINESS_ADDRESS_VALIDATION")
  .addFormDataPart("document_submission", "file.txt", fileBody)
  .build();

Request request = new Request.Builder()
  .url("https://sandbox.plaid.com/transfer/platform/document/submit")
  .addHeader("Plaid-Client-ID", "")
  .addHeader("Plaid-Secret", "")
  .post(requestBody)
  .build();

Response response = client.newCall(request).execute();

```

```python
import requests

url = "https://sandbox.plaid.com/transfer/platform/document/submit"
headers = {
  'Plaid-Client-ID': '',
  'Plaid-Secret': ''
}
data = {
  'originator_client_id': '6a65dh3d1h0d1027121ak184',
  'requirement_type': 'BUSINESS_ADDRESS_VALIDATION'
}
files = {
  'document_submission': ('file.txt', open('/path/to/sample/file.txt', 'rb'), 'text/plain')
}

response = requests.post(url, headers=headers, data=data, files=files)

```

```go
package main

import (
  "bytes"
  "io"
  "mime/multipart"
  "net/http"
  "os"
)

func main() {
  var buf bytes.Buffer
  writer := multipart.NewWriter(&buf)

  writer.WriteField("originator_client_id", "6a65dh3d1h0d1027121ak184")
  writer.WriteField("requirement_type", "BUSINESS_ADDRESS_VALIDATION")

  file, _ := os.Open("/path/to/sample/file.txt")
  defer file.Close()
  part, _ := writer.CreateFormFile("document_submission", "file.txt")
  io.Copy(part, file)
  writer.Close()

  req, _ := http.NewRequest("POST", "https://sandbox.plaid.com/transfer/platform/document/submit", &buf)
  req.Header.Set("Content-Type", writer.FormDataContentType())
  req.Header.Set("Plaid-Client-ID", "")
  req.Header.Set("Plaid-Secret", "")

  http.DefaultClient.Do(req)
}

```

#### Response fields 

string

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

```json
{
  "request_id": "YkP5Aq2x9LkZQb7"
}
```

\=\*=\*=\*=

#### /transfer/originator/get 

#### Get status of an originator's onboarding 

The [/transfer/originator/get](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferoriginatorget) endpoint gets status updates for an originator's onboarding process. This information is also available via the Transfer page on the Plaid dashboard.

#### Request fields 

string

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.

string

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.

required, string

Client ID of the end customer (i.e. the originator).

```node
const request: TransferOriginatorGetRequest = {
  originator_client_id: '6a65dh3d1h0d1027121ak184',
};

try {
  const response = await client.transferOriginatorGet(request);
} catch (error) {
  // handle error
}

```

```bash
curl -X POST https://sandbox.plaid.com/transfer/originator/get \
 -H 'Content-Type: application/json' \
 -d '{
   "client_id": "${PLAID_CLIENT_ID}",
   "secret": "${PLAID_SECRET}",
   "originator_client_id": "6a65dh3d1h0d1027121ak184"
 }'

```

```ruby
request = Plaid::TransferOriginatorGetRequest.new(
  {
    originator_client_id: '6a65dh3d1h0d1027121ak184',
  }
)
response = client.transfer_originator_get(request)

```

```java
TransferOriginatorGetRequest request = new TransferOriginatorGetRequest()
  .originatorClientId("6a65dh3d1h0d1027121ak184");

Response response = client()
  .transferOriginatorGet(request)
  .execute();

```

```python
request = TransferOriginatorGetRequest(
    originator_client_id='6a65dh3d1h0d1027121ak184',
)
response = client.transfer_originator_get(request)

```

```go
request := plaid.NewTransferOriginatorGetRequest(
  "6a65dh3d1h0d1027121ak184",
)

response, _, err := client.PlaidApi.TransferOriginatorGet(ctx).TransferOriginatorGetRequest(*request).Execute()

```

#### Response fields 

object

Originator and their status.

string

Originator's client ID.

string

Originator's diligence status.

Possible values: `not_submitted`, `submitted`, `under_review`, `approved`, `denied`, `more_information_required`

string

The company name of the end customer.

\[object\]

List of outstanding requirements that must be submitted before Plaid can approve the originator. Only populated when `transfer_diligence_status` is `more_information_required`.

string

The type of requirement.

nullable, string

UUID of the person associated with the requirement. Only present for individual-scoped requirements.

string

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

Response Object

```json
{
  "originator": {
    "client_id": "6a65dh3d1h0d1027121ak184",
    "transfer_diligence_status": "approved",
    "company_name": "Plaid"
  },
  "request_id": "saKrIBuEB9qJZno"
}
```

\=\*=\*=\*=

#### /transfer/originator/list 

#### Get status of all originators' onboarding 

The [/transfer/originator/list](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferoriginatorlist) endpoint gets status updates for all of your originators' onboarding. This information is also available via the Plaid dashboard.

#### Request fields 

string

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.

string

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.

integer

The maximum number of originators to return.

Maximum: `25`

Minimum: `1`

Default: `25`

integer

The number of originators to skip before returning results.

Minimum: `0`

Default: `0`

```node
const request: TransferOriginatorListRequest = {
  count: 14,
  offset: 2,
};

try {
  const response = await client.transferOriginatorList(request);
} catch (error) {
  // handle error
}

```

```bash
curl -X POST https://sandbox.plaid.com/transfer/originator/list \
 -H 'Content-Type: application/json' \
 -d '{
   "client_id": "${PLAID_CLIENT_ID}",
   "secret": "${PLAID_SECRET}",
   "count": 14,
   "offset": 2
 }'

```

```ruby
request = Plaid::TransferOriginatorListRequest.new(
  {
    count: 14,
    offset: 2,
  }
)
response = client.transfer_originator_list(request)

```

```java
TransferOriginatorListRequest request = new TransferOriginatorListRequest()
  .count(14)
  .offset(2);

Response response = client()
  .transferOriginatorList(request)
  .execute();

```

```python
request = TransferOriginatorListRequest(
    count=14,
    offset=2,
)
response = client.transfer_originator_list(request)

```

```go
request := plaid.NewTransferOriginatorListRequest()
request.SetCount(14)
request.SetOffset(2)

response, _, err := client.PlaidApi.TransferOriginatorList(ctx).TransferOriginatorListRequest(*request).Execute()

```

#### Response fields 

\[object\]

string

Originator's client ID.

string

Originator's diligence status.

Possible values: `not_submitted`, `submitted`, `under_review`, `approved`, `denied`, `more_information_required`

string

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

Response Object

```json
{
  "originators": [
    {
      "client_id": "6a65dh3d1h0d1027121ak184",
      "transfer_diligence_status": "approved"
    },
    {
      "client_id": "8g89as4d2k1d9852938ba019",
      "transfer_diligence_status": "denied"
    }
  ],
  "request_id": "4zlKapIkTm8p5KM"
}
```

\=\*=\*=\*=

#### /transfer/originator/funding\_account/create 

#### Create a new funding account for an originator 

Use the [/transfer/originator/funding\_account/create](https://plaid.com/docs/api/products/transfer/platform-payments/index.html.md#transferoriginatorfunding_accountcreate) endpoint to create a new funding account for the originator.

#### Request fields 

string

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.

string

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.

required, string

The Plaid client ID of the transfer originator.

required, object

The originator's funding account, linked with Plaid Link or `/transfer/migrate_account`.

required, string

The access token associated with the Item for which data is being requested.

required, string

The Plaid `account_id` for the newly created Item.

string

The name for the funding account that is displayed in the Plaid dashboard.

```node
const request: TransferOriginatorFundingAccountCreateRequest = {
  originator_client_id: '6a65dh3d1h0d1027121ak184',
  funding_account: {
    access_token: 'access-sandbox-71e02f71-0960-4a27-abd2-5631e04f2175',
    account_id: '3gE5gnRzNyfXpBK5wEEKcymJ5albGVUqg77gr',
  },
};

try {
  const response = await client.transferOriginatorFundingAccountCreate(request);
} catch (error) {
  // handle error
}

```

```bash
curl -X POST https://sandbox.plaid.com/transfer/originator/funding_account/create \
 -H 'Content-Type: application/json' \
 -d '{
   "originator_client_id": "6a65dh3d1h0d1027121ak184",
   "funding_account": {
     "access_token": "access-sandbox-71e02f71-0960-4a27-abd2-5631e04f2175",
     "account_id": "3gE5gnRzNyfXpBK5wEEKcymJ5albGVUqg77gr"
  }
 }'

```

```ruby
request = Plaid::TransferOriginatorFundingAccountCreateRequest.new(
  {
    originator_client_id: '6a65dh3d1h0d1027121ak184',
    funding_account: {
      access_token: 'access-sandbox-71e02f71-0960-4a27-abd2-5631e04f2175',
      account_id: '3gE5gnRzNyfXpBK5wEEKcymJ5albGVUqg77gr',
    },
  }
)
response = client.transfer_originator_funding_account_create(request)

```

```java
TransferFundingAccount fundingAccount = new TransferFundingAccount()
  .accessToken("access-sandbox-71e02f71-0960-4a27-abd2-5631e04f2175")
  .accountId("3gE5gnRzNyfXpBK5wEEKcymJ5albGVUqg77gr");
TransferOriginatorFundingAccountCreateRequest request = new TransferOriginatorFundingAccountCreateRequest()
  .originatorClientId("6a65dh3d1h0d1027121ak184")
  .fundingAccount(fundingAccount);

Response response = client()
  .transferOriginatorFundingAccountCreate(request)
  .execute();

```

```python
request = TransferOriginatorFundingAccountCreateRequest(
    originator_client_id="6a65dh3d1h0d1027121ak184",
    funding_account=TransferFundingAccount(
      access_token="access-sandbox-71e02f71-0960-4a27-abd2-5631e04f2175",
      account_id="3gE5gnRzNyfXpBK5wEEKcymJ5albGVUqg77gr",
    ),
)
response = client.transfer_originator_funding_account_create(request)

```

```go
request := plaid.NewTransferOriginatorFundingAccountCreateRequest(
  "6a65dh3d1h0d1027121ak184",
  plaid.NewTransferFundingAccount(
    "access-sandbox-71e02f71-0960-4a27-abd2-5631e04f2175",
    "3gE5gnRzNyfXpBK5wEEKcymJ5albGVUqg77gr",
  ),
)

response, _, err := client.PlaidApi.TransferOriginatorFundingAccountCreate(ctx).TransferOriginatorFundingAccountCreateRequest(*request).Execute()

```

#### Response fields 

string

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.

string

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

Response Object

```json
{
  "funding_account_id": "8945fedc-e703-463d-86b1-dc0607b55460",
  "request_id": "saKrIBuEB9qJZno"
}
```