The money
Northwind Freight's deal from its mandate to Friday's payout, each step's ledger line and the three apps' view of it, how the account's payment finds the deal, what the share is of, who funds the setter, the ways a won deal reverses, and every api.forsale deal on this site.
sales's wordsdeal is a jobaccount is a subjectgig is a taskcloser is a memberseller is a clientseller is a buyer
A won deal earns the brand its 5%, less the setter, the placement, the AI and services.dev's take; the closer's 10% passes through whole. A lost deal's costs are the brand's.
npx services.dev check ledger +$11,100.00 at won on $74,000 · closer $7,400.00 (share, from the seller) · setter $250.00 · placement $50.00 · AI $11.34 (example) · you $3,388.66
lost +$0.00 · setter $250.00 when the meeting was held · placement $50.00, the setter's gig and the closer's · AI up to $40.00 · you −$340.00 when a closer loses it
odds each track at the deal it takes · AI alone, $30,000: won $1,490.88, lost −$40.00 · breaks even at 2.6% won
a setter, then AI, $40,000: won $1,714.52, lost −$315.00 · breaks even at 15.5% won, the worst bet
a closer, $74,000: won $3,388.66, lost −$340.00 · breaks even at 9.1% won (about 1 in 11)
gone quiet, a closer's deal: won $3,213.66, lost −$515.00 with the nurturer's $150.00 and its placement · breaks even at 13.8% wonA setter on a deal AI closes is the worst bet. On small deals, setter: 'ai' books without one.
job_7Hq5, from the order to the closer's payout. Nothing is held until the account pays:
| Step | Fact | The ledger | Customer portal, the seller | Delivery portal | Owner console |
|---|---|---|---|---|---|
| Ordered, 2 Nov | deal.ordered, charge.mandated | +$0.00 | "charged at won, up to $12,000" | — | the deal, mandated |
| A setter books, 5 Nov | step.committed | placement −$25.00 at the setter's claim, debited from your balance · AI, against $40.00 | the meeting's date | the setter's $250 waits on the meeting | AI spent so far |
| A closer claims, 9 Nov | gig.claimed | placement −$25.00, debited | the closer's name | terms frozen: 10% at won | the gig filled |
| Meeting held, 10 Nov | pay.accrued | setter −$250.00, debited from your balance | "meeting held" | the setter's $250, accrued | the setter paid from your balance |
| Proposal and redlines, 11 to 18 Nov | step.committed | — | the proposal and the redlines | committed, the gig still hers | the closer's span |
| The close, 4 Dec | deal.ended | — | "won · awaiting payment · nothing charged" | "committed · your 10% waits on Northwind's payment" | won, awaiting payment |
| The payment proves it, 4 Jan | outcome.verified, charge.pending | +$11,100.00, a bank debit in flight | "$11,100 pending from your bank" | — | pending, collects in four days |
| The debit collects, 8 Jan | charge.collected | +$11,100.00, held | "$11,100 charged, final 9 Mar" | $7,400 held to 9 Mar | held, by the date it's final |
| The window closes, 9 Mar | outcome.final, charge.earned | you $3,388.66 before the take | final | $7,400 accrued | final, the take on $3,400.00 |
| Friday, 12 Mar | pay.paid | — | — | $7,400 in the bank | the closers' run |
Each Stripe call behind a row is on flow of funds.
services.dev's Stripe app drafts the close's invoice on the seller's own account, the deal's id in its metadata. A payment counts when its customer is the account and its metadata.deal is this deal, within 90 days of the close:
npx services.dev jobs outcome job_7Hq5 --match # how Northwind's payment found the dealjob_7Hq5 · outcome · proof payment · through services.dev's Stripe app on Harbor Labs' account acct_…H4rb, installed at the order: it reads customers, invoices, charges, refunds and disputes, and writes only the close's invoice
invoice in_…8841 · drafted at the close on 4 Dec · customer cus_…N0rt, Northwind Freight · metadata.deal job_7Hq5 · net 30 · $74,000.00
match customer is the deal's account ✓ · metadata.deal is this deal ✓ · both, so the payment counts
never a payment without metadata.deal, or from another customer: Harbor's own sale, never this deal's, unless a contest rules it the same account
paid Mon 4 Jan 09:20 · invoice.paid · $74,000.00 by ACH · the 5% and the 10% debited from Harbor's bank, collected 8 Jan · window 60d by bank, to 9 Mar 2027
due 90 days from the close, to 4 Mar 2027 · unpaid by then: outcome.lapsed, and nothing charged
tail had the deal ended lost, a payment that matched within 90 days would have won it, charged once| On the seller's account | The outcome |
|---|---|
invoice.paid | verified: the share is charged |
invoice.paid with paid_out_of_band | self-reported: held until the seller attaches the remittance, then verified |
invoice.voided, then a new invoice paid | the new invoice counts only if it carries this deal's metadata.deal |
charge.refunded or charge.dispute.created inside the window | outcome.adjusted or outcome.reversed |
invoice.marked_uncollectible | nothing charged; the tail keeps watching to outcome.due |
closed_value is the first 12 months the contract commits, so a three-year deal is charged once, on its first year.
| How the account pays | What proves it | Deal |
|---|---|---|
| The first year up front | the one invoice: collect: 'first' | job_7Hq5, $74,000, net 30 |
| Billed monthly | each invoice holds its own share for 60 days: collect: 'each' | job_7Ht1, $6,166.67 a month |
| Years two and three | a renewal through again: a new outcome on its own payment, never a second charge on this one | the deal again starts |
deal.ts funds the setter and the nurturer from api.forsale's 5%, each debited from its balance at the act, so nothing is charged on effort. Who funds it runs the sales kernel's way, charged to the seller.
Inside the window, both shares and the take go back from the hold. The setter's pay stands:
→ GET /owner/deals/job_7Hw6 # another won deal: its payment was refunded inside the window proof payment · in_…9310 refunded 3 Dec 2026, day 20 of 60
money outcome.reversed → chg_7Hw6 refunded $11,100.00 from the hold → the closer's $7,400.00 never left it
ledger +$0.00 · setter $250.00, paid at the held meeting · placement $50.00 · AI $12.02 · you −$312.02
take reversed with the shareA partial refund and a deal won by the tail are on what reverses and the tail.
Each api.forsale id names one deal, wherever it appears:
| Deal | Account | What it shows | Walked on |
|---|---|---|---|
job_7Hq5, gigs tsk_7Hs5 and tsk_7Hq5 | Northwind Freight | won by a closer, net 30, paid and held | the walk, closing, outcomes, flow of funds, plans |
job_7Hq1 | Litware Clinics | AI closes alone | branches, outcomes |
job_7Hu2 | Adventure Works | a buying committee draws a closer | the agent's order |
job_7Hu3 | Lucerne Publishing | a meeting nobody attended | branches |
job_7Hs3, then job_7Hs9 | Tailspin Toys | lost at the close, then started again | branches |
job_7Hs4 | Fabrikam Foods | gone dark, revived, closed by the same closer | branches |
job_7Hs6 | Wingtip Supply | confirmed dead | branches |
job_7Hu9, gigs tsk_7Hv2 and tsk_7Hv4 | Margie's Travel | gone dark before the meeting, revived to book | branches |
job_7Hu4 | Coho Winery | refused, asked, and closed over the seller's new floor | the Deal Service |
job_7Hu7 | Fourth Coffee | no one claims | branches |
job_7Hu5 | Jordan Lee | a consumer close on closers.sale, by card | deal shapes |
job_7Hu1 | Proseware | an expansion, the share on the increase | deal shapes |
job_7Hr4, gig tsk_7Hr4 | Alpine Freight | referred, the referrer paid at final | deal shapes, lines and rails |
job_7Hv6 | Rin Takahashi | a developer on a monthly Stripe subscription | deal shapes |
job_7Hv8 | Woodgrove Bank | an agent buyer, no meeting | deal shapes |
job_7Hu6 | Wide World Importers | signed, never paid | branches |
job_7Hu8 | Alpine Ski House | paid by its parent, contested and upheld | closing |
job_7Ht1 | Trey Research | billed monthly | deal shapes, outcomes |
job_7Hw6 | — | refunded on day 20 | outcomes |
job_7Hs2 | — | $18,500 refunded on day 31 | outcomes |
job_7Hw7 | Contoso Logistics | won by the tail | outcomes |
job_7Hs8 | — | the first collection declined, then paid | outcomes |
job_7Hr8 | — | the AI budget spent, the step sent to the setter | prices |
job_7Ht4 | — | the brand's charge disputed by the seller's bank | refunds and disputes |