BWPM TRACKHelp & Wiki

Supported pilot and founding tenants

Prerequisites: Invited businesses; only real operator administrators manage offers. Operational acceptance and a concluded processing agreement are required.

  1. Open Administration → Tenants → Founding pilots. Select a provisioned direct pilot without an existing subscription.
  2. Enter Signed processing agreement reference, Included storage, Included AI allowance (or not included) and Known limitations (or none known). Confirm review and choose Create personal offer.
  3. Securely copy the personal offer link shown once and provide it to the named customer. No automatic message is sent. The customer reads the terms and chooses Accept free evaluation.
  4. Check usable access, choose Confirm usable activation; start 30 days and notify the customer of the dates.
  5. Only after the customer chooses Order paid continuation may the operator Accept EUR 49 order. Confirm the start and price guarantee; issue monthly invoices manually. No automatic PayPal collection.

Check: Status, accepting person, trial dates and price guarantee appear in the overview. Customers can Download your agreement record and Record cancellation. For an emailed cancellation, use Record cancellation received by email with its reference. Confirm the end date and arrange any requested final export. The provisioner suspends expired trials and ended contract months without deleting data. No charge without a separate order.

Troubleshooting: A missing migration requires an explicit operator migration. Existing paid subscriptions cannot be selected. Five offers maximum; cancellation does not reset the count. Contact the operator for lost personal links. Check the provisioner if suspension is delayed. The processing-agreement reference does not replace a signed complete agreement.

Explore correspondence, minutes and E-POST

Prerequisite: a browser; no portal account is needed to read the product overview.

  1. Open /produkt.php and choose Letters & minutes.
  2. Read the three workflow cards for correspondence, meeting minutes and E-POST. Each distinguishes preparation, review/release and subsequent delivery or follow-up.
  3. For E-POST, check provider access, enabled delivery and PDF validation requirements. A provider acceptance does not by itself prove delivery.

Check the result: The page explains implemented workflows and their prerequisites. It neither sends documents nor activates a provider. If a section is missing, check the installed website version; the DE/EN switch changes the product language.

Own annual business overview

Requires accounting permission and access to the projects. The central cost cockpit remains restricted to its existing administrator role.

  1. Open Office → Annual business overview (Geschäftsjahr). The Central cost cockpit is now under Projects; it covers construction project costs, not your own outgoing revenue.
  2. Select Year and Project, then Update. The filter applies to all totals, project rows and the monthly plan curve.
  3. Invoiced net sums issued outgoing invoices by invoice date. Released but unsent invoices count; drafts, test documents and cancellations do not. Cumulative invoices contribute their increment, including prior-year baselines.
  4. Receipts gross sums recorded payments by payment/value date, including assigned historical bank receipts. A receipt linked through both paths counts once. Unassigned bank transactions do not count.
  5. Annual planned receipts net shows January–December from current active payment plans and additional liquidity values. Compare project rows and the monthly curve; open a project's billing page or Open liquidity planning for details.

This plan is separate from actual receipts; the page does not add actual and planned amounts. The forecast excludes VAT, invoice-specific deductions and opening balances. Changes to active plans also affect historical-year forecasts. Project revenue is not profit. Missing amounts: check year, project access, invoice status, payment allocation and plan validity. Overlapping cumulative periods that cannot be resolved reliably produce an explicit error instead of a guessed total.

Liquidity planning from payment plans

Requires access to Liquiditätsplanung (administration, management, commercial/accounting or project-manager role) and access to the relevant projects. Save active service lines or legacy flat-rate tiers in the payment plan first.

  1. Open Office → Buchhaltung → Liquiditätsplanung.
  2. Select Projekt and Horizont, then Aktualisieren. The project filter applies to the curve, table, summary cards and additional values.
  3. Compare the expected monthly net receipt curve with Erwarteter Zahlungseingang netto in the table. Hover over a point for its amount. The cards always cover the next 3, 6 and 12 months from the current month, independently of the table horizon.
  4. Monthly lines count fully in every applicable month. Weekly lines count each service week once across month boundaries. Service lines replace old tiers of the same plan; only legacy tiers prorate partial months. Cumulative billing contributes only the monthly increment.
  5. Expected receipts follow an invoice on the first day of the next month plus the customer payment term (or plan term without a linked customer). Earlier service months can therefore contribute to the current receipt month.
  6. Under Zusätzliche planbare Auftragswerte, enter a project, month, description and net amount, then Planwert ergänzen. These values enter both the planned and receipt columns in that month; remove them with Löschen when no longer required.

Check Aktive Zahlungspläne im Filter if values are zero: verify project access, active plan and active lines, validity periods and payment terms. This is a net contract forecast, not an account balance: VAT, actual payments, invoice-specific deductions and opening balances are not included. Do not add values already covered by a payment plan.

Assign historical bank prepayments

Prerequisites: accounting permission, project access, installed migration, positive imported EUR transaction and an existing project contract/payment plan. No old invoice in TRACK is required.

  1. Open Office → Bankumsätze. Import the CSV using Prepare preview, select transactions and Import selected income / Import selected expenses.
  2. Under Kontobewegungen, Gross amount is the imported gross payment. In the transaction row, check Project / payment plan and Invoice reference. A unique best suggestion is preselected; tied matches require your selection. Enter a missing invoice reference yourself.
  3. Choose Assign payment to save the historical prepayment directly. No separate project selection or intermediate confirmation is required. A missing bank value date or missing accessible payment plan is shown at the transaction; follow that message. Other save errors retain your selection and reference.
  4. Check Historical prepayment with the correct project, contract and reference in the listing.
  5. Open the cumulative draft for that contract under Office → Rechnungen. Under Already received → Previous invoice receipts and historical prepayments, select the receipts and choose Apply selected previous receipts.
  6. Check every deduction, the payable amount and the PDF. New cumulative drafts generated by the payment plan include available receipts; approval checks them again. Each source payment is deducted once per cumulative invoice.

The invoice date must be on or after the payment date. Existing drafts need explicit selection. If no contract appears, create the project's payment plan first. Reconcile and remove duplicate manual entries under Already received before applying linked receipts. Remove historical assignment is available before the receipt is used. After use, clarify the deduction on the invoice first; released documents stay unchanged. The same bank transaction cannot also be assigned as a normal invoice payment.

Reimburse half of an expense

Prerequisites: own expense or accounting permission, an unapproved and unreimbursed claim in an open month, and installed reimbursement migration. Open Meine Spesen (expenses.php).

  1. For a new claim, enter the full receipt amount under Neue Auslage and select Reimburse 50% before Speichern.
  2. For an existing claim, find it under Einzelpositionen and choose Reimburse 50%. Choose Reimburse 100% to restore full reimbursement.
  3. Check the saved confirmation, reimbursement amount, original amount and monthly total. For example, a 100 EUR receipt yields a 50 EUR reimbursement. Repeating Reimburse 50% keeps 50 EUR.

The receipt remains unchanged. For recurring expenses, the choice applies to the individual monthly claim; later months start with 100%. If you correct the original amount through the recurring series, the selected percentage is preserved. Approved months and approved or reimbursed claims cannot be changed. If the controls are missing, check the status and ask administration to install the migration. Expense delegation permits choosing the percentage for a new entry only; it gives no editing rights over existing claims.

Payment QR code on invoices

Requires company administration and the document layout migration. Under Studio → Document layout, enable Payment QR code on invoices for the selected company and save. Maintain the company name and valid IBAN in the company profile; this integration also requires BIC for non-German accounts.

  1. Enable the option for your craft company. Leave it disabled for companies whose invoices should have no QR code.
  2. Create and approve the invoice through the existing accounting workflow.
  3. Check the QR block on the final page: beneficiary, IBAN, invoice number and the payable amount after deductions must match the invoice.
  4. Scan with a banking app supporting EPC payment codes. The app prepares the transfer; the payer must review and authorize it.

Disabled by default. No QR on drafts, test documents, cancelled or paid invoices, or non-positive amounts. Invalid bank details block PDF creation when enabled. The code is generated locally. It contains the amount at issue, not a live balance; later payments do not rewrite archived PDFs. Existing invoices remain unchanged. No automatic payment or automatic marking as paid.

On continuation pages of newly generated offer PDFs, check the offer label, offer number and date. Previously archived PDFs remain unchanged.

Offer service text, project and customer numbers

Requirements: accounting permission and project access; catalogue selection additionally requires handcraft/catalogue permission. Project creation requires administration. The offer customer details migration must be installed.

  1. Under Projects → New project, leave Kürzel (optional) empty for an automatic code such as P-000123. Enter the project name and save. Existing explicit codes remain unchanged. Every project has a permanent project number, shown in its overview.
  2. Open Office → Offers → New offer and select the project and recipient. Saving links an existing accounting customer or creates one. Under Office → Customers the number K-000456 appears next to the customer. It is retained for subsequent offers and commissioning.
  3. Add a catalogue article to the offer. Short and full long text are copied as a snapshot, up to 100000 characters. Later catalogue edits do not change that offer. Only text present in the catalogue can be copied.
  4. For an older unsent offer without a number, choose Assign customer number. Open PDF and check project/customer numbers in the document details and the complete service text, including continuation pages.

Check and help: Project numbers and customer numbers are tenant-local, permanent, and may have gaps. The sequence does not restart every year. Offers without a project have no project number. Ambiguous or inactive customer matches require review in Customers; no approximate name matching is used. Missing catalogue descriptions must be maintained before adding the article. Previously sent PDFs are not modified. The new number assignment neither issues an invoice nor sends an offer.

Sign an offer

Requirements: accounting permission and project access. The offer uses its author's signature.

  1. The author opens their user profile and saves their signature.
  2. Open Office → Angebote → the offer and check the PDF. The signature appears above the author's name.
  3. Approve and send through the existing offer delivery section. A new delivery without the author's profile signature is rejected.

Check the author if a different person created the offer. Previously stored delivery PDFs remain unchanged; updating a profile signature does not replace a sent document. This is a visible signature image, not a certificate-based PDF signature.

Delivery notes, material consumption and invoices

Requirements: tenant administrator, enabled handcraft module, project access and installed order material migration. Invoice transfer additionally requires accounting permission and a draft for the same project and customer company.

Path: Project → Craft orders → open order → Delivery notes and material.

  1. In GC ONLINE PLUS export one EUR document in UGL 5.0. Under Find supplier select the supplier, choose the UGL file (maximum 2 MiB) and Prepare preview. Supported: OR receipt, AB confirmation, LS advice, LF final delivery note. Invoices, multiple documents, unsupported records and malformed files are rejected.
  2. Compare source customer number, supplier and order reference with the target order. Confirm Supplier, customer number and target order checked and choose Import checked document. A differing reference needs your explicit assignment. Nothing is billed at this step.
  3. Under Order documents select the document, open Original file and then Review on a line. Only LF allows consumption. Supplier plus exact article number proposes a catalogue match. Otherwise use Find catalogue product, Search products and Catalogue product. Unit differences require clarification; TRACK does not convert units automatically.
  4. Check source supplements, alternative lines and actual delivery. Enter Confirmed delivered quantity, Consumption (excluding returns), Returns, Service date, Net selling price per unit, VAT % and Review note / deviations. Choose Save checked quantities. Consumption plus returns cannot exceed delivery. Surcharges are retained in the original and must be assessed manually; they are not silently added to selling prices.
  5. Select Invoice draft (latest 20 matches), enter Quantity to bill and choose Transfer material. If needed, use Find invoice draft by customer. The billing plan must link to the order's customer company and its service period must include the material date. Review the resulting invoice line and add project hours through the existing hours section.

Check and help: In invoices includes draft allocations. Repeated upload of the identical document does not duplicate it. A changed file with the same supplier, type and reference is blocked for manual clarification. Imported supplier documents are immutable. A stale form requires reload and comparison. On upload failure choose the file again; previews expire after 30 minutes. Removing a material line from a draft, or deleting the draft, releases its quantity. Billed article, price and date remain locked while allocations exist. Later catalogue changes do not alter saved prices. No automatic GC fetch, live tracking, invoice transmission or stock booking is performed. Corrections to already issued invoices use the existing accounting process, not rewriting the source document.

Browse catalogue products by supplier

Requirements: Tenant administrator, enabled handcraft module and installed catalogue migration. Open Material catalogue → Browse products.

  1. Select Supplier or keep All suppliers. With more than 20 suppliers, use Find supplier, choose Apply filters and select a result.
  2. Optionally enter an article, manufacturer or number and choose Apply filters. An empty search shows active products too.
  3. Use Next and Previous to browse 50 products per page. Open a product to view its saved supplier prices.

Check and help: Filters remain applied when changing pages. No results? Clear the search or select Without supplier. Supplier assignments come from saved supplier prices, not manufacturer names. A waiting import does not yet add products. Browsing performs no external API requests. If the index installation fails, the administrator can run scripts/diagnose_catalog_search.php for the affected tenant. The default is read-only; --apply-indexes explicitly retries missing indexes. Report the index name, SQLSTATE and database error number. A file rollback can leave completed indexes in place. With the search index installed, search matches word beginnings in product texts and manufacturer names, and prefixes of article numbers. For example, Heizk finds Heizkörper. If no indexed match exists, TRACK searches literal text fragments. Autocomplete prioritizes product names beginning with the entered text when enough suggestions are available.

Catalogue products, historical invoices and CSV receipts

Prerequisites: accounting permission and project access; catalogue products additionally require tenant administration and the enabled handcraft module. The accounting history/catalogue migration must be installed. Keep the original Odoo invoices for reconciliation.

Add products to an offer

Path: Office → Angebote → open a draft → Add catalogue products.

  1. Enter at least two characters under Article, manufacturer, number, EAN and select one autocomplete result. Up to eight results are shown; refine the search if necessary.
  2. Check the displayed net sales price, unit and VAT. Enter Quantity and choose Add to offer.
  3. Check the offer position and total. The existing PDF includes the sales description and price, never internal purchase costs. Catalogue changes cannot change the copied position.

If a product changed, search again. A positive sales price and matching offer VAT rate are required. Text exceeding 1500 characters must be shortened or entered as a free position. Released offers cannot receive new positions. Private individuals can be selected when creating an offer; see the instructions below.

Offers and invoices for private individuals

Prerequisites: accounting permission, project access and installed personal-recipient migration. An administrator maintains the person’s own postal address in Administration → Adressbuch; an employer’s address is never substituted.

  1. Open Office → Angebote → Neues Angebot. Under Recipient type, select Private individual. Enter at least two characters in Search by name or email and select the correct result by address and email. At most 20 results appear; refine the search if needed.
  2. Complete the fields Street and house number, Postal code, City and Country directly in the offer. Address addition is optional. These values are saved with the offer, without changing the address book. Selecting another person replaces the address fields. Choose Communication by post and/or Communication by email; email delivery requires a valid Email in the recipient fields. Both communication methods can be selected together. These preferences also carry over to billing after acceptance; selecting them does not send anything. Enter subject, project and terms, then choose Angebot anlegen.
  3. Add positions and check the PDF recipient. Use Freigeben, then Beauftragt → zur Abrechnung übernehmen after acceptance. The customer and payment plan reuse the frozen offer address. Monthly positions become billing phases; other positions remain in the offer and still require invoice entry.
  4. For a standalone invoice, open Buchhaltung → Kunden → Neuen Kunden anlegen. Select Private individual, search and select the person, then explicitly choose Copy personal billing details. Review billing address and delivery and choose Kunde anlegen. Select that saved customer in the existing outgoing-invoice form.

Check and troubleshooting: later address-book or customer edits do not change existing document snapshots. Equal names are distinct persons. If the contact changed, search and select again; if the customer changed, reload and compare your inputs. A person already linked to a customer must use that record. The identity of an existing customer cannot be replaced. Missing address fields are marked individually and can be completed directly in the offer. Earlier CSV imports did not include postal addresses. No business or VAT ID is required for a private recipient. Referenced contacts cannot be deleted. If both contacts already have a customer record for the same seller, reconcile with accounting before merging. Merging retains frozen document addresses. Input remains after validation errors.

Create a project while preparing an offer

Path: Office → Angebote → Neues Angebot → Project. Project creation requires administration permission; selecting an existing project requires project access.

  1. Choose Create new project. The existing project administration opens in a new tab.
  2. Enter Kürzel and Projektname, review the other project fields and choose Projekt anlegen.
  3. Return to the offer tab and choose Refresh project list. Inputs are retained and no offer is created by refreshing.
  4. Select the new project, then complete the offer and choose Angebot anlegen. Check the project in the saved offer.

If creation fails, correct the project form. If the project is missing, check that it is active and accessible. Without administration permission, ask an administrator to create it.

Import historical invoices

Path: Buchhaltung → Import historical invoices.

  1. Use Search by description to find the existing contract/payment plan and select it.
  2. Upload the Odoo account.move CSV using Read CSV. Supported headers: Datum, Ingesamt unterzeichnet, Journal, Kunde, Nummer, Referenz, Status. Maximum 8 MB / 1000 journal rows. Only positive posted customer invoices can be selected; bank rows are excluded.
  3. For each intended invoice, choose Assign to selected contract. Check the customer and invoice number. Enter net and tax amounts, service period and due date from the original. Select New partial amount or Cumulative total; cumulative originals additionally need previously invoiced net and prior gross receipts shown on the original, explicitly 0 if none.
  4. Confirm that CSV totals are gross amounts in EUR and choose Validate and preview. Net plus tax must equal the CSV total. Inspect the original amount, net increase and previous receipts. The net increase, rather than repeated cumulative totals, contributes to subsequent additive cumulative summaries.
  5. Confirm the reviewed assignment and choose Import historical values. Check Import log and open imported invoices. Original numbers and source data remain stored, without allocating TRACK invoice numbers or sending regenerated documents.

Posted does not mean paid. Reimport skips identical invoices and rejects conflicting numbers. Missing dates or tax values are never inferred. For changed data, resolve the discrepancy before retrying; no partial invoice import is committed. Incorrect selected invoices can be deselected before confirmation. Imported invoices are immutable; use the Odoo original, not a newly generated TRACK PDF. Credit notes and corrections require separate reconciliation.

Import and allocate actual payments

Path: Office → Bankumsätze.

  1. Upload the bank CSV under Kontoauszugsdatei and choose Prepare preview. The supplied format with Buchungstag, Wertstellung, Betrag, Währung, Sender, Empfänger and Verwendungszweck is supported.
  2. Under Select transactions, check or uncheck each intended row. Choose Import selected income / Import selected expenses. Only checked EUR rows are stored; importing itself does not mark an invoice paid.
  3. Under Kontobewegungen, review the suggested invoice, amount and reference. Choose Zahlung bestätigen only for the correct allocation. Partial payments leave a remaining balance. Negative movements are not incoming payments. Reconcile amounts exceeding the outstanding balance separately.
  4. For a cumulative draft linked to the same contract, enable Positionen enthalten den gesamten kumulierten Leistungsstand and save. Under Bereits erhalten → Receipts from previous invoices, select the actual payments and choose Apply selected previous receipts.
  5. Check the payable amount and the PDF. A dash in net/VAT columns means the payment or deduction has no separate net/VAT allocation. Its full amount including VAT is deducted in the gross column, which also shows the remaining balance. Each linked payment is deducted once per cumulative invoice and remains allocated to its original invoice. It may correctly appear again in a later cumulative invoice.

Troubleshooting: Odoo journal bank rows are not imported as bank statements. Known CSV transactions are skipped on re-upload, including reordered exports; possible matches to legacy imports require manual review. Two identical CSV rows are rejected for reconciliation. Resolve existing manual previous-receipt deductions before linking actual payments, to avoid double deductions. A payment used in a cumulative invoice cannot be deleted/unmatched until that use is resolved. No automatic allocation based solely on a matching amount. Inputs and selections remain after validation errors; expired previews require a fresh upload.

Record project hours and bill them

For a new entry, Employee defaults to the signed-in user if that user is eligible for the project. Authorised managers can select someone else. Editing retains the recorded employee; validation errors retain the submitted selection. If your account is missing, ask administration to check company assignment and project access.

Reuse after cancellation: Accounting permission and project access are required. After a complete cancellation has been issued, open Office → Rechnungen → the new draft. Set and save the matching project and service period. Expand Time sheets / Time tracking → Available hours, select the original entries, check rates and choose Ausgewählte Stunden übernehmen. Check the positions and totals. The original and cancellation retain their archived hours; the new draft locks the entries again. Do not import duplicate CSV rows. If hours are missing, check the issued cancellation, period and whether another draft already uses them. A cancelled status without an archived cancellation is insufficient.

Select many entries: open the invoice draft → expand Time sheets / Time tracking. The lists In this invoice and Available hours also start collapsed and show their entry counts. Expand the required list to view or select entries. On a transfer error, the affected list stays open. This section starts collapsed; click its heading again to collapse it without losing input. It opens automatically after a time-import error. The header checkbox Select all hours selects or clears all available entries shown for the service period. Uncheck individual rows as needed; the counter shows the selection and the header checkbox shows a mixed state for partial selection. Check each employee’s net hourly rate, then choose Ausgewählte Stunden übernehmen. Selecting rows alone does not save or import them. Long activities wrap; on narrow screens each row displays labeled fields. Already billed entries are excluded from selection. If more than 500 entries are selected, transfer them in batches of at most 500.

Accounting can select only active employees assigned to its own company with project access. External project participants cannot be selected or transferred to an invoice. If an employee is missing, administration must check the user’s company assignment and project access.

Prerequisites: the administrator assigns fitters to the project with Site reporting permission. The handcraft module must be enabled. Employees capture only their own time. Accounting users with project access and administrators manage rates and invoice transfer. Role simulation cannot make changes. The time-capture migration must be installed.

Path: Projects → open project → Project hours.

  1. Select the project if needed. Under Record hours, enter Date, Hours and Activity. Enter decimal hours: 1.5 means 90 minutes.
  2. Select Save hours and check My time entries. Use Edit or Delete for an open entry. The limit is 24 hours per person and day across projects.
  3. Accounting checks the project entries and sets Net hourly rate. Employees do not see rates or colleagues' entries.
  4. Under Office → outgoing invoices, open the invoice draft for the same project. Set and save its service period. Expand Time sheets / Time tracking.
  5. Select entries, check each net hourly rate and USt. %, then choose Ausgewählte Stunden übernehmen. A positive rate is required. The selected hours become one summary position with total hours, unit price and net amount per hourly rate and VAT rate. The invoice PDF appends a time sheet with date, employee, activity, hours and rate when enabled under Time-sheet attachment. Progress invoices default to no appendix; final invoices default to including it. The setting can be overridden per invoice; see the payment-plan workflow guide. Different hourly rates receive separate invoice positions, for example 100 hours at EUR 100 and 80 hours at EUR 90. For an existing draft choose Consolidate existing hours in the same section. Check the PDF appendix as well as the invoice totals; released documents retain their frozen details.
  6. Check the positions and totals. The time entries now show Assigned to invoice and cannot be edited or billed again, even while the invoice is a draft.

Corrections: remove the relevant position from the draft with Position entfernen, correct the time entry and import it again. To change only the service text, choose Bearbeiten on the position, edit Leistung and choose Position speichern. Check the saved label and PDF preview. Hours, rates and VAT remain unchanged. Custom labels survive consolidation; differently named positions remain separate. To remove the last position, use the existing draft deletion workflow or add the required replacement first. Approved invoices stay locked; assigning hours does not itself release or send an invoice.

Troubleshooting: if a project is missing, check project assignment, role, module activation and archived status. Missing hours in the invoice may be outside its saved service period or already assigned. After a concurrent change, reload and review before resubmitting. Validation errors retain entered fields; correct the highlighted field. If saving has an uncertain result, inspect the overview before creating another entry.

Import DATANORM ZIP catalogues

If import storage is missing or not writable, ask the administrator to prepare catalog-imports as www-data:www-data, mode 0700. Missing PHP ZIP and incomplete database schema are reported separately. A missing worker leaves uploaded jobs waiting.

