docs: no annual tier — Microsoft does not pro-rate, and that is unfixable from our side

The creator raised it as instinct: "who hasn't been screwed over cancelling a
sub early to be told that the extra six months remaining are your loss?" Checking
the mechanism confirms it, and worse than expected.

Microsoft's general position: "Digital goods like apps, add-on content,
subscriptions... aren't refundable unless the offer or applicable law states that
you're eligible for a refund." Pro-rated refunds on cancel exist only in Canada,
Denmark, France, Israel, Korea, Turkey (all lengths) and Finland, Germany,
Netherlands, Poland, Portugal (renewals only). Critically: "monthly subscriptions
and initial (pre-renewal) purchases aren't eligible for a prorated refund."

A first-year annual subscriber who cancels in month 2 loses months 3-12, in most
countries, and the developer cannot refund it. That is verbatim the trap the
creator named, so we must not build it. => monthly only. Max loss $10, max
grievance a rounding error, one fewer product to declare, less support surface.

The chargeback argument gets stronger, not weaker: a customer down $89 on an
annual cliff disputes through their bank, which is frozen funds and account risk
against a solo dev. Monthly bounds that at $10.

Also records two rulings:
- No .99 prices. "Let's stop with the x.99 stuff - I find that irritating. Just say:
  ten bucks a month." The convention only makes a price look cheaper, which is
  incoherent for a brand sold on honesty and no-dark-patterns.
- No feature gating, now argued as revenue rather than taste: the free tier's reach
  is the funnel and the branding flash is an ad running inside other people's
  content.

Pricing model itself stays OPEN in TASKS.md — $10/mo is the lean, and a lifetime
product (~$300, the hedge against the no-moat renewal problem) is undecided. The
Store revenue share is still unverified: confirm the net, not the list.

MyMistakes.md records the actual error: I had offered "just refund anyone who
asks" as a mitigation without checking who holds the authority to execute it.
Store refunds run through Microsoft, not the developer. The check that followed
is what produced this constraint.

MONETIZATION.md got the full analysis but is gitignored, so it stayed local.
This commit is contained in:
2026-09-27 14:33:25 -07:00
parent 85fad1ab79
commit b2036a38e8
3 changed files with 67 additions and 9 deletions
+9 -3
View File
@@ -59,8 +59,12 @@ ONLY paid delta (TASK 36 item 2). Store IAP changes how the bit is *obtained*, n
moved more than once and smaller indie apps sometimes qualify for better rates. **Verify
before setting a price.** Microsoft also requires that any IAP products and their pricing be
declared in Partner Center.
- ☐ **Store IAP tier shape** — one-time vs subscription. The creator's one-time-vs-both
question is still open; the storefront it is sold through is now decided.
- ☐ **Store IAP tier shape** — ⛔ **no annual tier, and that is now a settled constraint, not
a preference:** Microsoft does not pro-rate, and *"monthly subscriptions and initial
(pre-renewal) purchases aren't eligible for a prorated refund"*, so a first-year annual
subscriber who cancels loses the remaining months in most countries **and the developer
cannot refund it**. Declare a **monthly subscription**; a **lifetime** product (~$300, clean
number, no `.99`) is the open question and the natural hedge. ⛔ **No `.99` prices.**
- ☐ Individual vs Company Partner Center account (10.8.3 / 10.14 — see
`research-store-certification.md` §11 item 1). **Get this right before enrolling**; a
Store+IAP product needing financial info for primary functionality would require Company,
@@ -135,7 +139,9 @@ relevant check: the app must start promptly, stay responsive, and shut down grac
**In Partner Center (submission):**
- ☐ **The IARC age-rating questionnaire** (10.11.1) — general audience, 12+ territory
- ☐ **Declare the IAP products and their pricing** in Partner Center (required for Store IAP)
- ☐ **Declare the IAP products and their pricing** in Partner Center (required for Store IAP).
⛔ **No `.99` prices** — creator ruling, and incoherent for a no-dark-patterns brand. Confirm
the **net** after the revenue share, not the list.
- ☐ Note that the product is **general audience, not directed at under-13s**
- ☐ The 11.12 UGC position is **less load-bearing now that Polar is gone** — the strong part of
the original argument was "we render transiently, persist nothing, and provide no