Investments
B2B surface for partners to place and read share purchases and portfolio holdings for the investors they act on behalf of.
📄️ List a managed investor's share purchases
Returns a page of the share-purchase orders the partner has placed for this investor, newest first, as a paged envelope: `items` plus `page`, `size`, `total_items`, `total_pages`, `has_next`, `has_previous`. `page` is 1-based (default 1) and `size` defaults to 20 and is capped at 100 — a larger `size` is silently clamped to the cap rather than rejected. 404 if the investor does not belong to the calling partner (no existence oracle).
📄️ Place a share purchase for a managed investor
Drafts and submits a subscription order in one step, returning 201 with the SUBMITTED order. Commercial terms are computed from the cooperative's current pricing and frozen server-side — the request carries no price fields. Requires a complete investor profile (409 INVESTOR_PROFILE_INCOMPLETE otherwise). 404 if the investor is not owned by the calling partner. Only `cooperative_id`, `share_count`, `sepa_mandate.signed_at` and `statute_consent_given_at` are required: `applicant_type` follows the investor's company affiliation, `sepa_mandate.debtor_iban` defaults to the profile IBAN, and `sepa_mandate.reference` is issued server-side when omitted — each may still be sent explicitly to override. Terms and privacy consent are taken from the investor's profile and are no longer accepted here. Supply an optional Idempotency-Key header to make a retried create safe: a repeat with the same body replays the original order, a repeat with a changed body is rejected (409). Note that because `applicant_type` may be derived, editing the investor's company affiliation between two retries makes them different orders and so a 409. A key is honoured for 24 hours; after that it is forgotten, and reusing it places a NEW order rather than replaying the original.
📄️ Cancel a managed investor's share purchase
Cancels a draft or submitted order; an already-settled or decided order yields 409. 404 for an unknown purchase, one belonging to a different investor, or an investor the calling partner does not own.
📄️ Get one of a managed investor's share purchases
404 for an unknown purchase id, one that belongs to a different investor, or an investor the calling partner does not own.
📄️ List a managed investor's holdings
Returns a page of the investor's portfolio positions — one row per cooperative with the current share count, oldest position first — as a paged envelope: `items` plus `page`, `size`, `total_items`, `total_pages`, `has_next`, `has_previous`. `page` is 1-based (default 1) and `size` defaults to 20 and is capped at 100 — a larger `size` is silently clamped to the cap rather than rejected. 404 if the investor is not owned by the partner.