Prerequisites: tenant administrator, enabled handcraft module, supplier in the company master data, installed import migration and running import worker. Path: Material catalogue → Import catalogue.

  1. Under Upload file, search and select the supplier. For a pure Viessmann catalogue, enter Viessmann as manufacturer; leave it blank for a mixed wholesaler catalogue.
  2. Select the ZIP and choose Upload and prepare preview. Supported: DATANORM 4 EUR. Maximum ZIP size 256 MiB; server limits also apply. Closing the page does not stop processing.
  3. Use Refresh progress until Preview ready. Check file headers, dates, mapped fields, samples and counts. Use the exact article-number and status filters, and page through results. Open Long text / source for detail.
  4. Exclude individual eligible entries with Skip record; undo with Include record. Invalid records and conflicts are excluded automatically. Correct their source/identifiers before a fresh import.
  5. Choose Import decision: new only; new plus supplement; or explicit source-field/price update. Supplement retains existing texts and prices. Manually maintained sales prices, VAT and calculation snapshots remain unchanged. Enabled sales pricing rules may update rule-managed catalogue prices.
  6. Confirm that you reviewed the mapping, samples, counts and exclusions, then choose Confirm import.
  7. Refresh progress and review Import history. Completed does not mean every row was imported: inspect conflicts and skipped rows. Open the linked article to check text, supplier, list price and source date.

Price check: list prices alone are not purchase prices. Unknown EK is displayed as unknown and cannot be used in a calculation until an actual purchase price is saved in the catalogue. Discount-group records are retained; discounts are not automatically calculated. Group-only ZIPs save dictionaries for subsequent imports, not articles.

Troubleshooting: if waiting does not progress, have the administrator check the worker. After upload errors, normal fields remain; select the file again. An interrupted worker resumes without duplicating committed articles. Stop after current batch stops further work but does not undo already imported articles. Records changed since preview become conflicts. Inspect the log and prepare a fresh upload after source corrections.

Companies during address import

As administrator, open Adressbuch → Import and upload a CSV with a Company/Firma/Unternehmen column. Under Companies from the import, review new and existing companies. Select the contacts and confirm the checked import. Company names are reused or created through the central company directory. Skipped rows create no company. Name1/Name2 without a Company column remains a contact name: fill the company field explicitly. Postal addresses remain contact addresses and are not guessed to be company addresses. After import, check Unternehmen and the related address-book contacts.

Send an offer

Prerequisites: accounting permission, access to the offer project, approved offer, installed offer delivery migration. Configure email in the existing company mail settings; configure E-Post under Administration → Postdienstleister (postal_provider_1_2_300.php).

  1. Open Buchhaltung → Angebote and the offer. Check the PDF and recipient, then choose Freigeben.
  2. Under Angebot versenden, check the email and postal address. Review the displayed E-Post mode: Test makes no physical delivery; Produktiv dispatches a letter. Postal offers currently support German addresses and standard monochrome, single-sided printing.
  3. Confirm PDF und Empfänger geprüft; Versand bestätigen and choose Per E-Mail senden or An E-Post übergeben. To use both channels, confirm each separately.
  4. Check the result in the delivery section and Historie. Accepted email means the transport accepted the message, not that the recipient read it. E-Post acceptance includes a letter ID; it does not prove postal delivery. Test acceptance never marks the offer sent.
  5. If the result is unclear, check the mail server or E-Post records first. Under Versand nach externer Prüfung klären, select the verified outcome, record evidence (20–700 characters), confirm and choose Klärung speichern. Only a confirmed non-acceptance permits another attempt. Never assume a timeout means no delivery.

For company recipients, the central email in Unternehmen takes priority; the company profile and legacy contact email are used only when preceding fields are empty. Correct missing or invalid addresses there and reopen the offer before its first delivery. The first attempt freezes the PDF and recipient snapshot. Later master-data changes cannot alter them. Editing is blocked while delivery is pending, uncertain or accepted. A safely failed attempt with no other accepted channel allows correction. The shared PDF endpoint returns the frozen document. No automatic retry or background dispatch occurs.

Find offer articles

With accounting and catalogue permission, open Buchhaltung → Angebote and a draft offer. Under Produkte aus dem Artikelstamm, type at least two characters. Up to eight suggestions show manufacturer, article number, net sales price and unit. For a broad term such as Rohr, narrow the search when more matches are reported. Select a suggestion with the mouse or arrow keys and Enter, enter Menge and choose In Angebot übernehmen. Changing the query clears the selection. To add further articles, search and select again after each addition, then choose In Angebot übernehmen. There is no one-article limit. If TRACK reports an already used request, reload the offer and select the article again. Catalogue prices are copied as a snapshot; later changes leave the offer unchanged. If the price or article changed while editing, search again and confirm the current selection.

Offer PDF layout

Generate the PDF from the offer under Buchhaltung → Angebote. Positions appear as a table with quantity, net unit price and total. Optional items are labelled and excluded from the main total. Check the separate net, VAT and gross summary, validity and payment terms. Long offers repeat the table header on continuation pages. The shared document frame, logo, fonts and barcode settings come from the company Studio. Existing saved or sent PDF files are not changed by this layout update.

Allow a colleague to enter expenses

Prerequisites: active accounts in the same tenant and the installed expense entry migration. No administrator role is needed.

  1. Open Meine Spesen → Spesenvertretung.
  2. Select Kollege and the Von/Bis dates, then Spesenerfassung erlauben. Only the owner can grant this permission.
  3. The colleague opens Neue Auslage and selects the owner under Spese für, then enters the expense and optionally attaches a receipt. Save using Speichern.
  4. The expense appears in the owner's records. The audit records both owner and creator. This permission grants no access to earlier receipts, recurring expenses or accounting approval.
  5. Use Widerrufen under Spesenvertretung to stop future entries immediately. Permissions also end after Bis. Existing entries remain.

Projects must be accessible to both people. If permission has expired or been revoked, saving is rejected and entered fields remain; select the receipt file again after an error. Check the owner before saving. No notification email is sent when granting this entry permission.

Invitation emails and first password

As tenant administrator, open mail_designer.php (Mail Designer) to configure the System-Absendername, branding and common footer for your company. The invitation body is a standard text, not an editable welcome template; it names the tenant portal. Under Benutzer, choose Passwort-Link senden to send a fresh invitation. Earlier unused invitation links are replaced. Open the latest link, enter the password twice and select the save button. The link is valid for 72 hours and is consumed only after a successful password save. Closing the window does not use the link. No completed login is needed to set the first password. If the form session expires, reopen the latest link and enter the password again. After saving, sign in at login.php.

Apply a markup to list prices

Prerequisites: tenant administrator, enabled handcraft module, installed pricing migration, supplier list prices. A scheduled catalogue import worker continues work after closing the page. Path: Material catalogue → Sales pricing rules.

  1. Under Define markup, leave supplier and commodity group empty for the default rule. Enter 10 in Markup %, select Rule enabled and choose Save rule. EUR 55.00 net list price becomes EUR 60.50 net sales price, rounded to cents.
  2. Optional: use New rule for an exact supplier and/or commodity-group code. Priority is supplier + group, supplier, group, default. Use the rule link to edit or disable it.
  3. Under Update existing articles, leave Also replace manually maintained sales prices unchecked to protect manual prices, including explicitly maintained zero prices. Choose Prepare preview.
  4. Check the first 50 active articles and overwrite policy. Confirmation covers the whole catalogue existing at preview time. Confirm the checkbox and choose Confirm update.
  5. Processing starts immediately in small batches while this page is open. Counters refresh automatically. Existing queued runs also resume on opening the page. Use Refresh progress and check Update log. Open an article to verify its new net sales price and supplier net list price.

Enabled rules apply to unset prices in future imports and to rule-managed prices when their supplier price is saved. Changing a rule alone does not reprice existing articles. Existing calculations, offers and invoices retain their stored prices. In the article form, Sales price maintenance can protect a price using Set manually (protect from rules); editing the price itself also protects it. Disabling a rule retains the last calculated price.

Troubleshooting: missing positive list prices, equally ranked supplier prices or changes since preview cause skips. Add a more specific supplier rule if needed. Reload after a concurrent rule change and prepare a fresh preview. If Automatic processing has not started yet remains visible, reload with Ctrl+F5 and check that JavaScript is enabled. If No progress confirmed appears, ask administration to check the catalogue worker; do not create another update. If a request cannot be confirmed, automatic processing stops; use Refresh progress to check before continuing. After closing the page, a scheduled catalogue import worker is required. Cancel remaining update retains completed changes. Validation errors retain form input. Unknown purchase prices remain unknown; a list-based sales price does not establish an actual purchase cost.

If preview preparation fails, no confirmation form appears and an older preview is discarded. Save a pricing rule first when prompted, then choose Prepare preview again. An expired preview must also be prepared again.

Prepare catalogue connections

Prerequisites: administrator permission in the current tenant, enabled handcraft module and installed catalogue connection migration.

Path: Material catalogue → Catalogue connections.

  1. Open GC-Gruppe / ONLINE PLUS or Viessmann.
  2. Enter the supplier-issued Interface address (HTTPS), optional API documentation (HTTPS) and Customer / partner number. Addresses must not contain credentials, query parameters or fragments.
  3. Fill only the credential fields issued for that interface. Empty fields keep saved credentials. Use Delete saved value to remove a credential.
  4. Select Save access configuration.
  5. Check Access prepared. This confirms local storage only: no connection test, product import or price update is performed yet.

Troubleshooting: missing storage requires the operator to install the CLI migration. Normal fields remain after validation errors; enter new credentials again. Reload after a concurrent configuration change. Obtain GC Open Masterdata/IDS integration documents or Viessmann trade catalogue interface documents from your supplier; the public Viessmann heating-equipment API does not document a general trade catalogue. Products can be maintained manually or imported through the separate DATANORM ZIP workflow.

PayPal checkout: select the PayPal button after confirming the booking details. TRACK creates the subscription on the server using the saved price and VAT rate. In Sandbox, sign in with a separate personal Sandbox buyer account. Closing the PayPal window does not confirm a payment. If subscription creation cannot be confirmed, contact BWPM with the displayed booking number; do not start a second booking. Only a verified payment webhook starts invoicing and provisioning.

German businesses can book without a VAT ID, tax number or business evidence. Complete company and billing details and confirm business use, then submit Buchungsdaten bestätigen & direkt zu PayPal. German VAT IDs are recorded without an external check. Foreign business checkout requires a valid VAT ID confirmed by VIES; unsupported countries require clarification with BWPM.

Pilot registration: customer type

Prerequisite: an individual pilot invitation; no administrator role is required. Open the invitation link to reach the booking form.

  1. Under Customer type, choose Business or Private, then select Apply customer type.
  2. Business: complete the company and billing details; VAT ID is optional for German businesses and confirm the required declarations. Select Buchungsdaten bestätigen & direkt zu PayPal.
  3. Private: the company and VAT ID fields are hidden. Registration is being prepared; checkout remains disabled and no booking is created.

Check: a valid business submission opens the PayPal step. Switching customer type alone never creates a booking. For foreign customers, invalid VAT details or an unavailable validation service block checkout. Entered text and checked declarations remain after validation errors. Private registration cannot currently be completed, including in Sandbox.

BWPM TRACK 1.2.626

How BWPM TRACK works

Public help · Sign in for project-related guidance.

BWPM TRACK records daily construction performance, compares it with the plan due to date and forecasts completion from the achieved pace.

This wiki is publicly readable. Project data, names, reports and evidence remain protected by sign-in and role permissions.

Project review – read only

Attendance questions by email: The assistant checks the authorized project overview before accepting an immediate clarification. Name placeholders are not sent as a finished clarification. Reply in the same email thread with the full name and, if ambiguous, project and meeting date. Repeated signature/quote lines are encoded losslessly for the local model. A context limit reached during research explicitly marks the analysis incomplete; it is not evidence of absence. Narrow the date range. Existing failed requests are not automatically resent.

Outgoing BWPM mail closes with BWPM Assistenz instead of the author name. Personal templates remain stored in Mailgestaltung but are not used for BWPM delivery. Company legal details remain. Check the closing in a test message; document authors and free text are unchanged. Tenants retain their own signatures.

After resolving the project, the assistant searches names and companies in released attendance data. Multiple matches produce a concrete choice. Reply to that message with the surname and, for identical names, the company. The supplied thread retains the original question and the choice. This is not a complete project address book; a matching name alone is not attendance evidence for a particular meeting.

Mail and chat: After coordinated gateway/worker installation, mail uses a dedicated profile allowing up to ten minutes per local model call; help keeps its short profile. Oversized input is rejected explicitly. If track_ai_mail_profile_required appears, the operator must update the gateway first. Automatic background processing in chat is not included.

ZIP protocol packages: No fixed document count or compression ratio. Mail up to 50 MiB and decoded documents up to 256 MiB in total. Model context and OCR time limits still apply. For external PDF requests over 49 MB, resend with [KI: Nur lokal] or split for visual/layout review; nothing is sent to OpenAI beforehand. No silent partial review.

Requires an account assigned the system role Projektprüfung – nur lesen by system administration under Benutzer und Projektrollen → Bearbeiten → Systemrolle. This role covers existing and future projects within this tenant; delegation and additional project roles cannot elevate its rights.

  1. Administration selects the role and saves the user. Accounting access is disabled for this role.
  2. Sign in and select a project on the Project review – read only start page.
  3. Read the project overview, procurement orders, project invoices, change-order list and accessible documents. Released file notes and meeting PDFs remain subject to their existing permissions.
  4. Check that internal accounting, expenses, administrative pages and modification requests are denied.

Only explicitly approved read routes are available. Unapproved editors, calendar, communications, mobile API and CardDAV remain blocked; a blocked link is not an invitation to elevate permissions. Report the required reading workflow to administration. Internal document folders remain protected. This role does not by itself connect a mail assistant or transmit project data to an AI provider.

Optional BWPM mail connection

Requires the separate local mail-reader installation and active BWPM Assistenz account (ID 18) with this role and no accounting flag. The role alone does not install the connection. Only Martial and Sonja as verified, enabled senders can request it.

  1. Send an email to assistant@bwpm.de with subject TRACK: Projektliste.
  2. For details, use the unique project code in the subject, for example TRACK: GLH, and ask for the change-order status and amounts.
  3. Check the source IDs and retrieval time in the reply. If selection is ambiguous, resend with one exact project code.

The reader provides project master data, procurement orders, the change-order register and contractor invoice register. Released protocol texts and released, sent business project letters can also be read. Drafts, private or projectless letters, original PDFs, item calculations and internal accounting are excluded. Use Protokoll-ID 101 or Brief-ID 201 with the project code to select a document; Textseite 2 requests the next text segment, not PDF page 2. The assistant chooses the required read operations from the question and available context, also when attachments are present. For example: Wann war Herr Hempel beim BV NIK in den Baubesprechungen anwesend? Ask freely, for example Wann hat Herr Hempel teilgenommen? or what was agreed about dewatering. No TRACK keyword is required. The assistant can search projects, read protocol items, updates, attendance and letters, and retrieve further result or text pages itself. Up to three completed requests and answers in the same owner’s reply thread provide context; previous answers are not current evidence. Check the project, source IDs, dates and retrieval time in the answer. Genuine ambiguity causes a clarification. Research limits are disclosed; each model round counts towards the daily quota. Missing or ambiguous projects cause a clarification; a date prefix such as 261104_ is not a project reference. Attendance searches released participant snapshots across the selected project, with further result pages retrieved as needed. Only participants marked present count, not distribution lists. Check meeting date, protocol ID, attendance mode and partial attendance; no match is not proof of absence. Protocol tasks reflect their frozen release date. For questions about the latest document, the assistant identifies it by date and revision; check the cited ID, revision and date. Missing or invalid frozen snapshots never fall back to current drafts. Attach PDFs or standard ZIP archives for document review. ZIPs may contain PDFs, UTF-8 text files (.txt, .csv, .md, .log) and GAEB XML (.x83, .x84, .x86), including subfolders. GAEB files can also be attached directly, including application/octet-stream. The assistant prepares compact source fields instead of passing the raw XML twice; preliminary remarks and position texts remain available. GAEB attachment text has its own combined limit of one million characters, separate from the email body. The selected model still has a context limit; local-only processing never switches to OpenAI. Local Ollama/TRACK-AI requests have no daily call quota. The worker daily_calls limit applies only to OpenAI, including its research steps; automatic and comparison modes still respect that cloud limit. Cite their filename and position number, not PDF page numbers. Parsing does not import or commission a change order. Malformed, mismatched-phase or oversized GAEB files are rejected explicitly. Decoded attachments share a 256 MiB local memory budget; there is no fixed document count. Complete emails are accepted up to 50 MiB by the worker; upstream mail-server limits require separate verification. There is no fixed PDF page limit; parser resource limits and model context limits still apply; archives have no fixed entry-count or compression-ratio restriction. Password-protected, damaged or nested archives and unsupported files reject the request with a specific message. Split oversized archives or send supported documents individually. Lists are bounded and truncation is marked; do not treat them as complete totals. Stored amounts may differ from position-based UI totals; superseded change orders are identified. After separate administrator activation, Automatic uses the existing local Ollama server for text and TRACK questions. PDFs are extracted locally; sparse pages receive OCR. Images, OCR and detected table features route the original PDF to OpenAI in automatic mode. An initial request exceeding the local context budget also routes to OpenAI in automatic mode. This is a conservative heuristic, not a quality guarantee. Before activation, existing OpenAI processing remains in place.

Include CC recipients in the reply

Requires a verified, enabled sender. The CC recipients also receive the answer and its included project information.

  1. Compose your request to assistant@bwpm.de in your mail client.
  2. Add the intended recipients to CC, including external contacts where appropriate.
  3. Send the request. Check that the assistant reply addresses you in To and the current CC recipients in CC.
  4. For follow-up questions, use Reply all and adjust CC as needed. Removed CC recipients are not restored automatically.

The assistant excludes duplicate addresses and itself. It does not take recipients from BCC, Reply-To, quoted messages or model text. An invalid CC list, more than 50 unique CC addresses or an unsupported international local part produces a correction request only to you. Newly added CC recipients do not receive automatically loaded private conversation history. Previously prepared replies keep their original recipients. Partial or uncertain SMTP delivery requires operator review; no automatic resend to the whole group. CC recipients do not gain permission to submit assistant requests.

Select an AI provider for an email

  1. As a verified, enabled sender, compose a new email to assistant@bwpm.de.
  2. Use [KI: Nur lokal] anywhere in the subject for local-only processing, including after a date prefix or in replies. This restriction overrides other markers. Use [KI: Vergleichen] for two independent assessments; the request and required authorized project data are then also sent to OpenAI. Use [KI: Automatisch] for automatic routing.
  3. Write the question and, where needed, project code in the message and attach PDFs or supported ZIPs.
  4. Each generated answer ends with Geantwortet von (answered by), provider and model; comparisons identify each answer separately. Check provider, model, routing reason and sources. The selected mode persists in your reply thread. To change it, place the new directive at the start of the current subject, before Re:. Email cannot override an operator-wide local-only policy.

Network failures never trigger automatic provider fallback. Unreadable pages, failed OCR or excessive local context produce an error in local-only mode, never external transmission. OCR can misread numbers and tables: check the original page. Comparison replies are independent assessments, not verified consensus; compare sources and conflicting statements. Both models share the same restricted read tools and cannot write. Calculations remain in existing TRACK functions; model text is not numerical approval. Administrators import the existing BWPM TRACK AI connection under Administration → Schnittstellen → KI-Provider using the separate installer. The token is transferred locally into the protected worker configuration; never paste it into email or chat. The model is discovered from the server. The gateway uses validated JSON read requests through the same permission-checked TRACK reader; native tool calls are not required. A single JSON code fence is accepted. Invalid action formats get one correction attempt on the same local provider with unchanged evidence; no unvalidated action is executed and no external failover occurs. If no gateway is configured, direct Ollama remains supported. Check connectivity and test a sourced protocol query before accepting the installation. Gateway token counts are unknown; usage groups this backend under Ollama, and the reply identifies BWPM TRACK AI / Ollama. The gateway controls its actual model context; the client applies a conservative limit and stops on malformed actions or a changed model. Changes to TRACK provider settings require re-import. For technical errors check model, context capacity and local PDF/OCR dependencies; never send passwords by email. On access failure no answer claiming current TRACK data is generated. Administration checks the active account, this role, the disabled accounting flag and the local installer with --check.

Administrators can inspect context usage for each local research round in the mail worker log under research_context: job ID, round, read count and byte counts; no message text is logged. TRACK evidence is transferred to the local gateway in a lossless compact representation. Names, attendance modes, sources and pagination remain intact. Very large research tasks can still exceed context limits; this does not prove that protocols are missing.

View mail assistant AI usage

Prerequisites: system administrator of the operator installation; the mail worker and separate usage export must be installed. Tenant administrators and project readers have no access.

  1. Open Administration → Schnittstellen → KI-Provider.
  2. Select AI usage – mail assistant.
  3. Select Period (1, 7 or 30 days) and Provider (All, Ollama or OpenAI), then press Show.
  4. Compare counts, shares and recorded attempts by model, mode, result, duration and tokens. Times use Europe/Berlin. Comparisons count per provider and retries separately; these are not counts of sent emails.

The view retains at most 500 attempts within 30 days, from activation onward, for the mail assistant only. Other TRACK AI functions and older usage are not included. No message contents, attachments, recipients or API keys are included. For follow-up questions, reply to the assistant email in your mail client. Identical subjects alone do not link conversations. In a new message, name the project and full person name. Ambiguous first names require clarification; plausible references from the supplied conversation should be offered for confirmation. The first filtered project lookup returns a labelled unfiltered authorized overview for orientation; attendance is searched after project selection. Check the project and person in the answer. New CC recipients do not receive hidden private history; supply the necessary context yourself. Unknown tokens appear as –. Errors do not imply a successful model answer. If the snapshot is missing, check the export; missing data does not prove non-use. Snapshot identifies the last recorded attempt. Last successful export separately shows when metrics were transferred. An old snapshot alone may mean no activity. If the export is older than five minutes, administration checks the export service and usage timer. If the second timestamp is missing, the exporter has not been updated. Missing expected attempts also require checking the mailworker log.

Edit orders and assign LV sections

Requires project management permission, project access and tender-phase access.

Menu path: Project → Vergaben & Aufträge → order card → Edit order / delete.

  1. Choose Edit order / delete on the correct contractor order.
  2. Edit Title, Trade and Notes. If a GAEB LV is linked, edit Linked A-LV title. The original GAEB bytes and prices remain unchanged; a shared LV title is visible everywhere that LV is used.
  3. Under LV sections within this order, select Assign to this order for each existing reference LV. Enter LV section title, for example specialist foundations and demolition/earthworks. These are sections of one order, not additional orders. Files assigned to another order must be explicitly unassigned there first.
  4. Choose Save order. Check the order card's LV sections list. Assignment alone does not import performance positions or change the order value.
  5. For a joint venture, open Joint order · partner amounts. Select a Joint-venture partner from master data for each scope, enter Scope name and Base-order amount net, then Confirm total base-order amount net and choose Save partner amounts. Use decimal amounts without thousands separators. Existing performance positions, reviews or invoices require the total to remain unchanged. Administration must first apply scripts/migrate_project_order_parts.php to the operator and all provisioned tenants.
  6. The order card displays each partner’s base amount, commissioned changes and current total, followed by the grand total. Expand Change orders below a partner. In the change order’s joint-venture scope, select that same partner. Only current commissioned changes with known amounts increase totals; open changes remain listed. Unassigned amounts appear under Not assigned to a partner. Missing commissioned amounts remain visibly incomplete.
  7. For an accidentally uploaded, unused order, choose Delete order directly on its order card, review any listed uploads and confirm their removal, then enter its Order number under Delete order, then choose Delete order permanently. Return to the overview and verify that it is gone.

If deletion is blocked, the page lists dependencies such as invoices, change orders, performance positions, used documents, contract context or sent/pending notifications. These dependent records are not deleted. Uploads alone do not prevent deletion: their references are removed with confirmation, while private original files and audit metadata remain retained for administrative recovery. Unassign an incorrectly assigned reference LV only after checking its correct target. Imported LVs remain available. A stale edit must be reloaded and compared before saving. Existing sections within one GAEB file remain available via Open A-LV structure; do not create a second order just for a trade. No automatic production-data reassignment occurs.

Prepare a payment plan and historical invoices

