Database Tables Reference

What each part of TruCMS stores and where. Use it to find the right model, to avoid table-name clashes, and to see which conventions your own tables should follow. For column details run php artisan db:table {name} on a development copy.

Core

AreaTablesNotes
Pages and postspages, page_translations, posts, post_translationsTitles, content and SEO fields are per locale. Page builder HTML and CSS live in page_translations.content and styles; page-level options in pages.settings (JSON)
Taxonomycategories, category_translations, tags, tag_translations, catables, taggablesPolymorphic pivots, today used by posts only
SlugsslugsThe global registry of public paths for every sluggable model
Page builderpage_templates, template_assets, page_bindings, website_templatesLibrary layouts and pages (tagged by theme), their CSS, which pages contain which bound records, and the website-template catalogue
Navigation and widgetsmenus, menu_items, widget_areas, widgetsMenu items can point at any model through a morph relation
Other contentadvertisements, faqs, faqs_translations, comments
Users and accessusers, password_resets, personal_access_tokens, social_logins, sessions, roles and permissions tablesRoles and permissions use the standard roles, permissions, model_has_roles, model_has_permissions, role_has_permissions
Teamsteams, team_user, team_invitationsCollaboration workspaces; unrelated to CMS roles
Supporttickets, ticket_messages, ticket_categories, ticket_activities, ticket_references
SettingssettingsKey/value store behind setting(); theme option values are the theme_options row
Languagesltu_languages, ltu_translations, ltu_translation_files, ltu_phrasesThe Translations screen; enabled languages are rows of ltu_translations
Media and analyticsmedia, view and visit counters
Frameworkcache, cache_locks, jobs, failed_jobs, notifications, countries

TruPayments

TablesNotes
payments, payment_history, payment_methods, refundsAll payment state for every consumer and gateway. Gateway plugins add no tables
addresses, countries, provinces, zones, zone_members, organizations, persons, languagesAddress and zone tables shared with TruCommerce. Their migrations check Schema::hasTable(), so whichever module migrates first creates them

TruCommerce

AreaTables
Catalogueproducts, master_products, master_product_variants, properties, property_values, model_property_values, taxonomies, taxons, model_taxons, product_tags, product_taggables, product_tabs, product_downloads, product_reviews, videos, model_videos, link_types, link_groups, link_group_items
Cart and checkoutcarts, cart_items, checkout_intents, adjustments
Orders and fulfilmentorders, order_items, shipments, shippables, carriers, shipping_methods, shipping_categories
Pricing and taxpromotions, promotion_rules, promotion_actions, coupons, tax_categories, tax_rates
Customers and channelscustomers, channels
Point of salepos_registers, pos_sessions

An orders row exists only after payment succeeds (or at once for cash on delivery). Before that, a checkout is a checkout_intents row with its payments.

Booking

Every Booking table starts with booking_. Translated records have a {table}_translations sibling.

AreaTables
Cataloguebooking_services, booking_service_categories, booking_service_extras, booking_service_fields, booking_service_schedules, booking_compound_services, booking_compound_service_items, booking_collaborative_services, booking_collaborative_service_provider, booking_packages, booking_events
People and placesbooking_providers, booking_provider_service, booking_provider_schedules, booking_provider_special_days, booking_provider_time_off, booking_locations, booking_customers, booking_customer_groups, booking_customer_packages
Appointmentsbooking_appointments, booking_segments, booking_appointment_extras, booking_recurring_appointments, booking_chain_appointments, booking_waiting_list, booking_check_ins, booking_files, booking_online_meetings, booking_ratings
Moneybooking_payment_intents, booking_invoices, booking_coupons, booking_taxes
Configurationbooking_forms, booking_custom_statuses, booking_notification_templates

The Booking model reads booking_appointments; a booking is itself the payable for its payments.

Conventions for your tables