Skip to main content
Every business registered with a US state must name a registered agent: the party the state sends legal and government documents to. Lawsuits, compliance notices, and tax correspondence all arrive there. The job has requirements most business owners cannot meet. The agent needs a physical street address in the state of registration, has to be available there during business hours, and that address goes on the public registry. A founder working from home, or from another state entirely, either publishes their home address or misses the mail. Missing it is expensive. A business with no valid agent can lose good standing, and the state treats mail sent to the address on file as delivered whether anyone read it or not. So most businesses hire an agent. Palm provides that service through established nationwide agent providers, and hands you the mail through the same API you already use.

What Palm provides

Palm acts as registered agent in all 50 US states and DC, for any business in your account, whether or not it was formed through Palm. Registered agent service is an add-on. Nothing else in Palm depends on it: Comply filings and Monitor work exactly the same for a business whose agent is someone else.

How it works

  1. Provide the service. Turn it on during formation, or move an existing business onto Palm.
  2. Show your member the details. Read the agent name and address from the business.
  3. Receive the mail. Documents arrive as webhooks with the file attached to the business.
  4. Handle changes. Move a business onto Palm or off it as circumstances change.
  5. End the service. Resign the agent when a business dissolves or offboards.

Provide the service

During a formation. Omit the registered_agent block from a formation request and Palm designates an agent in the formation state, activating the service when the filing completes. Pass the block instead and Palm files the agent you name rather than providing one. For a business that already exists. Request a change and omit the registered_agent block. Palm provisions the service when the change completes. Either way, Palm assigns an agent per business. The provider entity and its address differ by state, so read them from the business itself rather than holding one set of details across your book.
Bash
The response tells you who the provider is, the status of the service, the state it covers, how long it has been running, and the agent name and address as filed with the state. A service is pending while provisioning is in flight, and active once Palm is the agent on record and mail is flowing. termination_requested means the service is winding down but still live. terminated means it has ended, and failed means provisioning could not complete. Asking for a business Palm has never served returns 404, while a business whose service has ended returns 200 with status: terminated, so you can tell “never our agent” apart from “no longer our agent.”

What your member sees

The agent of record is public. It sits on the state’s registry, so you can show your member the name and address Palm returns for their business. Your member never has to deal with that agent. Everything the agent receives reaches you through the API, so you decide how and when it surfaces inside your product.

Receive the mail

When the state sends correspondence for a business Palm serves, Palm attaches a digital copy to the business and fires a document.created webhook.
Bash
Every forwarded document stays on the business record with its own history, so you have a complete audit trail. Palm keeps forwarding for as long as it is the agent, including while a termination is still in flight.

Change the agent

Businesses switch agents. A member consolidates providers, moves their company, or brings the work in house. The same call handles both directions.
Bash
Send status: change_requested. Supply a registered_agent block to name the agent you are moving to, or omit it to move the business onto Palm. The business needs a formation_jurisdiction, because that is the state Palm files the change in. Where a state requires a filing to make the change, Palm handles it without you having to submit one. The service goes pending while the change is in flight, then lands one of three ways. Moving onto Palm fires registered_agent.activated and the service becomes active. Moving away fires registered_agent.changed and the service ends. If the change cannot complete, registered_agent.change_failed fires with a rejection_reason and the service reverts to active, so the business is never left without an agent. Resolve the reason and submit again.

End the service

When a business dissolves or offboards and no change filing is involved, ask Palm to resign.
Bash
Send status: termination_requested with a reason. Palm handles the state resignation, including the successor-agent step in the states that require one, and keeps forwarding mail until the resignation is accepted. On acceptance the service becomes terminated and registered_agent.terminated fires. If the state refuses, registered_agent.termination_failed fires with a rejection_reason and the service stays active. Palm runs one registered agent operation at a time, so it rejects a second request while a change or termination is in flight.
In test mode both actions complete immediately, so you can exercise the whole path without waiting on a state.

Webhooks

Registered agent events cover activation, change, and termination, with a failure event for each, plus document.created for forwarded mail. See Webhooks for the full list, payloads, delivery, and signature verification.

Next steps