Manage Client
client_manageCreate or update client records for invoices. Deduplicates by email; returns existing record if email already exists. Accepts name, email, company, address, currency.
Instructions
Create or upsert a client record used by invoice_create. Accepts name, email, company, address, city, country, tax_id, phone, default_currency ("USD"|"EUR"|"GBP"|...) and notes. Returns the stored client object including the generated id (UUID), an empty payment_history (populated as invoices are paid), and timestamps. Safe to call repeatedly: if a client with the same email already exists, the existing record is returned unchanged.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | Optional city. | |
| name | Yes | Display name shown on invoices and reports. Required. | |
| Yes | Primary billing email. Used as the dedup key — calling client_manage twice with the same email returns the existing record. Also used by payment_reconcile to match incoming payments. | ||
| notes | No | Internal notes about this client (not printed on invoices). | |
| phone | No | Optional phone number. | |
| tax_id | No | Optional VAT / tax ID (e.g. EU VAT number, US EIN). Printed on PDFs that need it. | |
| address | No | Optional billing street address. | |
| company | No | Optional legal company name (printed on the invoice when set). | |
| country | No | Optional country (full name or ISO code — printed verbatim). | |
| default_currency | No | Default invoice currency for this client. Used when invoice_create omits currency. |