Skip to main content
POST
/
v1
/
filing
/
ein
Apply for an EIN
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    business_id: '987e6543-e21a-45b6-c789-012345678901',
    responsible_party: {
      user_id: '123e4567-e89b-12d3-a456-426614174000',
      first_name: 'Jane',
      last_name: 'Doe',
      ssn: '123-45-6789'
    },
    reason: 'started_new_business',
    fiscal_year_end_month: 12,
    expected_employee_count: {agricultural: 0, household: 0, other: 5},
    principal_activity: 'finance_and_insurance',
    principal_activity_detail: 'Software consulting services',
    has_previous_ein: false,
    reason_detail: 'Compliance with state reporting requirements',
    wage_date: '2026-04-01',
    previous_ein: '12-3456789',
    trade_name: 'Acme Trading Co',
    form_944_election: false,
    metadata: {internal_ref: 'REF-123'}
  })
};

fetch('https://api.getpalm.com/v1/filing/ein', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "object": "filing",
  "created_at": "2025-10-24T10:30:00Z",
  "updated_at": "2025-10-24T15:45:00Z",
  "metadata": {
    "external_id": "user_123_in_my_system",
    "customer_tier": "premium",
    "signup_source": "mobile_app"
  },
  "jurisdiction": "US-NC",
  "name": "Acme Holdings LLC",
  "business_id": {},
  "result": {},
  "parent_filing_id": {},
  "related_filings": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "object": "filing"
    }
  ],
  "documents": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "object": "document",
      "type": "articles_of_organization",
      "url": "<string>",
      "uploaded_at": "2023-11-07T05:31:56Z"
    }
  ],
  "fee": {},
  "status_reason": "<string>",
  "canceled_by": "<string>",
  "canceled_at": "2023-11-07T05:31:56Z",
  "cases": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "object": "case",
      "created_at": "2025-10-24T10:30:00Z",
      "updated_at": "2025-10-24T15:45:00Z",
      "metadata": {
        "external_id": "user_123_in_my_system",
        "customer_tier": "premium",
        "signup_source": "mobile_app"
      },
      "parent_id": "fil_1a2b3c",
      "summary": "Additional information needed to complete your filing.",
      "opened_at": "2023-11-07T05:31:56Z",
      "details": {},
      "request": {
        "fields": [
          {
            "name": "corrected_legal_name",
            "type": "string",
            "description": "Corrected legal name (state rejected \"Acme LLC\" — name already taken).",
            "required": true,
            "example": "Acme Holdings LLC"
          }
        ]
      },
      "response": {
        "fields": {}
      },
      "due_at": {},
      "resolved_at": {}
    }
  ]
}

Authorizations

Authorization
string
header
required

Enter your API key in the format: sk_test_xxxxx or sk_live_xxxxx

Body

application/json
business_id
string<uuid>
required

Business ID of a business you previously vaulted with Palm.

Example:

"987e6543-e21a-45b6-c789-012345678901"

responsible_party
object
required

Responsible party for the entity

reason
enum<string>
required

Reason for applying

Available options:
started_new_business,
hired_employees,
banking_purposes,
changed_organization_type,
purchased_business,
created_trust,
created_pension_plan,
withholding_compliance,
other
Example:

"started_new_business"

fiscal_year_end_month
integer
required

Closing month of accounting year. 1-12, most entities use 12 for calendar year.

Required range: 1 <= x <= 12
Example:

12

expected_employee_count
object
required

Highest number of employees expected in next 12 months by category

principal_activity
enum<string>
required

Principal activity category

Available options:
construction,
real_estate,
rental_and_leasing,
manufacturing,
transportation_and_warehousing,
finance_and_insurance,
health_care,
accommodation_and_food_service,
wholesale_agent_broker,
wholesale_other,
retail,
other
Example:

"finance_and_insurance"

principal_activity_detail
string
required

Description of principal products or services

Example:

"Software consulting services"

has_previous_ein
boolean
required

Has the entity previously applied for and received an EIN?

Example:

false

reason_detail
string

Details for the reason. Required if reason is "other".

Example:

"Compliance with state reporting requirements"

wage_date
string<date>

Date wages will first be paid. Required if total expected employees > 0.

Example:

"2026-04-01"

previous_ein
string

Previous EIN if applicable. Required if has_previous_ein is true.

Example:

"12-3456789"

trade_name
string

Trade name / DBA if different from legal name

Example:

"Acme Trading Co"

form_944_election
boolean

Elect to file Form 944 annually instead of Form 941 quarterly. Applies if expected annual employment tax liability is $1,000 or less.

Example:

false

metadata
object

Partner-defined metadata

Example:
{ "internal_ref": "REF-123" }

Response

EIN filing created

id
string<uuid>
required

Unique identifier for the resource

Example:

"123e4567-e89b-12d3-a456-426614174000"

object
enum<string>
required

Object type

Available options:
filing
Example:

"filing"

created_at
string<date-time>
required

ISO 8601 timestamp of when the resource was created

Example:

"2025-10-24T10:30:00Z"

updated_at
string<date-time>
required

ISO 8601 timestamp of when the resource was last updated

Example:

"2025-10-24T15:45:00Z"

metadata
object
required

Store up to 50 custom key-value pairs for application-specific data. Useful for storing references to external systems, feature flags, or other custom attributes.

Example:
{
"external_id": "user_123_in_my_system",
"customer_tier": "premium",
"signup_source": "mobile_app"
}
type
enum<string>
required

Filing type

Available options:
formation,
ein,
registered_agent,
ra_change,
amendment,
scorp_election
status
enum<string>
required

Current status

Available options:
queued,
ready_to_file,
processing,
filed,
completed,
rejected,
canceled,
failed
entity_type
enum<string>

Entity type (for formations)

Available options:
llc,
corporation
jurisdiction
object

Jurisdiction (ISO 3166-2)

Example:

"US-NC"

name
object

Business name for the filing

Example:

"Acme Holdings LLC"

business_id
object

Linked business ID

result
object

Filing result — populated on completion. Contents vary by filing type. Formation: { registration_number, formation_date }. EIN: { ein_number, entity_name }.

parent_filing_id
object

Parent filing ID (for bundled EIN/RA)

Related filings (EIN, registered agent)

documents
object[]

Documents associated with this filing

fee
object

Fee components keyed by type (base, dynamic, late, credit_card, ach). Only present components are included. When items is set, it lists each evaluated rule for itemized rendering — the component-keyed values are the sums across those items.

status_reason
string

Reason the filing was canceled (partner request, parent off-boarded, duplicate, etc.). Only present when status is canceled.

canceled_by
string

Role that initiated the cancellation. One of: partner, palm. Only present when status is canceled.

canceled_at
string<date-time>

Timestamp the filing was canceled

cases
object[]

Cases attached to this filing. One entry per partner-visible case, in chronological order. Each case carries a typed request payload describing what Palm needs and, once submitted, a typed response. Partners respond via POST /v1/case/:case_id/response. An entry with status=needs_response is an outstanding ask — its presence is the signal that the filing needs partner action.