Payments
Payments overview
The three ways an app can take money, what each supports today, and what each costs.
Three processors
Every app charges through one processor, chosen on its Settings tab under Payments:
- Ripping Payments: Ripping's Stripe account pays you out. Nothing to configure in the app. Set up once on the Payments page.
- My own Stripe: your Stripe account and your Stripe fees. Connect a key on the Connections page.
- My own PayPal: your PayPal business account. Connect an app's client ID and secret on Connections.
The choice is per app, and switching it changes where the next checkout goes. Ripping Payments is the default. A processor that is not ready shows why under its name ("Connect payouts on the Payments page first", "Add your Stripe keys on Connections").
What each supports
| Ripping Payments | Own Stripe | Own PayPal | |
|---|---|---|---|
| One-time payments | Yes | Yes | Yes |
| Subscriptions (monthly or yearly) | Yes | Yes | No |
| Cards | Yes | Yes | Through PayPal |
| Apple Pay, Google Pay | Yes | Apple Pay | No |
| Refunds from the Sales tab | Yes, full | Yes, full | Yes, full |
| Buyer's Purchases page | Yes | Yes | Yes |
| Manage subscription (Stripe's billing portal) | Yes | Yes | No |
| Ripping fee | 2% | None | None |
Subscriptions with your own Stripe work the same way as on Ripping Payments: the checkout starts the subscription on your account, your webhook (registered when you connected) tells Ripping about every renewal, failed payment, pause and cancellation, the buyer's Purchases page shows the subscription with a Manage button that opens your Stripe billing portal, and a subscription product counts as owned while the subscription is active. Webhooks registered before subscriptions were followed are brought up to date automatically at the next checkout. One thing to check on your side: the billing portal needs a configuration saved once under Stripe → Settings → Billing → Customer portal, or Manage shows Stripe's error.
PayPal takes one-time payments only. If the app's catalogue has a subscription product while PayPal is chosen, the Settings tab warns: "PayPal here takes one-time payments; subscription products need Stripe or Ripping Payments." A checkout for one fails with the same message.
Fees
- Ripping Payments: Ripping keeps 2% of each payment, plus Stripe's own processing fee. The percentage is set by the deployment (
RIPPING_PAYMENTS_FEE_PERCENT, default 2, never above 20). On a subscription it is 2% of every invoice. A refund returns Ripping's fee too. - Own Stripe, own PayPal: no Ripping fee. You pay your processor's normal rates.
How money moves
- The app names a product; the price lives in the catalogue on Settings → Payments, never in the app's code, so a buyer's browser cannot change it.
- The buyer is sent to Stripe Checkout (Ripping Payments or own Stripe) or a PayPal approval page.
- They come back to the app, which confirms the payment. The row appears on the app's Sales tab and, for a signed-in buyer, on their Purchases page.
- With Ripping Payments, the money lands in your bank on Stripe's automatic payout schedule; the Payments page shows the balance and recent payouts. With your own processor it goes wherever that account pays out.
If the app can take payments but nothing is connected, the editor shows "This app can take payments." with a Connect payouts button, and a buyer's checkout fails with "Ripping Payments isn't set up for this app's owner (Payments tab), and no other processor is chosen."
Where to look
- Payments page: Ripping Payments setup, balance, payouts, and revenue across all your apps.
- Connections page: your own Stripe or PayPal.
- Project Settings → Payments: which processor this app uses, and its products.
- Project Sales tab: every payment this app took, refunds, CSV.
Next: Ripping Payments, Your own processor, Products and sales.