Hashlogics
Stack review

Stripe

Still the one to beat for taking payments online

The API is the best documented we work with. The work you underestimate is everything that happens after a charge succeeds.

The verdict

Stripe is the right default for any product taking card payments online. The calculation only changes for a marketplace paying third parties, where the build runs far larger than the checkout suggests.

Nothing else matches the documentation, the test mode, or the speed at which an engineer new to payments becomes productive. That is worth more than a percentage point of pricing on most builds.

The trap is scope. Taking a payment is a week. Handling refunds, disputes, failed renewals, held funds and the accounting that has to agree with your bank is the actual project.

In short

5 things that decide this

  1. 01The documentation and test mode are the real product, and they are why a team ships fast without a payments specialist.
  2. 02Idempotency is first-class: all POST requests accept idempotency keys, sent in the Idempotency-Key header, and Stripe saves the status code and body of the first request against that key.
  3. 03Reusing a key with different parameters produces an error rather than a second charge, and 409 Conflict is documented as the code for a request conflicting with another using the same key.
  4. 04Stripe Connect makes marketplaces possible and does not make them easy. Onboarding, payouts, holds and disputes are each their own build.
  5. 05Webhooks, not API responses, are the source of truth for what finally happened to a payment.
What it is

For someone who has not built on it

Stripe takes card payments and moves money. You call an API, a customer pays, and Stripe handles the card networks, the fraud checks and the regulatory machinery underneath.

Two products matter beyond basic checkout. Billing runs subscriptions, invoices and the retry logic when a renewal fails. Connect handles the case where you are not the merchant, and money has to reach someone else.

Our use

What we have built with it

Stripe appears in eight of the products we have shipped, and the jobs are not the same shape. Maidily takes booking payments for cleaning businesses alongside Square and QuickBooks. Golancer runs freelancer subscriptions and invoicing. TrialTriage sits in a HIPAA-conscious clinical stack. Lexpair handles lawyer payments beside Twilio and SendGrid.

WorkMateAI is the one that taught us the most. It is a home services marketplace in Australia, and we built hold-and-release payments on Stripe Connect with dispute freezes and chargeback evidence generation. Money is held until a job is accepted, freezes the moment somebody disputes, and has to produce evidence a card network will read.

That last part is the honest measure of a payments build. Anyone can charge a card. Deciding who holds the money during an argument between two strangers is where the engineering lives.

One payment, all the way throughLive
  1. IntentAmount, currency, customer.
  2. AuthIssuer reserves the funds.
  3. CaptureThe money actually moves.
  4. WebhookThe event you must trust.
  5. ReconcileYour books against the payout.
  6. DisputeEvidence, weeks later.

Teams build the first three and treat the last three as edge cases. Those three are where the money goes missing.

Scorecard

Stripe, dimension by dimension

Scored from builds that took real money, not from the pricing page.

DimensionVerdictWhy
DocumentationBest in classThe reason a non-specialist can ship this.
Test modeStrongCard numbers for every failure you need to handle.
IdempotencyStrongDocumented behaviour, replay header, clear conflict rules.
SubscriptionsStrongRetries and dunning you would not want to write.
MarketplacesCapableConnect works. The build is much bigger than it looks.
DisputesAdequateTooling exists. Evidence gathering is still your job.
ReconciliationWeakPayouts are batched. Matching them to orders is on you.
Lock-inRealSubscriptions and saved cards make leaving a project.

Where it stands

Good at

  • Documentation and test mode that let a team ship payments without hiring a payments specialist.
  • Idempotency is designed in rather than bolted on, so a retry after a dropped connection is safe when you use it correctly.
  • Subscription billing handles renewal failures and retry schedules that are miserable to write yourself.
  • Connect covers the regulated parts of paying third parties, including identity checks, which is the part nobody wants to own.

Weak at

  • Reconciliation is left to you. Payouts arrive batched and netted, so matching them back to individual orders is work every finance team eventually demands.
  • A marketplace build is routinely underestimated. On WorkMateAI the hold-and-release flow, dispute freezes and chargeback evidence were a larger job than the entire booking experience.
  • Disputes are labour, not code. Stripe gives you the submission path; assembling evidence a network accepts is still manual.
  • Leaving is expensive once you hold saved cards and live subscriptions, because migrating them is a project with regulatory steps.
  • Sandbox behaviour and live behaviour diverge at the edges, and the differences surface in exactly the failure paths you tested least.
Questions, answered

Common questions

01When would you not choose Stripe?

Two cases. Your volume is high enough that the rate becomes a real line item. Or your market runs on a payment method Stripe serves poorly, which happens with some local schemes. For most products neither applies, and the engineering time saved outweighs the rate.

02How much work is a marketplace on Connect, honestly?

Several times the checkout. You need onboarding and identity checks for the people receiving money. Then a policy for holding funds, a dispute process, payout scheduling, and a way to prove what happened. WorkMateAI needed all of it, plus contract versioning, before a single job could be paid out.

03Do we need to store card details ourselves?

No, and you should not. Stripe's hosted fields keep card data off your servers, which is what keeps most of your systems outside the strictest PCI scope. Anything that pulls raw card numbers through your own code changes that answer and your audit burden with it.

04What is the one thing to build that teams skip?

Reconciliation. Stripe pays out in batches net of fees and refunds, so your bank statement never matches your order list line for line. Build the process that explains the difference in week one, because retrofitting it means rebuilding history from exports.

Verified
Start

Anyone can ship the agent. We answer the pager.

We build AI agents and automation, then stay on under an agreed service level. A senior engineer reads every brief, and your call gets scheduled within 24 hours.

What happens next

  1. 01

    You send a brief or book a call

    Two minutes, whichever you prefer.

  2. 02

    A senior engineer replies within 24 hours

    Not a sales rep.

  3. 03

    Honest scoping, in writing

    And if we’re not the right fit, we say so.

Abdul Basit, CEO of Hashlogics

“I started Hashlogics because too many teams ship a demo, get paid, and disappear. We build to a standard we’d run ourselves — and we stay to keep it running.”

Abdul Basit · CEO · a direct line

Not ready to talk? Take the checklist.

12 questions to ask any AI agency before you sign. They separate a demo shop from a team that ships to production.

Get the checklist

Free · no newsletter