Music Marketplace

Release commerce contracts: checkout preconditions, webhook writes, and fulfillment safeguards.

8 min readstable

Release path

artists/{artistId}/releases/{releaseId}

Checkout preconditions

  • Buyer must not be an artist role account.
  • Artist must have a connected Stripe account.
  • Signed-in duplicate ownership is blocked before checkout starts.

Webhook writes

  • Global purchase ledger: purchases/{purchaseId}
  • User mirror: users/{uid}/purchases/{releaseId} (non-guest)

Fulfillment

Downloads are served through expiring tokens or authenticated ownership checks. Direct storage URLs are not considered valid fulfillment.

    Music Marketplace API | StarrBase Docs