Skip to main content

Frequently Asked Questions

Cross-cutting questions that come up across modules. Each answer links to the detailed reference where relevant.


Records and deletion

Why can't I delete this record?

The system blocks deletion when a record is still referenced by other data, to protect the integrity of your ownership, sales, and inventory history. For example, a Party used in a sales order, a Partnership used in a project, or a Stock that is allocated to a project cannot be deleted until those links are removed.

The error message tells you what is blocking it, in the form "Cannot delete {entity} — it is referenced by {count} {related entities}." Remove or reassign those references first, then retry. The full list of what blocks what is in Delete Guardrails.

Can I recover a deleted record?

Yes, in principle. The system uses soft delete — deleting a record sets a deleted_at timestamp and hides it from normal views, but the data is not physically removed. An administrator can restore it, and the audit log preserves the history either way. See soft delete and Validation Rules.


Ownership and holdings

Why don't my holdings save?

Two rules are almost always the cause:

  1. Holdings must sum to exactly 100.00%. Any partner-ownership table — partnership, project, subproject, unit, or stock — must total precisely 100.00%, to two decimal places. 99.99% or 100.01% will be rejected.
  2. A managing partner is required for a partnership to go Active, and at most one partner can be the managing partner.

Check the running total shown above the holdings table and confirm exactly one managing partner is selected. Details are in Validation Rules.


Access and permissions

Why is a menu, button, or action missing for me?

Visibility is driven by your permissions, not hidden randomly. The ERP uses two-layer RBAC: your single Organization Role sets your system-wide authority, and any Subproject Roles you hold add extra permissions inside specific subprojects. If you don't have a permission, the corresponding menu item or button simply does not appear.

If you believe you should have access, ask an Admin to review your role assignment. The full breakdown of which role can do what is in the RBAC Matrix.

Why did an action succeed for a colleague but not for me?

Most likely they hold a Subproject Role on that specific subproject that grants the permission, while you only have your organization role. Subproject roles only add permissions — they never take them away — so access can differ from one subproject to the next. See the RBAC Matrix.

Why is a PAN, account number, or email showing as ****?

Sensitive data is masked by default for everyone, showing only the last few characters. To see the full value you need a reveal permission (*_view_sensitive), which is granted to Admin (and Finance Manager for bank and custom-field data). If you have it, an eye/reveal control appears next to the value — clicking it shows the plaintext and records the reveal in the audit trail. See Data Security.

Why can't I download this document?

The document is at a sensitivity tier above your access. Files are classified PUBLIC, INTERNAL, SENSITIVE, PCI_DSS, or CONFIDENTIAL; SENSITIVE and above require extra permissions (and stream through the app instead of a shareable link). Admin can download every tier; Finance Manager can download up to PCI_DSS. See Data Security.


Statuses

What do the different statuses mean?

Every major entity (unit, stock, sales order, partnership, project) moves through a defined set of statuses with rules about which transitions are allowed. For example a unit goes Draft → Available → Blocked → Booked → Registered, and stock runs Wishlist → In Negotiation → Under PO → Advanced → Registered → Partially Sold → Completely Sold.

The complete state diagrams and the meaning of each status — including what buyers can see — are in Status Lifecycles.


Email and invitations

I didn't get my verification or invite email. What now?

A few common reasons and fixes:

  • Check spam/junk and any quarantine filters first.
  • Verification resends and password-reset emails are rate-limited — a 60-second cooldown and a maximum of 5 per hour. Wait, then request a resend.
  • Invitation links expire. If the link is dead, ask an Admin to send a fresh invite. An expired invitation also raises an USER_004 notification to the Admin (see the Notification Catalog).
  • Confirm the email address on file is correct.

The full sign-up, verification, invitation, and password-reset flows are documented in Authentication Flows.


Identifiers and numbering

How are IDs like SO-, PRJ-, and QT- generated?

Identifiers are auto-generated using prefixes set per organization under Settings → Naming Conventions. Defaults include PRJ- (Project), SP- (Subproject), QT- (Quotation), SO- (Sales Order), SI- (Sales Invoice), PO- (Purchase Order), and PI- (Purchase Invoice). Changing a prefix affects records created afterward, not existing ones. See Validation Rules and the naming convention glossary entry.


Sales amounts

How is the Final Amount on a quotation or order calculated?

The formula is (Grand Total − Discount) + GST − TDS, where Grand Total is the sum of rate × area line totals. GST is added; TDS is subtracted. Quotations, sales orders, and sales invoices all use the same calculation, so totals carry through conversion. Worked examples — including multi-unit and multi-buyer cases — and the Paid/Due tracking are in Sales Calculations.

My Paid and Due don't add up to the total — why?

Paid + Due = Final Amount holds when net Paid is non-negative, and Due never drops below zero. Remember that Paid is net of refunds: a processed refund reduces Paid and raises Due without changing the Final Amount. Review the payment timeline for the receipts and returns. See Sales Calculations.


Concurrency

I got "This record changed since you opened it." What happened?

Someone else saved a change to the same record after you opened it. The system uses optimistic locking (an updatedAt check) and returns a 409 conflict rather than silently overwriting their work. Refresh the record to pull the latest values and re-apply your edit. See Validation Rules.


Notifications

Can I control which notifications I receive?

In-App notifications always appear (they are the system's record), but Email, SMS, and WhatsApp delivery can be configured under Settings → Organization → Notifications — including global toggles, SMS for high-priority only, and quiet hours. Browse every alert type, its priority, and its channels in the Notification Catalog, and learn the notification center in Using Notifications.


Files and uploads

Why was my file upload rejected?

Uploads are limited to 10 MB per file and to specific types: PDF, JPG, PNG, DOC, DOCX, XLS, XLSX, and DWG. A file that is too large or of an unsupported type is rejected. Split or compress oversized files, or convert to a supported format. See the Documents guide.