Requires project access and project management, or authorised supervision for a GU order. Administration must install the payment-plan migration for all tenants.

  1. Open Project → Progress & invoicing → Set up positions for the correct order.
  2. Under Group A-LV sections into trades, enter a code and trade name. Select one or more A-LV sections using the multiple-selection list. To group sections, use Ctrl/Cmd-click on desktop. Do not select both a parent and its child. Remove imported individual LV items before grouping sections.
  3. Choose Input basis: net amount or share of the order. Enter the agreed value and choose Save payment plan. Only the chosen input basis is used; another blank trade row appears after saving. Select Remove trade to remove a draft row.
  4. Check trade total, order value and unallocated difference. Draft differences are allowed; the final sum must match exactly. Original LV prices are unchanged.
  5. Under Historical progress invoices, enter the original invoice number, invoice date and cut-off date, oldest first. Enter cumulative amounts or progress percentages for every trade, and confirm the cumulative net total before deductions. This is not the current invoice increase or payment amount.
  6. Choose Record historical invoice. Expand the saved entry and check each trade, cumulative total and increase over the preceding entry. The first record locks the plan; history is immutable. No new invoice or retrospective approval is created and nothing is sent.

Duplicate numbers/dates, decreasing trade values, over-100-percent performance and mismatching totals are rejected. Errors retain submitted values. If the basis changed concurrently, reload and compare. Existing TRACK statements prevent historical capture. Future progress assessment remains to be agreed; new statements are blocked when history exists. Partner allocation is maintained separately under Project → Vergaben & Aufträge → Add partners, using the same master-data partners as change orders. If none are offered, configure the contractor as a joint venture and add its member companies in the company master data first.

Collect GAEB files without a project

Prerequisites: System administrator in the intended tenant, outside role preview. Administration must install the GAEB archive migration. The collection belongs to this tenant; no project is required.

  1. Open Master data → GAEB archive.
  2. Under Archive GAEB file, select a GAEB file. Supported: GAEB DA XML 3.2/3.3, X81, X82, X83 and X86, including .xml. GAEB 90/2000 and X84 are not supported. Optionally fill Title (optional; otherwise from file) and Keywords / trade, then choose Save to archive.
  3. Check the title, original filename and item count. Use Download original to retrieve the unchanged file. An identical original is rejected as a duplicate.
  4. Use Back to archive → Search to find titles, keywords, filenames, item numbers, short and long texts or hierarchy descriptions. Open the entry, or use Show matching items. Search inside an entry filters its positions only.
  5. Expand Show specification text and choose Copy specification text. If clipboard access is unavailable, copy the selected text manually from Text to copy. Review suitability before reusing it. There is no automatic import into a project or award.
  6. Use Edit title and keywords → Save to change metadata. To remove a mistaken upload, expand Delete archive entry, confirm deletion of original and texts, and select Delete permanently. This does not delete project LVs.

Check: Search again after saving; download and compare the original if needed. Troubleshooting: Invalid XML, forbidden DTD/entities, unsupported formats and files above the upload limit are rejected. Correct the source or export a supported XML format. Missing migration requires administration. A checksum error blocks downloading; contact administration. Deleting an entry is permanent.

Bold text in protocols and messages

Prerequisite: Permission to edit the relevant draft or message.

Menu path: Project → Meeting minutes → Protokollpunkt bearbeiten; alternatively an editable file note or letter.

  1. Open the draft and enclose important words in two asterisks: **important text**.
  2. Save the text and check the displayed text and PDF preview: the marked words appear bold.
  3. The editor retains the markers. Remove both pairs to remove emphasis.
  4. For HTML email content, check a preview or an existing self-test before sending.

Applies to protocol descriptions, updates and tables, file-note, letter, offer and invoice PDFs, multiline text displays and HTML email content. Close each pair on the same line. Incomplete pairs and single asterisks remain literal; HTML is escaped. Input fields, URL attributes and code examples retain their values. Archived PDFs remain unchanged.

Send project calendar invitations, updates and cancellations

Requires project-management permission, a configured mail transport and the calendar invitation migration. Use a saved manual event. Teams events must have confirmed access details; Microsoft 365 is not required for an ordinary calendar invitation.

  1. Open Project → Project calendar. At the event, expand Participants and invitations.
  2. Under Additional participants, select the project participants to invite. No person is preselected. Previous recipients are listed separately and always included in updates and cancellations; they cannot be removed by clearing a checkbox.
  3. Check the event and select Send invitations / updates. Each recipient gets a personal email and calendar invitation with the saved date, agenda and any Teams link, meeting ID and passcode. Missing Teams credentials are marked “nicht hinterlegt”. Address-book salutation settings apply.
  4. Check Delivery status: sent means the mail transport accepted the message, not confirmed recipient delivery. pending means not attempted; unknown means uncertain. Clicking again skips already sent messages for this revision.
  5. After editing and saving the event or completing Teams credentials, select Send invitations / updates again. The calendar UID and organizer stay the same and the higher sequence identifies the update. Saving alone does not send mail.
  6. To cancel, select Cancel event, then Participants and invitations → Send cancellations. Previous recipients receive a cancellation with the same UID.

If a transport result is unknown, check the mail system first. Select Confirmed sent only with evidence of handoff, or Confirmed not sent only after confirming non-delivery by the transport. Both require the confirmation checkbox. Afterwards use the send button to continue; no automatic retry occurs. An outdated page must be reloaded. New recipients must belong to the active project directory. Outlook changes remain manual: also update or cancel the separate organizer Teams event in Outlook. Sending TRACK invitations does not synchronize that event or track participant responses.

Create a Teams link from the project calendar

Requires project-management permission, an installed calendar Teams migration, and your own connected Microsoft 365 business account with Teams enabled. Open Microsoft 365 / Teams and select Microsoft 365 verbinden or Berechtigung aktualisieren. If Microsoft requires admin approval, your Microsoft 365 administrator grants consent to the TRACK app in Entra → App registrations → API permissions. The delegated permissions are User.Read, Calendars.ReadWrite, Calendars.ReadWrite.Shared, OnlineMeetings.Read and offline_access. Afterwards reconnect with your own account. Outlook calendar delegation is not required for your own meeting.

  1. Open Project → Project calendar → Add event or deadline.
  2. Enter Title, Start and End; disable All-day event or deadline. Use a future scheduled event lasting 15 minutes to 24 hours; events crossing a clock change may be rejected.
  3. Select Add to project calendar, then select Create Teams link at the saved manual event.
  4. Check the Teams link, meeting ID and passcode in the event description and the meeting in your own Outlook calendar. Subscribed project calendars receive the access details. No participant invitations are sent by this action.

Missing credentials appear as “nicht hinterlegt”. The creator can open Enter Teams access details, copy the original Teams link, meeting ID and passcode from Outlook, confirm the check and select Save Teams access details. Empty credentials preserve known values only when the link stays identical. Changes retain the project calendar UID and increase its sequence.

If the Microsoft result is unknown, check Outlook first. Automatic creation is blocked to prevent duplicates. If an event exists, copy its details; only if no event exists, create it manually in Outlook and then copy its details. A changed or cancelled TRACK event does not automatically change the separate Outlook event: update or cancel it in Outlook too and confirm this in TRACK. Send invitations explicitly using the workflow below. Automatically derived events and scheduling-poll events keep their own workflows.

Connect Microsoft 365 – create Teams meetings

Each organizer connects their own Microsoft 365 account to create Teams meetings; calendar delegation is not required.

  1. In TRACK open Microsoft 365 / Teams and select Microsoft 365 verbinden or Berechtigung aktualisieren.
  2. Sign in with your own Microsoft 365 work account. If administrator approval is required, request it when offered; otherwise contact your Microsoft 365 administrator.
  3. The administrator opens Entra → App registrations → TRACK application → API permissions, verifies the client ID and adds delegated User.Read, Calendars.ReadWrite, Calendars.ReadWrite.Shared, OnlineMeetings.Read and offline_access. Grant admin consent and check Granted for all five entries. For an application registered elsewhere, use Enterprise applications → Permissions. An appropriate Entra role, such as Cloud Application Administrator, is required.
  4. Reconnect in TRACK with your own account and check the displayed email address. Do not connect an administrator account as a colleague's personal account.

Optional: edit another person's Outlook calendar

Prerequisites: Microsoft 365 work accounts in the same organization and permission from the calendar owner. Delegation is optional for working in another person's calendar; creating a scheduling-poll meeting uses the poll organizer's own Microsoft 365 connection. A missing delegation does not explain every Teams error.

  1. The calendar owner opens Outlook on the web → Calendar → their main calendar → Sharing and permissions. Add the colleague and choose Delegate, then Share. Availability and labels depend on the Outlook version and organization policy; if Delegate is missing, contact the Microsoft 365 administrator.
  2. The colleague accepts the sharing invitation and checks that the owner's calendar is accessible. Do not enable access to private events unless required.
  3. In TRACK open Microsoft 365 / Teams using your own account. Choose Microsoft 365 verbinden, or Berechtigung aktualisieren when prompted. For supported delegated calendar changes, the connection needs Calendars.ReadWrite.Shared as well as the owner's Outlook delegation. Consent may require an administrator.
  4. Verify the connected account and the shared calendar permissions. TRACK's connection status alone does not prove access to another person's calendar.

For a blocked scheduling poll: Project → Project calendar → Scheduling poll → Resolve Teams creation. Check the organizer's calendar first. Reuse an existing meeting; only create a meeting manually if none exists. Copy its Teams link, meeting ID and passcode, confirm Organizer calendar checked; Teams link belongs to the selected event. and choose Use checked Teams link. Missing credentials are marked as not recorded; obtain them from the original invitation. If an existing Graph event's calendar UID cannot be retrieved, restore the organizer's Microsoft 365 connection before retrying. Never create a duplicate meeting.

Check Organizer notices and Delivery status after the worker runs. Manual-decision and Teams-action emails go only to the stored organizer address, once per reason, including already blocked polls after migration. They do not replace the final participant summary. If delivery is unknown, check the outbox before confirming Outbox checked; another handoff is required. and selecting Queue organizer notice again. No automatic retry occurs for unknown delivery.

Microsoft: calendar sharing and delegation by Outlook version

Choose titles in salutations

Prerequisites: The title-policy database update must be installed. You need administration rights in this tenant or project-management/object-supervision rights for your own company, as for the Mail designer.

Menu path: Administration → Mail designer → Titles in salutations.

  1. Open the Mail designer. Administrators check the selected Unternehmen; other authorised users edit their own company.
  2. Under Title rule, choose Only Dr. and Prof., All recorded titles or No titles. The default is Only Dr. and Prof.; doctorate additions such as Dr.-Ing. are retained, Dipl.-Ing. is omitted.
  3. Select Save title rule. Reopen the page and verify the selected value.
  4. Open a letter draft for a contact with a recorded title. Check the generated salutation and PDF preview; for email, use a self-test to a titled contact. Informal email greetings still use first names.

The sending company determines the rule, including delegated letters. Each company in each tenant has its own setting. Recorded contact titles, address blocks, signatures and free author text are unchanged. Released letter salutations and archived PDFs remain frozen. If saving reports that the setting is unavailable, ask administration to install the database update. If a title is missing, check the contact’s title and the selected sending company.

Save a birthday with or without a year

Prerequisites: Address-book administration permission in the correct tenant. Install scripts/migrate_contact_birthdays.php before saving birthdays without a year.

  1. Open a person under Administration → Address book.
  2. Under Further information → Birthday, enter day and month, for example 15.06., or 15.06.1985 if the year is known. Clear the field to remove the birthday.
  3. Save the person and check the displayed date in the contact view.
  4. Open My calendar and select the birthday month. Birthdays appear as annual all-day entries linking to the contact. Without a personal calendar, a separate birthday list is shown.
Check the result

No substitute year or age is invented. Contact changes and removals are reflected on the next calendar load. Only active people appear; functional mailboxes are excluded. Birthdays are restricted to administration, matching personal address-book details. They are shown in TRACK only and are not copied into personal CalDAV calendars, exports or invitations. Existing full birthdays remain in contact exports; a yearless birthday is not exported as an invented full date.

If it does not work
  • Invalid dates such as 31.04. are rejected. A yearless 29.02. is allowed and appears only in leap years.
  • If migration is required, have administration apply the named CLI migration.
  • Check the month, active contact, contact type and administration permission. Edit birthdays in the contact.

Find and review website projects

Prerequisites: The website extension is installed; no TRACK account is required. Filters require JavaScript. The public website keeps its original German labels.

  1. Open /site/ and select Projekte. Combine Projekt suchen, Ort, Projektkategorie and Projektstatus. Nicht angegeben means no explicit status, not completed.
  2. Check the result count. Copy the current URL to share the selection. Zurücksetzen restores all projects.
  3. Open a project, review its existing Projektdaten and use Kontakt for the contact page, telephone or email. These are company contact details.
  4. On mobile use Menü öffnen. Keyboard users can press Enter/Space and Escape to close; Enter on a focused gallery link opens the original image. Automatischen Bildwechsel anhalten pauses a running slider; Automatischen Bildwechsel fortsetzen resumes it.
Check the result

The selection survives reloading. Project facts and categories come from captured original pages; ambiguous data is not guessed.

If it does not work
  • No results: reset filters or shorten the query.
  • No filters: check JavaScript; all original projects remain visible without it.
  • Incorrect original data: report it to website administration; project names do not trigger automatic corrections.

Check the original website copy

Prerequisites: The website copy is installed under /site/; public viewing requires no TRACK account. Import and server configuration require deployment administration.

  1. Open /site/ and select Projekte or News from the original navigation.
  2. Open a project or news article and compare its full text and images with the captured source. Older news remain accessible through the archive pages. The Suchen field searches the locally captured original texts.
  3. Use Privatsphäre-Einstellungen ändern, save a selection and open Historie der Privatsphäre-Einstellungen to check the saved decision.
Check the result

The copy preserves original public copy, layout and original media. Display images use appropriately sized compressed variants; images further down load as you approach them. Galleries still open the original files. WordPress is not needed at runtime. TRACK news editing does not change these captured original pages.

If it does not work
  • Missing subpages: have the webserver rewrite rules checked.
  • Consent cannot be saved: have the private BWPM_SITE_STATE_DIR outside the document root checked.
  • Unavailable old webcam or archive page 9: these original links already returned 404; no replacement content was invented.

Export all positions in a compact change-order review

Prerequisites and permission: Project management permission in the correct tenant, a change order with imported GAEB positions and a saved review.

  1. Open the change order under Project → Change orders.
  2. Save changed review values and reasons using Positionsprüfung speichern. PDF exports use saved data only.
  3. Next to Prüf-PDF exportieren, select Summary PDF (Kurzübersicht in German).
  4. Check and download the landscape A4 summary: every position is listed in source order with item number, short description, claim, reviewed amount, difference, review status and saved review note. Additional pages repeat the table header; totals appear at the end.
Check the result

Rejected positions remain fully included in the claim total and are excluded only from the reviewed total. Both totals match the detailed PDF; open and unit-price-only positions contribute no reviewed total. While the review is open, the difference is not a final reduction. Open reviewed amounts are labelled “offen” rather than zero. Short descriptions may be abbreviated with an ellipsis; full text and reasons remain in the detailed review PDF. After changing a position to Abgelehnt and saving with Positionsprüfung speichern, export both PDFs again: the claim must stay unchanged, while the reviewed amount excludes that position. Current rejected change orders also remain in the list claim total; replaced or withdrawn versions do not. Review notes wrap across lines and pages without truncation. No position is omitted to fit a page. All amounts are net. This summary is not an order.

If it does not work
  • If there are no GAEB positions, import the matching file first.
  • A missing claim total or difference means position amounts are incomplete; missing values are not shown as zero.
  • Multiple pages are intentional for larger reviews. Compare the position count and final item number with the saved review.
  • For access errors, check project management permission and tenant. For PDF errors, have the Studio fonts and SVG logo checked.

Check phone prefixes in the address book

Prerequisite: permission to administer the address book.

  1. Open Administration → Address book and select the person for editing.
  2. Enter or paste the number under Mobile or Office / extension. For a known international number such as +46 … or 0046 …, the dropdown selects the calling code automatically. This also applies when opening saved contacts.
  3. For a national number, select the appropriate prefix. Changing the address country sets the prefix for national or empty numbers; explicitly international numbers keep their calling code.
  4. Save and reopen the contact. Check the number and displayed prefix.

Troubleshooting: For an unlisted calling code, enter the complete international number with a plus sign; the dropdown cannot identify that code. For shared codes such as +1, a matching selected country is retained. Automatic dropdown synchronization does not change the number itself.

Communities, company structures and property management

Prerequisites and permission: System administrator in the intended tenant, outside role preview; the address book relationship migration must be installed. Create people separately in Master data → Address book and organizations in Master data → Companies → Unternehmen anlegen. Use an existing project for each object. No data is inferred from names.

  1. Open a company and select Relationships. Choose Organization type: Company, Building-owner community, Owners association, Property management, Company group or Branch / department. Select Save organization type. An existing ARGE retains its separate joint-venture model.
  2. For a couple, create one shared organization such as “Müller / Schmidt”, choose Building-owner community, then open Assign member / contact. Select each separately recorded person, choose Member, enter the known Valid from date and select Add relationship. Repeat for the second person; names and personal addresses remain separate. Contact person is also available. Leave the person's primary company unchanged if they already belong to another company.
  3. For subsidiaries, open Relationships at the parent company, then Assign subsidiary / branch. Select the child company and the appropriate role. Use Branch / department for a location within the same legal company. The arrow points from parent to child; only one parent per period is supported.
  4. For a management company with ten properties, create ten projects. On each project open Ownership / management, then Assign organization or Assign person. Record Owner and Property manager separately; several owners are possible. Client, Invoice recipient and Correspondence contact can also be recorded explicitly. Use Add relationship for each role. The management company's Assign project / object form provides the reverse route.
  5. Check Relationships and history, the linked people/organizations/projects, the role, dates and Current, Planned, Ended or Cancelled status. Open linked records to check the reverse relationship. Project assignments also appear in Assigned projects; ended assignments remain part of the object history.
  6. For a management change, open the old relationship's Change period / cancel, enter the last valid day in Valid until (inclusive, optional), provide a Reason and select Save change. Add the new management company from the following day. To correct an erroneous relationship use Cancel incorrect assignment (keep history); do not cancel a correctly recorded former manager. The Change log (latest 100) retains before/after values and the changing user's ID.

Limits and help: Relationships grant no portal permissions and do not automatically change the primary company, addresses, invoice recipients or mailing lists. Verify the actual recipient on each offer, invoice or letter. They do not automatically add project contacts or include subsidiary projects. Empty end date means open-ended; dates are entered explicitly. Overlapping duplicates, hierarchy cycles and multiple parents in one period are rejected. Reload after a concurrent-edit message. Inactive records cannot receive new assignments; existing relationships remain visible and their dates can be corrected. Referenced records cannot be deleted; merging records with structured relationships or an organization type is blocked to preserve history. If the extension is unavailable, ask the operator to install it. The current model uses projects as objects; independent property/unit registers and automatic document addressing are not included.

Delete a tenant's contacts

Prerequisites and permission: Sign in to the intended tenant as a system administrator. This action is unavailable in the operator address book.

  1. Open Master data → Address book → Delete all contacts and verify the displayed tenant. Use Backup / download to save the data first.
  2. Select Preview deletion. Check the total and the lists of contacts to be deleted or protected. The action includes active and inactive people and functional mailboxes, regardless of search filters.
  3. Enter LOESCHEN and select Permanently delete eligible contacts, or choose Cancel.
  4. Check the deletion count in the confirmation and the remaining contacts in the address book.

Companies, portal accounts and contacts with existing assignments remain. Consequently, the address book may not become empty. Contact snapshots are retained in deletion history; this action is not a privacy erasure and has no automatic undo. If the preview expires after ten minutes or contacts/references change, create a new preview. Protected contacts require their assignments to be resolved separately; the action does not remove project or document data.

Android app: files and navigation

Requires an active account and project/upload permission. These improvements require the next signed Android app update (currently development source); a portal update alone does not install them.

  1. Open BWPM TRACK, sign in and open the project and its upload form, for example the gallery.
  2. Tap the file field and select readable photos/documents in Android's file picker. Multiple selection depends on the form. Cancel returns without selection.
  3. Check the selection, use the form's upload/save button and verify the new entry in TRACK. Selection alone does not upload anything.
  4. Android Back returns to the previous portal page or closes the activity at the start of its history. External web, email, telephone and map links open a suitable installed app.

A missing file picker or link handler displays a message. Re-select files after an activity restart. Page history is restored where possible; unsaved text is not guaranteed, so save before rotating or leaving. Keyboard and system bars are taken into account. Direct camera capture, native PDF downloads and native passkey integration remain outside this update.

Save a file-note point

Open an editable file note under Project → File notes / records. Edit a point and save it. After the page reloads, it shows the saved point. Newly created main points and sub-items are also shown directly after saving.

Import file-note points from CSV

Requires project-management or meeting-edit permission and a file note in Draft or Changes requested. Imports are unavailable during review or after release.

  1. Open Project → Aktenvermerke, create or open the intended draft and save any pending text changes.
  2. Select CSV-Punkte importieren, choose CSV-Datei, then CSV-Vorschau erstellen.
  3. Check all titles, full texts, topic headings and information flags. UTF-8 CSV uses semicolons and the exact header Ueberpunkt;Titel;Text;Information; quote multiline fields and double embedded quotes. Maximum 2 MB / 200 points; title 300 characters, text 30,000, heading 120. Information is 0 (open point) or 1 (information).
  4. Select Punkte in AV übernehmen. Under Besprochene Punkte, verify the count and contents. Under Thematische Überpunkte, adjust grouping; then add participants and assign responsibilities and dates.

The import appends main points atomically, preserves existing points and does not release or send anything. Names and approximate dates remain text; no contacts, deadlines or calendar events are inferred. Matching topic headings are reused. An identical title/text already in the AV blocks the entire import. If the draft changes or the 30-minute preview expires, upload again and review the new preview. Correct invalid rows in the CSV before retrying. If topic support is missing, administration must apply the existing AV topic-group migration.

Tenant AI access: permissions and API keys

Prerequisites and permissions: Only operator administrators can change these settings; tenant administrators can view their access under Administration → KI-Provider. The operator must first install the AI control migration and connect the AI server over HTTPS. Role preview cannot change grants.

  1. On the operator portal, open Administration → Mandanten, select the tenant with Oeffnen and find AI access. Check the selected company.
  2. Select Enable AI access and the Allowed capabilities: AI help for wiki help; Chat and text editing for general chat, text editing and report generation; Email analysis for structured suggestions from supplied emails; Embeddings for vectors from supplied text. Embeddings do not create a document store.
  3. Set Requests per minute (1–600), Input characters per request (1,000–100,000) and Maximum response tokens (128–4,096). All capabilities share the request limit. Help responses additionally have a 300-token ceiling.
  4. For first access, select Generate / replace key; this also saves the displayed permissions and limits. TRACK receives its tenant key automatically. For an external integration, securely store the key shown once and use it server-side as a Bearer token over HTTPS. Replacing the key invalidates the previous key; update external integrations.
  5. For later changes, select Save AI access. To stop access and invalidate the key, select Revoke key and disable. A suspended or deleted tenant cannot use the API.

Check: Reload the tenant page to confirm saved selections and the key fingerprint, then test an enabled capability in that tenant. Disabled capabilities must be rejected. Each new inference request checks the grant centrally; already authorised requests may finish. The API processes only the submitted context and stores no shared conversation or document history. Existing TRACK project and user permissions remain necessary; an API key grants no access to TRACK records.

Troubleshooting: Missing migration or HTTPS configuration requires operator setup. A stale form requires reloading before saving. HTTP 401 indicates an invalid key, 403 a disabled capability or inactive tenant, 413 excessive input, 429 the shared minute limit, and 503 unavailable access control. Local wiki search remains available without AI access. A model name or successful health check alone does not prove inference permission.

Property & FM: manage objects and cases

