Products

PaymentsSmart contractsAttributionTokenizationTreasury & walletsComplianceGovernanceSecurity

Solutions

Platforms & marketplacesAgencies & service firmsEnergy & infrastructureAI agents & autonomous commerceReal-world assets

Developers

DocumentationAPI referenceNetwork statusBridge & webhooks

Company

Pricing Company Contact sales Sign in

XODIAK / Attribution

Attribution

Credit gets decided when the work happens, not in an argument after the money lands.

The expensive question is always "who found this?"

By the time a deal closes, the people who can answer that have moved on, changed systems or changed sides. Attribution disputes are expensive because the evidence was never captured, not because the parties are dishonest.

XODIAK writes an attribution record at the moment of contact, carrying the source, the actor and the cost basis of the lookup. Nothing about it depends on anyone remembering later.

  • Written on contact creation, before any revenue exists
  • Source of the record and the actor that wrote it are both captured
  • Later contributions append rather than overwrite
  • The settlement waterfall reads these rows directly
attribution
// Six kinds of contribution earn a share.
type Contribution =
  | "capital"
  | "connection"
  | "labor"
  | "data"
  | "technology"
  | "contact_source";

// Every agent that touches a contact logs one.
await xodiak.attribute({
  contact: "c_41ba9d",
  kind: "contact_source",
  actor: "agent:account-intel-enrich",
  source: "internal_cache",
});
Worked example

What a waterfall actually looks like.

Illustrative only, using round numbers. Your model is registered on the network and versioned; these percentages are not defaults and not a recommendation.

LegBasisAmount
Gross deal valueContract value at close$50,000.00
Managing party share6.00% of gross$3,000.00
Origination partner33.33% of the managing share$999.90
Introduction credit5.00% of the managing share$150.00
Net to managing partyRemainder of the managing share$1,850.10

Every one of those five rows is a signed transaction, not a line in a report generated after the fact.

Six contribution kinds

Capital, connection, labor, data, technology and contact source. A deal can carry any mix, and the model decides what each is worth.

Reusable revenue models

Define the waterfall once per relationship and version it. Deals reference the version that was in force when they closed.

Anchored event log

Contribution events batch into a Merkle tree, the root is anchored on chain, and each event keeps its inclusion proof.

Ready to get started?

Create an account instantly, or talk to us about a settlement design for your business.

See what you'll pay

Per-settlement pricing tied to what actually moves. No seat licences, no hidden spread.

Pricing details

Start building

Open an account, sign a transaction, read a block. About ten minutes end to end.

Integration options