Oracle · VI

Stripe on a static site. No server.

Stripe's documentation assumes a backend server is waiting for its events. Your site is plain HTML on a CDN, so nothing is waiting. We are the thing that waits for you.

Two ways to get there

Both paths work. Only one of them costs your weekend.

Write the handler yourself

  • Set up a serverless function to receive Stripe's events.
  • Verify every signature and reject every replayed event.
  • Record what happened somewhere that survives a redeploy.
  • Route the buyer to a success page that knows they paid.
  • Monitor it, patch it, and answer for it at 2 a.m.

Free, if your time is free.

Paste the button

  • The receiving end already runs.
  • Signatures are verified before you ever hear about the event.
  • Every sale lands in one log.
  • The buyer lands on your success page.
  • The 2 a.m. call is ours.

Flat fee. 0% of your sales, ever.

Walk the buyer flow

This is the real button running in demo mode. Click through the exact checkout your buyers would see. No charge happens.

Buy now

A fixed-price button, the same flow a real buyer completes.

The entire integration

The whole integration is two blocks. The script tag goes in your page head once, and the button goes wherever you sell. The dashboard writes both with your project ID filled in.

<script src="https://sdk.coinmoebius.com/latest/sdk.global.js"
  crossorigin="anonymous"
  defer></script>
<coin-moebius-buy
  project-id="proj_YOUR_ID_HERE"
  product-id="t-shirt-medium"
  label="Buy a t-shirt">
</coin-moebius-buy>

Subscriptions ride the same button

Set a product to monthly or annual, and the button starts subscriptions instead of one-time charges. Stripe runs the renewals and keeps the card on file, and buyers manage or cancel in the Stripe Customer Portal. You never build a billing page.

Retire the weekend project

Connect your own Stripe account and paste two blocks. It is free to start.