Multiparty Protocol
Bilateral verification, entity discovery, and cross-entity settlement with cryptographic attestation.
Overview
The multiparty protocol enables entities on Axiomatic to interact with each other for intercompany reconciliation, bilateral audits, and settlement — all backed by zero-knowledge proofs and optional onchain anchoring. Each entity remains fully isolated with its own encrypted database, but can participate in multiparty workflows without revealing private financial data.
Entity Discovery
Entities can discover other entities available for bilateral interaction. Discovery returns each entity's capabilities so both sides can negotiate a compatible protocol version before exchanging data.
Capabilities
Each entity advertises its supported features:
| Capability | Description |
|---|---|
| Protocol versions | Supported protocol versions for bilateral communication |
| Schema versions | Supported data schema versions |
| Proof types | Which ZK proof types the entity can generate and verify |
| Adapters | Supported data import adapters (Plaid, CSV, on-chain, etc.) |
| Bilateral protocol | Whether the entity has a protocol public key for secure bilateral exchange |
| Real-time settlement | Whether the entity supports real-time settlement flows |
Capability Negotiation
Before two entities interact, the protocol negotiates mutually supported features — computing the intersection of both entities' capabilities. This determines which protocol version, schema version, proof types, and settlement modes are available for the interaction.
Onchain Governance Registry
Entities can register onchain via the GovernanceRegistry contract on Base. Registration creates a permanent, verifiable record that an entity exists and is active within the Axiomatic network.
The governance registry supports:
- Entity registration — register an entity with its type and metadata URI
- Proof policies — declare which proof types are required for each entity (period close, solvency, NAV, waterfall, settlement, IC reconciliation)
- Verification key registration — publish verification keys so anyone can verify proofs without trusting the prover
- Active status checks — verify whether an entity is active in the registry
Intercompany Reconciliation
When two entities have intercompany balances (e.g., entity A has an intercompany receivable and entity B has a corresponding payable), the IC reconciliation flow verifies that both balances match — without either party revealing their actual balance to the other.
How It Works
- Each entity's intercompany balance is computed from their respective ledgers
- Both balances are committed using Poseidon commitments with random blinding factors
- The ZK circuit verifies that the two committed values are equal
- The proof is generated and stored, recording whether the balances matched and any variance
The result is a cryptographic attestation that intercompany balances reconcile, without either entity needing to share its actual balance.
Via the API
POST /api/proofs
{
"action": "generate",
"entityId": "entity-a-id",
"bookId": "entity-a-book-id",
"type": "IC_RECONCILIATION",
"counterpartyEntityId": "entity-b-id",
"counterpartyBookId": "entity-b-book-id"
}Bilateral Audit
A bilateral audit verifies the relationship between two entities by checking all relevant proofs across both sides. The audit examines:
| Check | What It Verifies |
|---|---|
| IC reconciliation proof | Intercompany balances match (with Poseidon commitments) |
| Period close proofs | Both entities have valid period close proofs |
| Consolidation proof | If the entities share a parent, the consolidation proof is valid |
| Onchain registration | Whether both entities are registered in the governance registry |
The audit returns an overallVerified flag that is true only when all components pass: IC balances match, both entities have valid period close proofs, and proofs have been independently verified.
Canonical Settlements
A canonical settlement is a normalized record of any value transfer between entities, regardless of its source. Settlements provide a single, unified view of cross-entity activity.
Settlement Sources
| Source | Description |
|---|---|
| Onchain | Blockchain transactions (detected via on-chain scanning) |
| Payment Intent | Payment requests initiated through the protocol |
| Protocol | Settlements originating from protocol interactions |
| Manual | User-entered settlement records |
Settlement Flow
- A settlement is recorded with its source, direction (inbound/outbound), amount, currency, and counterparty
- The settlement is linked to the originating event in the ledger (if applicable)
- A ZK proof can be attached to the settlement for cryptographic attestation
- Optionally, the settlement is anchored onchain with a transaction hash
Settlements are idempotent — duplicate records with the same source type and source ID are silently ignored.
Direction Inference
The system automatically infers settlement direction from the event type:
- Inbound:
crypto_received,investment_received,capital_contribution,invoice_payment,fee_settlement - Outbound:
crypto_sent,distribution_paid,capital_call_issued,bill_payment,gas_expense
Network Audit
A network audit extends bilateral verification to the full entity network. For any pair of entities, the audit checks:
- Both entities' period close proofs are valid
- The IC reconciliation proof confirms matching balances
- If the entities share a common parent, the consolidation proof covers both subsidiaries
- Onchain registration status for both entities
This creates a trustless verification layer where any participant — or external auditor — can verify the financial integrity of cross-entity relationships without accessing the underlying encrypted data.
Privacy Model
| What's Shared | What Stays Private |
|---|---|
| Proof validity (valid/invalid) | Individual transactions |
| Whether IC balances match | Actual balance amounts |
| Proof public inputs (hashed IDs, totals) | Account names, counterparties, memos |
| Onchain registration status | Encryption keys, DEKs |
| Settlement direction and currency | Internal chart of accounts |