Skip to content

Document template · generic.governance.shareholder_agreement

Shareholder Agreement

  • Render-verified
  • Legal-sensitive
  • Version 1.0.0

Shareholder agreement (SHA) among the shareholders of a private limited company, covering board nomination rights, reserved matters, transfer restrictions (ROFR / tag-along / drag-along / permitted transferees), information rights, exit provisions, non-compete and dispute resolution. Country-agnostic; works alongside BE WVV/CCA, FR Code de commerce, DE GmbHG and NL BW Boek 2.

JSON Schema

Fields in this template

Data sent to the API is validated against the template’s JSON Schema before anything is rendered. This template defines 32 fields:

Field Required Type Description
parties Required array
company Required object
company.name Required string
company.registration Required string
company.registered_office Optional string
effective_date Required date
board_composition_rules Required object
board_composition_rules.prose Required string
board_composition_rules.per_shareholder_director_nomination_rights Required array of object
reserved_matters Required array of object
reserved_matters[].decision Required string
reserved_matters[].consent_requirement Required string
transfer_restrictions Required object
transfer_restrictions.right_of_first_refusal_prose Required string
transfer_restrictions.tag_along_rules Required string
transfer_restrictions.drag_along_rules Required string
transfer_restrictions.permitted_transferees_prose Required string
information_rights Required string
exit_provisions Required object
exit_provisions.ipo_trigger Required string
exit_provisions.put_call_options_prose Required string
non_compete Required object
non_compete.duration_years Required integer
non_compete.scope Required string
dispute_resolution Required object
dispute_resolution.forum_enum Required enum
dispute_resolution.seat Required string
dispute_resolution.language Required string
governing_law Required string
signatories Required array of object

+2 more fields — the full JSON Schema is available in the dashboard and via the API.

POST /render

Generate it

One POST /render call: send your JSON, get the finished PDF back. Or skip the JSON entirely and describe the document in plain language on chut.app.

curl
curl -X POST https://api.papii.eu/render \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "template": "generic.governance.shareholder_agreement",
    "data": { ... },
    "options": {"language": "en"}
  }' -o shareholder-agreement.pdf

Frequently asked questions

What is “Shareholder Agreement”?

Shareholder agreement (SHA) among the shareholders of a private limited company, covering board nomination rights, reserved matters, transfer restrictions (ROFR / tag-along / drag-along / permitted transferees), information rights, exit provisions, non-compete and dispute resolution. Country-agnostic; works alongside BE WVV/CCA, FR Code de commerce, DE GmbHG and NL BW Boek 2. On papii this document is available as template generic.governance.shareholder_agreement: a JSON Schema plus a deterministic PDF renderer, so the same data always produces the same document.

Can I generate a Shareholder Agreement with AI?

Yes. chut.app — the AI back office papii powers — fills this template from a plain-language description: you describe the document in one sentence, the AI structures the data, papii validates it against the schema and renders the PDF. Developers can also call the papii API directly with structured JSON.

Is the Shareholder Agreement template legally compliant?

This template is render-verified: its schema, sample data and PDF output are automatically tested on every release. It is published with status “ready”, meaning it has not yet been through papii’s final legal review. Where it references specific legislation, that is stated in the template description — always have a professional check documents with legal effect before relying on them.