Section 11 · Pricing, Proposals & Closing
11.7E-sign / contract execution
Built in the POC- No.
- 11.7
- DMA's reference
- Decision Book p.25
- Phase
- Phase 1
- Autonomy
- L2 · Prepare, then wait for approval
- DMA's decision
- Yes
◆ Amended in v3 of the book.
What DMA asked for · Decision Book p.25
The contract goes to e-signature and gets signed as part of the closing flow, without anyone preparing the signature request by hand.
Why it matters to DMA: "The AI closes the deal" means nothing without a way to turn agreement into a signed contract.
In our words, from DMA's Product Decision Book v3, page 25.
How we do it
- From an approved, sent proposal, one action starts the closing path. The contract amounts come only from the approved proposal and are checked again against what the signing provider reports.
- Sending for signature waits for a person's approval (L2 to start, as DMA's book says), and the person who asked can't approve it. Then the envelope is created and sent, with a retry-safe key so a retry never sends a second one.
- Signed, viewed or declined come back from the provider as signed webhooks; a reconcile job catches any that are missed. In the POC the provider is a signing simulator; a real provider (DocuSign or PandaDoc class) is a configuration change.
- One kill switch pauses every provider call and every close; nothing is dropped.
The flow
It plays on its own while it's on screen; hover or use the controls to pause or step through.
An approved proposal
Its amounts are the only ones the contract can use.
- Stored data
- Person
- Rule in code
- Screen
Where the data goes
The same six stages on every page. Nothing reaches Nutshell except through the write gate.
- 1Approved proposal
Source
The amounts and terms.
- 2Sync
Copies Nutshell changes into the bridge database
Not involved.
- 3Bridge database
A copy of the CRM data, plus what the AI works out
The transaction, each event and each approval.
- 4AI
Claude models, only through DMA's own gateway
Not involved: the closing path is code.
- 5Write gate
The only way back into Nutshell: checked, approved when needed, sent once
Stages Closed/Won once the deposit is paid.
- 6Nutshell
The system of record
The deal is marked Won after payment.
The tables behind it
Drawn from the POC's database catalogue: structure only, no data.
PK primary keyFK reference the database enforces (solid line)ID reference kept by id (dashed line)
| Table | What it holds | Columns |
|---|---|---|
| ctrl.transactions | One closing path per proposal: state, amounts, envelope and payment. | 30 |
| ctrl.transaction_events | Every provider event, signed and de-duplicated. | 8 |
| ctrl.approvals | The contract and payment-link approvals. | 22 |
How the tables connect (3)
| Column | Points to | Kept by |
|---|---|---|
| ctrl.transactions.signature_approval_id | ctrl.approvals | The database (foreign key) |
| ctrl.transactions.invoice_approval_id | ctrl.approvals | The database (foreign key) |
| ctrl.transaction_events.transaction_id | ctrl.transactions | The database (foreign key) |
Worked example
Synthetic demo data: every name, business and number is made up.
The closing path's states, in the words the dashboard shows (sample).
Signature steps
| Step | Shown as |
|---|---|
| 1 | Waiting for a person to approve sending it for signature |
| 2 | Sent for signature |
| 3 | Opened by the signer |
| 4 | Signed |
In the running POC

1 / 2Sample: an approved proposal, the step before signature and payment.sample data
- 1The proposal and its version.
- 2The price lines, priced by code from the rate card.
- 3Send proposal, available only once it is approved.
Dashboard · a proposal ready to send (sample). Captured from the running POC on September 25, 2026; synthetic data.
See it live
Opens the exact screen in the running POC, in a new tab.
| Open | Where | What to try |
|---|---|---|
| Approvals | DMA AI dashboard | Contract approvals appear here. |
Status
Built in the POC. This capability runs in the POC today, on synthetic data, end to end.