Pacterms

You did the work, make sure you get paid.

Visit Website
July 30, 2026 What applying to YC actually did for me, regardless of the outcome!

I submitted my YC application for Pacterms about a month ago. I still don't know if I'll get an interview. But I wanted to write this now, before I know the answer, because I think what already happened is worth more than the decision itself.

I'm building Pacterms solo, a bilingual freelance agreement and invoicing tool, mainly for US Hispanic trade workers and contractors. I don't have a technical co-founder. I direct AI coding agents (mostly Claude Code) to build everything, while I hold the architecture, the product decisions, and the QA in my head. I still work a full-time DevOps job. I build nights and weekends.

Before the application, my pace was... fine. Steady, but soft-edged. Bugs sat for a few extra days. "I'll clean that up later" was a real sentence I said to myself often.

The application deadline changed that.

Not because I thought a YC partner was watching my commit history. They weren't. But a real date, with a real form, with real fields I couldn't fudge my way through ("Are people using your product?" "Do you have revenue?") forced a kind of honesty I hadn't been sitting with. You can't write a vague answer to "how far along are you" and feel good about it. The form makes you confront the gap between what you've been telling yourself and what's actually true.

So in the weeks before submitting, I:

  • Finally pushed to get SMS/OTP verification through carrier approval instead of letting it sit feature-flagged

  • Went from scattered notebook reminders to actual Jira tickets with feature/bug tracking

  • Did a full audit of my own production environment and caught real bugs I'd been circling around

  • Got honest about what wasn't ready (mobile UI still isn't) instead of pretending it was

None of that was for YC's benefit. It was for mine. The deadline was just the thing that made me stop negotiating with myself.

Here's the part I keep coming back to: even if the answer in August is no, none of that work goes away. The SMS system still works. The tracking system still exists. The audit still happened. I'll have a sharper product and a clearer story than I did a month ago, YC or not.

And if it's a no, I'll apply again. Not because I'm chasing a badge. Because somewhere out there is a freelancer who did the work and didn't get paid for it, the same way my father did years ago. That's the actual job. YC was never the point. It was just the deadline that made me finally move, as the point mattered.

If you're sitting on an application (YC or otherwise) and telling yourself you'll tighten things up "later" β€” the deadline is doing you a favour. Let it.

Comment

July 29, 2026 The part of freelancing nobody puts on the highlight reel

You get the message. "We'd love to work with you." And for a minute, everything feels like it's working out. You did this no boss handed you this job, you built something people wanted, and someone just said yes to you.

You shake hands (or these days, send a text back with a thumbs up) and there's this quiet rush. Not just money coming in. Proof. Proof that the skill is real, that the hours you spent getting good at this weren't wasted, that you can actually do this for a living.

Then the job starts, and somewhere underneath the excitement, a second feeling shows up that never fully leaves: will this one pay out the way it was supposed to.

You don't say it out loud. You just start doing the things you've learned to do without even deciding to screenshotting the text where they agreed to the price, keeping every email, remembering exactly what was said on that call three weeks ago in case you need to repeat it back later. You're not paranoid. You're just someone who's been burned before, or knows someone who has, and you'd rather have the receipts and never need them than need them and not have them.

You finish the work. You're proud of it genuinely proud, the kind of proud that's hard to explain to people who've never built something with their own hands or their own hours. And then you send the invoice, and the waiting starts.

Maybe they pay on time. Maybe they don't. Maybe the messages slow down, then stop. Maybe you start rehearsing what you'll say in the next follow-up text so it doesn't sound too pushy, too desperate, too much like you actually need this money even though you do. Chasing a client for money you already earned is its own specific kind of tired. It's not the work that wears you down. It's the not-knowing.

And underneath all of it, there's the reason you're doing any of this in the first place. Maybe it's a kid who needs school shoes. Maybe it's rent due on the first. Maybe it's just wanting to give your family the version of "we're okay" that doesn't come with you quietly doing math in your head at 2am, moving numbers around, hoping a payment lands before something else is due.

Nobody starts freelancing because they wanted to become an unpaid debt collector for their own labor. You started because you were good at something and wanted the freedom to be good at it on your own terms. The chasing, the screenshotting, the rehearsing that's not the job. That's the tax you pay for a system that was never built to protect people like you in the first place.

