Get customer e-invoicing details
well_get_customer_einvoicing_detailsGet one CUSTOMER's e-invoicing identity — the registry values an invoice to that customer is routed on, or that a period aggregate for it is reported under.
Use this when the question is about the party the workspace BILLS: "can we invoice this customer electronically", "what is their SIREN / VAT number / billing address", "what do we still need before we can route this invoice". Read well_get_own_company instead when the question is about which company the workspace ITSELF is.
Returns customer_kind ("company" routes an invoice, "individual" reports a sale, absent when the customer's type is not stated), customer (the composite: company_id, name, subline, identified), fields (one entry per detail the graph can hold, each with its value and provenance when one is held), unstorable_fields (details this flow needs that no column holds yet), hints and connectors_url.
A field listed in unstorable_fields is not a gap the user can close — say plainly that Well cannot store it yet, and never ask for it. A fields entry with no value IS answerable and is what still blocks the route.
When the token authorizes one workspace, call this directly — no other tool call is needed first. When it authorizes several, this read will not guess which one you mean: pass workspace_id on the call.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | Yes | The customer's public company UUID (the `company_id` field on a companies record). | |
| workspace_id | No | Target workspace. Omit when the token authorizes one workspace. Required when it authorizes several: this read reports one workspace's own figures and will not choose which. | |
| conversation_id | No | The conversation id returned by the previous Well result, in its meta under well/conversation_id, in its structuredContent, or in its JSON text block. Pass it back on every call in the same conversation, including a call a card makes, so the chosen workspace and the earlier answers still apply. It decides the conversation on its own: nothing the host states about the session replaces it. Omit it only on the first call of a conversation. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| error | No | ||
| hints | No | ||
| fields | Yes | ||
| success | Yes | ||
| customer | Yes | ||
| error_reason | No | ||
| customer_kind | No | ||
| connectors_url | No | ||
| conversation_id | No | The conversation this result belongs to. Pass it back as the conversation_id argument on every later Well call in the same conversation. | |
| unstorable_fields | Yes | ||
| resolved_workspace | No | The workspace that answered, when the caller named none and the token authorizes several. | |
| conversation_id_note | No | Present only when the server opened a fresh lane, stating that no choice recorded earlier was read. | |
| conversation_id_source | No | Where the conversation id came from: the host's own request meta, the caller's argument, or a fresh lane the server opened. |