Pricing and the platform fee

DRAFT. Requires legal and commercial review before publication. Nothing here is an offer. Items marked [BUSINESS DECISION] are proposals for Shipwright to confirm; items marked [DECIDED] are decided and still need the legal review before publication; items marked [LEGAL] need a lawyer's or tax adviser's answer. Each number is a single configuration value, so it can change without code changes.

How selling works

You are the seller. [DECIDED] You sell your paid app through your own merchant-of-record (MoR) account, Paddle for now (Lemon Squeezy later). The buyer pays at your checkout, your MoR is the seller of record and handles VAT on the sale, and the money goes to you. Reef does not take payments for you and does not pay you anything.

What Reef does:

Joining

Billing details

Before you can set a paid price, give Reef the details to invoice: PUT /v1/me/billing with your billing name, billing email, country (ISO 3166-1 alpha-2, such as DE) and, if you are a business with one, your vat_id (with its country prefix, such as DE123456789). GET /v1/me shows them. Free apps need none.

Prices

The platform fee

For every sale the ledger records the net amount: what the buyer paid after discounts and excluding VAT, as your MoR reports it. VAT on the sale never enters the ledger, because your MoR collects it and pays it to the tax authorities.

Example: a one-off app at 4.99 EUR (net). A buyer in Germany pays 5.94 EUR including 19% VAT at your checkout; your MoR keeps its fee, pays the 0.95 EUR VAT to the tax authority and pays you the rest. Reef's fee for the sale is 0.50 EUR (49.9 cents, rounded), on its monthly invoice to you.

Refunds and chargebacks

Statements and invoices

The ledger is itemised

GET /v1/me/ledger?period=YYYY-MM lists every entry: the MoR transaction id, type (sale, refund, chargeback, chargeback_reversal), the time, currency, net amount, fee rate, fee and the net you kept. It never contains buyer personal data.

Open questions for review

  1. The developer agreement for this model: Reef as a licensing, listing and distribution service invoicing a fee, not a seller or agent in the sale; and what the MoR's terms require of you for selling through a third-party store.
  2. VAT on the fee (see above): the reverse-charge wording on invoices, VAT id validation (VIES), and the treatment of developers outside the EU and of EU consumers without a VAT id.
  3. Invoice payment: method (card or direct debit at Reef's own billing provider, or bank transfer), terms, currency conversion, and what happens to an unpaid invoice (for example, paid apps hidden until it is settled).
  4. Reconciliation: the fee depends on the sales your MoR reports to Reef; how a missed webhook or a disputed amount is corrected.
  5. Handling of subscriptions when a developer leaves the programme or an app is withdrawn (refund policy for remaining periods).
  6. Free trials and introductory prices (not supported yet).

Source: docs/developers/pricing-and-revenue-share.md in the Shipwright repository; paths and ADR numbers in the text refer to it.