You keep going anyway. Because the work itself still feels good. Because the handshake still means something, every time. Because somewhere in there, it's still worth it.

It just shouldn't have to cost this much to find out if you'll actually get paid for it.

Comment

July 26, 2026 I almost shipped a 10-day cancellation notice on an app meant for same-day jobs

So this week I went down a rabbit hole I did not expect to go down.

Someone asked me a simple question about Pacterms: "what happens if the client or freelancer wants to cancel after the deposit's already paid, before work even starts?" Fair question. I didn't have a real answer. So I went looking at how normal freelance contracts handle it.

Turns out most templates out there use a 10-30 day written notice period before you can terminate. Makes sense for a consulting retainer or a months-long dev contract. Makes zero sense for Pacterms, where the whole point is you're standing on a job site and the contract gets signed and the deposit clears in like a minute.

So I kept digging, and that's where it got interesting.

Turns out in a bunch of places (varies by state/country) there's an actual legal cooling-off period, commonly a few days, that kicks in when someone agrees to a service at their home, in person. It exists to stop people from being pressured into signing something on the spot and then being stuck. Which, ironically, is basically the exact motion Pacterms is built around β€” sign fast, on-site, deposit clears immediately.

There IS an exception though. If the work is genuinely urgent (a leak, no AC, whatever) and the client wants it to start right away, that cooling-off thing doesn't apply, but only if the client explicitly says "yes I want this to start now" and that gets documented.

Which means Pacterms currently has a gap. Every job goes through the exact same flow whether it's "my pipe is flooding right now" or "let's do the kitchen remodel next month." Those two should legally NOT be treated the same way, and right now they are.

So now I'm building an actual Emergency vs Scheduled toggle into the agreement creation step. Two separate job profiles, basically. Immediate Jobs work basically like they do today, instant, because that's the case the law expects to be instant. Scheduled Jobs get a proper cancellation window before the deposit becomes non-refundable, unless the client explicitly opts to waive it.

Kind of a good reminder that the "boring legal plumbing" stuff is not something you can skip just because you're moving fast. Would've been a genuinely bad look to have a contractor's tool that quietly ignores contractor law.

Anyone else building something client-facing run into a version of this? Curious how other people have handled the "move fast vs actually reflects the law" tension.

Comment

July 25, 2026 πŸš€ How a failed P2P loan app idea accidentally turned into a closed-loop shield for freelancers (and why I stopped listing "features")

Hey Indie Hackers,

Posted about Pacterms yesterday and honestly the response kind of caught me off guard. A few comments really stuck with me β€” people saying they actually quit freelancing at some point because something like this didn't exist to save them from the admin/chasing-payment burnout.

My dad was an independent contractor for years and I watched him go through this exact stuff β€” clients ghosting, no real leverage, just hoping people pay you. So yeah this one's personal, not just a "market opportunity" for me.

Whenever people check out the app they usually ask me to list every feature. I keep avoiding that on purpose. Dumping a big list of tools in front of someone just overwhelms them and honestly it doesn't even explain why the thing works. Pacterms isn't really a bunch of separate tools bolted together, it's more like one loop that keeps feeding itself, and every piece exists to give the worker more leverage at a different point in the job.

Here's roughly how it plays out:

Phase 1 β€” the fast part: No sitting at a desktop uploading PDFs or messing with signature fields. You're on the job site, you type in the basic project details, and it turns that into a proper contract outline in like 30 seconds.

Phase 2 β€” the bilingual handshake: You text the client a link. No app download, no password. They get a clean mobile page, read the terms in English or Spanish (built bilingual from day one since a huge chunk of trade workers are Spanish-speaking and most tools out there ignore that), and sign with a one-tap SMS code. Deal's locked in before you even leave.

Phase 3 β€” deposit enforcement: Once they hit "agree," it splits out the payment milestones automatically (50/50 down, whatever you set). Work doesn't officially start until that deposit actually clears. So no deposit = you're not obligated to show up. Filters out the clients who were never serious anyway.

Phase 4 β€” crew jobs Bigger job, bringing a crew? Instead of everyone signing separate contracts, the lead adds up to 4 people onto one shared agreement, sets everyone's cut, and each person gets a text to confirm their share. Honestly, this bit is doing a lot of the acquisition for me without me having to do anything β€” every crew member added is basically a new user pulled in for free.

