Cookbook
Onboard an advisor
Sign an Advisor Agreement, issue 0.1%–1% in equity on a 24-month monthly vesting schedule with no cliff, authorize via board consent, capture the executed package.
Last updated
Advisor agreement (FAST template), NDA, and an NSO grant on a 24-month monthly vesting schedule.
Trigger
A founder agreed terms with an advisor and wants the paperwork done in one click.
Call sequence
1. Add the advisor as a stakeholder
POST /v1/stakeholders { entity, name, email, kind: 'advisor' }2. Issue advisor agreement
POST /v1/documents { template: 'tpl_fast_advisor_v3', subject: stakeholder }3. Issue NDA
POST /v1/documents { template: 'tpl_nda_v1' }4. Issue NSO grant
POST /v1/grants { entity, holder, shares, type: 'nso', vesting: 'monthly_24' }Idempotency
Each document is idempotent on `(entity, holder, template)`.
Webhooks
| Event | Description |
|---|---|
document.signed | Each piece executes. |
grant.created | Grant in pending. |
Errors
| Status | Code | Description |
|---|---|---|
422 | pool_exhausted | No pool remaining for the NSO. |
Related
Advisor grants are NSOs, not ISOs. Incentive Stock Options (ISOs) are
reserved for employees under IRC §422; advisors must receive Non-Statutory
Options (NSOs) instead. The grant endpoint enforces this — pass kind: iso
for an advisor stakeholder and you get 422 iso_requires_employee_role.
For very-early advisors who join before the equity plan exists, an RSA
(Restricted Stock Award) on common stock is the alternative; that path
requires an 83(b) election within 30 days.
FAST tier reference
The Founder Institute's FAST (Founder/Advisor Standard Template) defines four engagement tiers, each with a percentage band and a default cadence:
| Tier | Typical % (idea stage) | Typical % (priced-round stage) | Engagement |
|---|---|---|---|
standard | 0.25% | 0.10% | Quarterly check-ins, ad-hoc intros. |
strategic | 0.50% | 0.20% | Monthly meetings, sector expertise. |
expert | 1.00% | 0.40% | Weekly involvement, hands-on guidance. |
personal | 1.00% | 0.50% | Friend-of-the-founder; no formal cadence. |
Pass engagement_tier: standard | strategic | expert | personal on the
Advisor Agreement document; Matter pre-fills the cover-page scope language
from the FAST template.
Pre-flight
A Grant requires an authorized EquityPlan. If the plan isn't in place
yet, run adopt an equity plan first. The
plan also needs stockholder ratification before it can issue NSOs to
non-employees — run run a stockholder consent
if you haven't yet.
Advisor option grants need an exercise price equal to or above fair
market value (IRC §409A). If the latest Valuation is stale (>12 months,
or post-material-event), refresh via refresh a 409A
before grant issuance.
Decide the engagement tier from the table above. The tier sets the percentage band, the cover-page scope language, and the default monthly-meeting expectation. Override the percentage within the band based on traction/stage.
Authorizing board consent
The advisor grant requires its own Resolution before issuance. Generate it
via the consent workflow so the resulting resolution_id chains into the
grant's authorizing_resolution_id.
curl -X POST https://api.mattermode.com/v1/workflows/generate_board_consent \
-H "Authorization: Bearer $MATTER_KEY" \
-H "Matter-Version: 2026-05-01" \
-H "Idempotency-Key: $(uuidgen)" \
-H "X-Matter-Test-Speed: instant" \
-d '{
"entity_id": "ent_Nq3KcAbc",
"kind": "advisor_grant_authorization",
"subject": "Authorization of advisor option grant — Yusuf Ndiaye",
"parameters": {
"advisor_stakeholder_id": "stk_yusuf_advisor",
"engagement_tier": "strategic",
"shares": 50000,
"vesting_schedule": "monthly",
"vesting_months": 24,
"cliff_months": 0
},
"signature_threshold": "majority"
}'For a solo-director board this signs in seconds. The resolution.signed
webhook fires; capture the resolution_id and pass it on the grant as
authorizing_resolution_id.
Error recovery
| Failure | Cause | Remediation |
|---|---|---|
409 Conflict no_equity_plan | The entity hasn't adopted an equity plan yet. | Run adopt an equity plan first. |
422 Unprocessable Entity iso_requires_employee_role | Caller passed kind: iso for an advisor. | Re-fire with kind: nso; advisors are statutorily ineligible for ISOs. |
409 Conflict 409a_stale | Last Valuation is older than 12 months or there's been a material event. | Run refresh a 409A, then retry the grant with the same Idempotency-Key. |
422 Unprocessable Entity grant_size_exceeds_pool | Combined granted+vested+outstanding+this-grant exceeds the EquityPlan's authorized_pool. | Either reduce the grant or amend the plan to increase the pool (board + stockholder consents). |
409 Conflict vesting_schedule_invalid_for_role | A 4y/12mo cliff schedule was passed for an advisor. | Advisor convention is 24mo monthly, no cliff. The endpoint surfaces the catalog of allowed schedules in the error body. |
408 Request Timeout on signing_envelope | Advisor didn't sign within the envelope's expires_at. | Re-fire via POST /v1/signing_envelopes/{id}/reopen with a fresh deadline. |
Full taxonomy: errors.
Variations
The four FAST tiers map to standard parameter shapes. Drop-in payloads:
// Standard — quarterly check-ins
{"engagement_tier": "standard", "shares": 25000, "vesting_months": 24, "cliff_months": 0}
// Strategic — monthly meetings
{"engagement_tier": "strategic", "shares": 50000, "vesting_months": 24, "cliff_months": 0}
// Expert — weekly involvement
{"engagement_tier": "expert", "shares": 100000, "vesting_months": 24, "cliff_months": 0}
// Personal — friend of founder
{"engagement_tier": "personal", "shares": 100000, "vesting_months": 24, "cliff_months": 0}Translate shares to a percentage by dividing by fully-diluted outstanding;
the engagement tier is paperwork-shaped and matches the FAST cover page,
but the actual percentage is your call within the tier band.
For an advisor who joins before the equity plan exists (e.g., during the formation week, when the founder doesn't yet have a 409A), an RSA on common stock is the alternative to an NSO grant. The RSA needs an 83(b) election filed within 30 days, which Matter auto-cascades:
{
"stakeholder_id": "stk_yusuf_advisor",
"kind": "rsa",
"share_class_id": "cls_common",
"shares": 50000,
"purchase_price_per_share": "0.0001",
"vesting": {"schedule": "monthly", "months": 24, "cliff_months": 0, "start_date": "2026-05-01"},
"file_83b": true,
"authorizing_resolution_id": "res_advisor_yusuf_rsa"
}The file_83b: true flag triggers the same 83(b) auto-cascade as founder
stock (see form a company). The advisor signs
the 83(b) election form within the envelope; Matter mails it certified to
the IRS within 30 days.
Trade-off: RSA dilutes voting power immediately (founders own 99.5% on issuance instead of after the option exercises), and the recipient pays ordinary income tax on the spread between purchase price and FMV at issuance. For very-early-stage entities where common stock has near-zero FMV, this is fine; later it gets expensive.
Some advisor relationships tie vesting to outcomes rather than time —
common when the advisor is brought on for a specific deliverable (a key
intro, a customer rollout, a regulatory sign-off). Pass schedule: milestone on the vesting block:
{
"stakeholder_id": "stk_yusuf_advisor",
"kind": "nso",
"equity_plan_id": "plan_2026_eip",
"shares": 50000,
"exercise_price_per_share": "0.42",
"vesting": {
"schedule": "milestone",
"milestones": [
{"id": "ms_intro_to_marketplace", "shares": 12500, "description": "Successful intro to two paying marketplace customers."},
{"id": "ms_rfq_response", "shares": 12500, "description": "RFQ response to qualified pilot."},
{"id": "ms_first_renewal", "shares": 12500, "description": "First marketplace customer renewal."},
{"id": "ms_24mo", "shares": 12500, "description": "24 months of continuous service."}
]
},
"authorizing_resolution_id": "res_advisor_yusuf_milestone"
}Mark a milestone as met via POST /v1/grants/{id}/milestone_met with the
milestone id; the corresponding tranche vests immediately.
Some advisor relationships call for single- or double-trigger acceleration on a change of control — common when the advisor is a former operator who expects standard exec-grade protection. Layer the acceleration onto the NSO vesting block:
{
"stakeholder_id": "stk_yusuf_advisor",
"kind": "nso",
"equity_plan_id": "plan_2026_eip",
"shares": 50000,
"exercise_price_per_share": "0.42",
"vesting": {
"schedule": "monthly",
"months": 24,
"cliff_months": 0,
"start_date": "2026-05-01",
"change_of_control_acceleration": {
"trigger": "double",
"qualifying_termination_window_months": 12,
"acceleration_percent": 100
}
},
"authorizing_resolution_id": "res_advisor_yusuf_2026"
}trigger: single accelerates on the change-of-control event itself.
trigger: double requires both the change-of-control event and a qualifying
termination within qualifying_termination_window_months — the standard
double-trigger shape. The acceleration clause renders into the Advisor
Agreement's vesting schedule appendix from the FAST template.
If the advisor's role requires access to confidential roadmap or technical information ahead of the FAST signing, layer an NDA as a child Document on the Advisor Agreement. The NDA signs in the same envelope so confidentiality covers the full engagement period:
{
"entity_id": "ent_Nq3KcAbc",
"subject": "Advisor Agreement + NDA — Yusuf Ndiaye",
"document_ids": [
"doc_advisor_agreement_yusuf",
"doc_advisor_nda_yusuf"
],
"signers": [
{"stakeholder_id": "stk_yusuf_advisor", "order": 1},
{"stakeholder_id": "stk_jane_F0und3r", "order": 2}
],
"routing": "sequential"
}The NDA Document is created with attaches_to: <advisor_agreement_id>,
attachment_kind: nda. Optional but worth it for advisors who'll see
roadmap or competitive material.
Related
- Adopt an equity plan — the prerequisite
- Refresh a 409A — required if the valuation is stale
- Run a board consent — the authorizing primitive
- Grant employee equity — the employee equivalent
- Hire your first contractor — different role, different paper trail
- Stakeholder roles — the
advisorrole enum