SharePay for Merchants
Let a group split a single order at your checkout. Each person approves their own share on their own card, and the whole order settles at once.
Money goes straight to your Stripe account
SharePay never holds funds. Each share is a separate manual-capture charge on your connected Stripe account, and we capture them all together, or cancel them all together. No escrow, no funds-holding, no chargeback liability shift.
Until the last person approves, every share is an uncaptured hold and no money has moved. If the group never completes, every hold is released and nobody is charged. Capture itself runs share by share, so there is one failure mode where money moves and comes back: see partial capture failure.
What SharePay charges
Nothing, to you. The SharePay fee is paid by the customer, not taken out of your payout.
Each participant pays a flat 20p service fee on top of their share, so someone taking a £40 share is charged £40.20. You receive the full £40, less only your own Stripe fees. No setup fee, no monthly fee, no percentage, and nothing at all on a split that never completes.
The fee is per participant rather than per order, so a £120 order split three ways collects 60p across the three customers, and a £1,200 order split three ways collects the same 60p.
Mechanically it is a Stripe application_fee_amount on each share's direct
charge. The charge is the share plus the fee, the fee comes to SharePay, and
the share settles to you.
Stripe still bills you its own processing fees directly, at your usual rate. They apply to the amount charged to the card, and that amount includes the 20p, so Stripe's percentage costs you roughly a third of a penny more per participant than it would on the share alone. Because a split is one card charge per person, Stripe's fixed per-transaction component also applies once per participant rather than once per order.
Each share must be at least £1, so the fee is never a large fraction of what a customer pays. See limits and validation.
The figures are on the API: application_fee_total on the split and
application_fee on each participant, both returned by
GET /api/checkout-splits/:id.
Both are what your customers paid on top of their shares. Neither is deducted
from your payout.
There is no single rule for the whole API. Check the endpoint you are calling:
| Endpoint | Field | Unit |
|---|---|---|
POST /api/merchants/checkout/sessions (hosted checkout) | amount | Pounds (major units), £1 to £5000 |
POST /api/checkout-splits (create a split) | amountMinor | Pence (minor units), positive integer, at least 100 |
On the hosted checkout the participant amounts the buyer chooses must sum
exactly to the session amount. On POST /api/checkout-splits there is no
separate order total to sum to: the split's total is the sum of the participant
amounts you send. Either way, no single share may be under £1.
Both figures are shares. What the card is charged is the share plus the 20p service fee.
Two credentials, two different scopes
| Credential | Header | What it can do |
|---|---|---|
API key (sp_sk_...) | x-merchant-api-key | Create hosted checkout sessions. It authenticates no other endpoint in these docs. |
| Signed-in dashboard session | Authorization: Bearer <supabase token> | Everything under /api/checkout-splits and the rest of /api/merchants. |
Your server holds an API key, so it can start a checkout and receive webhooks. It cannot read, cancel or refund a split with that key. See Manage splits for what is reachable from where.
Where to start
- Become a merchant once, to get your API key and connect Stripe.
- Create a split from the dashboard or the API, or take one from your own checkout with hosted checkout.
- Send participants their links so each person can approve their own share.