Any promise between two people, formalized, witnessed and tracked. Your platform keeps the flow. PACTI keeps the word.
No funds flow through PACTI, so no money-transmitter weight lands on your platform. We formalize the promise: an ESIGN and UETA compliant signing ceremony, a hash-sealed evidence trail, a schedule, and two-sided payment confirmation. You keep your rails. We keep the record.
Your platform creates the agreement and reacts to events. The signing ceremony itself always happens on PACTI's hosted surface, so the signature, the timestamp and the sealed record are ours to keep.
Create the promise. Get back a hosted signing URL to hand the counterparty.
{
"template": "pay_later_promise",
"amount": 500.00,
"purpose": "order #1042",
"parties": [
{ "role": "seller", "ref": "acct_88" },
{ "role": "buyer",
"email": "buyer@…" }
]
}
→ 201
{ "id": "agr_7f2b",
"sign_url":
"https://pacti.app/s/…" }Both parties verified and signed. Your app unlocks the order, the gig, the keys.
{
"event": "agreement.executed",
"agreement": "agr_7f2b",
"executed_at":
"2026-08-12T16:04:11Z",
"parties": [
{ "role": "seller",
"verified": "qr_presence" },
{ "role": "buyer",
"verified": "otp_email" }
],
"evidence_hash":
"sha256:9c1e…"
}One call returns the complete record. Timestamps, devices, consent, hash seal.
{
"agreement": "agr_7f2b",
"hash": "sha256:9c1e…",
"log": [
{ "t": "…", "ev": "offered" },
{ "t": "…", "ev": "viewed" },
{ "t": "…", "ev": "consented" },
{ "t": "…", "ev": "signed" },
{ "t": "…",
"ev": "payment.confirmed",
"by": "both" }
]
}The pattern is always the same: two people who know each other agree to something, and the platform in the middle has no way to make it real. PACTI supplies the missing half.
Seller-to-buyer installment promises without BNPL underwriting. Documented, scheduled, signed.
Deliver by Friday, pay on delivery. The handshake behind every gig, made official the moment both sign.
Sublets, deposits, rent between people who know each other. A note instead of a text thread.
Net-30 between two small shops. The purchase order that was always a promise, finally signed.
Rotating savings, group buys, season fees. Signed obligations instead of group-chat chasing.
Credit unions and immigrant fintechs embed the promissory note and evidence trail natively.
We expose the smallest set of objects that make a promise real. Compose them however your product needs.
PACTI ships as an MCP server: Claude, ChatGPT, and any agent can draft, track and verify pactis through the same API, with the user's consent. The signing ceremony stays human, always. A signed pacti is the mandate agents execute against, and ESIGN intent belongs to a person, never a process.
The agent drafts through the API, schedules the reminders, watches the webhooks. The two humans hold to sign on PACTI's hosted ceremony, exactly like everyone else.
agent → POST /v1/agreements (draft, with consent) human → sign_url (hold to sign · always) agent ← webhook agreement.executed agent ← webhook payment.confirmed
Leave your email and we will reach out when there is a real endpoint to call. We are not promising a date, because we do not have one yet.
One email, kept for this list only. Nothing else.