5. Granted
Awarded applications become Grants. This is the screen finance officers spend most of their time on.
The grant detail page
Long vertical page with several cards:
Header
- Grant title, reference (auto-generated), donor name, cycle name.
- Status pill (Awarded / Active / Closed).
- Grant amount, period, currency, contract number.
- "Edit grant" button (Finance/Admin only) for amount, currency, dates, contract number.
Projects card
One row per executing project. Each row shows its Odoo sync status (Synced / Sub-grant Draft / Sub-grant Started / Pending / Failed). Click "+ Add project" to create one — this lands the project in Odoo unless you mark it as "not in Odoo" (used for sub-grant partners that book elsewhere).
The Add / Edit modal asks for:
- Project name.
- Organisational units — the implementing organisational unit. Default for the Odoo company.
- Odoo company (optional override, F2-B+) — pick a different
res.companythan the organisational unit's default. Use only for joint-implementation cases where the booking entity and the executing organisational unit differ. Leave on the default in the typical case. - Analytic code —
[COUNTRY3]-[DONOR3]-[GRANT3]format. Used as the project's Plan 1 analytic account code in Odoo.
What it looks like
| Project | Organisational unit | Analytic code | Odoo project | Status | |
|---|---|---|---|---|---|
| Acme Ethiopia — Civic Voices programme | Acme Ethiopia ETH | ETH-EUX-CVP | #3 | ● Synced | |
| Local partner — capacity building | Acme Ethiopia ETH | ETH-EUX-CAP | — | ● Sub-grant · Started |
Illustration only — your projects card will list every project on this grant with the exact same column structure.
Budget card
The donor-facing budget. One row per category defined on the cycle template (see chapter 12.3). Each row carries:
- Description — optional note shown to the donor.
- Budget amount — what you committed to the donor. Either a manual amount (when the cycle has no detail template) or a computed SUM of detail rows (when it does).
- Allocated — total of per-project allocations for this line. Difference column highlights gaps.
- Odoo column — Plan 2 analytic account reference + a "● synced" tag once the line is pushed to Odoo.
When the cycle has a detail template, each category expands into detail rows (Country Director, International travel, etc.). You can edit units × value inline, add new rows per category, or remove rows. The SUM rolls up live to the category.
What it looks like
The donor-facing budget for this grant. Each line maps to one of the six shared analytic accounts in Odoo (HR · TRV · EQP · OFF · SVC · IND). Currency: EUR.
| Budget line | Description | Budget | Allocated | Difference | Odoo |
|---|---|---|---|---|---|
|
HR
Human Resources
|
Human Resources | € 471.415 | € 20.000 | € 451.415 | HR● synced #7 |
| Detail (11) · derived from cycle template | |||||
| 1.1.1.a | Country Director (40%) | 36 x €2.675 / month | € 96.300 | — | |
| 1.1.1.b | Programme manager (100%) | 36 x €3.140 / month | € 113.040 | — | |
| … 9 more HR detail rows in the live grant — Project officer, Finance manager, Per diems, Seminar costs … … | |||||
TRV Travel |
Travel | € 134.616 | € 20.000 | € 114.616 | TRV● synced #8 |
IND Indirect costs |
7 % of direct subtotal | € 42.430 | € 0 | € 42.430 | IND● synced #12 |
| Grant total | € 648.461 | € 40.000 | € 608.461 | ||
Illustration only — rendered with the real design-system classes so it stays in step as the app evolves. The live screen shows all 27 detail rows under HR and all six categories; the IND row carries a dashed border on the Budget cell to signal it's a computed value, not directly editable.
units field holds the percentage (e.g. 7 for 7%), and the amount auto-computes as (units / 100) × direct subtotal. The value column is unused.
Budget vs Actual card
Per category: Budget, Actual (from Odoo + manual sub-grant entries), Remaining, % spent with a progress bar. Color codes: teal < 85%, amber 85–100%, red > 100%.
What it looks like
| Budget line | Budget | Actuals | Remaining | Spend |
|---|---|---|---|---|
|
HR
Human Resources
|
€ 471.557 | € 0 | € 471.557 |
0%
|
|
TRV
Travel
|
€ 134.613 | € 0 | € 134.613 |
0%
|
|
EQP
Equipment
|
€ 11.200 | € 0 | € 11.200 |
0%
|
|
OFF
Project Office
|
€ 69.878 | € 0 | € 69.878 |
0%
|
|
SVC
Other costs & services
|
€ 1.125.105 | € 3.314 | € 1.121.791 |
0.3%
|
| Subtotal direct | € 1.812.354 | € 3.314 | € 1.809.040 |
0%
|
|
IND
Indirect costs (7%)
|
€ 126.865 | € 0 | € 126.865 |
0%
|
| Total project | € 1.939.218 | € 3.314 | € 1.935.904 |
0%
|
Illustration only — the Spend bar turns amber at 85–100% and red above 100%, so overspends jump out at a glance.
Action buttons (Finance/Admin)
- Save — persist budget edits.
- Save & sync to Odoo — persist + push the budget to Odoo. Creates Plan 2 + Plan 3 analytic accounts and writes per-project budget rows at both category and detail granularity.
- Refresh actuals — pull analytic lines from Odoo and update the Actual column. Per-detail amounts populate
budget_detail_linesper project (visible on each project detail page and aggregated on the grant's EU export).
budget.line per category and one per detail row, each carrying exactly the amount you typed on the project page.