Skip to content

Coins

Overview

Coins are the platform's internal credit. Every user account holds a coin balance. Coins are spent when performing certain actions (creating a showroom or a chain). Users receive an initial balance when they register; they can purchase more at any time through available recharge packages. Every coin movement — spend or purchase — is recorded as a transaction.

Fields

Coin balance (on the user account)

FieldWhat it represents
CoinsThe user's current coin balance

Recharge package

FieldWhat it represents
QuantityNumber of coins the package grants
PriceCost of the package in real currency
SKUProduct identifier used by the payment provider
ActiveWhether this package is currently available for purchase

Transaction

FieldWhat it represents
AmountNumber of coins transferred
TypeThe action that triggered the transaction (e.g. showroom creation, chain creation, coin purchase)
CreditWhether this is an incoming credit (purchase) or an outgoing debit (spend)
PriceThe real-currency value, if applicable (used for purchase transactions)

Relations

Business Rules

  1. When a user registers, they receive an initial coin balance determined by their assigned plan — see Plans.
  2. Creating a showroom costs coins. If the user's balance is insufficient, the showroom is not created and the user is notified — see Notifications.
  3. Creating a chain costs coins. If the user's balance is insufficient, the chain is not created and the user is notified — see Notifications.
  4. Users can purchase additional coins by selecting an active recharge package and completing payment.
  5. Every coin movement is recorded as a transaction, whether it is a debit (spending coins on an action) or a credit (purchasing coins).
  6. Transaction types include: showroom creation, chain creation, and coin purchase. Other types exist in the system for future features.

Constraints

  • A coin balance cannot fall below zero; actions that would require more coins than the user holds are blocked.