Prerequisites: Operator administration enables Property & FM under Administration → Mandanten → Modules → Save module selection. Run scripts/migrate_fm_foundation.php for the operator and provisioned tenants before use. Open the intended tenant first and check the company name in Modules; Operator settings only affect the operator installation. Save each module separately. Property & FM and Craft operations are independent; reloading shows the saved selection without restoring local form drafts. Disabling the module blocks access and preserves data. Role preview has no FM access. No construction project is required.

  1. Open Master data → Property & FM. A system administrator selects Create object, type Property, enters Name and Address / location, then selects Save object. Use Create another object for buildings under properties, units under buildings, and technical assets under properties, buildings or units. Select Parent object explicitly. Type and hierarchy cannot be moved after creation. External reference is a manually entered identifier, not a system synchronisation.
  2. Open the property through Select object → Open object. Under Property access, administration grants Read, Edit or Manage and accept and selects Save property access. Access includes all descendants and their cases. Company and project membership do not grant permission. This is not an external portal restricted to individual contractor orders.
  3. Open the affected object or asset. Under Create case, choose the Case type: damage, fault or service request. Enter Subject, Description, Priority, Responsible, Due date and Next step; optionally choose another authorised person as Deputy. Save case creates a unique case number and the first history entry.
  4. Open the case and choose Status. Follow New → Assigned → In progress → Awaiting acceptance → Closed. Assigned or active cases may enter Waiting, then return to In progress. Enter Reason / progress note on each change and select Save case.
  5. Before Awaiting acceptance, document Result / resolution and optionally an Evidence link (HTTPS). Links are stored and opened, not automatically fetched. A user with Manage and accept or a system administrator confirms closure. Return from acceptance and justified reopening lead to In progress. Closure is an operational status, not proof of booking, payment or statutory inspection.
  6. In FM overview, filter View by Open, My responsibility / deputy, Overdue, Closed or All. An object filter selects that exact object. Up to 250 results appear, ordered by due date. Use FM as home page → Save home page opens FM through the dashboard; Project overview remains accessible. The profile also offers FM as a home page.

Check: Reload, verify the case number, assignment, due date and Case details and history. History retains saved revisions and reasons. Check with a second account that inaccessible properties are absent from lists and unavailable through direct links.

Troubleshooting: Check module activation, migration and property access. Responsible users and deputies need active edit access; reassign open cases before revoking access. On a revision conflict, reload and compare changes; concurrent edits are not overwritten. Invalid status transitions are rejected. Report storage failures to administration with the displayed reference.

Current scope: Project-independent object and case records with manual due dates and evidence references. No automatic reminders or escalations, recurring maintenance, inspection catalogues, document uploads, RELion/ELO synchronisation, Copilot connection or automatic invoice handoff. Existing construction projects, invoices and documents remain unchanged.

Delete a tenant

Prerequisites: administrator of the operator installation, running root provisioner, and any paid subscription confirmed cancelled by the payment provider. Export needed tenant data first.

  1. Open Administration → Mandanten → Oeffnen → Einrichtungsstatus for the intended tenant. Check its company and full hostname. For an active tenant, select Sperren first.
  2. Expand Delete tenant. Under Type the full subdomain to confirm, type the displayed hostname exactly. Select I confirm permanent deletion of the tenant data.
  3. Select Permanently delete tenant. The status changes to deleting; the portal stays blocked and provisioning jobs are cancelled.
  4. Select Refresh status. The root worker removes the tenant database, database access and tenant files. Completion is shown as deleted and recorded in the audit trail.

Check and troubleshooting: a worker error is shown in the job log; interrupted deletions are retried automatically. If provisioning is running, wait and submit again. A wrong hostname or missing confirmation rejects the request. The operator database, address book contact, billing records, existing backups and audit trail remain. The old hostname stays reserved; the contact can receive a new pilot under another subdomain. Deletion does not cancel a subscription or erase external copies.

Managing director of several companies

Prerequisite: address book administration rights; create each company under Administration → Unternehmen.

  1. Open Administration → Adressbuch and create a separate contact for each company.
  2. Use the same personal name, select the respective company and enter its business email and the managing director role.
  3. Check the company in search results and use that contact for the respective project or pilot tenant.

Each contact currently has one company. Several company affiliations on one person are not supported. Do not merge these business contacts; do not change an existing contact’s company to switch context, as this synchronises existing project assignments. A contact is not automatically a portal account or access permission.

Resolve project and bank access notices

Prerequisite: signed-in account in the intended tenant.

  1. Open Project → Projektnews. If No projects available appears, select To dashboard. System administrators can use Manage projects to create the first project or maintain access. Other users ask their project administrator for an assignment. Reopen project news after assignment; only accessible projects appear.
  2. Open Office → Bank transactions. If Bank access required appears, a system administrator outside role preview can select Configure bank access, select the intended account and choose Save bank access. Accounting permission alone does not grant bank access. Reopen the page to verify access; other users contact administration.

The notices retain TRACK navigation and a dashboard link. An unavailable project link does not disclose project details.

For permanent deletion, follow Delete a tenant. To retain all data and only block access, use Administration → Mandanten → Oeffnen → Sperren. Status suspended confirms suspension; Entsperren restores access.

Create a pilot tenant from an address-book contact

Prerequisites: operator administrator on the operator portal, installed direct-pilot migration, and an active person with company, name and valid email in the address book. Tenant administrators cannot create other tenants. Wildcard DNS, HTTPS and the provisioning worker must be enabled once by the server administrator.

  1. Open Central address book, find the person, open their record and choose Create pilot tenant.
  2. Check Company, First administrator and Invitation email. Correct these in the address book if needed. Enter Desired subdomain (only the prefix, 3–40 lowercase letters, digits or hyphens). The suffix is displayed below the field. Reserved or occupied names are rejected; nothing is silently renamed.
  3. Choose Activate pilot tenant. This authorizes a free pilot and its access invitation; it creates no subscription, payment or invoice. Repeated submission of the same request creates no second tenant. While the infrastructure is unavailable the request stays queued.
  4. Under Administration → Mandanten → Oeffnen, check Setup status and choose Refresh status. The worker creates a separate database, database user, storage and first administrator. No operator project or contact collection is copied.
  5. When the status is active, use Open portal. The administrator receives a password setup link valid for 72 hours. An expired link can be replaced through the portal's password reset flow.

Troubleshooting: provisioning means queued/in progress, provisioned means the database and first administrator exist. Check the provisioning log if progress stops. sent confirms mail transport handoff, not recipient delivery. An unknown handoff blocks retries: verify the mail server log, enter a Review note, then choose Confirm handoff or, only if confirmed not sent, Not sent — permit retry. A confirmed handoff only resumes activation; retry issues a new token. Both actions are audited. Existing provisioned databases are preserved. If contact details changed since opening the form, review the refreshed values before submitting again.

Replace Nextcloud with TRACK Calendar

Prerequisites: active TRACK account, calendar migration installed and HTTPS. External invitations require the calendar worker and mail transport; email replies require the configured calendar reply mailbox. Calendar sharing is explicit and independent of project roles.

  1. Open your user menu → My calendar. Expand Create calendar, enter Calendar name and choose Create. Create a separate target for each Nextcloud calendar. The newly created calendar is selected automatically. Before importing, verify the calendar heading; if an older installation shows “No calendar permission”, select your own target under Calendar and press Show before trying again.
  2. Export each source calendar from Nextcloud as ICS. In TRACK select the target and open Import from Nextcloud (ICS). Select the file (up to 16 MiB, 5000 event series), then Preview import. Check titles and New / Unchanged / Conflict statuses. Choose Confirm import. Conflicts remain unchanged unless Replace conflicting existing events with the export is explicitly checked. Import never sends invitations. UIDs, series, exceptions, timezones, attendees and alarms are retained. Previews expire after one day; changed targets require a new preview. Each event series retains only its referenced timezone definitions, including different timezones used by recurrence exceptions. If the prepared import exceeds 64 MiB, use smaller calendar exports; preview stops without importing any events.
  3. Use Show with the required month. Check past/future events, all-day events and series across daylight saving. Under Create event enter title, start/end, timezone and optional recurrence, reminder and attendee emails; choose Save and notify attendees. All-day end dates are inclusive. Existing series retain rules and exceptions; edit occurrence times in your CalDAV client. External invitations can be accepted or declined under Attendance.
  4. Under Connect Android and Thunderbird enter Device name, then Create calendar password. Copy it once. Thunderbird: create a network calendar with the displayed calendar URL, TRACK email and calendar password. Android: DAVx⁵ → login with URL and user name; use the displayed base URL and the same credentials, then select the calendars and enable calendar sync. Use a separate password for each device. Revoke device immediately disables it.
  5. The owner can use Share calendar, select an active user and Read or Write, then Save share. Existing grants are listed there. Choose Revoke share to remove access. Shared users cannot grant further access.
  6. Before cutover stop changes in Nextcloud, export once more and review differences. Verify TRACK on both devices before removing the old device connections. Keep the Nextcloud export as a backup; use Export calendar for a TRACK backup. Nextcloud is no longer required after cutover.

Check delivery: Invitation delivery shows pending, sending, sent, unknown or blocked. Sent means handed to mail transport, not accepted by the participant. Unknown/sending requires mail-server reconciliation; never blindly resend. Device alarms require enabled sync, notifications and battery permissions. If 401 appears, check email, device password and revocation; 403 means missing share/write permission. A 412 conflict means reload before editing. CalDAV serves events; the existing task CalDAV and project calendar feeds remain separate. Actual Thunderbird/DAVx⁵ device acceptance must be performed after deployment.

Choose the project overview

In Tiles, Search and filters is collapsed to keep the project cards prominent. Open it when needed; it also contains the tenant default hint and saved views. In List, the search panel opens immediately. Active filter chips stay visible in both modes. After switching modes, check the result count and filter chips; switching does not reset filters.

Filter and save views: Open Dashboard → Search and filters. Select Client and Project structure (All projects, Main projects or Subprojects), then Filter. Client choices use accessible projects, including inactive ones; subprojects use their main project's client. Column buttons toggle ascending/descending sorting; the arrow marks the current column. Filter chips remain visible outside the collapsed filter panel; select a chip to remove it or Reset all filters to return to active projects without other restrictions. Submitted filters and sorting are remembered for this account in this tenant, starting on page 1. Explicit URL filters take precedence for that visit.

  1. Set the desired filters and sorting.
  2. Expand Saved views, enter View name and choose Save current view. An existing name is replaced.
  3. Use Open beside the saved name and check the result count and active filter chips. Project permissions are checked again; revoked projects disappear.
  4. Use Delete to remove a named view. This does not reset the current selection; use Reset all filters for that.

If a view is empty, check status and combined filters. A missing Saved views section requires the filter views migration or leaving role simulation. Views are private to the user and tenant; they save filters and sorting, not project data or tile/list mode.

Requires a TRACK account and project access. Only a system administrator of the current tenant can set its default.

  1. Open Dashboard and select Tiles or List. Your choice is saved for your account in this tenant.
  2. Open Search and filters. Use Project number, name, location or client, Status, Start year (otherwise creation year), Responsibility and Selection, then Filter. List column headings change sorting; Next loads the next 50 projects.
  3. Mark a project with the star and select Favourites. Recently opened includes projects opened since this feature was installed, newest first.
  4. As administrator, open Dashboard → Tenant settings → Display → Project overview, select Default view and Save tenant default. The same settings are linked from Studio.
  5. Choose Use tenant default on the dashboard to remove your personal override. Check the view after signing in again.

Both views retain existing project permissions and active delegations. Inactive projects require Status → Inactive or All; passing the end date does not mark a project inactive. The lead filter uses your own project management assignment. If no results appear, use Reset filters and check project access. Missing controls require the project overview database migration. Lists omit tile images and progress calculations. Group totals in tiles refer to the projects displayed on the current page. Recent reports show at most 100 entries.

Scheduling poll closing summary: the email starts with the selected date and duration. A table shows one participant per row and the options as columns, with Zusage, Absage or Keine Antwort. Wide polls are split into tables of up to three options. Replies come from the frozen closing summary. The calendar invitation is sent separately; plain-text mail readers receive a readable list.

Company name below the letter signature: Requires permission to edit Studio (system administrator, or project administrator/object supervision for your own company). Open Studio → Letter and invoice layout, clear Company name below the signature in letters and choose Design und Dateinamen speichern. Open a letter draft and check the PDF preview: the closing contains your signature and name without the company line. This setting applies company-wide to newly generated letters, including co-signatures. It does not add a job title. Released letters retain their frozen layout; the second layout already omits this line. If the line remains, check the selected company and whether the letter is already released.

Project email in letters: For a business letter with a project, the contact block uses the one active project-distributor address assigned to the signing user’s company. Users with project management rights maintain it via Project → Participants → Projekt-Mailverteiler verwalten: 1. Save the company’s address. 2. Open a letter draft for that project. 3. Check the email under Ansprechpartner in the PDF preview. If no unique valid address exists, the personal address remains; check company assignment and active duplicate addresses. Private sender details take precedence. Release freezes the selected address; previous releases remain unchanged. This does not change the email delivery account.

Participant groups in the PDF: The project participant list keeps different saved groups separate even if their configured sort orders are equal. After changing a group, generate a new PDF via Project → Projektbeteiligte → Projektbeteiligtenliste als PDF and check its heading. A previously downloaded PDF does not update automatically.

Beta review copies: Internal letter review requests, repeat requests and review-result notifications honour the configured automatic BCC setting. The letter’s external recipients are not notified by the review request. To end beta copies, disable the existing automatic BCC setting; disabling it also applies to future internal review notifications.

Revise directly during review: Requires the currently assigned reviewer, access to the letter project and an unsent letter in In Prüfung. Open Korrespondenz → Schreiben → letter → Prüfung, Freigabe & Versand. 1. Under Überarbeiten und erneut prüfen lassen, edit subject, body, additional To/CC/BCC addresses or delivery method. Main recipients, postal identity, project and signer remain fixed. 2. Choose a different eligible person under Erneute Prüfung durch. 3. Select Überarbeitung speichern und zur Prüfung geben. 4. Check the new assignment and Änderungen seit der letzten Prüfung; deleted text is struck through and additions are underlined. The next reviewer receives an internal notification via the queue. Saving does not sign, release or send the letter externally. Previous versions remain available; PDF output has no markup. If the form is stale, copy your edits, reload and check the current version. Without another eligible reviewer, ask project administration to assign one. Released or dispatched letters cannot be revised here.

With permission to edit the draft, open Korrespondenz → Schreiben: 1. Check the project. 2. Open Person zu CC hinzufügen to see active project participants with valid email addresses, including linked active project users. 3. Select a person or type at least two characters to search the address book as well. 4. Check the added address under CC and select Speichern. Remove an address directly from the CC field. Without a project, address-book search remains available. For missing people, check project assignment, active contact and email. Nobody is added to CC automatically.

Bold text when pasting: You need permission to edit the letter draft. 1. Open the draft under Korrespondenz → Schreiben. 2. In Brieftext, surround important words with double asterisks, for example **important note**; pasted ChatGPT text can keep these markers. 3. Select Speichern and check the letter view or PDF preview: the note appears bold without asterisks. Markers remain editable in the input field. Remove both pairs to remove bold formatting. Each pair must close on the same text line; incomplete pairs and single asterisks remain visible. Other Markdown formatting and HTML are not interpreted. Archived PDFs remain unchanged.

Missing characters in letter PDFs: With permission to edit the draft, open Korrespondenz → Schreiben. 1. Enter characters such as € or m³ in Brieftext. 2. Select Speichern and check the PDF preview. Characters available in the company font retain that font. Only missing characters use embedded Montserrat, where available, including bold text. No setting is required. If a question mark remains, the character may also be missing from the replacement font; report the character and affected letter to administration. Archived PDFs remain unchanged.

Company contacts and personal CC: With permission to edit your letter draft, open Korrespondenz → Schreiben → Neues Schreiben. 1. Choose Unternehmen direkt and select the company. 2. Under Ansprechpartner des Unternehmens, select up to three active address-book contacts. Ordinary companies do not require a project; ARGE contacts still require active membership in the selected project. 3. Under additional email recipients, use Person zu CC hinzufügen, search and click the desired person. Repeat for additional people. 4. Check the CC field, save the draft and verify the recipients after reopening. Remove a personal CC by deleting its address from the CC field. A person without an email address cannot be added; correct their address-book entry first. Postal delivery still sends only to the main recipient. If you choose Person as the recipient instead, that person is already the addressee; the company contact selection is hidden.

Save a participant group: With project-management permission, open Project → Projektbeteiligte → Bearbeiten. 1. Check Saved participant group above the form. 2. Select the desired group. 3. Select Änderungen speichern. 4. Check the confirmation and group in the list. A restored browser draft is not a saved assignment; the warning identifies it. The existing company remains selectable even if its project-company mapping is missing or the company is inactive. Changing the company still requires an active project company. If saving fails, correct the reported validation error and save again.

Import existing customer numbers

Prerequisites: administrator access in the current tenant and the customer-number migration installed. One existing number identifies one address-book contact in this tenant. Company assignment remains a separate field; this does not create an accounting customer automatically.

  1. Open Zentrales Adressbuch → VCF / CSV importieren. Use a CSV column Kundennummer or Nummer (also Customer number). Format this column as text in your spreadsheet; TRACK preserves leading zeros. Allowed: 1–64 letters, digits and the characters . _ / -. A blank value does not remove an existing number.
  2. Choose Vorschau erstellen and check Erkannte CSV-Spalten and Bekannte Kundennummer. Up to 5,000 contacts are checked; the first 150 are a visual sample for larger files.
  3. Resolve number conflicts before importing. Under Customer number conflict · import row, compare the CSV row with existing contacts and other conflicting CSV rows: name, company, email and customer number are shown side by side. Under How should TRACK proceed?, choose to skip this row, change its import number, or explicitly confirm it is the same contact and keep the stored number or replace it with the import number. If the existing owner is a different contact, choose to assign that existing contact a new, unused number. Select the affected existing contact and enter New customer number (only when changing a number) when required. Alternatively, exclude a specific other CSV row using its named button. Select Preview decision. Nothing is saved yet; no decision is preselected. More than 25 conflicts are split into pages using Next conflicts; each comparison shows at most 20 other CSV rows. All unresolved conflicts continue to block import. To discard all correction cases at once, select Exclude all problematic contacts. This covers the entire file, including rows beyond the first 150. Valid contacts remain selected. Check the intentionally excluded and invalid counters afterwards; contacts are saved only after import confirmation. To undo the exclusions, discard the preview and upload the source file again. An exact reimport adds no duplicate.
  4. Review Your planned decisions: each stored number change shows the contact and old/new values. Confirmed existing contacts retain their names and project/document links; only missing data is supplemented. Reset number decisions removes pending changes to existing contacts. Select Geprüften Import bestätigen only after reviewing all decisions. Number changes and the import are saved together; a failure rolls back both. In Adressbuch durchsuchen, search the known number, including a single-digit number. Open the contact to verify Bekannte Kundennummer. A contact without a number can receive one through a matching import; existing numbers change only through the explicit conflict decision.

Troubleshooting: a missing migration blocks numbered imports and must be installed by administration. If an existing contact or number assignment changes after the preview, reset the number decisions and review the conflict again. Number conflicts detected while saving roll back the whole import. Do not merge away a source contact with a known number; this is blocked to preserve its reference. Existing TRACK accounting numbers and archived documents remain unchanged. Fax, website and other unsupported source columns are still listed as not imported in the preview.

Open a customer's projects from the address book

Requires address-book administration permission and access to the respective project.

  1. Find the person in the Address book and open their contact details. For a company, open Unternehmen, search and select the company name.
  2. Under Assigned projects, check project code, name and status. People show active direct project-participant assignments. Companies include company assignments, active company participants and an exact company-name match as client; subprojects inherit the parent project's client.
  3. Select Open project and verify the destination project.

An empty list means there are no accessible assignments. Inactive projects are labelled Inactive if accessible. If a project is missing, check project permission and the existing assignment in the project. A matching person name or employment by a company alone does not create a personal assignment. This view does not save new assignments.

Open company details and letters

Requires an administrator account.

  1. Open Unternehmen and enter at least two characters under Unternehmen suchen.
  2. Click a suggestion to open that company or joint venture directly. Alternatively select Suchen and click a company name in the compact results.
  3. Read the company details and the Letter history below. Project permissions still apply.
  4. Select Edit to change data. Unternehmen anlegen opens a separate creation form; Unternehmen zusammenführen opens the dedicated merge workflow.

If no suggestion appears, use the search button for city or email, check the status filter, or verify spelling. An empty letter history means no accessible letters are assigned to this company ID; joint-venture members do not automatically inherit the venture's letters.

Letter and invoice recipient addresses, including company and contact names, use 9 pt. Under Studio → Brief- und Rechnungslayout, Address font (pt) is fixed at 9. Check a new PDF preview; previously archived PDFs remain unchanged.

Check release history

Requires a signed-in TRACK account.

  1. Open Änderungsindex.
  2. Check the installed version marked Aktuell and expand the release entry.
  3. Use Ältere Releases and Neuere Releases to browse documented versions.

Missing registry entries are supplemented from shipped release notes or documented code-history milestones. Existing registry records remain unchanged. A historical entry is not proof that this version was installed or that its Mattermost announcement was sent. Unknown dates and delivery states remain unknown.

The code-line chart counts versioned PHP, JavaScript, CSS and SQL sources. Tests are separate; third-party libraries, build artifacts and worktrees are excluded at every directory level. Historical measurement errors are corrected from the original release source, preserving the release and its date.

If a version is still missing, report its number to administration: only documented versions are shown; gaps are not filled with invented changes.

Identify changes by topic: In Project → Nachträge, the joint-venture heading shows the distinct descriptions of the visible scopes. A generic import title shows “Topic not specified”. With project-management permission, choose “Add topic” (Thema ergänzen), edit “Bezeichnung” under “Nachtragsdaten” and save the form. For example, use “Erkundung Kaimauer Fleet”. Return to the list and search for “Kaimauer” to check the result. Readers can see descriptions but cannot edit them. If scopes concern different work, retain their separate descriptions; TRACK does not invent a shared topic.

Group joint-venture change scopes and reconcile sent orders

Requires project-management permission, an active joint venture and active member companies in the company directory. Administration must apply scripts/migrate_change_order_award_package.php to the operator and provisioned tenants.

  1. Open Project → Nachträge → Open. Under Joint-venture scope, enter the same Shared change number for both records, for example NT 10; select each Joint-venture partner and enter its Scope. Select Save assignment. The legal contractor remains the joint venture. To remove an assignment, clear all three fields and save.
  2. Return to the list. Within the project, scopes of the same joint venture with the same explicitly assigned shared number have one common heading, even when base-order assignments differ or are missing. Assigned scopes stay together under the shared number; partner and scope distinguish the records. The list does not display the historical internal reference. Each scope keeps its own review, amounts and commissioning status. The shared heading shows net subtotals for the visible, current scopes in the same claim, assessment, negotiated, commissioned and forecast columns as the list total; replaced, rejected and withdrawn scopes are excluded and counted separately. A filter recalculates these subtotals from the scopes still shown. Groups are placed by the first matching row of the selected sort; filters can show only part of a group. Search includes shared numbers, scopes and partners. CSV adds these three fields; PDF identifies the shared number and partner per row. The shared number is used in both list and detail title. TRACK manages the unique internal reference automatically. The read-only Nachtragsnummer in the main data form shows the shared number; both partners may use the same number. Correct the visible shared number under Gemeinsame Nachtragsnummer and select Zuordnung speichern, then reopen the detail page. Existing internal references and frozen documents are not renamed. A deliberate successor revision inherits the assignment; historical assignments cannot be edited.
  3. If the list shows Order letter sent · status reconciliation pending, follow it to Sent order letters. Open the letter and verify scope, recipient and net amount. Select Record existing commission to record the existing commission internally. The confirmed delivery and archived package must belong to this record. The frozen dispatched amount applies even after subsequent edits. No new review, letter or notification is triggered.

Check: review both scopes separately; only the reconciled record becomes commissioned with the package amount and an audit reference to its letter. Agreed unit prices with open quantities remain excluded from that amount.

If it does not work

A missing partner must first be registered as an active member of the joint venture. Remove an assignment before changing the legal contractor. No letter evidence means that no matching released order package with completed email or recorded postal dispatch was found; drafts, tests, coordination letters and uncertain delivery do not qualify. E-POST-only delivery is not reconciled by this control. If the archived package is missing or damaged, or commissioning occurred outside TRACK, have the actual evidence checked; never infer commissioning from an X86 import or a reviewed amount.

If none of the dates work, open your personal response link, clear all date checkboxes, enter Your proposed date (optional) and click Save response. Use a future date after the response deadline in Europe/Berlin; the meeting duration stays the same. Check the saved confirmation and reopen the link to verify your proposal. To change or remove it, edit or clear the field and save again. Selecting an existing option together with a proposal is rejected. Under Project → Project calendar → Scheduling poll → Participant proposals, project managers see proposals with the participant names. These are not acceptances or automatic bookings. To offer them to everyone, cancel the current poll and create a new scheduling poll. During processing or after closure, changes are blocked.

For an existing Teams link, optionally enter Meeting ID (optional) and Passcode (optional) from its original invitation. Automatic Teams creation stores the access details returned by Microsoft and includes them in the invitation, calendar file and project calendar. If unavailable, check the original invitation and the organizer’s OnlineMeetings.Read permission under Microsoft 365 / Teams. The invitation, calendar description and newly created organizer Teams event list all invited participants with their required/optional role. This is the invitation list, not a confirmation of attendance. Already sent invitations are not updated automatically.

Project scheduling polls

Under Select project participants, use Search participants to filter by name or email. Select a person first, then mark Required directly below that participant if necessary. Deselecting a person clears their required flag. The counter includes selected and required people outside the search results. Without JavaScript, the full list and both checkboxes remain usable.

Choose Meeting type: Teams-Termin creates a Teams link (or uses the supplied link); In-person meeting requires Venue (required for in-person meetings) and needs no Microsoft 365 connection. Both send calendar invitations. Once an event is finalized or the poll is cancelled, all still-authorized participants receive one closing summary. A no-match result remains open for corrections and does not send a closing summary yet. Check summary deliveries under Delivery status. Calendar invitations arrive separately. The poll email briefly explains the occasion, deadline and next steps. Its German wording follows the address book informal/formal setting or company default; the author’s agenda remains unchanged. The link is labelled Passende Termine auswählen. Under Invited participants, the response page lists names with Required or Optional; the email contains the same roster in German. During voting, individual response pages do not disclose other votes; the closing summary does.

Select recipients and additionally check Required for mandatory attendees; others are optional. All required attendees must accept the same option. Missing or negative required votes block automatic and manual selection. If no shared option exists, participants may correct their answers through their existing links. Otherwise cancel and create a new poll. Existing polls retain optional participants. Save draft sends no email: choose Send poll to participants, then verify Voting open and Delivery status. No delivery jobs means no notification queued; if Draft remains after sending, check errors and history.

Prerequisites: active project and project-management permission. Participants must be active project members or contacts with an email address. To generate a Teams meeting, the creator needs a connected Microsoft 365 account with calendar write permission; alternatively enter an existing Teams link.

  1. Open Project → Project calendar → Scheduling poll (scheduling_poll.php).
  2. Enter Title, Duration in minutes, Response deadline and an agenda. All times are Europe/Berlin. Enter 2–20 time options after the deadline. Suggest next week replaces the current options with weekday suggestions between 09:00 and 18:00, checking only the TRACK project calendar. Personal calendars and external availability are not checked. Use Add another option and Remove to adjust them. Earlier-listed options take precedence in a tie.
  3. Under Select project participants, check the people to invite, including the organizer if they should vote. Duplicate addresses are merged. Select Save draft and review the response matrix and details. Send poll to participants queues individual emails. Published participants, deadline and options are frozen; cancel and create a new poll for changes.
  4. Each recipient follows a personal link without a TRACK login, checks all suitable options and selects Save response. Selecting checkboxes alone does not submit a response. Changes show Changes not saved yet. Please click “Save response”. After saving, Your response has been saved. and the timestamp appear at the top; the page can be closed. Reopening keeps the selection and timestamp visible. On error, the new selection is not confirmed: save again or contact the organizer. An empty saved selection means none work; no reply remains pending. Responses can change until event processing starts, including after the deadline while processing is still pending. During processing the selection is locked; once the first invitation handoff starts, every response link is closed, including uncertain delivery outcomes. Do not forward personal links. Recipients see only their own response, not other participants' votes.
  5. As soon as all selected participants have responded, or after the deadline, the next background-worker run selects the future eligible option with most yes votes. An explicitly saved empty selection counts as a response; a missing optional response still prevents early selection. Options are numbered consecutively after adding or removing one. The first listed option breaks ties. Missing replies from required attendees block selection; with no yes votes, Manual decision required appears. Use Choose event manually and Select event and queue invitations, or cancel. The winner gets a Teams link for Teams meetings, a project-calendar entry and individual calendar invitations to all still-authorized selected participants, including nonresponders and people who declined that option.

The closing email shows responses in a table sized to its contents; participant names do not wrap automatically: green ✓ means yes, red ✗ means no, and – means no response. Dates and times are on separate lines; wider polls use several small tables. The plain-text email retains the written answers.

Check: reload the poll, verify the selected column, Delivery status, Teams link and project calendar. sent means mail-transport acceptance, not confirmed recipient delivery. The poll does not track later Outlook acceptance. Final events are protected from editing in the ordinary project-calendar editor; later rescheduling/cancellation must be coordinated separately with organizer and participants.

If it does not work
  • Administration must run scripts/migrate_scheduling_polls.php --root=/path --preflight and then --apply for the installation. The script covers operator and provisioned tenant databases. The existing correspondence_sync_worker.php must run regularly in each tenant's explicit context. No automatic tenant orchestration is introduced. Completed-response and deadline decisions happen on the next worker run; delivery latency depends on its interval.
  • For an unavailable response link, open the affected poll and check Response host and each recipient’s Response link status. Compare the host with the received email without sharing its token. New polls retain the configured originating URL; legacy polls use the worker configuration. Missing migrations, inactive project assignments, changed email addresses or revoked organizer permissions block access. Closed polls cannot accept answers. Previously sent incorrect links are not repaired automatically.
  • If a poll remains pending, check the worker, project/organizer permissions and Microsoft 365 connection. Deactivated or reassigned recipients are skipped. If all options have passed, cancel and create a new poll.
  • unknown delivery is never automatically retried. Check the outbox, tick Outbox checked; another handoff is required. and use Queue this mail again for that delivery only.
  • For uncertain Teams creation, check the creator's calendar, use the existing event or create the appropriate event there if absent, then confirm Organizer calendar checked; Teams link belongs to the selected event. and Use checked Teams link. Do not blindly create another meeting.

Check E-POST processing and test print output

Requires the E-POST tracking migration and an active test configuration. Offer access requires accounting and project permission; Administration → Postdienstleister requires system administration. The existing correspondence worker must run regularly for automatic checks.

  1. Check the sender company profile: company name, street, five-digit postal code and city are mandatory. Open Office → Angebote, approve the offer and check its PDF and recipient.
  2. Under Delivery prepare and open the PDF/A-1b print version, confirm the print version and test environment, then choose Submit to E-Post. TRACK requests a provider-generated address cover sheet containing the sender and recipient. The original PDF is unchanged; the cover adds a page.
  3. Choose Refresh E-POST status on the offer. Status 1 only confirms upload; 2 confirms conformity. Test status 2 causes no postal delivery. In production, status 3 means transfer to the print centre and 4 confirms dispatch; 99 is rejection.
  4. For an earlier test, open Administration → Postdienstleister → E-POST processing status. Enter its LetterID and choose Track existing submission. This queries the existing submission and never uploads again. Refresh status updates it manually; wait at least five seconds between queries.
  5. After successful test processing choose Download test print PDF. Inspect sender, recipient and address window. Provider output is normally available for 48 hours after processing. Once several tests reach status 2, send their LetterIDs to Docuguide for go-live review; TRACK does not contact support automatically.
Check: LetterID, status number, processing details and errors appear on the offer and in administration.
If it does not work

E333: verify the complete sender profile. Existing frozen offers retain their saved sender; use a corrected offer when its saved profile is incomplete. E302: check restricted print areas. HTTP 429: wait before querying again. Unknown upload results require external reconciliation, never automatic re-upload. Provider rejection allows an explicit new submission after correction; the old status record remains. For letters, follow the letter E-POST guide below.

Find saved letters and recipient history

The contact view groups Contact options, Address and Personal details & communication. Email addresses and phone numbers are actionable; language, salutation and birthday use readable labels. New letters put the company before the contact person in the address block.

  1. As an administrator, open the person’s name in Address book. Letter history also includes joint-venture letters where that person was explicitly selected as a contact.
  2. In Companies, click the company or joint venture in the search suggestions; Letter history appears below its details. This lists letters with its stored company ID, including letters addressed to a person.
  3. Filter letters retains the same identity filter. Zurücksetzen clears it. Project permissions still apply; CC/BCC alone does not add a history entry. Joint-venture letters are not automatically attributed to every member company. For missing entries, check the saved addressee and project access; matching names alone are insufficient.

Requires login and access to the letter's project, if assigned. Open Briefe, choose Zurücksetzen, then filter by Empfänger / Unternehmen or Betreff / Brief-ID. Under Projekt, select Ohne Projektbezug and choose Filtern for letters without a project. There is no separate archive for these letters.

  1. Open the matching letter number to see the saved letter and workflow.
  2. Administrators can search for a person in Adressbuch and click their name. The read-only Contact details view shows saved data and the Letter history directly below. Edit opens the separate edit form. Choose Open beside a letter to inspect its workflow, or Filter letters for the list. History uses the recipient contact ID, includes drafts and letters without a project, and excludes CC/BCC copies. The newest 100 accessible letters are shown. If no entries appear, check the selected contact and project permissions. An inactive contact remains viewable; a deleted contact returns Person not found. The edit form also retains Letters to this person.
  3. Check previous letters under Bisherige Schreiben an diesen Empfänger. Project permissions still apply.

For E-POST, Last provider query attempt: shows the last attempted query, not a new provider status. Check any error shown. Status 1 still means pending conformity. Query again later; do not resubmit. If it persists, provide the LetterID to support. Testversand an mich is an email test, not the E-POST conformity result.

Test and send a letter through E-POST

PDF/A-1b print version: Requires the print-version migration, Ghostscript, Poppler and veraPDF. New letter drafts, review previews and signed releases use PDF/A-1b. Electronic invoice originals remain PDF/A-3b with their XML. Letter conformity is checked with veraPDF, and the signed release is archived without later conversion.

  1. In the saved E-POST letter, open the PDF preview. Before approval, optionally select Open signed PDF/A-1b preview and check all pages, signatures, address and barcode.
  2. Select Alleine freigeben & unterschreiben or Freigeben & Unterschrift ins PDF übernehmen. TRACK automatically validates and archives the current signed PDF/A-1b; no separate print confirmation is required. If the draft or signature changed, reload and review the current preview.
  3. Use the separate E-POST send confirmation. Exactly the archived signed PDF/A-1b bytes are submitted; there is no new conversion during sending. The configured test/production mode is unchanged.
  4. For offers: Office → Angebote → open offer → approve → Delivery → Brief / E-Post. Prepare and open the print version, confirm it and submit. Email keeps the electronic original.
  5. For paper invoices: Office → Rechnungen → open the final invoice in Bereit für Postversand, sent or paid status → prepare and open the print version. This is a separate XML-free print copy for manual postal dispatch, not an automatic invoice E-POST upload. The archived 3b original and email attachment are unchanged.

Troubleshooting: missing veraPDF or failed conformity/rasterisation checks block preparation and postal submission. Administration installs veraPDF at /var/lib/bwpm-track/verapdf/verapdf or sets BWPM_VERAPDF, and runs php scripts/migrate_postal_pdf.php --root=/path --preflight, then --apply for all provisioned tenants. An old letter release without a confirmed 1b version cannot be submitted; withdraw it if still permitted and release it again. If the sender line is too long at 8 pt, the print-preview page explains the problem and links back to the document. In Studio → Document layout, shorten only the E-POST sender name; keep street, postal code and city complete. Then open the current preview and release again. No file is sent on this error. Never resubmit an already accepted or uncertain dispatch. Opening the preview does not send or switch to production.

Choose the delivery method: In an editable letter draft, select Versandweg and read the explanation below. Post · selbst drucken und versenden requires printing and posting the letter yourself, then Postausgang dokumentieren. E-Mail · Brief als PDF versenden sends the released PDF to To/CC/BCC via E-Mail versenden. E-Mail vorab + Post selbst versenden requires both steps. The three Deutsche Post choices transfer the letter to the provider for printing and postal delivery as a letter, registered letter or registered letter with return receipt. This is not email and does not automatically deliver CC/BCC copies. Test mode sends no paper letter. Selecting a method does not send anything. If provider activation is missing, contact administration; a test status does not prove delivery.

For newly generated letters and invoices, the shared document frame reserves a 12 mm left margin and at least 2 mm at the other edges for every tenant. The TRACK document barcode is horizontal in the first-page footer, with the document number alongside; fold and punch marks stay outside the reserved left margin. Fold marks use Z-fold positions at 105 and 210 mm. New letter drafts, review previews and signed releases use PDF/A-1b; E-POST letters need no extra provider cover sheet. The shared renderer prints an 8 pt return address and up to six 9 pt recipient lines, keeping the reserved postal franking area clear. Tenant CI fonts remain in use. Offers and older frozen letter releases keep their previous cover-sheet workflow. Archived PDFs remain unchanged. Check the preview and provider test print; recreate older released versions as new drafts and release them again if their layout needs correction. Investigate PDF conversion warning W101 separately from reserved-area violations.

Requires project access, permission to send for the signer, a released letter with its intact frozen signature and the letter E-POST migration. System administration configures Administration → Postdienstleister → Umgebung → Entwicklung / Test and activates the provider. The provider must approve production use before switching to Produktion.

  1. Open Briefe → create or open a draft. Select the signer, postal recipient and Versandweg: Deutsche Post · E-POSTBUSINESS · Brief (or the required registered-letter product). Save and complete the existing review and release workflow. Letters with award-package attachments cannot use this flow.
  2. Open the released letter → E-POSTBUSINESS. Check Test · no postal dispatch, the signed PDF, recipient and Postal sender:. The sender comes from the signer's company profile frozen at release. A later company-profile edit does not change this released address. Only the addressed recipient receives a letter; no automatic postal CC/BCC or separate attachments. The new letter layout needs no additional cover page.
  3. Tick I checked the released PDF, sender, recipient and delivery mode. and select Submit E-POST test once. This is distinct from Testversand an mich, which emails the PDF to your own account. The E-POST test uses the actual frozen postal address without physical delivery.
  4. Current release shows only submissions for the current letter revision. Old test results and warnings are under Earlier releases, collapsed by default. TRACK explicitly indicates when no current submission exists. Earlier LetterIDs and test print PDFs remain available there; they do not describe the current PDF. Select Refresh E-POST status, allowing at least five seconds between checks. Status 1 means uploaded, 2 means test conformity, and 99 means rejection. The existing correspondence worker also checks automatically. Prerequisite: administration has applied the E-POST status notification migration and runs correspondence_sync_worker.php regularly for each tenant. Changed status or provider warnings trigger an email to the original author with letter number, release revision, LetterID and a link. Manual status checks also queue this email for the worker; unchanged results do not send another email. Automatic notifications must be enabled under My notifications. Test and production remain clearly distinguished. If messages are missing, check the active author account, project access, notification setting and worker log. Uncertain mail handoffs remain locked and are not retried automatically. LetterID, errors and checks remain on the letter.
  5. At test status 2 select Download test print PDF. Check the first page, sender, recipient, reserved franking area, signature and all pages. The provider normally retains test print data for 48 hours. Submit several separate test letters and report their successful LetterIDs to Docuguide for approval.
  6. After provider approval and switching the configured environment, reload the letter. Verify Production · postal dispatch, confirm the details and select Send letter via E-POST. A test does not automatically trigger production. Only production status 4 records postal dispatch.

Check: an uploaded or conformant test never marks the letter as sent. The exact uploaded PDF and released snapshot are archived with the submission.

If it does not work

Return address too long: With Studio permission, open Studio → Document layout → Short E-POST sender name, save an unambiguous short company name, then review the draft again. An empty field uses the company profile name; street and city are never shortened. For a private sender, check the private address. More than six recipient lines: shorten address additions. Older release: a completed sandbox test (status 2 or 99) permits withdrawal; pending or uncertain tests and all production submissions remain locked. Release the corrected letter as a new revision and run a fresh sandbox test. Never repeat an existing test for the same revision. Missing button: check the E-POST delivery method, release, signature, project and dispatch permissions. Missing migration: administration runs php scripts/migrate_epost_letters.php --root=/path --preflight, then --apply; this includes all provisioned tenants. Incorrect frozen address: prepare a corrected letter and release it again. Once a production submission or an unresolved test starts, withdrawing this release is blocked. Explicit provider rejection allows deliberate resubmission after checking the cause; older attempts remain in the history. Unknown or interrupted submission remains blocked: have administration reconcile it with Docuguide using the letter, timestamp and available LetterID; do not submit a duplicate. A changed provider account cannot query another account's submission.

Schedule document delivery

Prerequisites: the document’s existing approval and send permission, configured delivery service, the scheduled-dispatch migration and the central background worker. Scheduling does not approve drafts automatically.

  1. Open the document under Schreiben, Office → Angebote, Office → Rechnungen, or the project’s file notes or meeting minutes.
  2. In the delivery or release form, select Schedule delivery / Zeitgesteuert versenden and enter Date and time / Datum und Uhrzeit. The displayed time zone applies. Check the appointment again after reloading; local form drafts do not restore scheduling choices. Unchecked means immediate sending. New invoice approvals preselect the next first of the month at 00:00; choose another date or uncheck the option.
  3. Check the approved document, recipients and, for E-POST, the postal version and sandbox/production confirmation. Submit the existing release/send button.
  4. Check Delivery schedule / Versandplan on letters, offers, file notes and protocols. For invoices, check the planned delivery in the invoice workflow. An appointment is not a confirmed handoff.
  5. Before sending starts, use Cancel scheduled delivery / Versandplanung abbrechen and create a new appointment. For invoices, withdraw approval first; the assigned number remains reserved.

The worker starts delivery no earlier than the appointment. Changed approvals, document versions or lost access block queued delivery. Check blocked jobs, cancel and plan again. For sending/unclear outcomes, ask administration to inspect the delivery log; do not retry. Manual postal dispatch still needs actual posting. Existing approved invoices keep their saved dates.

Administration: run scripts/migrate_scheduled_dispatch.php --root=/path --preflight, then --apply. This covers all provisioned databases; newly provisioned tenants inherit the schema. Run php -n deploy/install_background_cron.php --preflight as server administrator from the installed production tree, inspect the listed files, then run --apply. This installs deploy/bwpm-track-background.cron, backs up affected crontabs and comments out direct calls to the covered workers. Complex combined calls stop the cutover; inspect custom wrappers and systemd timers separately first. The central background_worker.php discovers active tenants on every run, covering invoice draft preparation from the 20th, invoice dispatch, scheduled documents, Planserver/Nextcloud, monthly reports, correspondence/E-POST tracking and weekly news. Root tenant provisioning keeps its existing separate service. Use journalctl -t bwpm-track-background to inspect task/tenant results. Long-running jobs are bounded; uncertain dispatch is never automatically repeated.

Follow-up protocol: When a next meeting is planned, its draft is created and opened immediately on release. Scheduled delivery still waits until the selected time. No next meeting means no follow-up draft. For an older released protocol without a follow-up draft, open Neue Besprechung in the same series, check the intended meeting date and header details and select Anlegen und offene Punkte übernehmen. If an open draft already exists, open its protocol-number tab instead of creating another meeting.

Previously approved protocol: Under Nachträglicher Versand, select the invitation option. Check Schedule delivery, enter the date and time, then click the Schedule delivery button below. Confirmation saves the delivery time; no message is sent now. Without the checkbox, the button reads Send now. Afterwards, check the entry under Delivery schedule.

Scan versus import: Under Scans, each entry shows files found, imported in this scan and previously imported, unchanged. Expired reviews do not delete imported documents. Open the scan and check Imported; if no files were imported, select Restart scan, review and explicitly import the selection. Open Back to plan server and check the target folder and draft filter. Project knowledge requires separate confirmation and normally searches approved versions only.

Skipped file types: After selecting a scan, open Skipped file types. The table lists each actual extension and its count (No extension for extensionless files); Show files opens the matching paths, 20 per page. Use Skipped file type and All file types to change or clear the filter. PDF, DOC, DOCX, XLS and XLSX are accepted; other extensions are skipped before content analysis. Files that failed processing remain under Failed. Nothing is deleted from Nextcloud.

Batch filing of large source folders

Requires project management and a writable target folder. Open Project → Plan server → Nextcloud folder sync and a scan marked Ready for review.

  1. Under Import a source folder as drafts, select Source folder including subfolders, Target folder and Document type. All selected files go into this one target folder; source subfolders are not recreated.
  2. Select Preview batch. Check the file count, source and target, and the first 20 filenames. Only new eligible files are selected; existing document revisions, failed files and mismatched project codes remain for individual review.
  3. Confirm the source, project and target for the entire selection, then select Queue batch import. This confirms filing, not the contents of each file. Titles use filenames. No permanent classification code, approval or project knowledge is assigned.
  4. The existing worker imports drafts in the background, even after closing the page. Use Refresh status to check progress. Earlier successful files remain if the batch stops with an error.
  5. Use Filter review list with status and Filename or path to inspect remaining exceptions. Correct a reported error and create a fresh batch preview for the remaining eligible files. A changed selection or a preview older than 30 minutes requires a new preview. The scan still expires after seven days.

The review list defaults to ready files. Select Failed to inspect errors; a ready scan does not mean every source file succeeded. A queued batch needs the configured import worker in the correct tenant context. Separate source folders can be queued sequentially for different targets. Later content review and approval remain separate.

Scan Nextcloud folders into the plan server

A scan queued for at least 15 minutes displays a worker warning. Reloading only reads status; it does not start processing. Ask administration to check planserver_remote_worker.php in the correct installation (operator or --tenant=ID). Keep the existing job; do not submit duplicates.

Prerequisites: project management and project access, a personal Nextcloud connection, the folder-sync migration and the existing import worker. Administration runs scripts/migrate_planserver_remote_import.php --root=/path --preflight, then --apply for operator and provisioned tenants. No calendar data is imported.

  1. Open Project → Plan server → Nextcloud folder sync / project knowledge. Alternatively use ZIP import → Scan folders without ZIP.
  2. Select Source, enter a folder path or leave it empty for the entire account, and choose Browse folders. Open a subfolder, then choose Scan this folder. Repeat for additional source folders. Subfolders are included.
  3. Open the scan and choose Refresh status. The worker lists the source and reviews PDF, DOC/DOCX and XLS/XLSX files. Office originals can be downloaded for review; only PDFs have previews and automatic text extraction. Unchanged files and unsupported file types are labelled separately; changes and removals never delete plan-server files.
  4. Under Review and import, open each file and Open source PDF, or Download Office original for Word/Excel. Office originals retain formulas and formatting but contribute no extracted project knowledge. Check extracted PDF page text and the evidence for suggested title, document type, destination and classification. These are rule-based proposals from filenames, source paths and extracted text, not verified facts. Files containing another project code must be reviewed individually.
  5. Select Target folder. Under Review classification, check all fields before enabling Assign permanent TRACK code. A recognized external number is preserved; the permanent TRACK sequence is allocated at import. Without explicit classification the file receives a DOK number.
  6. For an existing source document, confirm Confirm new draft version; title, classification and folder stay as before. Confirm Project, content and filing checked, select Import this file and choose Import selected files. Selection applies to the current page (20 files). Unselected files remain in the review.
  7. Use Include extracted pages in project knowledge to retain searchable excerpts. Under Search project knowledge enter a term of at least three characters. Results cite document, version and page, respect folder access and normally include only the current approved version. Include drafts explicitly exposes draft material with its status. Search is literal text search, not an AI answer or a determination of contract validity.

Check: Open the imported document, inspect original filename, source path, draft status, classification and version history. Repeat the scan: unchanged source versions are not imported again. The source version is the one downloaded for review; later cloud changes appear in the next scan. Nextcloud originals remain intact.

