Features

Four things Parka does

Parka runs partner and affiliate programs for SaaS teams on Stripe. Four parts make up the product.

01Attribution

Referral links and Stripe subscription attribution

Issue referral links and coupon codes for each partner relationship. Parka records every click as a referral touch. The first qualifying touch inside the program window wins the customer. The referral code rides the Stripe Checkout session onto the subscription, so renewals stay with the same partner for the duration the rulebook sets.

Links
Scoped to one workspace, one program, one partner relationship and one product
Window
First qualifying touch wins inside a 90-day default window
Precedence
A prior direct sale or prior CRM opportunity overrides a referral touch
Renewals
Attribution stays on the Stripe subscription across recurring payments
02Ledger

An append-only commission ledger

Parka reads payment events from Stripe and writes one commission entry per collected payment. Each entry points to the Stripe event id and the active rulebook version. A refund or dispute appends a correction entry and leaves the original commission untouched. When an event has missing, revoked or ambiguous evidence, Parka records a hold and posts nothing.

Entries
Immutable commission records in whole minor currency units, never floats
Corrections
Refunds, disputes and recurring duration limits append a correction row
Holds
Events that do not match a valid referral wait in a hold queue for a person
Database
The runtime role holds SELECT, INSERT and UPDATE grants, with no DELETE
03Surfaces

API, CLI and MCP, the same program on each

Every action in Parka is a declared capability with one id across the HTTP API, the terminal CLI and the MCP server. All three surfaces run the same authorization checks and return the same refusal code for the same error. Your agent can create programs, invite partners, issue links, read ledger balances, explain entries and draft new rulebook versions.

API
POST /v1/invoke authenticated by a workspace bearer key
CLI
Terminal commands with JSON output and deterministic exit codes
MCP
POST /mcp serving tools/list and tools/call on the same listener
Refusals
One machine-readable refusal name across all three surfaces
04Human gates

A person approves money. The agent cannot.

Capabilities that activate commission terms, approve commissions, record payout receipts or grant credentials are human gates. When an agent calls a human gate, the dispatcher freezes the input, creates an approval request and executes nothing. A person inspects the open request and approves or rejects it. Parka never holds funds or sends payouts.

Terms
An agent drafts a rulebook version. A person activates it.
Commissions
An entry becomes payable only after a person approves it.
Payouts
You pay partners on your own rails. A person records the receipt.
Credentials
An agent cannot mint a key, grant access or approve its own request.

Partner programs on Stripe, run by agents. People approve the money.

Get started