CRMconnect Azuvio · Docs

FAQ — Common issues and solutions

Quick answers to the most common questions. If your issue isn't here, search in the search bar or consult your department guide.


Authentication & Access

I can't log in — I stay on the authentication page

Possible causes:

  • Password is wrong (check capitalisation)
  • Account is deactivated by administrator
  • Browser cookies are blocked

Solution:

  1. Try the "Forgot password" button on the login page
  2. If that doesn't work, ask the administrator to check your account at /admin/staff → find the user → verify if active
  3. Try in incognito browser or a different browser

I see "Access denied" or I'm redirected to the dashboard

Cause: Your role doesn't have the required permission for that module.

Solution:

  1. Ask the administrator to check your role at /admin/roles
  2. Find the role assigned to your account and enable the missing permission
  3. Log out and log back in after the change

Roles & Permissions


I don't see a module in the sidebar even though it should be there

Cause: The module is not enabled for your role OR the module is not installed on the instance.

Solution:

  1. Check at /admin/roles → your role → whether the module appears in the list
  2. If it doesn't appear at all in the list, contact the administrator — the module may require an additional package

Leads & Pipeline

A created lead doesn't appear in the pipeline (Kanban)

Cause: The lead was created without a status associated with the active pipeline.

Solution:

  1. Open the lead → check the Status field
  2. Check at /admin/leads/pipelines that the lead status is included in the pipeline
  3. If the lead has status "Junk" or "Lost" — it doesn't appear in Kanban (normal behaviour)

Lead Pipelines


Leads from the web form don't appear in CRM

Cause: The form is not correctly configured or the website domain is blocking the request.

Check:

  1. /admin/leads/forms → open the form → copy the embed code again
  2. Check that the website domain is in the list of allowed domains (if a CORS setting exists)
  3. Test by manually submitting the form and immediately checking in /admin/leads

Lead Capture Forms


Facebook Ads leads don't arrive automatically

Cause: The Facebook webhook is not configured or the token has expired.

Solution:

  1. /admin/facebookleadsintegration → verify App ID, App Secret and Page Token are filled in
  2. Check in Facebook Business Manager that the CRM webhook is registered and active
  3. Test with the "Test" button from the Facebook configuration

Facebook Leads Integration


Lead's MA score isn't increasing even though they've opened emails

Cause: Email clients with Apple Mail Privacy Protection (MPP) block open tracking.

Explanation: MPP pre-loads the tracking pixel without the user actually opening the email — gives false positives OR blocks entirely.

Solution: Use link clicks as the primary signal (more reliable than opens). Configure MA triggers on click = 1 instead of open = 1.


Invoices & Payments

The sent invoice doesn't reach the client (email)

Possible causes:

  1. SMTP not configured or with wrong credentials
  2. Client's email address is missing or incorrect
  3. Email landed in spam at the recipient

Solution:

  1. Check SMTP settings at /admin/settings → Email Settings → send a test email
  2. Verify the client has an email filled in at /admin/clients
  3. Ask the client to check their Spam folder and whitelist your address

Invoice stays with "Unsent" status even though I clicked Send

Cause: Silent SMTP error or timeout.

Solution:

  1. Check the email log at /admin/utilities/pipe_log or /admin/utilities/activity_log
  2. Test SMTP from /admin/settings → Email → Test button
  3. As a workaround: download the invoice PDF and send manually from your email client

Recorded payment doesn't close the invoice (stays Partially Paid)

Cause: The paid amount is less than the invoice total including VAT.

Check: Open the invoice → compare Total (with VAT) with the recorded paid amount.

Solution: Record an additional payment for the remaining difference. Check that the VAT rounding method is correct in settings.


Commission wasn't calculated even though the invoice is paid

Possible causes:

  1. The agent doesn't have a commission policy assigned
  2. The configured waiting period (commission_calculate_after_days) has not expired
  3. The invoice wasn't generated from a proposal/order linked to the agent

Solution:

  1. /admin/commission/applicable_staff → verify the agent has an active policy
  2. Check the waiting days setting in the commission policy
  3. If the invoice was created manually (not from a proposal), commission must be added manually

Sales Commission


eInvoice (ANAF)

eInvoice returns an error on submission

Common errors and solutions:

Error Cause Solution
"Invalid token" or "Token expired" ANAF token has expired /admin/billing/efacturaRegenerate button → re-authorise with digital certificate
"Invalid VAT number" Client VAT number is missing or wrong Open client → fill in VAT field (without RO prefix)
"Missing address" Client billing address is incomplete Fill in complete address (street, city, county, postal code)
"Undefined variable" Generated XML bug Retry — system automatically falls back to alternative endpoint

eInvoice


eInvoice is validated by ANAF but I can't find the signed PDF

Solution:

  1. Open invoice → eInvoice button → Download archive
  2. The ZIP archive contains: signed XML + PDF generated by ANAF
  3. If the button doesn't appear, the invoice status is not yet "Validated (OK)" — check status with the Check status button

Warehouse & Stock

A product's stock appears negative

Cause: A stock outflow (delivery, goods issue) was recorded without a prior receipt.

Solution:

  1. Check stock history at /admin/warehouse/warehouse_history → filter by product
  2. Identify the transaction that generated the negative
  3. Create a retroactive Receipt Note to correct the stock
  4. In future: block outflows without stock from /admin/warehouse/settingAllow negative stock = No

Warehouse History


Packing list quantity doesn't match available stock

Cause: Stock has been reserved by another Packing List or order.

Solution:

  1. Check real available stock in /admin/warehouse/commodity_listAvailable column (total stock − reserved)
  2. Check which other PLs have reserved that stock
  3. If goods arrived but haven't been receipted: create the Receipt Note first

AWB won't generate from Packing List

Possible causes:

  1. Parcel weight or dimensions are missing
  2. Client's delivery address is incomplete
  3. Innoship/Courier API is not configured

Solution:

  1. Check that the Packing List has filled in: weight (kg), length, width, height
  2. Check client address — must have street + city + county + postal code
  3. Test API connection at /admin/innoship/settings or /admin/couriers/settings

Packing Lists


Procurement

Purchase order can't be confirmed

Cause: Required fields are missing: vendor, at least one item, or delivery date.

Solution: Open PO → fill in all fields marked with * → save → confirm.


Receipt note doesn't update stock

Possible causes:

  1. Note is in Draft status (not validated)
  2. Destination warehouse is not selected

Solution:

  1. Open the note → check status — must be Validated/Finalised
  2. Verify the "Destination warehouse" field is filled in
  3. If validated but stock didn't update: check /admin/warehouse/warehouse_history for that transaction

Goods Receipt Note


Projects & Timesheets

Tasks don't appear in the employee's timesheet

Cause: The employee is not assigned to the task or project.

Solution:

  1. Open the task → Responsible field → add the employee
  2. Verify the project has the employee in the team (/admin/projects → project → Members tab)

Invoiced project shows hours that don't match the timesheet

Cause: Timesheets were not marked as Billable or were filtered incorrectly.

Solution:

  1. /admin/staff/timesheets → filter by project → check the Billable column
  2. When generating invoice from project: verify all billable hours are selected in the billing dialog

Marketing & Communication

Marketing Automation emails are not being sent

Possible causes:

  1. SMTP not configured or daily limit reached
  2. MA campaign is in Draft status (not published)
  3. Lead doesn't meet the segment criteria

Solution:

  1. Check daily limit: /admin/ma → Settings → email_sending_limit
  2. Verify the campaign is Active (published = 1) not Draft
  3. Open campaign → Segments → verify the lead appears in segment members

Marketing Automation


WhatsApp — sent messages don't reach the client

Possible causes:

  1. Client's number is not in international format (+1..., +44...)
  2. Message template is not approved by Meta (WABA)
  3. The 24-hour window has expired (for business-initiated conversations)

Solution:

  1. Check number format: must be +[country code][number] (no spaces)
  2. /admin/whatsapp/templates → check template status — must be Approved
  3. If window expired: you can only send pre-approved templates (not free-form messages)

WhatsApp


HR & Payroll

Employee doesn't appear in payroll report

Cause: Employee doesn't have an active contract in HR Profile or the contract type is set incorrectly.

Solution:

  1. /admin/hr_profile/contracts → verify the employee has an active contract with correct data
  2. Check employment type (employment contract, collaborator, etc.) — affects what appears in payroll

Reports & Data

Sales report shows different figures from invoices

Common cause: Sales report calculates collected payments (cash basis), not the value of issued invoices (accrual).

Explanation: An invoice issued on May 30 and paid on June 5 appears in the June report, not May.

Solution: Use the date filter on Invoice date (not payment date) if you want accrual accounting.


Integrations

WooCommerce — orders don't arrive in OmniSales

Possible causes:

  1. WooCommerce webhook is not configured in CRM
  2. WooCommerce API keys are wrong or expired
  3. WooCommerce products are not mapped to CRM products

Solution:

  1. /admin/woocommerce → verify API URL, Consumer Key and Consumer Secret are correct
  2. Check that webhook is active in WooCommerce → Settings → Advanced → Webhooks
  3. Test connection with the Test Connection button in WooCommerce CRM settings

WooCommerce


Workflow Automation — automatic action doesn't execute

Possible causes:

  1. Workflow is deactivated
  2. Trigger condition is not exactly met
  3. Server cron is not running

Solution:

  1. /admin/workflow_automation → verify the workflow has Active status
  2. Open the workflow → check conditions — are all of them met for the record being tested?
  3. Check execution log if it exists → /admin/utilities/activity_log

Workflow Automation


Sales — Proposals and Invoices

Proposal expired — client can no longer accept from portal

Exact cause (from code): Accept/Decline buttons are shown in the client portal only if open_till >= TODAY. When the date expires, the buttons disappear completely without any error message — client sees the proposal but can't interact with it.

Field: tblproposals.open_till (date)

Solution — 2 options:

Option A (recommended): Open the proposal in admin → edit the Valid until field → set a future date → save → resend to client.

Option B (change status): Manually change the proposal status to Open (1). The code detects that open_till is in the past and automatically extends the date by +7 days from the change moment. Client can accept within the 7-day window.

Proposal statuses: 1=Open · 2=Declined · 3=Accepted · 4=Sent · 5=Revised · 6=Draft


Can't convert proposal to invoice — button is missing

Exact cause (from code): The "Convert to Invoice" button appears only if all conditions are simultaneously met:

  • invoice_id IS NULL — proposal hasn't already been converted
  • estimate_id IS NULL — proposal hasn't already been converted to estimate
  • status != 7 — not in an internally blocked status
  • Staff has invoices → Create permission

Quick check:

  1. If the proposal already has an invoice_id set — it was previously converted; the button is replaced with a direct link to the invoice
  2. If the proposal is linked to a lead without an associated client — button appears but is disabled (grey, cursor: not-allowed)
  3. If the proposal is not associated with any client or lead — same, disabled

Solution:

  • Check permissions at /admin/roles → your role → Invoices → Create
  • If proposal is on a lead, first convert the lead to a client (Convert to Client from the lead record)
  • If the invoice already exists, find its direct link from the proposal's Invoices tab

Recurring invoice didn't auto-generate

Exact cause (from code, Cron_model.php, function recurring_invoices()): There are 5 distinct reasons for non-generation:

