# `Wenche.Aksjonaerregister`
[🔗](https://github.com/jarls-side-projects/elixir-wenche/blob/main/lib/wenche/aksjonaerregister.ex#L1)

RF-1086 (Aksjonærregisteroppgave) XML generation and validation.

Ported from `wenche/aksjonaerregister.py` in the original Python Wenche project.

The shareholder register report is filed annually by January 31st to the
Norwegian Tax Authority via SKD's own REST API (not Altinn instance flow).

Submission flow (SKD REST API):
  1. POST Hovedskjema (RF-1086)   — company info and share capital
  2. POST Underskjema (RF-1086-U) — one per shareholder with holdings and transactions
  3. POST bekreft                  — confirm all sub-forms submitted

# `generer_hovedskjema_xml`

Generates RF-1086 Hovedskjema XML for SKD's API.

Contains company info, share capital, and issuance at founding.
Validates against: aksjonaerregisteroppgaveHovedskjema.xsd

Returns the XML as a string.

# `generer_underskjema_xml`

Generates RF-1086-U Underskjema XML for a single shareholder.

Contains shareholder identification, holdings, and acquisition transaction.
Validates against: aksjonaerregisteroppgaveUnderskjema.xsd

Returns the XML as a string.

# `validate_shareholders`

Validates a list of shareholders (legacy API).

Supports both person shareholders (fodselsnummer - 11 digits) and
company shareholders (organisasjonsnummer - 9 digits).

Returns `:ok` or `{:error, reason}`.

# `valider`

Validates a shareholder register submission.

Returns `:ok` or `{:error, reasons}` where reasons is a list of error strings.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
