> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vinmake.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Client Creation

> Create new client records from onboarding documents with AI assistance

# Client Creation

⚪ **Planned (Phase 2)**

Create new client records by messaging Brain with onboarding documents attached,
instead of manually entering fields in CutMake.

## When this fires

A user sends a message like:

> "Create a new client from this sales contract."

Or uses a command:

```text theme={null}
/create-client
```

Attached documents may include:

* Sales contract
* Client registration document
* Company profile
* Buyer information sheet
* Email signature
* Other onboarding materials

## What Brain does

1. **Detect intent.** Identify this is a client creation request.

2. **Permission check.** Confirm the user is authorized to create client records.

3. **Read attachments.** Extract structured data from contracts and PDFs.

4. **Compare against schema.** Map extracted fields to the CutMake client schema.

5. **Identify missing required fields.** List anything the AI couldn't extract.

6. **Ask for the missing fields** politely:

   > "I found the client name, address, and country. I still need billing email,
   > default currency, and payment terms before I can create this client.
   > Can you provide them?"

7. **Prepare a draft record.**

8. **Show the draft for approval.**

9. **Write to CutMake** only after explicit approval.

## Permission gate

If the user doesn't have client-creation permission, Brain responds:

> "You don't currently have permission to create a new client. I can prepare a draft,
> but a manager needs to approve before this is created."

The draft is routed to a manager via Inbox.

## Expected fields

| Field                         | Usual Source            |
| ----------------------------- | ----------------------- |
| Client legal name             | Contract                |
| Brand name                    | Contract / email        |
| Country                       | Contract                |
| Billing address               | Contract                |
| Shipping address              | Contract                |
| Tax ID / company registration | Contract                |
| Contact person                | Email / contract        |
| Contact email                 | Email / contract        |
| Payment terms                 | Contract                |
| Incoterms                     | Contract                |
| Currency                      | Contract                |
| Bank details                  | Contract (if available) |
| Contract effective date       | Contract                |
| Contract signer               | Contract                |

Brain never assumes required fields. If they're missing from the source, it asks.

## Draft preview

| Field           | AI Draft             |
| --------------- | -------------------- |
| Client Name     | Jaspal               |
| Country         | Thailand             |
| Billing Address | \[Extracted address] |
| Contact Person  | Kaimook              |
| Contact Email   | \[Extracted email]   |
| Payment Terms   | Not found            |
| Currency        | USD                  |
| Incoterms       | Not found            |

The user can:

* **Approve and create** the client record
* **Edit fields** inline
* **Cancel** the workflow
* **Ask a manager to approve** if missing permission

## Next-step suggestion

After client creation:

> "Client created successfully. Would you like to create a style, upload a tech pack,
> or start a quotation for this client?"

## Related

* [Style Creation](/brain/staging/workflows/style-creation) — common next step
* [Roles](/brain/staging/roles/index) — permission gates
* [Principles](/brain/staging/principles) — why approval is non-negotiable
