MATCH NETWORK ONLINE · 34 INTEGRATED APPLICATIONS · $5.08M MATCHED TO DATE · 128.9K INVESTOR ACCOUNTS · AVG MATCH RATE 12.16% · SETTLEMENT BATCH SB-18442 · 4.8K CONTRIBUTIONS / HOUR
Protocol

Protocol Match

Campaigns, Match Escrow, retention checkpoints and slashing.

The internet-native employer match

An employer match works because someone else pays into an account you keep. Protocol Match rebuilds that relationship without an employer: any application can fund matching for the users who transact through it, and the account those matches land in belongs to the user.

The application's incentive is retention. A user with a growing account inside your product behaves differently from a user chasing a temporary rebate, and the Console measures exactly that difference.

This is not a qualified plan and creates no employment relationship. The mechanism is borrowed; the legal wrapper is not.

Match Escrow

Every advertised rate is backed by capital already deposited. Publication is rejected if escrow cannot cover the campaign's advertised exposure, and escrow is drawn down as matches settle.

IMatchEscrow.sol
1// MatchEscrow.sol
2pragma solidity ^0.8.24;
3
4interface IMatchEscrow {
5 event CampaignFunded(bytes32 indexed campaign, uint256 amount);
6 event MatchReleased(bytes32 indexed campaign, address indexed account, uint256 amount);
7
8 /// @notice Deposit the capital that backs an advertised match rate.
9 function fund(bytes32 campaign, uint256 amount) external;
10
11 /// @notice Released by settlement once a contribution receipt is verified.
12 function release(bytes32 campaign, address account, uint256 amount) external;
13
14 /// @notice Remaining capital behind a published campaign.
15 function available(bytes32 campaign) external view returns (uint256);
16}
Funding
Deposited before publication, in the settlement currency.
Release
Callable only by the settlement contract, against a verified receipt.
Exhaustion
A campaign with empty escrow stops matching and is marked exhausted in the registry.
Return
Unspent escrow returns to the workspace when the campaign window closes.

Campaign parameters

A campaign is a published, funded offer. Six parameters decide what it pays and to whom.

Kind
Contribution Match, Feeback, Win Sweep Bonus, Retention Match or First Contribution.
Trigger
The activity that makes a match owed, such as a completed trade or a closed position.
Rate
The share of the user's contribution the application will pay.
Cap
A per-user ceiling per day, week or month.
Budget
Total escrow committed to the campaign.
Audience
Which accounts qualify, expressed as an activity rule rather than an address list.
Publishing a campaign
1import { investor } from "@/lib/investor";
2
3await investor.campaigns.publish({
4 name: "September Future Match",
5 kind: "contribution-match",
6 trigger: "trade.completed",
7 rate: 0.2, // 20% of the user's Future Split
8 cap: { amount: 5, period: "day" },
9 budget: 100_000,
10 window: { start: "2026-09-01", end: "2026-09-30" },
11 retentionCheckpointDays: 30,
12 funding: "escrow",
13});
Live campaigns
  • MeridianContribution Match20%$184.2K
  • ValeContribution Match15%$92.4K
  • NorthstarRetention Match25%$64.9K
  • ParcelFirst Contribution10%$212.8K
  • CurrentFeeback30%$128.6K

Contribution retention

A Retention Match is only confirmed once the contribution survives a checkpoint. The match is reserved at the moment of the contribution, held in escrow, and released when the checkpoint clears. If the user withdraws the contribution first, the reservation is returned to the campaign.

Checkpoint
None, 7, 30 or 90 days from the contribution.
Reservation
Escrow is committed at contribution time so the advertised rate stays solvent.
Release
On clearing the checkpoint, the match settles into the user's recipe.
Reversal
If the contribution is withdrawn before the checkpoint, the reservation is released.

Slashing

Two failures are slashable, and both are provable from onchain state: advertising a match that escrow cannot fund, and settling a batch that does not correspond to verified receipts.

Unfunded advertising
Publishing a rate the escrow cannot cover for the advertised audience.
Invalid settlement
Producing a batch that does not reconcile to the receipts it claims.
Penalty
A portion of the bonded $INVESTOR, sized to the shortfall, plus registry suspension.
Destination
Slashed capital covers the affected accounts first, then the security reserve.

$INVESTOR bonding

Bonding is the condition of participating, not a yield product. An application bonds before it can publish; an operator bonds before it can settle.

Current parameters
Minimum campaign bond750.0K INVESTOR
Bonded supply62.40M INVESTOR
Bonded value$5.25M
Escrow coverage148% of advertised
Slashing events0 in 180 days
Match Reserve$736,000
Bonded $INVESTOR is at risk in a slashing event. It is not a deposit, and it confers no claim on assets held in any Investor Account.