Troubleshooting: A scan waiting indefinitely requires the import worker. Each scan supports 10,000 files and 2,000 folders; choose smaller folders if necessary. Existing document size limits apply, capped at 100 MiB. Analysis supports 250 PDF pages including up to 20 scanned pages; OCR needs pdftotext, pdfinfo, pdftoppm and Tesseract. Failed extraction is shown and does not invent context; inspect the PDF manually. Reviews expire after seven days, interrupted jobs after two hours. Open an expired or failed scan and choose Restart scan: this creates a new scan with the same personal connection and folder. The old record remains. If the connection was deleted, select a source at the top and choose Scan this folder, which is always visible next to Browse folders. If a source or target changed, start a new scan. Missing destination: check folder rights. Empty knowledge results: check extraction, approval, access and search term. No automatic sync schedule or automatic approval is configured.

Select a company for a project mailing list

Requires project access and project management permission. Open the project → Participants → Projekt-Mailverteiler.

  1. Enter the email address under Verteiler anlegen and select Verteiler speichern.
  2. If automatic assignment is ambiguous, enter at least two characters of the company name or short name under Unternehmen suchen. The search covers all active companies in the current tenant, including companies not yet assigned to this project.
  3. Click the matching suggestion and select Verteiler speichern again.

Check the company and email under Verteiler dieses Projekts. The selected company is assigned to this mailing-list entry; this does not create a general project-company assignment. Validation messages return to the normal page; the entered email and company search remain available for 30 minutes in the same session. Refreshing does not repeat the save. No result: check the central company record and its active status. Automatic assignment remains limited to the existing project context and your own company.

Check recipient and release details

Requires sign-in and permission to create letters for the signing person, plus project access when a project is selected.

  1. Open a draft under Korrespondenz → Briefe, or choose Brief schreiben in the address book.
  2. Select a person or company. Selected recipient shows the name, company, actual address and email. Use Change recipient to search again. Private addressing shows only the private contact details entered in the form.
  3. Review feedback beside the recipient, sender details, signing person and An zusätzlich. Complete missing addresses in the address book or Studio and select the recipient again. Add a missing signature in the signing person's profile. Reload the page to check external changes.
  4. Save the draft and check PDF-Vorschau. Field feedback does not replace PDF validation, release checks or permission checks. A missing signature does not prevent saving a draft.
  5. Check dispatch status below the preview and Prüfung, Freigabe & Versand. Email followed by manual post shows each step separately. Only choose Postausgang dokumentieren after actually posting the letter.

Check unavailable does not confirm successful validation: reload and contact administration if it persists. E-POST tests do not count as production dispatch. Clarify uncertain email or E-POST handoffs in the dispatch history before retrying. Historical letters without a separate email record display that step as not documented.

Multiple personal addresses: Requires the contact-address migration; editing the address book requires administrator access. A private sender contact must be explicitly linked to your own user account.
  1. Open Address book → Edit → Additional personal addresses and click Add address. Enter a label, street, city and country, plus postal code and address addition where applicable. Up to ten additional addresses are supported. Choose Save changes. The existing personal address remains primary; removing an address takes effect when saved.
  2. Open Brief schreiben → Sender details, choose Private – from address book (second layout), then choose the desired Private sender address.
  3. For the recipient, choose Write to person → Private, then select an Address from address book. Alternatively select Enter for this letter and enter the address manually.
  4. Choose Speichern and check sender, recipient and language in PDF-Vorschau. The selected address is copied to the letter; later address-book edits do not change released PDFs.
If an address is missing, check the user link and address-book data. A removed selection must be selected again in the draft, without silently using the primary address. Another signer's private address cannot be used as sender.

The signed release uses the same recipient language as the preview, including the closing and QR image description. Before release, choose Open signed PDF/A-1b preview and check these texts. Archived PDFs remain unchanged; use the existing correction workflow to review and release a corrected version.

Letter language: Requires an active address-book contact and permission to edit the letter.
  1. Open Address book → Edit → Preferred language, enter de, en, fr or es and save. Regional codes such as fr-CH are recognised.
  2. Select Brief schreiben and check Anrede im Brief. Reopen the draft after changing the contact.
  3. Open PDF-Vorschau and check the greeting, automatic closing, attention line, continuation and page labels before release.
No preference means German; unsupported codes use English. For companies, the first selected contact with a language preference determines document labels; each personal greeting follows that contact’s language. Author text and company details are not translated. The same preference applies to generated letter email text, including salutation, closing and links. To recipients are grouped by language; personal CC and explicit BCC copies use their own recipient’s language. BCC addresses remain hidden from other recipients. Testversand an mich uses your own preferred language in the address book: de keeps the test email German; temporarily choose fr, en or es on your own contact to test another language, then restore it. Check the received email; the attached PDF retains the letter language. Custom signature and legal text remain unchanged. Released PDFs remain unchanged. For the wrong language, check the selected contact and their language code.

Private sender and layout: For your own letter, complete the private sender address under Adressbuch → Bearbeiten → Persönliche / abweichende Anschrift. In the letter editor under Absenderangaben, choose Privat – aus dem Adressbuch (zweites Layout); Brieflayout switches to Zweites Layout automatically. Save or open PDF-Vorschau and check the private address. Switching to Standardlayout resets sender details to Nach Layout. Missing personal address data and signing for another person remain blocked. Save, PDF preview and test delivery use the same layout resolution.

Photo on the contact card: As an administrator, open Address book and click a person’s name. The photo at the top left uses the uploaded contact photo first, then the profile photo of the explicitly linked user account, then the existing Gravatar/initials fallback. Update your user photo under Profile; update a contact photo through Edit. Reload the contact view after changes. If only initials appear, check that a photo exists and the contact is linked to the correct user. A matching name or email does not create a photo link.

Start a letter from a contact: With address-book access and permission to create letters, open Adressbuch, open the person and select Brief schreiben. The editor preselects this person and Beruflich; check the recipient and salutation, optionally select a project, enter subject and text, then choose Speichern. You can change the recipient or select Privat and enter a private address. Inactive or deleted contacts show a notice and require another recipient. Merely opening the editor neither saves nor sends a letter.

View sent letters: With permission to read the letter, open Schreiben, select a sent letter and choose PDF ansehen. The PDF preview appears directly, without the duplicate text block or next-step button. Check the PDF and use Zum Workflow for delivery history and actions. For email followed by manual post, an outstanding postal dispatch must still be recorded there. Release alone and sandbox tests do not count as sending. If the PDF fails to load, choose In neuem Tab öffnen and check the displayed error.

PDF validation message instead of a system error: If the PDF tab of a newly created letter reports that the return address does not fit at 8 pt, check Studio → Dokumentlayout → Absender-Kurzname für E-POST for the signing company. Choose a shorter unambiguous company name, keep the full street and postal code/city, save and reopen the draft preview. For private senders check the private sender address. This validation applies to every delivery method. Existing letters are not upgraded to the new address layout. Archived release PDFs remain unchanged. If no archived PDF exists, the preview uses the previous address rendering; byte-identical reconstruction is not guaranteed. Old letters need no editing or renewed release for this change. With existing read permission, open an old letter under Schreiben and check its PDF preview. Existing E-POST checks remain in force for old E-POST versions. Never resubmit an existing postal letter to repair the preview.

Receive E-POST copies and tracking updates

Prerequisites: permission to edit, release and send the letter; valid CC email addresses. Administration must apply scripts/migrate_epost_notifications.php --root=/path --preflight, then --apply to the operator and all provisioned tenants. The existing correspondence_sync_worker.php must run regularly in each tenant context; SMTP must be configured. Authors need an active account, letter access and enabled automatic notifications under Meine Benachrichtigungen.

  1. Open Correspondence → Letters and edit the draft. Select the intended email recipients under CC. The project directory alone does not select recipients.
  2. Save, review and release the letter. Check Tatsächlicher E-Mail-Verteiler before choosing Send letter via E-POST in production. The released CC list is frozen for this submission.
  3. CC recipients receive separate personal emails with the exact archived submission PDF: submission accepted, dispatch confirmed by the print centre, and arrival at the destination mail centre when reported. Registered mail receives a delivery message only for an explicit confirmed delivery status. Return-to-sender and recipient notification do not count as delivery. Ordinary letters have no recipient delivery confirmation.
  4. Open E-POSTBUSINESS → E-POST email notifications on the letter to check the queue and mail handoff. Use Refresh E-POST status for a manual provider query. The worker sends queued messages. The author receives every changed processing/tracking status, warnings, upload/query errors and unclear CC mail handoffs. Unchanged polls and repeated CC milestones do not resend mail.

Check the wording: Letter arrived at destination mail centre confirms the destination region only; Registered letter delivered requires the provider's explicit delivery status. Normal letters may therefore have fewer messages if tracking information is unavailable. Tracking continues after dispatch, at six-hour intervals, for up to 30 days; missing final information is reported to the author and never converted into a delivery confirmation.

If a message is missing

Test submissions and submissions made before this extension never send CC messages. Check the frozen CC list, worker, SMTP and E-POST email notifications. An unclear handoff is not automatically retried; administration must reconcile it with the mail server. Do not submit the postal letter again to trigger a missing email. CC recipients require no TRACK account and their message contains the PDF without an internal portal link.

Configure E-POSTBUSINESS

Requires a system administrator and activated E-POST API credentials. Open Administration → Postdienstleister (postal settings), or E-POSTBUSINESS settings.

  1. Enter vendorID, ekp (exactly 10 characters), password and secret. For password, use the value you chose as newPassword in POST /api/Login/setPassword; secret is the value returned after successful activation. The SMS code is not the password. Keep the supplied REST API base URL.
  2. Select the environment and use Speichern (Save). Empty password and secret fields preserve existing encrypted values.
  3. Use Login testen and check the displayed result. API-HealthCheck checks availability separately; neither action sends a letter.

Values entered in the old generic interface are not copied automatically. Enter all four credentials here. For an invalid ekp, check its length and whether it was confused with vendorID. Other providers remain under the general interface link.

Use Feature Requests through Mattermost

Prerequisites: channel membership, configured TRACK integration and bot access to feature-requests. TRACK access is limited to the reporter, assigned colleague and system administrators; only administrators assign requests.

  1. In Mattermost, open feature-requests and use the slash command configured for TRACK (the existing /bug command can also open the feature form in this channel). Enter Titel, Bereich, Beschreibung and Dringlichkeit, then select Wunsch anlegen.
  2. Use Feature Request in BWPM TRACK öffnen in the created root post. Confirm that the ticket appears under Feature Requests. Post additions and screenshots as replies to that root, then check the TRACK history. Unlinked top-level messages are not imported.
  3. Under Feature Requests → request → Bearbeitung, set Zuständiger Bearbeiter and Status, enter Antwort an Melder, then Speichern. Verify the public reply in the same Mattermost thread and the updated root status. Interne Notiz remains private.

Troubleshooting: administrators must set MATTERMOST_FEATURE_CHANNEL_ID in the existing Mattermost configuration and run the existing feature worker for requests created in TRACK. The existing outgoing integration must cover the feature channel and call mattermost_bug_thread.php. The dialog uses mattermost_bug.php and its existing token. A separately registered slash command needs a matching token configuration. Old unlinked webhook announcements do not accept replies; use the new linked root. Uncertain publication is blocked until an administrator checks the post and repairs its link; never clear the reservation blindly.

Show sibling-project performance in construction minutes

Prerequisites: the series uses Baubesprechung; you can access every project in the same project family. Active monitoring items need dates, a positive total target and recorded daily performance.

  1. Open Project → Protokolle, select the subproject, series and meeting.
  2. Open the draft PDF using PDF. Under Leistungsstand, TRACK automatically includes the parent project and parallel subprojects.
  3. Check the project label on each curve and the meeting date as cut-off. Daily totals remain shared totals, not sums of submissions by different people.
  4. Review and release through the existing workflow. Released PDFs and saved curve snapshots remain unchanged; later source changes affect new drafts only.

Troubleshooting: check the parent-project assignment, active monitoring item, target, date range and recorded performance when a curve is missing. Missing project-family access blocks a new PDF instead of silently omitting curves. Ask the project administrator to check access.

Daily reminders for unresolved system warnings

Prerequisites: administrator access; a scheduled system_check.php run and a configured system-alert email recipient.

  1. Open Administration → Systemstatus.
  2. Read the warning/error cards, including Webcam-Aktualisierung, and correct the reported cause.
  3. Check Systemwarnungen · E-Mail for the last delivery attempt. Mailserver handoff does not confirm inbox delivery.
  4. After the next scheduled check, verify that the affected card is green. While warnings/errors remain, the first check each calendar day (Europe/Berlin) attempts one summary email. Repeated runs and status changes on the same day do not send more emails.

No reminder is sent when all checks are OK. Opening this page does not trigger a reminder. If the CLI job is not scheduled or not running, no daily email can be sent. On failed or uncertain handoff, check mail logs; TRACK does not retry that day. The next regular daily attempt uses freshly checked problems. A dry run sends no mail and does not reserve the day.

Check the file-note consultation log

Prerequisites: permission to coordinate the file-note draft; administrator access for the central audit log.

  1. Open Project → Aktenvermerke, save the draft, select the recipients under Zur Abstimmung versenden and press Zur Abstimmung versenden.
  2. Check Letzte Abstimmungsaufträge. Queuing is not yet mail delivery.
  3. As administrator open Administration → Systemstatus → Audit öffnen. Filter Ereignistyp by file_note_consultation_queued for the request or file_note_consultation_sent for each mailserver handoff.
  4. Check date, project, initiating user, AV reference and recipient. The audit context retains the frozen PDF hash and author identity.

Troubleshooting: file_note_consultation_unknown means the mail handoff is uncertain; check before retrying. file_note_consultation_skipped means the worker skipped an invalidated request. No receipt or reading confirmation is claimed. Previous deliveries are not backfilled or resent.

Check the author as file-note sender

BWPM operator installation: The company mail designer controls the footer, logo, legal details and AI notice, including automated TRACK messages and BWPM calendar emails. No replacement footer is forced. Personal templates do not override the company template; {{ABSENDERNAME}} resolves to BWPM Assistenz for BWPM. {{KI_MODELLE}} and {{AI_MODELS}} show only model identifiers recorded for this message, otherwise “nicht hinterlegt” or “not recorded”. A configured default model is not evidence of use. The separate mail-assistant worker and external mail connectors currently do not use this TRACK renderer. All outgoing TRACK emails use BWPM Assistenz <assistant@bwpm.de> as From and return address, including tests, invoices, notifications and calendar invitations. Business replies still go to the resolved author/approver or configured invoice address through Reply-To; automated system replies go to the assistant. Stored personal templates and document approval records remain unchanged; the delivered footer follows the company template. Personal S/MIME certificates are not used for the shared address. The personal sender settings described below continue to control From only in other tenants.

Prerequisite: permission to send the file note; its author needs an active user account with a valid email address.

  1. Open Project → Aktenvermerke and select the file note.
  2. Under Review / Freigabe, check E-Mail-Absender des AV. The author saved for this file note in created_by is used, not the last editor or approver.
  3. Use the existing Testversand to the intended test address. Check the author’s reply address. BWPM uses the shared assistant sender and the company mail-designer footer; other tenants keep their configured sender rules.
  4. Send the released file note through the existing distribution workflow. The person triggering delivery remains recorded in the delivery log.

Internal review and return emails use the recipient’s informal, formal or ceremonial address-book preference in both greeting and generated text; without an individual preference, the company default applies. Free-text correction notes remain unchanged.

The same sender rule applies to draft consultations and file-note task reminders. A new continuation uses its own saved author. Already delivered messages are not changed or resent.

Troubleshooting: correct the user assignment or profile if the author is missing, inactive or has no valid email address. TRACK does not substitute the approver as sender. If authorship changes after a consultation is queued, create a new consultation request.

Insert letter images and optional QR download

Prerequisites: editable letter, authorisation for the sender and project, installed letter-image migration; project-gallery permission for gallery selection.

  1. Open Letters, create a draft and choose Speichern once. Reopen the editor.
  2. Place the cursor in the letter text. Under Images in the letter, use Upload images, paste an image into the text with Ctrl+V, or select a thumbnail under Project gallery (latest 200) and choose Insert gallery image. The selected preview is marked Selected; selection alone does not insert the image. Tab and Enter or Space also work.
  3. Without an explicitly chosen cursor position, images are appended after the existing letter text. For a specific position, click that point in the text first. Move the inserted [[Bild:…]] marker to the desired paragraph. Insert in text inserts an uploaded image again. Remove removes it from the draft; save afterwards. Up to 12 JPEG, PNG or WebP images, 10 MiB and 40 megapixels each.
  4. Optionally select QR download code for included original images. This is off by default. After release, the QR code opens an image page without TRACK sign-in. Recipients can view the included images, open originals or download all images as ZIP. Anyone holding the link has this read-only access, with no editing or access to other project images. Older QR codes remain direct ZIP downloads. Draft downloads require login and letter access. PDF labels beside the QR code follow the letter language (German, English, French or Spanish).
  5. Choose Speichern, then PDF-Vorschau. Check image positions, page breaks and the QR code before review and release.

Images are copied into the letter archive. Subsequent gallery changes do not alter the released letter. Only images with markers in the text appear in the PDF and ZIP. A QR selection without images produces no code. If no project images are available, check the project gallery and your gallery permission. If a preview is unavailable, check the original image in the gallery. Wait until upload finishes; on errors check format, size, permissions and migration. A missing or changed image blocks PDF generation rather than silently omitting it. Remove images before changing the project. Perform AI rewriting before inserting images.

Filter and sort outgoing letters

Prerequisites: sign-in and access to the relevant projects.

  1. Open Korrespondenz → Briefe.
  2. Choose project, date range, recipient name, recipient company / joint venture, letter number, subject or status, then press Filtern. Name and company searches are separate; use only the company field to find letters addressed to that company.
  3. Click a column heading to toggle ascending/descending order. On mobile use Sortieren nach and Reihenfolge.
  4. Use Weiter and Zurück for pages of 50 accessible results; filters remain selected. Zurücksetzen clears filters.
  5. Open the letter for delivery method and details. Released is green, approved blue, in review yellow, changes requested red and draft grey. Text labels remain visible.

Check: filtering and sorting never change letters. Missing results: reset filters and check project access.

Choose private or business addressing

Prerequisites: letter permission; private sender details require your own signature. Administration must apply scripts/migrate_letter_addressing.php for the operator and tenants.

  1. Ask an address book administrator to open your explicitly linked contact under Address book → Edit → Personal / alternate address, complete street, postal code, city and country, and select Save changes. Other email and Mobile supply the optional contact details. No company address or business email is substituted. Only without an active linked contact, existing details under Profile → Private letter details are used. Multiple active linked contacts must be resolved by the administrator.
  2. Open Letters → New letter and select a person. Under Write to person, choose Business or Private. For Private, enter the recipient's private address and optional email; these apply to this letter only.
  3. The new default By layout: standard business, second private uses the personal address of your linked address book contact in the second layout. An explicitly saved sender choice is retained. For a private sender choose Letter layout → Second layout and Sender details → Private – from address book (second layout). Clear Show contact person in letter if desired. The private email stays visible on the right; the technical sending account does not change.
  4. Save the draft and check the PDF address, return address and contact details. The second layout omits the company below the signature, logo and company footer.
  5. Review, release and send. E-POST uses the selected sender details on its additional cover sheet as well.

Check: Address book or profile changes do not alter released documents. Save and inspect an editable draft again after changes. Private addressing does not restrict access rights. Business recipient addresses and emails are not used as fallbacks.

Troubleshooting: Complete missing sender details in your profile; use a business sender when acting for a colleague. Configure the postal provider once in administration; the setup button is no longer shown on every letter.

Use the second letter layout

Signature size allows 50–500%. The image is drawn behind printed text without optional PDF layers. Greeting/name spacing stays fixed; page edges and footer bound the visible size.

The document barcode is horizontal on the left of the first-page footer, with its document number alongside. Page numbering stays on the right, company details below. Administrators can toggle Studio → Letter and invoice layout → Print barcode in footer. After saving, check new letter and invoice previews; archived PDFs remain unchanged.

Folding and punching marks are disabled by default; an explicitly saved choice is retained. As administrator, change Print folding and punching marks under Studio → Letter and invoice layout, save and check the PDF preview. Text indentation and tab stops are unaffected; archived PDFs remain unchanged.

Prerequisites: letter authorisation for the selected sender and project; administration has installed the letter-layout migration for this tenant.

  1. Open Letters and create or edit a draft.
  2. Under Letter layout, select Second layout. Standard layout retains the company logo and footer.
  3. Use PDF-Vorschau to check the current form without saving. The second layout omits the logo, company footer and company name below the signature. A private return address can be selected separately. Typography, recipient address, page numbers and document geometry remain unchanged. Private sender details come primarily from the linked address book contact. The E-POST address cover sheet still includes the sender address. Letter greetings follow the sending company’s title rule under Administration → Mail designer → Titles in salutations. By default, Dr. and Prof. are retained and Dipl.-Ing. is omitted. The distance between the closing greeting and signer name stays the same with or without a signature. Signature images fit proportionally into the existing gap without adding vertical space or a page break. The handwriting uses more of this space; white outer margins are removed in the PDF derivative where image processing is available. Stored signature originals and archived PDFs remain unchanged.
  4. Choose Speichern, then reopen the draft and verify the selection before review and release. The released snapshot preserves the selected layout.

The choice is available to all tenants with the existing letter permissions. It does not make a letter private or change recipients, mail branding or delivery rules. Released letters cannot be restyled. Old letters default to the standard layout. If saving fails because the migration is missing, contact administration; do not resend the letter.

Prepare a monthly report with TRACK AI

Prerequisite: project-administrator access, a configured TRACK AI provider, the job migration installed and a regularly scheduled monthly report worker for the correct database.

  1. Open Project → Monatsberichte, select Reporting month and Open month.
  2. For a new report choose Prepare draft now with TRACK AI; for an existing draft choose Prepare new AI draft. Automatic preparation and manual regeneration use the same background job. The start request only confirms queuing. The status shows waiting, running, succeeded or failed and is polled regularly. You may close or reload this page; reopening the month restores the job status. Three subtle pulsing dots indicate waiting and remain still with reduced motion. Elapsed time measures status observation, not confirmed AI progress. Editing and review actions are blocked while a job is active, including in other tabs. If “The report changed” appears, reopen the month before saving from an old tab. Repeated starts return the active job. The previous report, sources, curves and image selection remain available until the new report is saved successfully. TRACK makes at most one format correction for prose output and validates every section before publishing. The stored report opens after successful completion.
  3. Review sections A–D and open points against the sources. Check work by trade and construction area, B.1 main-contract dates, B.2 progress with target period and data date, and B.3 agreed change-order dates. In C.1 compare claimed and assessed net amounts with award status; C.2 distinguishes the main contract, awarded changes and total contract amount from the forecast. Missing data remains open. Related-project figures must identify their source project. Mentioned or requested plans are not automatically report attachments. Historical example values are not imported. Bare status codes such as critical or none fail validation and preserve the previous report. Source check lists released file notes and selected released construction/steering minutes dated within the reporting month in this project. Drafts are excluded. Orders and change orders, including status and amounts, come from the current project at capture time, not retrospectively at month end. Source gaps or shortened AI context prevent any assumption of completeness. Missing cost data does not mean a zero-euro forecast. Print view / PDF opens the PDF in a compact file-note style without a letter address block or fold marks, using the company CI from Studio (vector logo, embedded fonts and footer). Print or save using the PDF toolbar. Long texts create additional pages; drafts carry “DRAFT” at 8% opacity. Text blocks are justified. Performance curves show cumulative planned/actual values from all recorded monitoring items up to the reporting date, including the parent and parallel subprojects in the same project family. Each curve identifies its source project. Access to every related project is required for this combined report. Up to four latest available project photos from the reporting month are added automatically (capture date, otherwise upload time). Preparing with AI or selecting Save draft captures curve data and image references. Check the PDF before Mark draft as reviewed. Use HighQ download: original photos (ZIP) or the QR code in the PDF to download the included photos at original resolution. TRACK login and project permission are required; the QR code grants no public access. Reopen the current report if the image selection has changed. Project participants opens the current list with its own permission check. The next reporting month and scheduled automatic draft date are shown; no date is scheduled when automation is disabled. This is not an issue or delivery promise. Save older drafts without visual snapshots first; older reviewed reports must be reopened and saved to add visuals. Missing data is labelled. Missing, deleted or changed selected image files block PDF output until the draft is saved again. If a configured CI font or vector logo is missing, correct the Studio configuration and reopen the PDF.

