# BitterCheckout

> BitterCheckout is a hosted Stripe Checkout handoff and signed-callback
> service for small products.

Canonical site: https://bittercheckout.com/

The GitHub source link is omitted until publication safety review, public
visibility, and live route behavior all verify.

## Product Sentence

BitterCheckout hosts checkout configuration, an embeddable widget, Stripe
Checkout session creation, Stripe webhook observation, Checkout-local event
records, and signed callbacks to the consuming product.

The consuming product still owns credits, access, fulfillment, refunds policy,
support, and the meaning of purchased value.

## User And Job

The user is a small product or site operator who needs a checkout path without
rebuilding widget UX, session creation, webhook receipt, and callback plumbing.

## Product Loop

```text
CheckoutConfig -> WidgetEmbed -> BuyerAction -> StripeCheckoutSession -> StripeWebhook -> CheckoutEvent -> SignedCallback -> ProductFulfillment
```

## Public Proof

The source-shaped public surface exposes:

- home page at `https://bittercheckout.com/`
- health route at `https://bittercheckout.com/up`
- widget route at `https://bittercheckout.com/widget.js`
- sitemap at `https://bittercheckout.com/sitemap.xml`
- robots file at `https://bittercheckout.com/robots.txt`
- Markdown mirror at `https://bittercheckout.com/index.md`
- agent index at `https://bittercheckout.com/llms.txt`
- full Markdown bundle at `https://bittercheckout.com/llms-full.txt`

## Boundaries

BitterCheckout is not a payment processor, credit ledger, entitlement engine,
Hub identity system, credential custody service, accounting system, refund
authority, or support workflow.

Stripe owns hosted payment collection, card data, payment methods, processor
receipts, disputes, and payouts. The consuming product owns fulfillment.

## Current Deployment Boundary

This app repo is source-shaped but live-stale and not public-ready.

On 2026-06-04:

- live `/up` reports release `c366b023765930938216aef73878ce7fe6783949`
- local/remote `main` is `689c375f687522569a6ccde69c469815ba245ebc`
- Grid desired/release is `227aae12c4d352c3141a34258700ad97de47eb17`
- Grid deploy and verify state is failed
- live Markdown/LLM routes return 404
- GitHub visibility remains private

Do not treat this repository as public-approved until a marketing split or
dedicated app-repo publication scrub is complete and live source reconciliation
is verified.
