Documentation

Find documentation for our Joomla extensions on this page.

JoomInvoice - Client Portal (Frontend)

JoomInvoice provides a frontend experience where your clients can view their invoices, download PDFs, make payments, and respond to quotes - all without needing access to the Joomla admin panel.

Setting Up the Client Portal

Creating a Menu Item

  1. Go to Menus > [Your Menu] > Add New Menu Item.
  2. Set Menu Item Type to JoomInvoice > Invoices.
  3. Set the Access Level to Registered (so only logged-in users can see it).
  4. Save the menu item.

This creates a page where clients can see their invoices and quotes.

Linking Contacts to Joomla Users

For a client to see their invoices on the frontend, their JoomInvoice contact must be linked to their Joomla user account. See Contacts > Linking a Contact to a Joomla User for instructions.

What Clients See

Invoice List

Logged-in clients see a list of their invoices with the ability to:

  • Search invoices by number or keyword.
  • Filter by date range.
  • Sort by date, name, or amount.
  • View pagination for long lists.

Clients only see invoices assigned to their linked contact - they cannot see other clients' invoices.

Layout Options

You can choose what the frontend looks like in Configuration > Layouts > Layout for frontend users:

LayoutDescription
Default Full layout showing invoices with payment details
Simple Simplified layout without payment information

Invoice Detail

Clicking on an invoice opens a detailed view rendered with the assigned template. The client can see all the invoice information, line items, taxes, and payment status.

Quote List

If quotes are assigned to the client, they also appear on the frontend with the ability to accept or reject them (see below).

Guest Access (No Login Required)

Not all clients have Joomla accounts. JoomInvoice supports guest access through secure links that include an authentication code.

How It Works

  1. Each invoice has a unique 64-character security code.
  2. When you send an invoice or payment link, JoomInvoice can include this code in the URL.
  3. A client who clicks the link can view the invoice and make payments without logging in.
  4. The link is unique to that specific invoice and cannot be used to access other invoices.

Configuring Guest Access

Go to Configuration > Auth code in payment links and choose:

ModeWhen to Use
None All clients have Joomla accounts and can log in. Guest links are disabled.
Auto (Recommended) Guest links are generated only for clients who do not have a Joomla account. Clients with accounts must log in.
Always All links include a guest access code. Anyone with the link can view and pay, regardless of whether they have an account.

Downloading PDFs

Clients can download PDF versions of their invoices from the frontend. The download is available both for logged-in users and guests with valid links.

Making Payments

  1. The client views an invoice that has outstanding payments.
  2. Unpaid payments are listed with Pay Now buttons (if the template includes the {paynow_button} or payment section placeholders).
  3. Clicking Pay Now opens the payment page showing the available payment methods.
  4. The client selects a method (e.g., Stripe, PayPal) and completes the payment.
  5. After payment, the client sees a confirmation page with the result.
  6. The invoice status is automatically updated.

Payment Confirmation Page

After completing a payment, the client is redirected to a confirmation page showing:

  • Success - Payment was confirmed.
  • Pending - Payment was submitted but is awaiting confirmation from the gateway.
  • Processing - The payment is being processed (when using webhooks).

You can also configure custom redirect pages in Configuration:

  • Menu item for payment success link - Where to redirect after a successful payment.
  • Menu item for payment cancel link - Where to redirect if the client cancels.

Accepting and Rejecting Quotes

When a client receives a quote (by email or views it online), they can respond directly:

  1. The quote template includes Accept and Reject buttons (using the {accept_button} and {reject_button} placeholders).
  2. The client clicks one of the buttons.
  3. The quote status updates to "Accepted by Client" or "Rejected by Client".
  4. If you have quote notifications enabled, you receive an email about the client's response.

Clients do not need to be logged in to accept or reject a quote - the buttons use secure links.

Cron Job Starts

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.

Ok