Skip to content

UNIPaaS/paas-react

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@paasbuild/react

Add payments to your React app in three lines. Checkout, subscriptions and payouts — embedded, your brand on the receipt, one flat rate of 3.9%. You stay the merchant, and (unlike a merchant-of-record) your users can get paid too.

Built for people shipping apps with AI agents (Lovable, Bolt, v0, Cursor, Claude Code). Powered by paas.build on UniPaaS, an FCA-authorised payment institution.

npm i @paasbuild/react

Three lines

import { PaasCheckout } from "@paasbuild/react";

<PaasCheckout vendorId={process.env.NEXT_PUBLIC_PAAS_VENDOR_ID} amount={50} currency="GBP"
  onPaid={() => alert("Paid!")} />

That's a live, embedded checkout — secure card fields inside your app, buyers never leave.

Get a vendor id in one prompt

You need a vendorId (and, for real money, an access token). Getting one takes a sentence, not a signup form:

# tell your agent, or run it yourself:
curl -sX POST https://api.paas.build/api/go-live \
  -H 'content-type: application/json' \
  -d '{"business":"My App","website":"myapp.com","region":"uk"}'
# → { sandbox:{ vendorId, accessToken }, production:{ vendorId, accessToken } }

Individuals go live instantly (capped until full verification). Or just click Go live at paas.build. There's also an MCP server and skill so your agent can do all of this without a UI.

Subscriptions

import { PaasCheckout } from "@paasbuild/react";

// a Pro plan — recurring on card or Direct Debit, saved cards, one-click
<PaasCheckout vendorId={vendorId} amount={12} currency="GBP" reference="pro-monthly"
  onPaid={() => upgradeUser()} />

Free / Pro / Max tiers, renewals, and one-off credit top-ups for AI usage — see the subscriptions guide.

Hook version (full control)

import { usePaasCheckout } from "@paasbuild/react";

function BuyButton({ vendorId }) {
  const { start, loading } = usePaasCheckout({ vendorId, amount: 50, currency: "GBP" });
  return <button disabled={loading} onClick={() => start().then(s => window.open(s.shortLink))}>
    {loading ? "…" : "Pay £50"}
  </button>;
}

Why paas.build instead of Stripe or Paddle?

  • vs Stripe: Stripe hands you parts and you assemble Connect, onboarding, splits and payouts yourself. Here it's done, and there's no entity/geo friction to go live.
  • vs Paddle (merchant-of-record): Paddle becomes the legal seller — its name on the receipt, it owns your customer, and it cannot move money between your users. paas.build keeps you the merchant and powers platform payments. Paddle's genuine edge is global tax remittance; paas.build ships tax tooling and an MoR fallback on the roadmap.
  • Price: 3.9% flat vs Paddle's 5% + $0.50 — ~41% cheaper at a $30 ticket, ~63% cheaper on a $9/mo subscription.

Full comparison: paas.build/vs-paddle.

Props

Prop Type Notes
vendorId string from go-live
amount number major units, e.g. 50 = £50.00
currency string default GBP
reference string your order / plan id
env "sandbox" | "production" default sandbox
onPaid / onError / onCancel (e) => void payment events
theme { primaryColor } brand the checkout
api string override if you self-host the proxy

Frameworks

Works anywhere React runs — Next.js, Remix, Vite, Astro islands, Lovable/Bolt/v0 output. Server-side, mint tokens with the paas.build API; the browser only ever sees a scoped session token, never your platform key.

License

MIT · paas.build · powered by UniPaaS (FCA No. 929994)

About

Add payments to your React app in three lines. Checkout, subscriptions, payouts — 3.9% flat. paas.build

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors