Skip to main content
Flowra
PricingCommunityFAQ
JoinStart with Flowra
  • PricingPlans, seats and payment
  • Frequently asked questionsEverything you have asked, in one place
  • Contact usWrite to the right team
  • CommunityKaro Studio, who make Flowra

For your team

  • Marketing teamsCampaigns from brief to launch
  • Product and dev teamsFeatures and bugs with full context
  • Design and content teamsBrief, files and delivery side by side
  • Operations teamsWork, documents and costs you can track
  • Sales and services teamsFrom meeting to contract and payment
  • Remote teamsOnline meeting to delivery, on your time

For your role

  • Project managersAction stories instead of chasing the team
  • Freelancers and consultantsFrom brief to contract and settlement

For your workflow

  • Meeting to actionMeeting decisions as trackable work
  • Actions with financial contextCosts next to the work that caused them
  • Actions with contract contextEvery commitment as trackable work
  • Brief to project deliveryEvery project step, one complete action
See all solutionsStart with FlowraJoin
++
Start here

Get started

Workspaces, projects and access

Everyday work

ActionsCalendar and due datesRecurring schedulesWorking hours and booking pageMeetings

Docs and Knowledge

Knowledge: pages and editorKnowledge: sharing and collaborationMy FilesFolio

Communication and chat

ChatMentions and notifications

Network and sales

Your networkCollaboration opportunities

Finance

The ledgerAccounts and membersContracts and receivablesSalary and obligations

Connectors

Connectors hubMCP and AI agentsCloud connectorsTelegram

Settings and account

Settings and toolsSubscription and planSecurity and settings

AI

Flowra AssistantAIPlanning assistant
Flowra/Documentation/Contracts and receivables

Contracts, milestones and receivables

A contract sits on the project itself: the company is the other party, milestones split the amount into instalments and every receipt is a real transaction in your accounts. This chain tells you how much of a job has actually been collected.

Open in Flowra/select

Autumn Launch Campaign

Contract value€48,000Milestones3 stagesReceived€24,000Receivable€9,600StatusActive

A milestone only counts a transaction that somebody linked to it.

What this is wired to

Workspaces, projects and accessA contract belongs to a project, so seeing it follows from seeing the project.The ledgerA milestone counts a transaction only when somebody explicitly linked it.Accounts and membersFrom any transaction's panel you can link it to a contract milestone.ActionsChasing a payment is an action with the financial context “Invoice follow-up” and a reminder.Collaboration opportunitiesAn opportunity that turns into a collaboration usually becomes a contract from here.FolioA signed Folio sheet is the document that backs the contract.

On this page

  1. Where a contract lives
  2. The chain: company, project, contract, milestone, receipt
  3. Creating a contract, step by step
  4. Editing a contract, and its statuses
  5. Milestones: splitting the contract into instalments
  6. The four steps of a milestone, and its status badge
  7. Record receipt: the money that arrived
  8. Linking an existing receipt, and reconciling two figures
  9. Receivables: four figures and where each comes from
  10. From the finance side: accounts and transactions
  11. The company page: every contract with one client
  12. Reminders and chasing payment
  13. Signing, Folio and files
  14. Project assistant
  15. Who can do what, and the activity log
  16. On a phone
  17. A complete path: from signature to settlement

Where a contract lives

A contract belongs to a project, and a project belongs to a workspace, so there are no contracts in personal mode. Each project can have one contract, and you find it on the project page in the foldable “Contract and receivables” section. The money cards at the top of that page show “Contract value”, “Received”, “Contract remaining”, “Project expenses” and “Cash profit”; a project in several currencies gets one row per currency, and two currencies are never added together.

The other party is the project's company, and the contract's currency is one of the project's currencies. “Contract remaining” is always shown as what is left, never as a debt.

A project page with its money cards and the contract and receivables section
A project page with its money cards and the contract and receivables section

The chain: company, project, contract, milestone, receipt

The company is the counterparty and can have several projects. The project is the access boundary. The contract is what the money is tied to, milestones split it into instalments, and receipts are real income transactions. Merging these layers would mean either no two contracts with one client, or no way to keep one project's access separate.

At the top of the contract card this chain appears as one row: the company name, the project name, the contract amount, the number of milestones and the number of linked receipts. Tap the company name and that company's page opens.

Creating a contract, step by step

On a project with no contract yet, the “Contract and receivables” section says who the other party is and which currency applies, and offers “+ Create contract”. If you entered a contract value when you created the project, that figure is already filled in.

A new contract is “Active” and billed by milestone. The signing date is recorded as the day it was created, and the start and end dates come from the project's own dates. If you leave the payment terms empty, “Each milestone is paid once its invoice is issued” is written in. The contract value also appears in the cards at the top of the project.

  1. Open the project page and expand “Contract and receivables”
  2. Press “+ Create contract”
  3. Enter the total contract value in the project's currency
  4. Add a contract number and payment terms if you like
  5. If the project has several currencies, pick the contract's currency
  6. Press “Create milestone contract”
The contract form with total value, number and payment terms
The contract form with total value, number and payment terms

Editing a contract, and its statuses

“Edit agreement” changes the value, number, start and end dates, payment terms, note and status. The contract value can never drop below the sum of its milestones; reduce the milestones first. Whenever the value changes, the card at the top of the project changes with it.

The status has four states. “Draft” and “Canceled” are set only by you, and Flowra never touches them. “Active” and “Settled” are automatic: once every milestone is paid the contract becomes “Settled”, and if a receipt is later unlinked it becomes “Active” again. On a canceled contract the milestone buttons disappear and the history stays.

  1. Draft: not final yet
  2. Active: in progress
  3. Settled: every milestone has been paid
  4. Canceled: the work stopped; milestones are read-only

Milestones: splitting the contract into instalments

Each milestone is a slice of the contract amount, with a title, an amount, a payment due date and an optional note. The form suggests titles such as “Deposit”, “Design phase” and “Final handoff”, and for the amount offers “All unallocated”, 25% and 50%. The bar under the amount shows the other milestones' share, this one's share and what is still free, and the amount is also written out in words.

The milestones never add up to more than the contract value; if the whole amount is already split, the form tells you to either raise the contract value or reduce an unpaid milestone. A due date outside the contract's range or in the past gets a warning, and so does a duplicate title. If the work for this stage is already done, tick “This stage's work is done” and it is saved straight as “Ready to invoice”.

A milestone can be edited until it is fully paid, but its amount can never drop below the receipts linked to it. Deleting is only for a milestone with no invoice and no receipts, so removing it takes nothing away from the money.

The new milestone dialog with title suggestions, percentage buttons and the share-of-contract bar
The new milestone dialog with title suggestions, percentage buttons and the share-of-contract bar

The four steps of a milestone, and its status badge

At the top of every milestone dialog four steps are shown, with the current one lit: Define, Work done, Invoice and Payment received. Each milestone in the list also carries a status badge, and its buttons change with that status.

Every step can be undone while no money stands behind it: “Revert” takes a completed milestone back to in progress, and “Cancel invoice” withdraws the invoice as long as no receipt is linked.

  1. In progress: defined, work not finished yet; the “Completed” button
  2. Ready to invoice: the work is done; the “Issue invoice” button, with an optional number
  3. Invoiced: the amount now counts as “Receivable”; the “Record receipt” and “Link existing receipt” buttons
  4. Overdue: invoiced, not fully paid, and past its due date
  5. Partially paid: part of the amount has arrived
  6. Paid: the receipts add up to the milestone's amount

Record receipt: the money that arrived

“Record receipt” creates a real income transaction and links it to the milestone in the same step. It is booked on the account you choose, on this project and its workspace, with the category “Contract receipt” and the label “Work”. The default account is the team's account in the contract's currency; if you pick an account in another currency, the form warns you.

The amount is prefilled with what remains, and “Half the remainder” is there too. If you enter more than the remainder, the extra is booked on the project but not added to this stage's receivables. When the receipts reach the milestone's amount it becomes “Paid” and the settlement date is recorded.

  1. On an invoiced milestone, press “Record receipt”
  2. Keep the amount, or press “Full remainder” or “Half the remainder”
  3. Set the date received
  4. Under “Which account received it”, choose the account
  5. Add a description if you like and press “Record and link receipt”
The record receipt dialog with the remaining amount, the date and the destination account
The record receipt dialog with the remaining amount, the date and the destination account

Linking an existing receipt, and reconciling two figures

Money is only ever linked by an explicit choice. A milestone counts a transaction because somebody picked it; nothing is guessed from an amount or a date, so a coincidence can never mark an invoice paid. The received amount and the payment status are worked out from that list and cannot be changed by hand.

If the money is already booked as a transaction, press “Link existing receipt”: this project's own income comes first, then the rest of the income you can see. Only posted income on an account you have access to can be picked, and each receipt links to one milestone only. A transaction that gets linked joins the project as well. You remove a link with the cross beside the receipt on the milestone itself.

“Received” at the top of the page comes from all of the project's income, while receivables count only receipts linked to a milestone. When the two differ, a box shows the difference and each unlinked receipt, so you can put each one in its place with “Link to milestone...”.

Receivables: four figures and where each comes from

The “Payment status” bar shows what has been received on the contract as a percentage, shaded with what is allocated to milestones, and the unallocated amount beneath it. Under it are the four “Receivables” tiles, and “Where do these figures come from?” opens the source of every number in a few lines.

  1. Invoiced: the sum of milestones that have an invoice
  2. Receivable: invoiced minus linked receipts
  3. Overdue: the receivable of milestones past their due date
  4. Ready to invoice: completed milestones that have no invoice yet
A contract's payment status and its four receivables tiles
A contract's payment status and its four receivables tiles

From the finance side: accounts and transactions

