Skip to content

Core Tables

Reference for the main database tables in the Fangate system. Schema as of documentation version 2.0.1.


users

Purpose: Creator and admin accounts.

ColumnTypeDescription
idbigintPrimary key
emailvarcharUnique email address
passwordvarcharHashed password
first_namevarcharFirst name
last_namevarcharLast name
birth_datedateDate of birth
currency_idbigintFK to currencies
is_adult_contentbooleanDefault AVS setting
is_verif_agebooleanDefault Yoti requirement
ibanvarcharBank account IBAN
bic_swiftvarcharBank BIC/SWIFT
stripe_account_idvarcharStripe Connect account
created_attimestampRegistration date
deleted_attimestampSoft delete (nullable)

products

ColumnTypeDescription
idbigintPrimary key
user_idbigintFK to users (creator)
titlevarcharProduct title (nullable)
priceintegerPrice in cents
currency_idbigintFK to currencies
link_hashvarcharUnique link identifier
is_adult_contentbooleanAVS flag
is_verif_agebooleanYoti requirement
public_descriptiontextBuyer-visible
private_descriptiontextCreator-only
link_clicksintegerView count
created_attimestampCreation date
updated_attimestampLast update
deleted_attimestampSoft delete

wallets

ColumnTypeDescription
idbigintPrimary key
user_idbigintFK to users
balanceintegerAvailable balance (cents)
holdintegerFunds on hold (cents)
pendingintegerPayout processing (cents)
currency_idbigintFK to currencies
created_attimestamp
updated_attimestamp

Other important tables (refer to migrations and models):

  • currencies — Supported currencies (USD, EUR, GBP)
  • media — Product media files (photos, videos)
  • transactions — Wallet transaction history
  • collections — User collections (one per user currently)
  • consents — Consent documents
  • payment_providers — PSP configuration for payouts

Notes

  • Soft deletes: users and products use deleted_at for soft delete
  • Money: All monetary values stored in cents (integer)
  • Link hash: Unique per product, used in shareable URLs (/p/{link_hash})

Fangate API Documentation