Understanding How DotSquare Databases are Organized
The database is the backbone of DotSquare. It requires a specific database structure to properly run and is updated automatically for every new version. For higher tier plans, like eCommerce and Multi-account plans, 2 databases with different structures, are required to be run.
In order for DotSquare to be able to properly connect to your database(s), please ensure the following.
MySQL 5.5 or greater
Database login credentials allow for full permissions
Both your web host and hosting plan allows for access from a different server than your own. This is more common on cheaper hosting providers/plans.
Main Database Tables
We separate and label our the tables in an organized fashion to make referencing the proper table quick and easy.
For users with logins or for listing users if no login is needed for users
Admins with access to the DotSquare dashboard.
Contains DotSquare preferences specific to each admin
Can have multiple calendars each with categories
Contains all site alerts and accompanying data.
Contains the categories for each menu or sub-menu along with other critical data. For a full list of which menus are allowed to have categories visit the DotSquare Menu Section
Contains constants that DotSquare will consider in it's functions (ex. email templates)
Contains custom color codes of all dotSquare elements
Info on each completed custom field for each object
Contains list forms created through dotSquare.
Contains all fields, buttons, and data for each form.
Contains images and video data. This is used with cms_visual, org_locations, cms_portfolio, cms_simple_ads
Contains the dotSquare menus that are enabled for each partition type.
Contains data on how to order items in each re-orderable area. For a full list of which menus are re-orderable visit the DotSquare Menu Section
For if you wish have admins complete certain steps inside the DotSquare dashboard. Useful with sub-accounts.
Contains data for the "Results" menu
For animated images typically seen on welcome screens
Contain information on how DotSquare is currently operating. This is not used much.
Contains tag data. This is used with cms_visual
For developer use. Contains US states and data for each.
For developer use. List of standard US holidays. This is used with org_hrs_exceptions
Contains email address credentials used with sending emails for your own email account.
Custom dotSquare email lists. This is used with cms_alerts
Contains custom HTML email templates that you can design.
Contains reply messages for entry_user_support
Contains contact info and delivery info for each visitor form. For a full list of which menus are allowed to receive notifications visit the DotSquare Menu Section
Contains analytics data from visitors marked as bots. THis can be useful to view what is crawling your site.
Contains useful DotSquare Analytics data
Contains user login info tied to account_users. Admin login info is stored on dotSquare's servers
Each location can have it's own hours with multiple hours listed per day.
Each location can have it's own set of hours. This is useful for example if a location has different hours in the winter and summer. Used with org_hrs
One of the most important tables.
Contains API keys from third parties like Google, Facebook, and more.
For if using the DotSquare reservations system.
Sites can have different areas that are accessible to different users or visitors.
By default, Header, Footer, and Mobile navigation is added. Used with site_pages
Text used in edit mode.
eCommerce Database Tables
The eCommerce database is only used if your client has the eCommerce or Multi-account DotSquare plan. We separate and label our the tables in an organized fashion to make referencing the proper table quick and easy.
Different data from the account_users table. Stores critical payment and contact info for Users, User Groups, and Guests.
In cases where the customer is a guest or the user has multiple points of contact, that information is stored here.
Contains all payment methods for a contact.
Partitions gain access to a billing contact using this reference list. With this, if a contact needs to be removed for a partition, the contact does not need to be deleted, the reference just needs to be removed.
Contains data on who an invoice was sent to.
Contains data on all items that are eligable for fulfillment. Used with invoices_fulfillment_status
Used with billing_invoices_item_fulfillment
Lists all deposits to bank accounts
Contains data on who a receipt was sent to.
Only used for sub-accounts. Stored data about transfers for future possible returns / refunds.
For if a cart has items from multiple partitions or locations.
Contains data on which promos were redeemed, used, and more.
Contains data on what organizational structure is stored for items. This generally controls any item browsing menus and how it can be filtered.
Contains prices, UPC data and other information related to the price variation.
Contains a directory of all detail IDs used for each item.
Contains the information about items such as descriptions, subtitles, and more. Used with items_4info
Lists all fields available to items. This will be available to admins as a feild when adding / editing items.
Used with items_1structure
Contains items such as tax rates, discounts, promos, late fees, delivery fees, and more.
For promo extra items, contains all details about the promotion.
Contains black-listed brand(s) or item(s) for a specific promotion.
Balance list of inventory
Contains all instances when an item was rejected by an admin.
Contains records of all invoices, transactions and more.
Contains preset reasons to users for admin actions. Used with items_rejections
Contains all subscriptions and their respective data
For preset plans.
Contains eCommerce specific actions taken by a user, such as favoriting or wishlists. Used with user_lists
Contains lists you have created for user actions.
Contains eCommerce specific data. Not used much.
Custom Databases and Tables
You can add custom databases to be recognized by dotSquare that do not follow our structure through the dashboard. It is required to add a database to be recognized by DotSquare if referencing it within the DotSquare software. If you are referencing your custom database in your website only, then there is no need to add the database to DotSquare.