Files
Veldriq
Public disk: logos and other branding you intend to serve on the portal or PDFs. Requires php artisan storage:link when using local public storage.
Private disk: evidence, tenant uploads. Not web-browsable without an authorized URL.
Files on records
Section titled “Files on records”Customer, site, and asset profiles have a Files section (typed icons, image thumbs). Contacts do not. Storage is local by default.
Import / export (CSV)
Section titled “Import / export (CSV)”This is not a generic Excel sync product. Per-record Files on a profile are attachments, not the importer.
Example path: Customers → Customers → Import (/app/w/{slug}/customers/import).
- Open the module list (Customers, Contacts, Sites, or Assets) → Import.
- Download template. Fill UTF-8 CSV. Do not merge cells. Do not upload XLSX unless you converted to CSV.
- Upload → map columns → preview. Fix rows from the error CSV and re-upload failures.
Need {entity}.import / {entity}.export. *.manage does not grant import/export. Custom-field columns appear as cf_… when your workspace defined them.
| Module | Import | Notes |
|---|---|---|
| Customers | Yes | Type person or company. Person needs Name; company needs Company name |
| Contacts | Yes | Required: First name, Last name. Resolve parent with Customer email (preferred) |
| Sites | Yes | Required: Site name |
| Assets | Yes if customer_assets |
Required: Asset name plus customer email or exact name. Dates YYYY-MM-DD |
| Service requests / work orders | Export only | No CSV import |
| Appointments | Neither | No import or export |
Common mistakes
Section titled “Common mistakes”- XLSX with merged cells
- Ambiguous customer name — use a unique customer email
- PHP
upload_max_filesizetoo small - Expecting portal guests to bulk-import