Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Page Properties


Target release
1
0.
0
5,1.1
Epic

Jira Legacy
serverJIRA (fatcigar.atlassian.net)
serverId0698f136-3f0e-3c87-aa9c-4d9605606272
keyAF-85

Document status

Status
colourYellow
title

DRAFT

DEVELOPMENT

Document owner


Goals

  • To allow users to purchase extra workout definitions in 7MW.
  • To make Afterburner available to users with an active subscription only.

...

  • Allow the addition of other apps in the future that can use the same server-side data store.
  • Allow the easy addition of an Android client at a later date.
  • Allow us to sell workout definitions in 7MW as non-consumable IAPs. 
  • Allow us to sell and manage auto-renewable subscriptions for Afterburner.
  • Allow users to restore previous purchases.
  • Ensure that a subscription cannot be used to unlock content for multiple users.

Implementation

...

All IAP receipts are validated on the server, using Apple's server-to-server validation API.

Image Added

  1. The IAP is purchased on the user's device as usual.
  2. The client posts the purchase receipt to /receipts/user_id/new_auto_id/receipt.
  3. The server will then pick this up and process it.
  4. The client listens at /receipts/user_id/same_auto_id/validation. The sever will add this ref after processing.
  5. If the receipt is valid, the server will make the necessary changes to other parts of the FRD and the client receives new/unlocked content etc through existing listeners.
  6. The client tells StoreKit the transaction has finished.

This is simply the overview of the process. The complexities are detailed in jira:

  • Workout non-consumables, client side: 
    Jira Legacy
    serverJIRA (fatcigar.atlassian.net)
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId0698f136-3f0e-3c87-aa9c-4d9605606272
    keyAF-87
     
  • Workout non-consumables, server side: 
    Jira Legacy
    serverJIRA (fatcigar.atlassian.net)
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId0698f136-3f0e-3c87-aa9c-4d9605606272
    keyAF-88
  • Renewable subscriptions (TBC)