Invoicing & Payments
Create professional invoices, automate recurring billing, track payments against projects, and customize your invoice templates - all from one platform.
Creating Invoices
Invoices in Belvak are created through a guided multi-step form that walks you through every required field. Each invoice is tied to a client and, optionally, a project so you always have full context on what the invoice covers.
Invoice Fields
When you create a new invoice you will fill in the following details:
The invoice form is split into two steps:
- Step 1 - Invoice Details - enter a description, amount, currency, payment type, status, and optionally link the invoice to a project.
- Step 2 - Timeline & Documents - set the due date, start date, end date, and attach any supporting documents.
Key fields include:
- Invoice number - assigned automatically if auto-increment is enabled, or enter one manually.
- Client - select from your client list. This determines who receives the invoice.
- Project - link the invoice to a project. This is required and also determines the invoice currency.
- Amount - enter the invoiced amount. The currency is set automatically from the linked project and cannot be changed on the invoice.
- Payment type - choose between "One-Time" for a single invoice or "Recurring" for invoices that repeat on a schedule tied to a project.
- Start date and end date - define the service or billing period the invoice covers. These are especially useful for recurring invoices where each invoice maps to a specific time range.
- Due date - when payment is expected from the client.
- Status - new invoices typically start as Draft.
Invoice Statuses
Every invoice moves through a status lifecycle:
- Draft - the invoice is being prepared and has not been sent to the client.
- Sent - the invoice has been delivered to the client and is awaiting payment.
- Paid - full payment has been received. This status is set automatically when recorded payments cover the invoice amount.
- Overdue - the due date has passed without full payment.
- Cancelled - the invoice has been voided and will not be collected.
Viewing Invoice Details
Click any invoice row to open the detail drawer. The drawer shows the full invoice information in a hero header layout - client name, amount, status badge, and all associated fields grouped into logical sections. From the drawer you can edit the invoice, export it as a PDF, or record a payment.
Invoice Approval and PDF Snapshots
When an invoice is ready to send, use the approval action. Approving an invoice generates a PDF snapshot using your selected template and saves it as an attached document. This creates a permanent, printable record of the invoice at the time of approval.
Tip: Enable auto-increment numbering in Settings to have invoice numbers assigned sequentially. This saves time and prevents duplicate numbers.
Invoice PDF Preview
From the invoice drawer, click the Invoice PDF action to open a full-width modal with a live PDF preview. This lets you review exactly how the invoice will look before exporting or sending it to the client. The PDF is rendered in real time using Gotenberg (headless Chromium), so fonts, colors, and layout match the final output precisely.
The PDF preview is not just a static display. You can edit the invoice content directly inside the preview, making adjustments before you export or approve. See the Inline PDF Editing section below for the full details.
Inline PDF Editing
The PDF preview is fully interactive. Instead of closing the preview, editing fields in a form, and reopening the preview to check the result, you can click directly on any text element in the preview to edit it in place. This makes last-minute adjustments fast and visual.
Editable Elements
Nearly every piece of text on the invoice PDF can be edited inline:
- Company details - name, address, phone number, and email.
- Client information - client name and address.
- Invoice metadata - invoice number, issue date, due date, and service period dates.
- Line items - descriptions, quantities, and unit prices. Numeric fields like quantities and prices are automatically parsed when you finish editing.
- Labels and headers - column headers, section titles, and other template labels.
- Footer content - footer text, notes, and watermark text.
Editing Workflow
Click any field on the preview to activate editing, type your changes, then click elsewhere to confirm. You can also add new line item rows or remove existing ones directly in the preview, so you do not need to leave the modal to adjust the invoice contents.
Toolbar Controls
The preview toolbar provides zoom controls (zoom in and zoom out) for better visibility when editing small text. It also includes three actions:
- Export PDF - downloads the current invoice as a PDF file with all your inline edits applied.
- Approve - saves a PDF snapshot as a document attached to the invoice, locking in your changes as the official record.
- Approve & Export - saves the snapshot and downloads the PDF in a single step.
Switching Templates
The toolbar includes a template selector dropdown that lets you switch between your saved invoice templates without leaving the preview. Your edited data persists across template changes, so you can try different layouts and styles without losing any of your inline edits.
Tip: Use inline editing for one-off adjustments to a specific invoice without changing your saved template. For persistent changes to default labels, layout, or colors that apply to all future invoices, use the template editor in Settings instead.
Currency and Project Linking
Every invoice is linked to a project, and the invoice's currency is automatically set to match the project's currency. When you select a project on the invoice form, the currency field is filled in for you and locked so it cannot be changed. This ensures all invoices under a project use the same currency, which keeps collection progress, financial summaries, and client reporting accurate.
If you need to invoice in a different currency, change the currency on the project itself. When you do, Belvak will show a confirmation listing how many invoices and payments will be updated, then cascade the change to all of them automatically. Future invoices will also inherit the new currency.
Important: The currency lock is enforced on both the frontend and backend. Even if you attempt to submit a mismatched currency via the API, the system will reject it. This prevents data inconsistencies that could affect financial reports.
Collection Progress
When you link an invoice to a project, the invoice amount counts toward that project's collection progress. The project detail view shows a collection bar comparing the contract value against total payments received. Because invoices and the project share the same currency, these totals are always comparable and give you a clear picture of outstanding balances.
Setting Up Recurring Invoices
For clients on retainers, subscriptions, or ongoing service agreements, Belvak supports recurring invoicing tied directly to projects. Instead of creating invoices manually each month, the system tracks billing periods and surfaces upcoming invoices for your review.
Important: Upcoming invoices use a user-driven approval workflow, not automatic generation. The system computes which billing periods are due or overdue, but no invoice is created until you explicitly approve it. This gives you full control over when invoices are issued and lets you skip periods when needed.
Marking a Project as Recurring
To enable recurring billing, edit the project and set its billing frequency (monthly, quarterly, etc.). Once a frequency and a start date are configured, Belvak begins tracking billing periods automatically.
The Upcoming Invoices Panel
The Upcoming Invoices panel shows all billing periods that are due or overdue, plus one future preview period for each active recurring project. This gives you a clear view of what needs to be invoiced and what is coming next.
Approving Upcoming Invoices
When a billing period is due, you can approve it to create the actual invoice. Approving an upcoming invoice does two things:
- Creates a new invoice record with the correct amount, client, and dates for that billing period.
- Advances the project's next due date to the following period so the next invoice is queued up automatically.
Skipping a Billing Period
If a client has a billing pause or a period does not need to be invoiced, use the Skip action. Skipping advances the next due date without creating an invoice, keeping your billing schedule in sync.
Bulk Approve All Overdue Periods
If you have fallen behind on approvals, the Approve All action creates invoices for every overdue period across all recurring projects in one click. This is useful after a vacation or when catching up on administrative tasks.
Note: Billing periods must be approved in sequential order. You cannot skip ahead and approve a future period before approving or skipping the current one. This ensures your invoice history has no gaps.
Payment Tracking
Record every payment you receive against an invoice to keep your financials accurate and up to date. Belvak automatically updates invoice statuses based on the payments you log, so you always know which invoices are settled and which have outstanding balances.
Recording a Payment
To record a payment, navigate to Payments and create a new record. Each payment includes the following fields:
- Amount - the payment amount received.
- Date - the date the payment was received.
- Payment Method - how the payment was made. Optional dropdown with five choices: Bank Transfer, Check, Cash, Credit Card, or Other.
- Reference / Check # - an optional free-text field (up to 100 characters) for the transaction ID, wire confirmation number, check number, or any other identifier you want to keep alongside the payment.
- Currency - set automatically from the linked invoice. Payments always use the same currency as their invoice, so amounts are directly comparable.
- Invoice - the invoice this payment applies to.
Payment Method and Reference Number
Every payment can optionally record how it was received and a reference identifier. Both fields are fully optional, so you can skip them for informal payments and fill them in when you need a paper trail for reconciliation, audits, or client inquiries.
The Payment Method dropdown offers five choices:
- Bank Transfer - wire transfers, ACH, SEPA, or any direct bank-to-bank payment.
- Check - paper checks received by mail or in person.
- Cash - physical cash payments.
- Credit Card - card payments processed through your merchant of choice.
- Other - anything that does not fit the above, such as crypto, a third-party payment app, or an in-kind settlement.
The Reference / Check # field accepts any text up to 100 characters. Use it to store the detail that matters for your method of payment:
- For Bank Transfer, save the wire confirmation or ACH trace ID.
- For Check, save the check number printed on the paper check.
- For Credit Card, save the merchant transaction ID or authorization code.
- For Cash or Other, save a receipt number or any note that helps you match the payment to an external record.
Both fields appear in the payment detail drawer and can be shown as columns in the Payments table via the column visibility toggle, so you can sort and search by method or reference when you need to trace a specific transaction.
Tip: Recording the method and reference on every payment makes end-of-month reconciliation with your bank statements dramatically faster. Even though the fields are optional, a consistent habit here pays off when you need to look up a single transaction months later.
Automatic Status Updates
When the total payments recorded against an invoice equal or exceed the invoice amount, the invoice status is automatically set to Paid. You do not need to update the status manually. If a payment is later deleted and the total drops below the invoice amount, the status automatically reverts so nothing falls through the cracks.
Tip: You can record partial payments. The invoice will remain in its current status until total payments reach the full amount, at which point it flips to Paid automatically.
Collection Progress
For projects with a contract value, Belvak displays a collection progress bar showing how much of the contract value has been collected through payments. This appears on the project detail drawer and gives you an at-a-glance view of outstanding balances across your portfolio. Payment collection also feeds into the Client Health Score, where it accounts for 40% of the overall score. To see every invoice raised against a single client in one place, open the client and switch to the Related tab, which lists pending, completed, and overdue invoices side by side with the projects they belong to.
Payment Currency
When you select an invoice on the payment form, the currency is automatically set to match the invoice and the field is locked. This ensures every payment is recorded in the same currency as its invoice, which keeps the automatic status updates and collection progress calculations accurate. The currency chain flows from project to invoice to payment, so all financial records under a project are always in the same currency.
Invoice Row Actions
Each invoice row offers quick actions accessible from the three-dot menu or by right-clicking the row:
- View Payments - opens the Payments page filtered to show only payments linked to that invoice.
- Add Payment - opens the payment creation form with the invoice already pre-linked.
- Pend / Complete / Mark Overdue - quick status changes directly from the table, without needing to open the edit form.
Column Visibility and Context Menu
Use the column visibility toggle to show or hide table columns, tailoring the invoices table to the information you need. All row actions described above are also available via a right-click context menu on any row, giving you a faster alternative to the three-dot dropdown.
Invoice Templates and Customization
Belvak includes a full template editor so your invoices match your brand. Choose from built-in presets or build your own layout from scratch. Templates are stored as structured data and rendered into pixel-perfect PDFs when you approve or export an invoice.
Accessing the Template Editor
Go to Settings > Invoice Templates to open the template editor. From here you can browse presets, edit existing templates, or create a new one.
Built-in Presets
Belvak ships with 12 professionally designed preset templates covering a range of styles - from minimal and modern to detailed and formal. Presets are a great starting point. Select one, then customize it to match your brand.
Customization Options
The template editor gives you control over:
- Layout - arrange sections, headers, footers, and line item tables.
- Colors - set primary and accent colors to match your brand palette.
- Typography - choose fonts and sizes for headings, body text, and line items.
- Logo - upload your company logo to appear on every invoice.
- Company details - set your company name, address, tax ID, and other information that appears on invoices.
- Custom fields and sections - add extra fields or content blocks for notes, terms and conditions, or payment instructions.
PDF Export
Invoice PDFs are generated using a headless Chromium engine, which means your PDF output looks exactly like what you see on screen - fonts, colors, layout, and spacing are all preserved. You can preview the PDF before sending it to a client and export or download it at any time from the invoice drawer.
Setting a Default Template
Once you have a template you are happy with, set it as the default. The default template is used automatically when approving invoices or generating PDFs, so you do not have to select it each time.
Tip: Preview your template with real invoice data before setting it as default. This ensures line items, totals, and client details all render correctly in the final PDF.