A receipt is an ordinary transaction in the ledger, and like any other it is voided, never deleted. Tap it on the account page and the detail panel shows the project and the “Contract milestone”, both leading to the project page.

The other way round works too: when you book income on a project, the transaction form offers “Settles a contract milestone (optional)” with that project's unpaid milestones, and the transaction is linked to that stage once it is saved. All of a project's income and costs count in “Received”, “Project expenses” and “Cash profit” at the top of the project page.

The company page: every contract with one client

On a company's page, the projects section adds up the contracts of all that company's projects, in a separate box for each currency: “Contracts total”, “Received” and “Receivables”, with any overdue amount in red. Under each project's name its contract amount and receivable are written too.

The “Salary agreement” on the same page is something else: a salary agreement you receive from that company, with pay periods and automatic follow-up. It has nothing to do with the project contract.

Reminders and chasing payment

A milestone sends no reminders of its own; Flowra works out “Overdue” every time from the due date and the receipts, and shows the amount in the project's receivables and on the company page. To chase it, create an action, set its financial context to “Invoice follow-up”, and give it a due date and a reminder; the reminder arrives in the notification bell and, if connected, in Telegram.

Actions with a financial context are gathered on the project page under “Financial context of actions”. From a transaction's panel you can also make an action linked to that transaction with “Follow-up action”.

Signing, Folio and files

In Flowra a contract is a financial record and carries no attached file; the text and the signatures have their own place. The signing date is recorded as the day the contract was created and shows next to the payment terms.

Write the signed text in Folio: the “Collaboration contract” template has the text, the details of both parties, the amount, the date and signatures from both sides. The other party fills in and signs only their own fields through a share link, with no account, and the sheet's export lands in a folder named after the sheet in “My Files”.

Under the contract sits “Contract docs”. “New doc” creates a Knowledge page linked to the contract, for example from the “Contract notes” template for negotiation, scope, requirements and client decisions, and “Attach an existing page” links a page you already wrote. The receipt behind any payment can carry an attached file, like any other transaction.

Project assistant

The “Project assistant” is on the new project page and on the project itself, and on a company's page as the “Company assistant”. Describe the project in your own words and attach or paste a brief, a proposal or the contract text; the assistant asks for what is missing, including the contract value, and then shows a complete plan: company, project, members, phases with their tasks and, if you gave a contract value, the contract with one milestone per phase.

You edit the plan in the same window, and once you confirm it is built step by step through the app's own routes. The milestones never exceed the contract, and if something fails half way, confirming again carries on from there without making anything twice.

Who can do what, and the activity log

Seeing a contract requires seeing the project, and a guest invited to a single project does not see the money section unless their role is finance manager. Every change, from creating a contract to linking a receipt, needs edit rights in the workspace; a viewer can only read.

Every change to a contract or a milestone writes an activity row on the project, the same rule actions follow; a contract is a document several people work on, and “when did this figure change” must have an answer.

On a phone

On a phone everything is the same and only the layout changes: the money cards sit two by two, the chain row becomes a two-column grid so the page never scrolls sideways, each milestone's buttons come in two columns, and the milestone and receipt dialogs slide up from the bottom of the screen.

A complete path: from signature to settlement

This is what you see on the Autumn Launch Campaign demo project in the Northwind Marketing space, and each step is explained in one of the sections above.

  1. Create the contract on the project with its total value and payment terms
  2. Get the text signed by the client in Folio with the “Collaboration contract” template
  3. Split the contract into a deposit, a mid-point delivery and a final delivery
  4. Invoice the deposit and, when it arrives, press “Record receipt”
  5. For each finished stage press “Completed” and then “Issue invoice”
  6. For an overdue amount, create an “Invoice follow-up” action with a reminder
  7. With the last receipt, the contract settles itself
PreviousAccounts and membersNextSalary and obligations

Related pages

  • SolutionMarketing teamsCampaigns from brief to launch
  • SolutionSales and services teamsFrom meeting to contract and payment
  • SolutionFreelancers and consultantsFrom brief to contract and settlement
  • PageFrequently asked questionsEverything people ask about Flowra, in one place: actions and projects, teams and access, files and connectors, meetings and chat, finance, Folio, security and pricing.
Flowra

Flowra is an all-in-one workspace for managing tasks, projects, finances, meetings, and teamwork, powered by AI to keep everything organized in one place.

Solutions for teams

  • Marketing teams
  • Product and dev teams
  • Design and content teams
  • Operations teams
  • Sales and services teams
  • Remote teams

Roles and flows

  • Project managers
  • Freelancers and consultants
  • Meeting to action
  • Actions with financial context
  • Actions with contract context
  • Brief to project delivery

With Flowra

  • All solutions
  • Pricing
  • Frequently asked questions
  • Documentation
  • Contact us
  • Brand kit
  • Design system
Crafted by Karo Studio
SecurityPrivacyTermsCookies
Version 0.16.0