Cause DB field Check
Recurrence is disabled tblinvoices.recurring = 0 Open invoice → enable recurrence
Cycles exhausted cycles == total_cycles and cycles != 0 Check cycles and total_cycles on invoice
"Only paid invoices" setting active invoices_create_invoice_from_recurring_only_on_paid_invoices = 1 in Settings Source invoice must be status = 2 (Paid)
Source invoice is in Draft status = 6 Draft invoices are permanently excluded from cron
Cron runs at wrong hour invoice_auto_operations_hour in Settings Cron strictly checks current hour vs. configured hour (default 9:00); if server runs cron at another hour, nothing executes

Solution for wrong-hour cron: /admin/settingsCron Job Settings → check configured hour and ensure the server cron runs at that hour. Alternatively, trigger manually from admin (manual trigger ignores hourly check).


Duplicate client — how do I identify and resolve it?

How the system detects duplicates:

  1. VAT number — unique in the database; system refuses saving a client with the same VAT (with or without "RO" prefix). Check: tblclients.vat normalised without prefix.

  2. Company (warning in dashboard) — if clients with the same company field exist, a warning widget appears. Doesn't block, just informs.

  3. Anti-double-click — if a client with the same company or vat was created in the last 5 seconds, system redirects to the existing one instead of creating a duplicate.

Merge function: DOES NOT exist in the code. Duplicate clients must be resolved manually:

  1. Identify the duplicate client (the one with fewer associated documents)
  2. Move documents (invoices, projects) to the "main" client — edit each document
  3. Delete the duplicate (if it no longer has associated documents)

OmniSales & E-commerce

Online order has wrong status vs. WooCommerce

Exact cause (from code, Omni_sales_helper.php): Statuses are mapped bidirectionally, but not all OmniSales statuses have a reverse mapping to WooCommerce.

WooCommerce → OmniSales mapping (complete):

WooCommerce status OmniSales index
pending / pending_payment 2
processing 1
confirm 3
shipping 4
completed / finish 5
refunded 6
return 7
cancelled 8
on-hold 9
failed 10
ready 15
any unknown status 0 (Draft)

Reverse OmniSales → WooCommerce mapping (partial — only 6 statuses): 1→processing · 2→pending · 5→completed · 6→refunded · 8→cancelled · 9→on-hold

Important: OmniSales statuses 3 (Confirm), 4 (Shipping), 7 (Return), 15 (Ready), 16 (Stock Unavailable) do not sync back to WooCommerce. These are internal CRM statuses.


Product from online order doesn't appear in order

Exact cause (from code, Omni_sales_model.php, function add_order_woo()):

Matching is done exclusively on the SKU field: tblitems.sku_code = WooCommerce line_item.sku

3 scenarios:

Situation What happens
WC product has SKU and exists in CRM Correct match → appears in order
WC product has SKU but does NOT exist in CRM System automatically creates product in tblitems with WooCommerce data
WC product has no SKU set Product is completely ignored — doesn't appear in order, not created

Solution: Ensure all WooCommerce products have SKU filled in. Check in WooCommerce Admin → Products → each product → SKU field. Without SKU, products cannot be imported into CRM.


Manufacturing (Production)

Manufacturing Order can't move to Planned

Exact cause (from code, Manufacturing_model.php): At transition to planned, the system checks available stock for each component in the BoM:

inventory_number (from tbl_inventory_manage) < qty_to_consume → flag = 1 → MO blocked

If any component has insufficient stock, MO doesn't move to Planned and shows: [Product name] not_enough_inventory, available_quantity: X.

Solution:

  1. Check the exact error message — it shows what product is missing and how much is available
  2. Either create a receipt for the missing materials (Receipt Note)
  3. Or approve MO with partial materials and track the auto-generated Purchase Request

Finished product didn't enter warehouse after MO Done

Exact cause (from code, mo_mark_as_done()): When marking MO as Done:

  • Verifies qty_reserved != 0 for at least one component — if all components have qty_reserved = 0, function returns false and creates nothing
  • Creates internal Delivery Note (material consumption)
  • Creates Receipt Note for finished product in finished_products_warehouse_id