If generation fails: existing report texts remain unchanged. For a repeated format error, ask administration to check the AI output and context length. Incomplete or truncated JSON is rejected; another format call cannot restore missing source facts.

Background job troubleshooting: If a job remains queued, ask administration to check the worker and database context. An interrupted worker is marked failed by the next worker run; that job is not retried automatically. After checking the problem, choose Prepare new AI draft. A failed status request retries only the status check. Use Reopen for editing before regenerating a reviewed report.

Change several bug statuses

Prerequisite: system-administrator access without an active role preview.

  1. Open Bugtracker and use the view/status filters to find the tickets.
  2. Check individual rows or use the header checkbox to select up to 50 visible bugs. Verify the selection counter. On narrow screens, scroll horizontally inside the table to see the remaining columns.
  3. Choose New status and select Change status for selection.
  4. Check the success message and each ticket’s history. If a changed bug disappears, the current status/view filter no longer includes it.

Troubleshooting: if a selected status changed in the meantime, no selected ticket is updated; reload and select again. Each actual change is recorded with the actor. Existing Mattermost thread notifications run after saving. A Mattermost failure is reported separately and does not undo the saved status. Feature Requests and unselected bugs are not included.

View recent reports

Prerequisite: signed-in user with project access. Editing requires system administrator rights.

  1. Open Dashboard → Latest reports.
  2. The five latest entries matching the project and position filters are visible.
  3. Select Older reports to expand the remaining entries within the latest 100 reports. Select it again to collapse them.

Check: expanding retains the five recent entries and reveals older ones. After reloading, older reports are collapsed again. If the control is missing, at most five reports match the current filters; check the filters and project permissions if entries are missing.

Import change-order files together

Prerequisites: project administration rights, active companies assigned to the project and an existing base specification. Open Project → Nachträge → Import GAEB files together.

  1. Drop X83/X84/X86 files into the box or select GAEB files (up to 20). Maximum 25 MB per file and 40 MB in total. Select Check files.
  2. Check Project company, Base specification, Assignment, internal/external numbers, title and X83 text source in each group. Recognised contractor metadata and change-order numbers suggest assignments. Explicit GAEB change numbers and NT/Nachtrag headings can split a cumulative file. Missing or ambiguous data requires your selection; matching position identities alone cannot identify a contractor in a joint venture.
  3. Select positions explicitly with the checkboxes or Select all. Groups without selected positions are skipped. Use Add group for another change order for further splits; a position cannot be selected twice. Equal numbers from different contractors require distinct internal numbers within the project; retain the supplier number in External number.
  4. For a revised submission choose New revision of the correct company's current change order and enter Reason for new revision. The previous original and history remain preserved; the new revision starts before review. An X86 does not automatically approve a change order.
  5. Select Import selected change orders. A visible message appears next to the import area; missing positions, incomplete assignments and duplicate internal numbers retain the selection. Equal external numbers need distinct internal numbers, for example NT 05 · Partner A and NT 05 · Partner B. Server errors appear there too; if the response is unclear, check the change-order list before retrying. After success, select Refresh change-order list. Open the resulting change orders and check company, original files, selected positions, texts, quantities and sums.

Troubleshooting: only X83 files cannot create priced change orders. Conflicting phases, duplicate source positions, wrong text companions, foreign base specifications or stale revisions prevent the entire selected batch from being saved. Correct the assignments or check files again. After an unreadable response check the list before retrying. A preview expires after one hour. Unknown companies must first be assigned under the project's access management. Manual Neuen Nachtrag anlegen remains available and lists active project companies only. An existing historical company can remain unchanged when editing.

Cancel an issued invoice and account for a refund

The reference / reason entered for a refund is also retained when selecting a bank payment. Draft invoice payment tables additionally show the original receipt reference after the refund reason, so the related invoice can be identified. Reopen the PDF preview to check it. The reference is retained in the frozen approval snapshot as well. Already issued PDFs remain unchanged.

Requires system administrator permission for the issuing company, project access and the cancellation migration. The invoice must have confirmed dispatch and a frozen original. Payments against this invoice and later cumulative invoices must be reconciled first.

  1. Open Office → Rechnungen → the issued invoice → Cancellation invoice.
  2. Enter Cancellation date and Reason. Choose PDF preview and check the original invoice reference, customer and amounts.
  3. Confirm the complete cancellation and choose Issue cancellation invoice. TRACK assigns the next ST/YYYY/0001 number from a separate yearly counter, preserves the original and marks it cancelled. Before issue, check Expected cancellation number; Update number preview refreshes it after changing the date. The preview does not reserve a number.
  4. Cancellation emails use the fixed salutation “Sehr geehrte Damen und Herren,”. Email delivery of the archived PDF/XML starts immediately after issue to the displayed invoice recipients. Check Sent for each recipient. Pending jobs are picked up by the existing invoice dispatch job. Postal delivery remains manual: choose Confirm postal delivery after posting. Existing cancellation documents are not sent retroactively. For Delivery uncertain or Sending / outcome needs checking, check the actual mail delivery, tick Actual delivery checked and use Confirm sent or Confirmed not sent – retry. Never retry an uncertain delivery without checking.
  5. Generate a new draft for the same payment plan and month through the existing invoice generation. Check all services, hours, deductions and receipts against the cancelled original; the draft is recalculated from the plan, not a copy of the original.
  6. In the cumulative draft open Refunds of previous receipts, select Original receipt, enter the actual value date, positive refunded amount and bank statement reference. Choose Record refund. The statement shows a signed counter-entry; the original receipt remains. Alternatively, with explicit bank access, select Outgoing bank payment (optional). TRACK copies value date, amount and reference from the selected EUR debit; manual fields are ignored. Only unassigned payments up to the invoice date are offered. Under Office → Bank, the debit then shows Assigned refund. Without a bank import, use the manual fields and leave the bank selection empty.
Check the result

The PDF labels the number as “Stornorechnungsnummer”, retains the reference / additional information from the frozen original and shows the reason separately after a blank line. Check the cancellation number and reference, the refund counter-entry in the corrected draft and its higher payable balance in the PDF preview. Previously issued documents are unchanged. Existing refunds are applied again at approval and carried forward with their source receipt.

If it does not work
  • Migration missing: contact administration.
  • Payments, later invoices or unclear delivery: reconcile these before cancelling; do not withdraw approval of an issued invoice.
  • Refund rejected: check its source receipt, date and amount. Total refunds cannot exceed the original cash receipt. Removing the draft counter-entry does not delete the refund ledger.

Select the authorised project company and upload a mandate

Permission: project administration. Menu path: Projekt → Projekteinstellungen → Vollmacht zur Nachtragsbeauftragung. The setting belongs to this project; subprojects have their own setting.

  1. Type in Bevollmächtigtes Büro and select a suggested project company. Only companies assigned to this project are allowed. If missing, assign the company under Projektbeteiligte, then reload.
  2. Set the authorisation checkbox as appropriate and enter Vollmachtsbezug. Under Vollmachtsdatei (optional), select a PDF, JPG or PNG up to 10 MB. A file is optional and does not itself activate the mandate.
  3. Choose Vollmacht speichern. Reopen the settings and use Vollmacht herunterladen to check the saved document.
  4. To replace it, select another file and save. To remove the current attachment, select Vollmachtsdatei aus aktueller Vollmacht entfernen and save without a new file. Text-only saves retain the attachment; prior evidence remains archived and changes are logged.

Troubleshooting: free text outside the project-company list is rejected. After a concurrent change, reload and review the current state. After a failed upload, select the file again. Upload and removal cannot be combined. Only project administrators can download the current file; it is not automatically sent to contractors. Changing a mandate or its attachment requires recreating order packages linked to the previous mandate.

Order from the contractor on behalf of the client

Prerequisites: project administration, completed position review, a recorded mandate for the signing office and letter/signature permission. Menu path: Nachträge → Nachtrag → Beauftragung vorbereiten.

  1. Under Vollmacht zur Nachtragsbeauftragung in project settings, record the authorised office and mandate reference. For a telephone mandate, record the actual call reference; do not invent approval.
  2. Check the contractor/ARGE and the saved position values. Choose Auftrags-LV und X86 erstellen. Files use the issuing company’s filename pattern; source and item-number depth distinguish multiple X86 files. Order packages carry no automatically added DRAFT marking. Create a new package after a correction; archived files remain unchanged. Download and inspect the new package: order specifications show only order texts, quantities and prices, without internal review notes or competing offer/review values. Unit-price-only positions carry no quantity order.
  3. Choose Auftragsschreiben an ARGE erstellen. Select the ARGE as legal company recipient and its project contacts, and check recipient addresses and letter text. The letter orders on behalf of the client and incorporates the order specifications.
  4. Save, use Testversand an mich, sign/release through the normal letter workflow and test again. The order specifications and X86 files are separate attachments to the letter PDF. Check An, CC and BCC under Tatsächlicher E-Mail-Verteiler. Real delivery sends the main message to To/BCC and personal for-information copies to CC, naming the letter addressee. Bcc stays hidden. Every message includes the letter subject and document date. The letter PDF lists CC below the closing, continuing on another page when needed. This also applies to draft PDF previews and draft test attachments. Test delivery still addresses only your own account. All X86 files together represent the same positions as the order specifications.
  5. Check the signed letter and attachments, then choose E-Mail versenden. Verify the delivery message and letter history. The history initially shows the latest four entries; expand Show older entries for earlier events. A sent entry confirms acceptance by the configured mail transport, not delivery to an inbox. If a message is missing, ask administration to check the mail queue and server logs before sending again. Record the change-order commissioning status separately under Beauftragung abschließen.

The order specifications take effect with the associated signed order letter. Preparation alone sends and commissions nothing. Missing/changed mandates or a recipient company differing from the contractor block release and real delivery. Recreate the package after mandate changes. Old coordination packages remain unchanged; they are not final order attachments.

Send an award package to the client with a signed cover letter

Prerequisites: project administration access, a saved coordination package, letter creation/sending permission and a signature in your profile. Menu path: Nachträge → Nachtrag → Beauftragung vorbereiten → Erstellte Abstimmungspakete.

  1. Check the package date and whether it is the current position snapshot. Choose Anschreiben an AG erstellen beside the intended package.
  2. Check the client recipient and email address, sender and text. The proposed text refers to telephone coordination; correct it if necessary. An ambiguous company match requires choosing the client from the address book. Save the draft.
  3. Use Testversand an mich in the editor to inspect the draft PDF and ZIP at your own account address.
  4. Under Prüfung, Freigabe & Versand, use Alleine freigeben & unterschreiben when signing in your own name, or complete the review and signature workflow.
  5. Use Testversand an mich again after release: this includes the signed PDF and exactly the ZIP used for the real send. Check both attachments. Only your account address receives the test; the official delivery status stays unchanged.
  6. Choose E-Mail versenden to send the signed cover letter and ZIP to the displayed To/CC/BCC recipients. Check the success message and letter history.

The archived ZIP and its draft documents remain unchanged; signing applies to the cover letter. Sending does not commission the change order. The project and package stay bound to this letter. To use another package, create a new draft from it. Missing or altered packages block delivery. After an interrupted or partial real send, do not retry: ask administration to check letter history and mail delivery first.

Edit individual expenses and compare months

Prerequisites: own expenses, or accounting/administrator access to employee expenses. Entry delegation does not grant editing rights. Menu path: Office → Spesen / Auslagen.

  1. The Neue Auslage entry form appears first, directly below the page heading and any messages. To enter an expense, complete that form and choose Speichern; check the confirmation and the entry in the list below. Further down, check the monthly file overview: the current month and two preceding months show reimbursement totals and a combined three-month total.
  2. Under Einzelpositionen · letzte drei Monate (or Meine Einzelpositionen · letzte drei Monate), choose Edit. Change date, category, description or original amount, then Save changes. The reimbursement percentage remains unchanged; the position returns to draft.
  3. In Rechnung / Beleg, choose Rechnung öffnen to view the receipt. Expand Replace receipt, select a file and choose Rechnung ersetzen to replace it. Without an existing file, expand Upload receipt. Open the saved receipt again to check the result.
  4. Choose Delete and confirm to remove only that position. Its recurring series remains active; explicitly generating that month again can recreate a deleted recurring position.
  5. Reload and verify the position and updated month totals. Older monthly files remain in Archiv.

Troubleshooting: approved/reimbursed positions and approved monthly files are locked. A concurrent change requires a reload. Recurring positions retain their billing month when their date changes; other expenses move to the new date’s month. Attached receipt files are retained for traceability.

Return from a question to the open protocol

The question header shows the project, meeting series, item, and the opened protocol number and date when supplied by the link. Without a specific protocol reference this is stated explicitly. “Item first recorded in” identifies the origin of the continuing item, not the protocol to which a message necessarily refers.

Prerequisites and permission: access to the project and the protocol item. Menu path: Project → Meeting minutes → select series and protocol.

  1. Open Rückfragen at the relevant item.
  2. Write the message, select its recipients and choose Nachricht senden.
  3. Select Zum Vorgang. Verify the protocol number: the link returns to the protocol you opened, including after sending, and targets the item when it is displayed.

If the question was opened without a protocol reference, for example from the question list, the link opens the latest protocol of that series. Missing or foreign-series references also use this fallback. If the point is archived or absent in that protocol, check the completed items or select its historical protocol. Access checks remain in effect.

Enter bullet lists in meeting minutes

Prerequisites and permission: project access and editing permission for the meeting draft. Menu path: Project → Meeting minutes → select series and draft → open the item or update.

  1. Place the cursor in an editable text field or select several lines.
  2. Select • Bullet list to add bullet points. Select it again to remove the points from a fully selected list.
  3. Press Enter to continue the list. Press Enter on an empty bullet to end the list. Shift+Enter inserts a plain line break.
  4. Save using the field’s existing save button, then reopen the item and check the list in the presentation or PDF.

Check the result: each list item starts with •; line breaks and text remain intact. Lists are stored as plain text.

If it does not work: read-only fields have no list button. If the character limit is reached, shorten the text first. The button does not save automatically.

Present meeting minutes calmly

Prerequisites and permission: project access and permission to edit the meeting draft. Menu path: Project → Meeting minutes → select series and draft → Besprechungsmodus.

  1. Select Präsentationsansicht öffnen and share this separate window in Teams.
  2. Enable Teilnehmeransicht folgen lassen and scroll up or down in the editor. The audience view follows within long updates as well, using a proportional position within the content. Disable this option to scroll independently in the presentation window, then use Jetzt anzeigen on the desired item or update. Rapid selections are grouped; the previous content remains visible while the next item loads.
  3. The complete history of the selected item remains available by scrolling. The chosen update is highlighted; with manual selection, an already visible paragraph stays in place.
  4. Set Text size to 100 %, 115 %, 130 % or 150 %. The default is 115 %; your choice is remembered in this browser. Use Vollbild for more room.

Check the result: text remains complete and readable; switching items keeps the presentation window open. The operating system’s reduced-motion preference is respected. Internal editor controls are not shared.

If updating fails: the previous item stays visible with an error message. Select Jetzt anzeigen again after checking the connection and login. For more text on screen choose 100 %; for larger lettering choose 130 % or 150 %.

Save tables in the protocol editor, then select Jetzt anzeigen at that item. Saved tables appear even without description text. In the Leistungsstand section of a construction meeting, planned/actual charts include project-family data through the meeting date. Access to every project in the family is required. Missing performance data or access produces a notice. Wide tables can be scrolled horizontally. Check that the table and charts remain visible after switching items.

Record and distribute change-order negotiations

Prerequisites: project management permission as for change-order review, active project contacts and the negotiation migration applied by an administrator. New rounds require a current change order that has not been commissioned.

Menu path: Project → Change orders → Open → Verhandlungen. The following controls retain their German labels.

  1. Select Neue Verhandlungsrunde. Enter Bezeichnung, Datum / Uhrzeit and Ort / Besprechungsform.
  2. Select attendees under Teilnehmer aus dem Projekt. Record other attendees by name and company under Weitere Teilnehmer (Name und Firma). This grants no additional access.
  3. Enter Ergebnisse / offene Punkte during the meeting. Negotiation fields save automatically after a short pause; Verhandlung speichern saves immediately. Wait for Gespeichert.
  4. Enter negotiated quantities and prices in Verh. Menge and Verh. EP under Positionsweise Nachtragsprüfung, then select Positionsprüfung speichern. Save general change-order data separately with Nachtrag speichern.
  5. Select Stand für Versand festhalten. Attendees and results are required. The immutable PDF captures the saved change order and position values. Check it using Verhandlungs-PDF ansehen.
  6. Under Empfänger auswählen, select active project contacts with email addresses and optionally add Projektverteiler (up to 100 contacts and lists combined). Duplicate email addresses are merged. Enter a Begleitnachricht if needed. First choose Testversand an mich to immediately send the same PDF and message exclusively to your current account email. Wait for confirmation that the mail server accepted the test. Self-tests also use the linked address-book contact’s Du/Sie preference; the profile email remains the delivery address. The subject includes the change-order number and description from the frozen negotiation snapshot, for both tests and regular delivery. The email states the meeting date, time and attendees, including free-text guests, from the frozen negotiation round. Check these details and the test email; then select Verhandlungsstand versenden for the selected recipients. Tests do not start or block regular distribution and may be repeated. Unsaved or restored change-order data and position edits do not block delivery of the frozen PDF and are not included in it. To include changes, save them and create a new frozen negotiation round.

For regular distribution, verify Versandstatus: initially Zum Versand vorgemerkt, then Versendet after the next task-mail worker run. Reload to refresh. Previous rounds remain in Verhandlungsverlauf. Distribution requests coordination; it does not commission the change order.

Troubleshooting: concurrent edits keep your inputs visible; compare the saved version in a new tab. Ask an administrator to apply a missing migration. Contacts and distributors without a valid email or project assignment cannot receive mail. The self-test requires a valid email in your own user profile. Deactivated or changed list addresses are checked again before delivery. For Übergabe unklar, ask an administrator to check mail handoff before redistributing. Each frozen round accepts one recipient/message combination; changes require a new round. While the request is running, the button area displays Testmail wird versendet … or Versand wird vorgemerkt …; this does not yet confirm delivery. For Keine gültige Serverantwort, reload and check the delivery status first. Tests run immediately; if the mail server handoff is unclear, check status and inbox before retrying. A test that could not start is not left for a later worker run. Reload after correcting the displayed error to start a new test. If a regular job remains pending, check the task-mail worker and displayed error.

Use a Nextcloud contract as project knowledge

Prerequisites and permission: project administration and access to the tender phase. The operator must install the Nextcloud source migration, configure a database-bound knowledge service and approve this project's Nextcloud folder. The read-only Nextcloud account must be able to read the PDF. This is a separate targeted service; the old recursive import timer is not required.

Menu path: Project → Vergaben & Aufträge → Nextcloud contracts.

  1. Enter a Label and select Assignment. Select the exact order for MKA reply suggestions; Project knowledge (not for order-specific MKA replies) is used only for project-level email analysis.
  2. Enter the PDF path in project folder, for example Verträge/Bauvertrag.pdf. This is a decoded relative path below the approved project folder, not a public share URL. Percent signs and traversal paths are not accepted.
  3. Select Link and read. The background worker reads only that file. Select Check status / update until the last checked status is Ready and AI context active is displayed.
  4. Run an MKA reply suggestion for the selected order or analyze an email assigned to the project. Contract excerpts include filename, page and SHA-256. Check the cited pages in the original contract before using the suggestion.
  5. Use Disable AI context to exclude the source. Enable AI context includes it again. Remove link removes the link and its indexed excerpts, never the original Nextcloud PDF. To correct the path or assignment, remove the link and create a new one.

Storage and updates: TRACK stores a reference, not the PDF. The AI server stores extracted text and a lexical search index; download and OCR files are removed after extraction. Changes are checked before an AI request and when updating the status. Changed files are queued again and block the request until ready. No general project chatbot or automatic contract upload is added.

Troubleshooting: missing migration or service configuration requires the operator. For Check required, verify the path, read permission, PDF size (default 512 MiB), encryption and OCR installation, then update. No matching passages requires a more specific request. Unavailable or outdated active sources stop AI analysis rather than using their old text. If removal fails, the source stays disabled; repeat removal after the service is available. Duplicate links for the same order are rejected; use the existing entry.

Review, release and send a letter

Permission: the author or an authorised delegate requests the review; only the assigned reviewer can complete it. Release and sending require the signing person or an appropriately authorised delegate. Menu path: Correspondence → Letters → open the letter → Prüfung, Freigabe & Versand.

Signature positions: the main signing person signs on the left, the reviewer on the right. A delegate releases on behalf of the main signer using the existing authorisations. The same person appears only once.

Before you start

  • For a project letter, assign the intended reviewer to the project as Objektüberwachung or Bauherr.
  • Store a valid email address for the reviewer and a signature for both the signing person and the reviewer.
  • Under Master data → Address book, maintain First name, optional Middle name and Last name separately. The informal email address uses only the first name; the typed signature name uses first, middle and last name.

Release alone

  1. Save a draft in your own name.
  2. Under Prüfung, Freigabe & Versand, choose Alleine freigeben & unterschreiben. This is available for drafts and letters returned for changes, but not during an ongoing or completed review.
  3. Check that the released PDF contains only your signature. Release does not send the letter; use Testversand an mich and then the intended delivery action.

Review and co-sign

  1. Check recipient, project, Betreff and Brieftext, then select Speichern.
  2. Under Prüfer, select the required site-supervision or client contact and choose Zur Prüfung senden. TRACK emails the assignment; the author cannot complete their own review.
  3. The assigned person opens the link from the email and selects Prüfung abschließen & mitunterzeichnen or Änderungen anfordern.
  4. After approval, select Freigeben & Unterschrift ins PDF übernehmen. The reviewer explicitly consents to co-signing this version when completing the review. Release succeeds only if both frozen signatures can be embedded and verified in the final PDF; this action does not send.
  5. Check the embedded preview and select Testversand an mich if required. This sends the exact released PDF only to the email address in your user account.
  6. Select E-Mail versenden for the actual delivery.
Check the result: the email subject follows Betreff-Schema; with YYMMDD_PROJEKTNUMMER, for example 260909_NIK. Both signatures keep their original aspect ratio. Check the names and signature positions in the final PDF. TRACK confirms the released PDF revision and recipient count and records the delivery in the letter history.

If no review email arrives or sending is unavailable: do not repeat an action blindly. Check the reviewer's account email, the displayed status, the frozen signature and the authorisation under Status / nächster Schritt. A released revision retains its frozen name and signature; correct the address-book data before creating and releasing the next revision.

Changed document: if the letter changed while the form was open, reopen it and check the current version before confirming again.

Missing co-signature: if a previously approved letter lacks explicit co-signing consent, use Zur Prüfung senden again and have the assigned reviewer confirm. A missing or changed frozen signature blocks release and delivery. Released older revisions retain their original signature layout.

Calendar invitation email

Pure calendar invitations, updates and cancellations are intentionally compact. Their subject starts with the project syntax configured under Administration → Mail designer and includes the affected meeting series, title and number when TITEL is configured, for example 260908_Nikolai · BB – Baubesprechung Nr. 7 – Termineinladung. The message body starts directly with the appointment details and contains neither a repeated coloured subject heading nor a signature/footer.

BB protocol mail subject

Configure the subject exclusively under Administration → Mail designer → Betreff-Schema. The examples below assume YYMMDD_PROJEKTNUMMER_TITEL; use HAUPTPROJEKTNAME and UNTERPROJEKTNAME for project names. Omitting TITEL omits message details from the subject.

Permission: the assigned reviewer and the authorised minute taker use the internal review and final release actions. Menu path: Project → Meeting minutes → select the BB series and meeting → Review / release.