Phase 5 β€” proof from the field: Once work starts, there's a start/stop timer and workers upload before/after photos or video. Once the client approves the progress, the progress on milestones moves forward. If the client requests for the re-work or is not satisfied with the work, they can simply click on needs improvement and mention the details. That way if a client ever tries to claim the work was bad, there's already a timestamped record sitting there.

Phase 6 β€” invoicing that just happens: Invoices go out automatically when milestones are hit. Client also gets a soft reminder text before the due date so nobody has to send an awkward "hey following up" message themselves. Right now invoicing is actually free and unlimited for everyone, even non-pro users it just comes with Pacterms branding on it. Honestly, that's on purpose; every free invoice that goes out is basically a tiny ad for the product landing in front of someone new. If you want your own branding instead of ours, that's $0.50 an invoice.

Phase 7 β€” the money side: Once payment clears, it splits the funds per the crew agreement, logs any fees, and drops everything into a running summary so you're not staring at a spreadsheet trying to figure out what you actually made this month.

Phase 8 β€” the evidence pack: When a job wraps, everything signed contract, delivery/verification metadata, payment history, timer logs, before/after media gets bundled and hashed so it can't quietly be edited later by either side. Basically a paper trail neither party can fudge.

Phase 9 β€” last resort: If a client goes quiet after the reminders, you flip it to "demand notice" and it sends a few escalating warnings automatically. If they still don't respond, it compiles everything into a court-ready packet and pre-fills a small claims complaint letter for your state. You still have to file it yourself I'm not trying to practice law here but you're not starting from a blank page either.

Anyway. Still early, still building this mostly solo with AI tools since I'm not a "traditional" coder, but the loop is what I actually believe in more than any single feature. Happy to answer anything.

Comment

July 23, 2026 You did the work. Now make sure you get paid.

My father worked as a freelancer, and like most freelancers, he relied on informal agreements β€” a verbal understanding, maybe a text. Formal contracts cost money and take time most freelancers don't have when they just want to start the job.

So the pattern repeated: work gets done, payment gets delayed or never shows up, and there's no real way to hold anyone accountable. Freelancers lose an estimated $6B a year in the US to non-payment. It's a real problem, and nobody's built proper infrastructure for it.

What it does

Pacterms sits between "nothing" and "hiring a lawyer." It's a fast way to create a legally-binding agreement, verified over SMS, plus invoicing and payment tracking tied to that agreement. If a client stops paying, Pacterms sends escalating payment demand notices automatically β€” and if that doesn't work, generates a court-ready complaint you can file yourself.

Features

  • SMS OTP-verified agreements

  • Invoicing linked to the agreement

  • Payment tracking per job

  • Evidence Pack β€” one PDF with agreement, communication, and payment history

  • Escalating payment notices when a client goes unpaid

  • Self-file court documents for small claims

  • Bilingual (English/Spanish)

Who it's for

Trade workers β€” construction, HVAC, contractors β€” who are especially exposed to this problem and underserved by tools built for designers and devs billing corporate clients.

Where things stand

Feature-complete, finishing SMS carrier approval and Android packaging before opening up more broadly. Built entirely with AI tools, no traditional engineering background β€” happy to talk about that too.

