Create an Individual

Create a reusable person record with its identity details, then link it to any business as an owner or signatory.

An Individual is a person, shared and reusable across businesses. Create the person once, then link them wherever they apply by id. You can create an Individual on its own, or inline while adding an owner or signatory. For the full field list, jump to the Request reference.

Common use cases

  • Create a person you'll link as an owner or signatory.
  • Create a person once and reuse them across several businesses.
  • Capture a person's identity details for KYB.
🚧

PENDING-PUBLISH

The boarding API Reference is pending publication; the ref: targets on this page are placeholders. Replace each with the real boarding-spec operationId once the boarding reference ships.


Scenarios

Creating a person and linking them to a business are two distinct operations. Create the Individual once here, then link the returned individualId wherever the person applies.

sequenceDiagram
    participant App as Your application
    participant PCE as PCE

    App->>PCE: POST /v1/individuals (identity details)
    PCE-->>App: 201 Created (ind_ id)
    Note over App,PCE: Reuse the same ind_ id as an owner or signatory of any business

Before you begin (all scenarios)

  • You have the person's identity details (name, date of birth, taxId, a government ID).
  • You set an externalId if you want to resolve the person by your own reference later.

Scenario 1: Create a standalone Individual

Create a reusable person record. Make a POST request to /v1/individuals.

curl -X POST https://sandbox-api.prioritycommerce.com/v1/individuals \
  -H "x-api-key: <your-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "firstName": "Casey",
    "lastName": "Control",
    "dateOfBirth": "1985-07-22",
    "nationality": "US",
    "email": "[email protected]",
    "phone": "+15128854626",
    "taxId": { "type": "ssn", "value": "123456789", "country": "US" },
    "governmentIds": [
      { "type": "drivers_license", "number": "DL77000947", "country": "US", "state": "TX", "isPrimary": true }
    ],
    "addresses": [
      { "type": "home", "line1": "100 Congress Ave", "city": "Austin",
        "stateProvince": "TX", "postalCode": "78701", "countryCode": "US" }
    ],
    "externalId": "founder-casey-01"
  }'

Response: 201 Created

{
  "id": "ind_abc-123",
  "externalId": "founder-casey-01",
  "firstName": "Casey",
  "lastName": "Control",
  "status": "IN_PROGRESS",
  "createdAt": "2026-06-15T09:00:00Z"
}

PCE returns the saved person with a generated ind_… id. Store the id, or resolve your externalId later with ?externalId=.

Scenario 2: Create and link in one step

To create and link in a single call, pass an inline individual on an owner or signatory instead of creating the person here first. See Owners & signatories.

Scenario 3: Reuse the person across businesses

Because an Individual is standalone, the same person can be an owner of one business and a signatory of another. Resolve them by your own reference, then link the returned individualId to the next business.

curl "https://sandbox-api.prioritycommerce.com/v1/individuals?externalId=founder-casey-01" \
  -H "x-api-key: <your-key>"

Pass the resolved individualId to Owners & signatories on any business.


Identity fields

An Individual carries two deliberately separate identity fields:

FieldWhat it isShape
taxIdA tax or identity number (singular, no expiry): SSN, ITIN, or foreign tax ID.{ type, value, country }
governmentIds[]Presentable documents that expire (many per person): driver's license, passport, national ID.[{ type, number, country, state?, expiryDate?, isPrimary }]
  • taxId.type is ssn, itin, or foreign.
  • governmentIds[].type is drivers_license, passport, national_id, or state_id.

Every owner and signer needs a primary ID (SSN or ITIN) plus a secondary government ID. Owners and signers may have non-US addresses. See the KYB rules on Business validation & KYB rules.


Request reference

FieldRequiredDescription
firstName, lastName✓The person's name.
dateOfBirthFor KYBDate of birth.
nationalityFor KYBThe person's nationality.
email, phoneFor KYBContact details. phone in E.164.
taxIdFor KYB{ type, value, country }; type is ssn, itin, or foreign.
governmentIds[]For KYBPresentable IDs; type is drivers_license, passport, national_id, or state_id.
addresses[]OptionalThe person's addresses; may be non-US.
externalIdRecommendedYour own reference for the person.

Statuses

An Individual reports its verification status as it moves IN_PROGRESS → VERIFIED. Re-read the person to follow the change. See Status lifecycle and Underwriting exceptions for resolving a rejected identity.


Sandbox testing

Use the sandbox to create people and confirm verification before going live.

ScenarioTest dataExpected result
Create a personComplete identity details201 Created with an ind_ id, status: IN_PROGRESS
Resolve by referenceGET /v1/individuals?externalId=…The person you created
Verification outcomeA test identity that passes or failsstatus: VERIFIED or a rejection to resolve
🚧

PENDING-PUBLISH

The sandbox test identities that drive an Individual to VERIFIED vs. a rejection are pending the boarding sandbox guide. Confirm before publish.


Go live

The shared pre-production checklist is in Getting Started. Specific to Individuals:

  • Each person has a taxId (SSN or ITIN) plus a secondary government ID.
  • You reuse one individualId rather than creating duplicate person records.

Best practices

PracticeDescription
Create once, reuseCreate the person a single time and link the same individualId everywhere they apply.
Set an externalIdUse your own reference so you can resolve the person with ?externalId= later.
Keep identity fields distincttaxId is the singular tax number; governmentIds[] are the presentable documents that expire.
Store the ind_ idYou need it to link the person and to read them back.

Next steps

See also

  • Businesses: how Individuals relate to owners and signatories
  • Create a business: create and link people inline in the composite create


Did this page help you?
.readme-logo { display: none !important; }