Before you start

  • The project must have the intended project code, for example NIK, in its master data.
  • The BB series title and meeting number must be correct before the review is started.
  1. Select Zur internen Prüfung senden and complete the review with Prüfung abschließen.
  2. After approval, use the displayed final release/send action.
  3. Check the received review or protocol email. With that configured example, its subject follows DATE_PROJECTCODE_ACTUAL SUBJECT, for example 260908_NIK_Baubesprechung · Nr. 7 · Finale Freigabe.
Check the result: with the example schema, the project code follows the date. Choose the project-name macros to use names; TITEL controls whether the review, release or protocol reference is included.

If the subject is wrong: check the project code in the project master data and make sure the message originates from the selected BB workflow. Check the selected company and its Betreff-Schema in the Mail designer; it is authoritative for this workflow too.

Resume editing a letter draft

Permission: the author, the signing person or a suitably authorised delegate can edit a letter while its status is Draft or Changes requested. Menu path: Correspondence → Letters.

Before you start

  • The letter must still be editable and the signing-person authorisation must apply.
  • Use the workflow action in the letter overview; a PDF preview is a separate action.
  1. Find the required draft in the letter overview.
  2. Under Status / nächster Schritt, select Weiter bearbeiten. TRACK opens the letter workflow at the editing form in the same browser tab.
  3. Change the required fields and select Speichern.
  4. Use PDF-Vorschau only when you explicitly want to inspect the generated document; the preview opens separately and does not replace the editor.
Check the result: the URL uses letter_299_edit.php, the editing form is visible and the saved draft remains in the letter workflow. The PDF is opened only by a labelled preview/document action.

If editing is blocked: check the displayed status and signing-person permission. Released letters cannot be changed as drafts. Return to the overview and use Weiter bearbeiten; do not use a PDF preview link for editing.

Send a file-note follow-up with or without a calendar invitation

Permission: project administrators and site supervision can release and send an editable file note. Menu path: Project → File notes / records → Open → Review / Freigabe.

Before you start

  • Save Anschlusstermin and, if needed, Ort / Teams-Link Anschlusstermin under Besprechung.
  • Complete the normal review/release process and make sure that the distribution list contains valid recipients.
  1. For an already released but unsent file note, select Versand & Kalender wählen in the page header. This link opens Review / Freigabe without sending immediately. For a direct self-release, use the calendar choice displayed in the same release form.
  2. Under Kalendereinladung / ICS, select Separate Kalendereinladung versenden when recipients should receive an ICS message. Select Keine Kalendereinladung mitsenden when only the file note should be sent; this is the default.
  3. Select Selbst freigeben und versenden or, for an already released record, Freigegebenen Aktenvermerk versenden.
Check the result: the follow-up appointment remains stored and visible in the file note in both cases. With the separate option, the success message reports calendar invitations; with the default option, no ICS message or calendar-delivery entry is created. The page-header action never bypasses this choice.

If the choice is unavailable: first save a valid follow-up date. If TRACK asks you to choose whether to send a separate invitation, reload the file note and use Versand & Kalender wählen; an older open page attempted to use the former direct send action. If sending fails, check the file-note distribution and recipient email addresses; the saved follow-up appointment itself is not removed.

Quick start

  1. Sign in with your email address and password.
  2. Open the required project from the dashboard.
  3. Select Report for the relevant monitoring item.
  4. Check or select the date, company and actual performance.
  5. Optionally add a note and evidence, then save.

Use Woche erfassen for weekly entry. Existing daily totals for the monitoring item are visible to all its authorised reporters, across companies, including the reporting person. Use Bestehende Meldung öffnen to correct an existing report; do not create an additional report for the same performance. Only one total per monitoring item and day counts, regardless of company. Simultaneous submissions are checked again when saving. Historical duplicates remain stored for traceability; only the most recently created report for that day is included in totals.

Companies are selected from the approved company directory, preventing inconsistent spellings. From every signed-in page, selecting the logo or BWPM TRACK name at the top left returns directly to the dashboard.

Storage totals: Administration → System status → Your installation shows own installation data (database plus local files) and Total including application code (approximate). This also works for the operator installation. Each tenant is measured on its own hostname. Shared code is counted only once when adding multiple tenants. External Nextcloud files, server logs and backups are excluded. Missing referenced profile/contact images are reported separately; existing files remain measurable. Export stays blocked until the references are corrected. If a total is unknown, check the displayed storage error and filesystem permissions; do not interpret a dash as zero.

Inspect and download your tenant installation

Prerequisites: Sign in as an administrator on your own tenant hostname; a simulated role is insufficient. Download requires PHP ZIP, mariadb-dump or mysqldump, a tenant-specific security key and sufficient temporary storage.

  1. Open Administration → System status.
  2. Under Your installation, verify company and hostname. Check PHP/MariaDB versions, database size, own files and shared application code. Records in this installation lists projects, customers (customer records), companies, addresses/contacts, letters, minutes/meeting sessions, meeting series, file notes, own invoices, stored change-order versions, documents, gallery photos and users. Counts apply only to the current tenant database and include drafts and archived/inactive records. Letters count once, not per recipient or PDF revision; a dash means a missing module table, zero means an empty table. Database sizes are approximate allocated sizes.
  3. Choose Download own installation and wait for the ZIP. The confidential archive contains installed application code, SQL database, local tenant files, the own security key, checksums and restore instructions. Operator configuration, live database credentials and other tenants are excluded. Back up external document servers separately.
  4. Store the ZIP securely. Verify completeness with manifest.json and test restoration only in an isolated environment using RESTORE-DE.txt. This does not modify the running installation.

Troubleshooting: Ask administration about missing extensions or export tools. A shared security key requires separate key configuration first. Wait for a concurrent export; retry if files changed. Modified/unknown application files, foreign paths and symbolic links stop the export instead of producing an incomplete archive. The operator hostname does not offer a full tenant export; use your tenant hostname.

Check an additional email address in Thunderbird

Requires administrative access to the central address book and a configured TRACK CardDAV address book in Thunderbird. TRACK remains the master; the Thunderbird connection is read-only.

  1. Edit the person in the Central address book, check E-Mail and Weitere E-Mail, then save.
  2. Reopen the contact in TRACK and verify both stored addresses.
  3. Synchronize the connected TRACK address book in Thunderbird and open the same contact.

Result: Both nonempty fields are transferred as separate email addresses. If one is missing, check which address book is connected and the last synchronization error. A locally imported VCF copy does not update automatically. Individual and collection retrieval return identical contact content and ETags.

Use the webcam overview

Permission: signed-in users see only cameras released for projects assigned to them; a shared main-project camera does not grant further access to that main project. Menu path: Dashboard → Webcamübersicht or Project menu → Webcams.

Before you start

  • The project camera must be active and released for the project or one of its subprojects.
  • A missing image may simply mean that the first scheduled capture has not occurred yet.
  1. On the dashboard, scroll to Webcamübersicht. Each project camera has its own card with a high-resolution preview, project code, project name and connection status. A single camera is limited to the preview's native display width so that a small image is not stretched across the full page.
  2. Check Letzte Aufnahme. Bild aktuell identifies a capture no older than 36 hours; Aufnahme veraltet marks an older image. Verbindung gestört keeps showing the last successful image and marks the problem separately.
  3. Select Aufnahmen ansehen on the required card to open its dated image gallery.
  4. Select Alle Webcams to open the complete overview of cameras available to your account.
Check the result: camera cards remain clearly separated on desktop, tablet and mobile screens. Project, timestamp and connection state belong unambiguously to the corresponding image.

If a camera is missing: check the project assignment and whether the camera is active and released. Noch ohne Bild means that no capture is stored. Aufnahme veraltet means that no new image has been stored for more than 36 hours. Verbindung gestört means the last successful image is retained while new retrieval attempts are failing; a project administrator can inspect the camera settings.

Photo updates with weekly news disabled

Requires the project-photo notification migration and the tenant project-news worker. Active internal and external project participants with valid email addresses are eligible, subject to notification preferences and exclusions.

  1. Open Project → Gallery in the upload project or subproject and upload photos.
  2. Keep participants and their email addresses current. With weekly news enabled, the upload notice appears in the weekly email; disable weekly news under Project → Settings only if you want photo notices alone.
  3. After Friday 15:00, check the separate photo message and its gallery link. It covers uploads from the preceding seven days; later uploads belong to the next period.

No message without new gallery uploads; webcam captures do not trigger a message. No additional photo email is sent with weekly news enabled. Photo notices cover manual uploads from the main project and all active subprojects. Each link opens the actual upload project. Participants subscribed to weekly news in the family receive the hints there; otherwise an eligible participant receives one combined photo email. Unsubscribing applies to that subscription project; other subscribed projects may still deliver family hints. The gallery requires login and access to an active project in the same main-project/subproject family. Photo viewing and original downloads are shared across that family; upload, deletion and other project permissions are unchanged. Use the project-family links in the gallery to switch projects. Missing messages: check participants, notification preferences, worker output and project_photo_notifications. Sent or uncertain photo deliveries are never retried automatically.

Read project communications as a client

Clients have read-only access to completed project communications. Under Project → Projektnews, the Projektnews · Archiv view lists sent issues only. Select an issue to read it; drafts, editing, AI tools, distribution lists and delivery administration are unavailable. Under Project → Briefe, open a sent letter and select Brief-PDF öffnen. Unsent letters and projectless private letters are not shown. Creation, editing, review and sending are blocked, including direct editor and preview links. A separate project-administrator assignment grants administration rights.

Check the result: Check the role with an actual client account or administrator role simulation. The simulation keeps the administrator identity but hides personal inboxes and mailbox settings. Each personal inbox and its attachments remain bound to the mailbox owner. Emails deliberately archived into the project remain visible to authorized project members. If a forbidden editor is still available, check all project roles; a menu or screenshot alone does not prove that changes were saved or someone else read a private email.

Manage participation groups

System administrators can manage participation groups under Administration → Beteiligungsgruppen. Use the normal administrator view; role simulation has no access. Edit the German/English labels or order, select Speichern and check the confirmation and updated list. Stored changes remain unchanged when the confirmation is read.

Newsletter approval and archive

Users and report recipients are deduplicated into the newsletter audience. Product updates and relevant project updates can be selected separately through the signed email-settings link. Administrators can prepare a draft from the current change index and new project photos. Empty sections are omitted. There is no scheduled or automatic newsletter send: every issue must be submitted, approved and then explicitly confirmed for sending. The administration archive records approval, sender, time, recipient count and individual delivery status. A separate list shows recipients who disabled every newsletter category.

Support and bug reports

Use Support → Report a bug for errors. Under Support → Feature request, users can submit product ideas; administrators assign a responsible person and track the request through review, planning, implementation and completion.

Create an incoming invoice from an email

Permission: Project administrators, site supervision and authorised TRACK Office users can prepare incoming invoices. Menu path: Correspondence → select email → Create incoming invoice.

Before you start

  • Connect the personal mailbox under IMAP settings.
  • The email must contain a PDF or XML invoice attachment. TRACK also checks attached EML files for these formats.
  • An active contract must exist in the selected project.
  1. Open Correspondence and select the email.
  2. Select the project under Project. Automatic invoice and project detection is a recommendation only; any email with an attachment can be checked deliberately.
  3. Select Create incoming invoice. TRACK archives the original email, reads suitable attachments and opens Eingangsrechnung übernehmen. No invoice is approved automatically.
  4. Check the Original-EML and invoice attachments. Select the contract and confirm invoice number, invoice date, date received, net amount and VAT.
  5. Select Als Eingangsrechnung übernehmen. The invoice then starts in the regular invoice review. An email that has already been assigned with Assign & archive can be converted from the project correspondence in the same way.
Check the result: The invoice review opens and displays the original email as its source. The invoice is subsequently available under Project → Invoice review; Office contains only the organisation’s own outgoing invoices.

If the action is unavailable: select a project first and check your project role. If TRACK reports that it found no invoice attachment, verify that the email or an attached EML contains a readable PDF or XML file. If no contract can be selected, create or activate the project contract before completing the intake.

Import CSV contacts

Permission: portal administrator. Open Organisation → Address book → Import VCF / CSV.

  1. Select a CSV file and choose Create preview.
  2. Under Detected CSV columns, check the detected header record and field assignment. The first 20 records are inspected; comma, semicolon and tab separators, UTF-8, UTF-16 BOM and Windows-1252 exports are supported.
  3. Check the contact preview and duplicate decisions. Unrecognized columns are shown as not imported. Ambiguous duplicate headings block the preview: rename them in the file and upload it again.
  4. Select Confirm checked import only after checking the result.

VCF from an email: As a portal administrator, open Correspondence → Open attachments on a message in your own mailbox. For a VCF/vCard attachment choose Preview in address book. Check the contact details and duplicate decisions in the familiar Import preview; only Confirm checked import saves them. Back to email returns to the attachment list. The mail and attachment remain unchanged. The action is unavailable in role view, for other users' mailboxes and for attachments above 5 MB. If the source changed or IMAP is unavailable, reopen the email and retry; no contact is written.

Up to 5,000 contacts and 5 MB per file. No contact is saved before confirmation. Legacy exports with Nummer, Name1 and Name2 are recognized: Name1 and Name2 form the display name without guessing name parts or companies. Unambiguous unquoted line breaks are rejoined and their count is shown; ambiguous record boundaries block import. Records without a name and email are listed as excluded by record number. Fax, SuchName and zuHänden are currently not imported as contact fields; review the ignored columns. If headings are not recognized, use Name or First name / Last name, Company, Email and Phone. To change headings, select Discard preview and upload the corrected file. The existing duplicate and validation checks remain in effect.

Postanschriften ergänzen / Complete postal addresses

CSV headers Street, Address addition, Postal code, City and Country are imported into the person’s own address. German Straße/Strasse, Adresszusatz, PLZ, Ort and Land are also recognized; D becomes DE, A becomes AT, CH remains CH. SMS maps to the mobile phone. Postal codes retain leading zeroes.

  1. Upload the CSV again; do not delete existing contacts first.
  2. Check Postal address from file and the existing address in the preview.
  3. For a confirmed match, use Supplement missing data, then Confirm checked import. Existing differing address values prevent the whole address from being supplemented, even with Update match.
  4. Open the contact under Edit and check the postal address. Existing document snapshots remain unchanged.

Names alone are not reliable identifiers. Same-name contacts without a clear match are skipped by default; review identity first. Files above 150 contacts use the suggested actions; resolve skipped cases in smaller files or in the address book. Incomplete addresses remain incomplete; no missing house numbers or country values are guessed. Conflicting addresses must be corrected in the address book.

Sign-in security

New tenant portals start with neutral TRACK branding. The portal administrator can maintain their own company branding in Organisation → Studio; operator company logos are not used as tenant defaults. The tenant company logo also appears in the desktop/mobile portal header and on sign-in, password, invitation and two-factor pages. The shared logo selection uses the Studio logo first, then the logo uploaded in the company profile, then neutral TRACK branding. Logos of customers or suppliers do not replace the tenant portal logo.

Sign-in, invitations, password recovery and two-factor authentication share the same responsive layout. Use the animation control to pause the background ball. On small screens the method choices are stacked vertically; all security requirements remain unchanged.

System and project administrators must use two-factor authentication. Every user can choose either an authenticator app such as Microsoft Authenticator or Google Authenticator, or a single-use code sent by email. Email codes expire after ten minutes and are protected against repeated attempts and frequent resends. The method can be changed under Organisation → Sign-in security; the account receives a security notification. Recovery codes remain available for emergencies.

Sign in with a passkey

Prerequisite: an active account and a passkey already registered for this portal on your device.

  1. Open the sign-in page and select Mit Passkey anmelden.
  2. Confirm with your device PIN, fingerprint or face recognition.
  3. Check that the requested portal page or the dashboard opens. Background session refreshes do not change this destination.

Troubleshooting: if an older session shows only a technical response after sign-in, open the Dashboard directly. If the session has expired, sign in again. A cancelled device prompt can be retried; alternatively use your password and the required second factor.

Where is customer data stored?

All server-side customer data is stored exclusively in Finland, including database and application content, file attachments, photos, logs and backups. Finland is an EU member state, so storage is governed by EU data-protection law and the GDPR. The location provides reliable infrastructure, short European data routes and data residency within the EU.

Android app

  1. Open Organisation → Android app.
  2. Download and install the APK.
  3. Generate a one-time QR code in the portal.
  4. Scan it with the Android device and open BWPM TRACK.

The QR code is valid for three minutes, can be used once and contains neither the password nor a permanent app credential. Web permissions also apply in the app.

Check the BB protocol email subject

Permission: protocol author or active substitute. Menu path: Project → Meeting minutes → open meeting → Testversand an mich.

  1. Send the test only to the email address stored in your profile.
  2. Check that the configured project syntax remains at the beginning and that TRACK adds the dated reference, for example 260907_Gänsemarkthöfe · BB-Protokoll vom 03.09.2026.
  3. Open the message and verify that this subject is not repeated as a visible first line in the body.
Check the result: test, production and later recovery delivery use the same complete subject and omit the visible subject repetition. If the suffix or heading is still wrong, send a new test after the current application update; already received emails do not change.

Language settings

Each user selects German or English under Organisation → My profile. The sign-in page and this wiki also provide a DE/EN switch. New functions are documented in both wiki languages as part of every software update.

Frequently asked questions

Why can I not create a report?

Check project access, item period, valid working day and company assignment. Contact the project administrator if permission is missing.

Why is my GAEB file rejected?

Check the exchange phase and version. Supported formats are GAEB DA XML 3.2 and 3.3 in X81, X82, X83 and X86.

Why is the forecast not yet available?

It requires a total target and at least three fully reported working days.

How does holiday cover work?

A time-limited delegation transfers selected project roles for the defined period and ends automatically.

I forgot my password.

An existing user account is required; you do not need to be signed in.

  1. Open your tenant portal sign-in page and select Forgot password?.
  2. Enter your registered email address and select Link anfordern (request link).
  3. Open the emailed link, enter a password of at least 12 characters and select Passwort speichern (save password).
  4. Sign in with your new password.
The link is valid for 60 minutes and can be used once. The password pages use the same pausable background animation as the sign-in page. If no email arrives, check spam and the portal address, then contact your administrator. Reload an expired form session; request a new link if the reset link has expired.

Coordinate a letter draft with the client or other participants

Prerequisites and permission: save the letter first. You need access to its project and permission to create letters for the signatory. Drafts, changes-requested and approved letters can be coordinated; during internal review only the assigned reviewer can do so. Released letters cannot be sent as drafts. Recipients must be active contacts of the saved project with valid email addresses. This includes address-book contacts linked to active user accounts assigned to the project, such as object supervision.

Menu: Project → Schreiben → open the saved letter → Zur Abstimmung versenden. In the editor, save first and use the recipient selection directly under Zur Abstimmung versenden.

  1. First select Empfängerart: An – zur Abstimmung or CC – zur Kenntnis. Use Person im Projekt suchen and choose an autocomplete suggestion or Person hinzufügen. Ausgewählte Empfänger (An und CC, zusammen bis zu 12 Personen) shows your selection. At least one To recipient is required; Entfernen removes a person. With CC, everyone receives one shared message with visible To/CC headers.
  2. Optionally add review points or a requested response date in Nachricht zur Abstimmung. The short email asks for feedback on the attached draft; this field supplements that text.
  3. Check Abstimmungs-PDF herunterladen. Every page bears DRAFT in the company CI font at 8% opacity; graphical signatures are omitted.
  4. Click Zur Abstimmung versenden. TRACK freezes that PDF and queues an individual email for each selected address. Later edits do not replace the attachment.
  5. Check Letzte Abstimmungsaufträge: Vorgemerkt means queued, An Mailserver übergeben means handed to the mail server, not a confirmed recipient delivery. Feedback is sent by email to the sender. Review status and the regular letter distribution remain unchanged.

Troubleshooting: if the letter changed, reload and review the new version. Missing people need an active address-book entry and a valid email. The administrator must apply scripts/migrate_document_consultation.php for the operator and provisioned tenants; their existing task-mail job processes the queue. For Versand unklar – Prüfung erforderlich, have the administrator check the mail handoff before sending again. TRACK does not automatically retry an uncertain handoff. Repeating the same request does not duplicate it; changing an already used request is rejected.

Group file-note points by topic

Prerequisites and permission: you can edit the AV draft or changes-requested version; during review only the assigned reviewer can edit. The administrator must apply scripts/migrate_file_note_topic_groups.php for the operator and provisioned tenants. Released versions remain unchanged.

Menu: Project → File notes → open AV → Thematische Überpunkte.

  1. Save ongoing text edits first. Enter a heading such as ALLGEMEIN or UNTERPROJEKT in Neuer Überpunkt and click Überpunkt anlegen.
  2. Under Punkte zuordnen, choose a heading for the main point and click Zuordnung speichern. All its continuation states and assigned gallery blocks stay with that main point. Newly added points initially have no heading.
  3. Use Umbenennen or the up/down arrows to change heading titles or order. Use Reihenfolge der Punkte ändern to sort points within their topic. Point numbering remains continuous across topics.
  4. Überpunkt entfernen removes only the heading; its points remain without a heading. To move one point out, select Ohne Überpunkt and save its assignment.
  5. Check the headings and point order on screen and in the PDF. Empty headings are managed here but do not create empty PDF sections. A Fortschreibung erstellen operation carries headings and point assignments into the new draft.

Troubleshooting: duplicate or empty titles are rejected. For a concurrent change, reload and repeat the operation. Save other unsaved AV text before changing headings. This grouping does not change tasks, recipients, previous point text or archived PDFs.

Coordinate a file-note draft with a DRAFT watermark

Prerequisites and permission: you can edit the AV in draft or changes-requested status; during internal review, only the assigned reviewer can send it for coordination. The administrator must apply the consultation queue migration and run the existing task-mail job for this tenant.

Menu: Project → File notes → open AV → Zur Abstimmung versenden.

  1. Save all point and header changes first; the PDF uses the saved state.
  2. Search the address book under Empfänger der Abstimmung (bis zu 12 Personen) and explicitly select active people with valid email addresses. No regular distribution recipient is preselected.
  3. Optionally enter Nachricht zur Abstimmung. Wasserzeichen DRAFT auf jeder PDF-Seite is selected by default and may be unchecked.
  4. Use Abstimmungs-PDF herunterladen to inspect the PDF, then select Zur Abstimmung versenden.
  5. Check each recipient under Letzte Abstimmungsaufträge: Vorgemerkt means queued, while An Mailserver übergeben confirms handoff by the next scheduled task-mail job.

Result: each selected person receives a separate email with one frozen PDF, sent using the requesting person's sender identity. Later AV edits do not change that copy. The AV status and regular distribution remain unchanged; no one-hour task mail or calendar invitation is triggered. Other attachments are not sent separately. Even without a watermark, the email explicitly labels the document as unreleased.

Troubleshooting: correct missing address-book data. For Versand unklar – Prüfung erforderlich, ask an administrator to examine mailserver logs before repeating the request. Missing configured CI fonts stop PDF creation. Recipients reply to the sender; their response does not automatically approve or release the AV.

The DRAFT watermark uses the company CI font at 8% opacity so that document text remains legible. Existing frozen coordination PDFs remain unchanged.

Receive task mail after a file note is sent

Prerequisites: an administrator has run the AV task-mail migration and the existing meeting_task_digest.php scheduled job runs for this tenant. This applies to file notes sent after activation.

Permission and menu: with file-note editing permission, open Project → File notes / records → Open.

  1. Assign people under Verantwortlich on the relevant discussion points and save. Each person needs a valid email address; points marked Info do not generate tasks.
  2. Complete the existing review/release workflow and send the AV to its recipients. Merely saving or releasing it does not trigger task mail; the AV distribution must finish successfully.
  3. At the first scheduled job at least one hour after successful distribution, each active responsible recipient receives one email listing their open points, including point numbers, text and any due dates. The sender is the person who released the AV. A portal account is not required to receive the email.

Check the result: the recipient receives only their tasks. Completed/cancelled points, information points and disabled user notifications are excluded. The portal link requires permission to view the AV. The database queue records each recipient and revision separately.

If no mail arrives: verify AV distribution succeeded, responsibility, email address and notification settings. Ask an administrator to check the scheduled job and queue errors. The hour is a minimum delay, not a guaranteed delivery time. Unknown mail handoffs remain blocked for manual investigation; no automatic repeat is sent. This is a one-time task summary per AV revision, not a recurring deadline reminder.

Sign in