13 Comments

  1. 2

    Twenty years of running a services company taught me that collections are won at the proposal stage, not the courtroom: deposits up front and progress billing tied to milestones killed 90% of our non-payment problems before they existed. The court-ready complaint is a smart backstop, but the feature I'd market hardest is the agreement itself, because trade workers who ask for 30% up front with a signed doc rarely need the escalation stack. Sell it as "get paid on time," not "sue faster."

    1. 1

      Twenty years is a lot of receipts behind that advice appreciate you laying it out this plainly. You're right that I've been marketing the backstop instead of the thing that prevents the fire. The deposit + milestone structure is already in the product; it's just been sitting behind the escalation stuff instead of leading.

      Curious! In your experience, was it the deposit itself that did the work, or the fact that it was in writing and tied to a specific milestone? Trying to figure out which part actually changes client behaviour versus which part just feels reassuring to the person sending the invoice.

  2. 2

    Great idea! Making agreements and invoicing simple is a real pain point for freelancers and small businesses. Wishing you a successful launch! πŸ‘

    1. 1

      Thank you very much. :)

  3. 2

    This is fantastic. I burned out on freelance work because of exactly this issue. I got sick and tired of exerting as much effort chasing down deadbeats, as I did trying to find new work. In the end, I decided it wasn't worth the effort. Not a great motivator to go out and find new clients just so the cycle could repeat. If I were still doing freelance work I'd sign up in a heartbeat. And prior colleagues report the problem with non-paying customers is only getting worse. I wonder if you have any plans to expand this to other professions that sometimes have to chase down deadbeat clients, such as contractors. They might hate the idea of chasing down old clients too. Just a thought.

    1. 1

      Really appreciate you sharing this; the burnout part hits harder than any "late payment" stat I could put on a landing page. It's not really about the money owed; it's the fact that chasing it becomes a second unpaid job on top of the first one.

      Curious, if a tool like this had existed back when you were freelancing, what would have made you actually trust it enough to use it on a new client?

      Trying to figure out if it's the SMS confirmation, the evidence trail, or just having something in writing that would've moved the needle for you.

      And yes, contractors are very much on the radar. Talked to a few HVAC and general contractor folks recently, and the "chasing deadbeat clients" language you used is almost exactly how they describe it too.

      Construction/trades is probably the next vertical after freelance/gig work.

      1. 1

        Probably the same approach that has "sold" me on other SaaS: a free trial period. Had this product been available back then, and I'd had some client that wasn't interested in paying (which I usually had one or two clients at any given time in that category), a free trial would have let me see if I could in fact "hand off" that task so that I could go do other things. It would also allow me to see how effectively the tool worked to get folks to cough up what they owed me. Another possible way that I'd use this, and I'm not sure if it's already set up for this, is to simply use this for ALL clients, so that from the get-go I don't have to worry about the billing. I'm working now with healthcare providers and I know they have a lot of the same headaches. Some of them still chase people down via collection agencies, but others are turning to services like this. That might be another "target market" for you to pursue.

        1. 1

          Sorry for the delay; I've been heads-down building out some other features and only just got back to IndieHackers.

          Really appreciate you laying this out so specifically; the free trial angle, using it as your default for all clients, and the healthcare lead are all genuinely useful.

          One ask, if you're open to it: do you know anyone, in healthcare or otherwise, who'd be a good fit actually to try this out and give real feedback? Always looking for a few real users to test with before wider release, and given how clearly you've thought this through, I'd trust your read on who else might be worth reaching out to.

          No pressure either way, and thanks again for taking the time.

  4. 2

    I'm curious what you've learned from people who've actually dealt with non-payment. Was there anything about how they decide whether to pursue a client that challenged one of your original assumptions about the problem?

    1. 1

      Honestly, the two comments right above yours taught me more about this than any of the market research I'd done. One person described burning out entirely not because collections tools failed him, but because chasing payment became as much work as the job itself, until it wasn't worth finding new clients at all. That challenged my assumption that nonpayment is a per-invoice problem; it's actually a fatigue problem, and once people cross that threshold, they don't just skip one collection; they quit freelancing.

      The other comment from someone who ran a services company for 20 years challenged a different assumption. I'd been building toward "help people pursue nonpaying clients better." He pointed out that experienced operators don't really decide whether to pursue after the fact β€” they structure the deal (deposit + milestones), so pursuit rarely comes up. So the real decision point isn't "chase or don't chase," it's "require a deposit or don't," and that happens way earlier than I'd been designing for.

      Still early days gathering these stories, but both pushed me to rethink what the product should lead with.

      1. 2

        Appreciate the context.

        Would be good to continue the conversation as you learn how these patterns shape the product.

        What's the best email to reach you on?

        1. 1

          Would love that, thank you. You can reach me at admin at thyvoxa dot com happy to keep comparing notes as this plays out.

          1. 1

            Thanks! I’ve just sent it over.

            Looking forward to hearing your thoughts whenever you have a chance.

About

My father worked as a freelancer, and there were a lot of informal agreements in his line of work. Formal agreements cost a lot and take time too. Due to the informal agreements, the payments weren't made on time.