Mandatory conditions on MO:

  • finished_products_warehouse_id — destination warehouse must be set
  • product_id — finished product must be specified
  • At least one component with qty_reserved > 0

Solution:

  1. Verify MO has Finished goods warehouse filled in
  2. Verify components are reserved (qty_reserved > 0) — if all are 0, press "Check material availability" again
  3. Enter produced quantity (may differ from planned quantity) in the confirmation dialog

Finance & Accounting

SAGA export empty or incomplete

Exact cause (from code, Export.php): SAGA exports invoices from tblinvoices with filter:

status != 6 (Draft) AND date BETWEEN start_date AND end_date

Solution: Check the invoice issue date (not due date) and ensure it falls within the export interval. Draft invoices must be finalised (status != 6) before export.


Settings & Administration

SMTP with 2FA (Gmail / Outlook) — email won't send

Cause: CRMConnect supports standard SMTP authentication (user + password) with SSL or TLS. Does not support OAuth2/XOAUTH2.

Gmail with 2FA: Cannot use Gmail account password. Must create an App Password:

  1. Google Account → Security → 2-Step Verification → App passwords
  2. Generate a password for "Mail" → copy it
  3. /admin/settings → Email → SMTP Host: smtp.gmail.com, Port: 587, Encryption: tls, User: Gmail address, Password: App Password (not account password)

Outlook / Microsoft 365 with 2FA:

  1. If organisation allows SMTP AUTH: use normal password with smtp.office365.com:587:tls
  2. If SMTP AUTH is disabled by IT admin: must be enabled from Microsoft 365 Admin Center → Users → Mail settings → Authenticated SMTP

Check: /admin/settings → Email → Test Email button — sends a test email and shows exact error if SMTP fails.


Tickets & Support

Client email doesn't auto-create a ticket (email pipe)

Exact cause (from code, Tickets_model.php, function insert_piped_ticket()):

There are 4 reasons why email pipe fails:

Reason Pipe Log message Solution
Email from unregistered address + "only registered" setting active Unregistered Email Address /admin/settings → Tickets → disable Allow only registered clients to open tickets
"Only replies" setting active Only Replies Allowed by Email Disable Accept only replies from email — new tickets can't be created
Anti-spam limit exceeded Exceeded Limit of 10 Tickets within 15 Minutes Address sent >10 emails in 15 min — temporarily blocked automatically
Ticket ID in subject but ticket not found Ticket ID Not Found Client modified email subject and removed [Ticket#ID]

Check: /admin/utilities/pipe_log — shows all processed emails with their status


Audit & User Actions

How do I see what a user did?

CRMConnect has two places to find action history, depending on what you're looking for:

1. For a specific action on a client/lead/invoice: → Open the record → Activity tab Shows chronologically all changes on that record: who, when, what was changed.

2. For all actions by a user (regardless of record):/admin/utilities/activity_log → filter by user name + period Shows everything that staff member did in the CRM system.


Who deleted a record?

  1. /admin/utilities/activity_log → filter the day it occurred
  2. Search in the Description column: Deleted + record type (e.g. Invoice Deleted, Lead Deleted)
  3. The staffid column shows exactly who performed the action

Note: Deleted records cannot be recovered from the interface — they are physically or soft-deleted from the DB. If recovery is needed, contact the server administrator for a backup.


How do I export activity history for external audit?

  1. /admin/utilities/activity_log
  2. Apply desired filters (period, user)
  3. Export button → download CSV with all filtered records

Important: The Clear button permanently deletes the log — always export before clearing. There is no restore function for a deleted log.

IT Admin — Audit & Monitoring


Can't find the answer?

  1. Search in the sidebar search bar — the index covers all 200+ pages
  2. Check your department guideDepartment Guides
  3. Follow the workflow for your process → End-to-end Workflows
  4. Contact support with: the page URL, exact error message, and steps that led to the problem