Scan with any mobile camera to look up the item instantly.
| Item Name | Unit Wt (g) | Qty | Cost/Unit | Total Cost | Sell/Unit | Customization | Disc % | Target Price | Unit After Disc | Total After Disc | Profit | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TOTALS | — | — | — | — | ||||||||
| Invoice # | Date | Customer | Items | Members | Revenue | Payment Type | Paid | Actions |
|---|
| Date | Description | Amount | Paid By | Expense Account | Status | Actions |
|---|
| Date | Description | From | To | Amount | Actions |
|---|
| Member | Sales Earnings | Purchases | Total Credited | Total Paid Out | Balance Owed | Actions |
|---|
| Date | Description | Member | Credit (Share) | Debit (Payout) | Del |
|---|
| # | Name | Capacity | Total Pieces | Total Cost | Total Profit | Total Earned | Balance Owed | Status | Debt Account | Actions |
|---|
then × quantity = total cost
then × quantity = total sell price
Remainder → member distribution
| Name | Default Cost | Notes | Actions |
|---|---|---|---|
| Loading… | |||
https://erp.vibecraft.art to Authorized JavaScript Origins.| Google Email | Display Name | Role | Status | Created | Actions |
|---|
| Date / Time | Username | IP Address | Result |
|---|---|---|---|
| Loading... | |||
Map Hesabe payment types to local payment methods and bank accounts. When a customer pays via Hesabe, the correct fee deduction and bank account will be used automatically.
| Enabled | Hesabe Method | Local Payment Method | Bank Account |
|---|
| Date | Reference | Customer | Amount | Status | Payment Link | Actions |
|---|
| Time | User | Action | Type | Summary | Changes |
|---|---|---|---|---|---|
| Loading... | |||||
Sign in using your Google account. Only users invited by the admin can access the system.
Overview of key business metrics: revenue, profit, unpaid invoices, member balances, and recent activity. All figures are for the current period. Click any KPI card to navigate to the relevant page.
Manage your customer directory. Each customer has a name, short code (4 chars, shown on invoice cards), mobile, email, address, PACI number, Maps URL, and optional logo.
- Click a customer to view their invoice history and total spend.
- The short code appears on invoice list cards as a visual identifier.
- Logos are stored in the database and appear on printed invoices.
- Mobile — enter 8 digits only; the +965 Kuwait country code is added automatically. Stored as
+96512345678. Pre-fills the mobile field when sending a payment link. - PACI Number — optional Kuwait property number. Shown in the invoice Bill To panel and on printed invoices. Transferred automatically from WooCommerce orders.
- 📍 Locate (by PACI) — enter a PACI number and click Locate to auto-fill the Google Maps URL using the Kuwait Finder API (PACI). Requires a Kuwait internet connection.
- 📍 Locate (by address) — similarly finds the Maps URL from the address field text.
- 🗺 Maps link — opens the saved Maps URL in a new tab. Auto-populated by the Locate buttons.
Product catalog with SKU, cost, sell price, dimensions, weight, and stock quantities. Three views: Cards, Table, and Member Stock.
- Stock 9999 = unlimited / made-to-order (no stock tracking).
- Member Stock view shows per-member inventory quantities.
- Items are searchable by SKU, name, or material type.
- Cost and sell prices are in K.D. (3 decimal places).
Create and manage sales invoices with automatic profit distribution across members.
- Select a customer, add line items from inventory (or custom), set quantities and discounts.
- Per-item discount applies first; global discount applies to the remaining total.
- Assign members to items — determines who worked on what and their profit share.
- Design fees can be added per member per item.
- Save as Draft or mark as Paid. Paid invoices trigger accounting transactions.
- Revenue − COGS = gross profit. Box (company) takes its % first.
- Remaining profit splits 75% by work (member effort) / 25% by units printed.
- Member debt can be deducted automatically at distribution time.
- Overrides allow manual adjustments to any member's final share.
- Invoices synced from WooCommerce that include product customization (engraving, printed text, uploaded images) display a Customization table below the line items.
- Columns: Item name, # unit number (for multi-unit orders), Text content, Image thumbnail.
- For orders where the customer applied the same customization to all units, a single row is shown with unit # as —.
- For orders with a different customization per unit, one row per unit is shown.
- The table is hidden on invoices with no customization data.
- Generate a payment link via the invoice view (💳 Payment Link button) — sends to Hesabe gateway via SMS or WhatsApp.
- Delivery method — choose SMS or WhatsApp for link delivery.
- Payment methods — select which Hesabe methods to offer the customer (KNET, VISA/Master, AMEX, Apple Pay, Google Pay, Deema/BNPL, Samsung Pay, etc.). Only methods enabled in Settings → Hesabe Payment Mapping are shown here.
- Admin vs. User — Admin users can select any enabled payment method. Non-admin users are locked to KNET only; other methods are grayed out and cannot be changed.
- Customer Mobile — pre-filled automatically from the customer record (8 digits, +965 assumed). Edit directly in the dialog if needed.
- Payment confirmation auto-marks the invoice as paid via webhook and creates the accounting transaction.
- The webhook auto-detects the payment type from Hesabe (KNET, Apple Pay KNET, Apple Pay VISA, Google Pay, etc.) and applies the correct fee deduction and bank account mapping from Settings.
Record supplier purchases. Each purchase debits an expense account and credits the payment account. Supports filament, materials, equipment, and custom categories.
Double-entry ledger. Every financial event is a transaction with a FROM account (debit) and a TO account (credit).
- Balance Sheet tab — shows all account balances grouped by category.
- Transactions tab — full ledger with filters by date, account, and type.
- P&L tab — profit & loss statement for a selected period.
- Account categories:
bank,income,expense,member,equity,other. - Debit-normal: bank, expense. Credit-normal: income, member, equity, other.
Distribute accumulated profits to partners. Select invoices, review each member's calculated share, then confirm to create the distribution transactions.
- Pending balance = undistributed profit from paid invoices.
- Payment method per member: KNET, cash, bank transfer, etc.
- Bank fees are deducted from the Box (company) share only.
- Distribution creates accounting entries automatically.
Track per-member, per-item production progress for invoices with fulfillment enabled.
- Status per row: Not Started → In Progress → Done.
- Delivered checkbox marks physical handoff to customer.
- Filter by status, member, or invoice to focus on what's pending.
- Fulfillment must be enabled per-invoice in the invoice builder.
Generate financial reports and XBRL-compliant exports for any date range.
- Income Statement, Balance Sheet, and Cash Flow summary.
- XBRL export follows IFRS taxonomy for regulatory filing.
- CSV export for all transactions in a period.
- PDF export: full financial statement as an A4 document.
- JPG export: high-resolution image of the financial statement.
- XLS export: Excel workbook with Summary and Invoices sheets.
Manages the Hesabe Kuwait payment gateway integration.
- Sync — incremental pull of recent Hesabe transactions (−1 day overlap).
- Full Sync — clears cache and re-downloads all history.
- Auto-matches Hesabe records to local invoices by reference number + amount.
- Unmatched records can be manually linked via the search dialog.
- API key, merchant code, and IV key are configured in the API Config tab.
- Payment Method Mapping — maps each Hesabe payment type to a local fee deduction account and bank account. Supports 14 payment types: KNET, VISA/Master (MPGS), VISA/Master (CYBS), AMEX, MPGS AMEX, Apple Pay (MPGS), Apple Pay (CYBS), Apple Pay KNET Debit, Apple Pay KNET Credit, Apple Pay KNET Intl, Apple Pay AMEX Intl, Google Pay, Deema (BNPL), Samsung Pay.
- Enable/Disable toggle — each payment type has an on/off toggle. Disabled methods are hidden from the Send Payment Link dialog and skipped during webhook fee processing. Default is enabled.
Manage the 6 business partners. Each member has a name, status (active/inactive), linked Chart of Accounts entry, and a capacity value (units/month).
- Renaming a member automatically updates all related transactions and account names.
- Debt account links a member to their receivable/payable account for auto-deduction.
- Inactive members are hidden from invoice builder member selectors.
- Cost / Sell variance — default cost and sell price multipliers for inventory.
- Company % — Box (company) profit share percentage.
- Business name, address, contact — printed on invoices and reports.
- Invoice header/footer — custom text printed on invoices.
- Default accounts — pre-select revenue, expense, overhead, and bank accounts.
- Logo — uploaded logo shown on invoices and in the sidebar.
- Hesabe Payment Mapping — configure fee deduction and bank account per payment type, and toggle each method on or off. See Payments (Hesabe) section above for details.
- Settings can be exported/imported as JSON for backup.
Invite users and manage access. Login is exclusively via Google — no passwords.
- Click Invite User — enter their Google email, display name, and role.
- The user can sign in immediately using that Google account.
- Toggle Active/Inactive to suspend access without deleting the account.
- Link a user to a Member to associate their account with a business partner.
- Google Client ID field — update the OAuth client ID without re-deploying.
- Login Attempt Log — shows all sign-in attempts with IP and result.
Every create, update, and delete action is recorded with the user, timestamp, entity type, and before/after values. Filter by keyword or entity type. Use this to investigate changes or recover deleted data.
Deleted invoices are moved to Trash rather than permanently removed. Only admins can access the Trash page.
- Restore — moves the invoice back to the live invoice list; member stock deductions are re-applied automatically.
- Purge — permanently deletes the invoice. For paid invoices, you can optionally also delete the linked accounting transactions.
- Stock — stock is reversed when an invoice is trashed and re-deducted when it is restored.
- Reporting — trashed invoices are excluded from all KPIs, statements, and exports.
Syncs latest DB state without reloading the page.
Toggle with 🌙 / ☀️ in the sidebar bottom. Saved per user.
Open invoice view → Print button. Hides UI chrome automatically.
Invoice builder auto-saves every 30 s. Resume from Invoices list.
Click your name in the sidebar to view your Google account and role.
All amounts in K.D. (Kuwaiti Dinar, 3 decimal places).