Recued
Menu
← Back to recipes

Carry a balance forward

by recued-core v2 6 views

Use “Carry a balance forward” in Recued. Close a part-paid invoice and issue a new one for exactly what is left, with the VAT carried in proportion. The new invoice takes no items.

Complete workflow

Invoice Book 10 pinned recipes

Use Invoice Book in Recued for invoicing, receivables, getting paid, and freelance. It includes 17 built-in actions and 9 ready-to-run workflows. Actions that change data use Recued's approval controls.

You are viewing one recipe in this workflow. Installing it opens the complete pack so its other recipes and background automations arrive together.

Use “Carry a balance forward” in Recued. Close a part-paid invoice and issue a new one for exactly what is left, with the VAT carried in proportion. The new invoice takes no items.

pack:invoice-bookinvoicingreceivablesrecords
by recued-core pinned v2

Use “Issue an invoice” in Recued. Turn the entries you picked into an invoice: lines frozen at issue time, total computed once from minutes, and a balance that payments come off.

pack:invoice-bookinvoicingreceivablesrecords
by recued-core pinned v2

Use “Record a payment” in Recued. Take a payment off an invoice's balance. Part payments are supported; overpayment is refused rather than absorbed, and the invoice settles when the balance reaches zero.

pack:invoice-bookinvoicingreceivablespayments
by recued-core pinned v2

Use “Who owes you” in Recued. Every open invoice with what is outstanding, which are overdue, and the oldest one still unpaid.

pack:invoice-bookinvoicingreceivablesoverdue
by recued-core pinned v2

Use “What each client owes” in Recued. One line per client: what is outstanding, across how many invoices, and how long the oldest has been due.

pack:invoice-bookinvoicingrecordsaggregate
by recued-core pinned v2
Show all 10 recipes

Use “Add something billable” in Recued. Anything you can charge for that is not logged time — a fixed fee, materials, a call-out. A negative amount is a credit.

pack:invoice-bookinvoicingbillablerecords
by recued-core pinned v2

Use “Delete a pending item” in Recued. Remove something from the pending list. If it came from logged hours, you choose whether those hours go back on the unbilled list or get deleted with it.

pack:invoice-bookinvoicingbillablerecords
by recued-core pinned v2

Use “Pull hours into pending items” in Recued. Turn unbilled time entries into pending billable items, priced at a rate you give.

pack:invoice-bookinvoicingbillablebridge
by recued-core pinned v2

Use “What could go on an invoice” in Recued. Everything billable and not yet invoiced — hours you pulled across and fees you typed in — each with its id, so you can choose.

pack:invoice-bookinvoicingbillablerecords
by recued-core pinned v2
View pack details, dependencies, and permissions →

Carrying a balance forward

A client pays part of an invoice and you want the rest on a document of its own. This closes the original and issues a new invoice for exactly what is left.

⛔⛔ THE NEW INVOICE TAKES NO ITEMS, AND THAT IS THE WHOLE POINT. The balance carried forward already has VAT inside it. Add a fresh billable item alongside it and its tax compounds on tax you have already charged — the client is billed twice for the same VAT and the figure looks perfectly ordinary. New work goes on a new invoice; this document does one thing.

The VAT split is carried in PROPORTION, not recalculated. The remainder inherits the original's own net-to-VAT ratio, VAT is rounded once and the net is whatever is left, so the two always add to the total exactly. No rate is applied and none is inferred — the pack is dividing a number you already decided.

The original keeps its outstanding figure and stops being chased. Its status becomes carried_forward, which is what takes it out of list-open-invoices. Nothing is restated: it still says it was for 2,220, that 1,000 arrived, and that 1,220 went somewhere — and carried_to says where.

A settled invoice cannot be carried, and neither can one nothing has been paid against — that is not a carry-forward, it is just an invoice you have already issued.

It sends nothing. The client needs the new document; getting it to them is yours.

How it works 37 steps

Inspect the data fetches, transforms, gates, and output this recipe runs.

Process (37 steps)
invoice_id trim
Trim whitespace from setting invoice id
new_ref trim
Trim whitespace from setting new ref
inputs_ok all
Check if all conditions are true
inputs_guard guard
Stop if inputs ok equals
source ?
found compare
Check if source record id has data
found_guard guard
Stop if found equals
is_open compare
Check if source record status equals open
open_guard guard
Stop if is open equals
paid_so_far math
Calculate: round({{step.source.record.amount_paid}} * 100) / 100
something_paid compare
Check if paid so far is greater than 0
paid_guard guard
Stop if something paid equals
remaining math
Calculate: round({{step.source.record.outstanding}} * 100) / 100
has_balance compare
Check if remaining is greater than 0
balance_guard guard
Stop if has balance equals
ref_check ?
ref_rows default
Apply default
ref_count count
Count items in ref rows
ref_taken compare
Check if ref count is greater than 0
ref_guard guard
Stop if ref taken equals
vat_share math
Calculate: round({{step.remaining}} * {{step.source.record.vat_amount}} / max({{step.source.record.total}}, 1) * 100) / 100
net_share math
Calculate: round(({{step.remaining}} - {{step.vat_share}}) * 100) / 100
total_text template
Generate text from a template
vat_text template
Generate text from a template
net_text template
Generate text from a template
zero template
Generate text from a template
line template
Generate text from a template
now_iso date_add
Add 0 seconds to
issued_parts split
Split now iso into parts
issued_on default
Apply default
due_iso date_add
Add setting payment terms days days to
due_parts split
Split due iso into parts
due_on default
Apply default
lines_json json_stringify
Apply json_stringify
create ?
close_source ?
card to_summary
Format results as a summary card
Settings 3 configurable

Configurable at install. Defaults shown — change them anytime in Recued.

new ref setting = [object Object]
invoice id setting = [object Object]
payment terms days setting = 30

About

Tags

pack:invoice-bookinvoicingreceivablesrecordsv2

Details

37 steps 3 configurable settings recipe_id: carry-forward-balance