Database
Design Conventions
- Table/attribute names in English (avoids encoding issues with Spanish characters)
- Names use PascalCase
- Table names are plural of the entity type
Data Dictionary
[E001] Account
| Entity |
Account |
| Alias |
Client, Account |
| Description |
Corporate client or individual contracting Conexoos |
| Attribute |
Description |
Type |
| id |
Unique account identifier |
INT – PK |
| Email |
Primary account email |
VARCHAR(255) |
| Name |
Company or person name |
VARCHAR(255) |
| Password |
Account password |
HASHED |
| PlanID |
Reference to contracted plan |
INT – FK |
| UserType |
User type (personal, business, creator) |
INT / ENUM |
| PictureURL |
URL of profile photo |
VARCHAR(255) |
| Status |
Payment status |
BOOLEAN |
| CreatedAt |
Account creation date |
DATETIME |
| UpdatedAt |
Last update date |
DATETIME |
Constraints: Email UNIQUE; Name, Email, Role, AccountID NOT NULL; COUNT(Profile WHERE AccountID=…) ≤ Account.Plan.maxProfiles
[E002] User
| Entity |
User |
| Alias |
Usuario |
| Description |
Person with credentials under an account. MVP: one user per account. |
| Attribute |
Description |
Type |
| UserID |
Unique user identifier |
INT – PK |
| AccountID |
Reference to parent account |
INT – FK |
| Name |
Full name |
VARCHAR(255) |
| Email |
User email |
VARCHAR(255) |
| Role |
Role within account |
INT |
| CreatedAt |
Creation date |
DATETIME |
| UpdatedAt |
Last update |
DATETIME |
MVP Constraints: (User.Name, User.Email) = (Account.Name, Account.Email); User.Role = 0 (single permission level in MVP)
[E003] Chip
| Entity |
Chip |
| Alias |
Card, Wristband |
| Description |
Physical NFC device (card, wristband, etc.) |
| Attribute |
Description |
Type |
| ChipID |
Unique chip identifier |
INT – PK |
| ProfileID |
Linked profile |
INT – FK |
| AssignedToUserID |
Assigned user |
INT – FK – NULLABLE |
| Alias |
Descriptive name |
VARCHAR(255) |
| Type |
Device type (card, wristband…) |
ENUM |
| IsActive |
Chip status (on/off) |
BOOLEAN |
| CreatedAt |
Registration date |
DATETIME |
| UpdatedAt |
Last update |
DATETIME |
[E004] Plan
| Entity |
Plan |
| Alias |
Subscription |
| Description |
Conexoos service tier with defined limits and features |
| Attribute |
Description |
Type |
| ID |
Unique plan identifier |
INT – PK |
| Name |
Plan name |
VARCHAR(100) |
| MaxProfiles |
Max profiles per account |
INT |
| Price |
Monthly price |
DECIMAL(10,2) |
| CreatedAt |
Creation date |
DATETIME |
| UpdatedAt |
Last update |
DATETIME |
Constraints: Name UNIQUE; MaxProfiles > 0, Price >= 0; MaxProfiles, Name, Price NOT NULL
[E005] Profile
| Entity |
Profile |
| Description |
Conexoos contact page reached by scanning an NFC chip |
Key attributes include the visual configuration (background, buttons, fonts), privacy settings, and link to the owning account/user.
Version History
| Version |
Date |
Author |
Description |
| v0.0.0 |
10/05/2025 |
S. Sierra |
Initial version |
| v0.0.1 |
10/05/2025 |
S. Sierra |
Entity definitions |