13. Transactions

A transaction is a single money movement: in or out, in any currency, on a specific date.

Creating a transaction

Press N R. Fill in:

  • Type — income or expense.
  • Value and currency.
  • Date.
  • Authorizer — who approved it.
  • Document — attach a receipt or invoice scan.
  • Linked record — project, company, invoice, or asset.
  • Status — pending, approved, cancelled.

Cancelled transactions are hidden from financial totals but still visible in lists.

When a linked company was deleted

If a transaction points at a company that someone later deleted, the transaction list and detail still show that company's name — but with "(deleted)" after it, and the name is no longer clickable (there's nothing left to open). The same happens on project lists and detail pages whose client was deleted. This is just so the record stays readable; it doesn't bring the deleted company back.

Transactions that group other transactions

Some transactions are masters that contain other transactions as line items (a reimbursement report is the most common example). The Accounting → Transactions list only shows masters and standalone transactions — child line items are hidden so totals don't double-count. A small branching/sitemap icon next to a row's vendor tells you "this transaction contains line items." Open the master and you'll see a Transactions tab between Discussion and Activity listing its children. Reimbursement-kind masters take you to the dedicated reimbursement detail page when you click them — the breadcrumb keeps a link back to wherever you came from (Transactions list or Reimbursements list) so you can navigate back without losing your place.

Reimbursements

A reimbursement report is a special kind of transaction: a container that groups multiple expense lines an employee paid out-of-pocket and is asking the company to pay back. Find them under Accounting → Reimbursements.

Creating a report

Click + New report (or + Create your first reimbursement on an empty list). Fill in:

  • Title — a short label like May 2026 Client Trip.
  • Reason / description — why this report exists.
  • Period start / Period end — the time window the receipts fall within.
  • Parent — every reimbursement must be associated with a Project, Lawsuit, Company, or User. Pick the type and then the specific record. Finance uses this to charge the right cost centre.

The report's currency defaults to your tenant's main currency. Status starts at Pending — you can submit, approve, decline, or pay it through the workflow buttons on the right side of the detail page.

Adding line items

Open the report and click Add line in the Line items card. Each line is one receipt or one expense:

  • Date — when the expense happened.
  • Vendor — Hotel Roma, Uber, Office Depot.
  • Description — optional notes.
  • Expense type — the same expense taxonomy used elsewhere (Meals, Travel, Accommodation, etc.).
  • Currency / Value — currency defaults to the report's currency; you can override if the receipt was in a different currency.

You add lines one at a time today.

Uploading receipts (OCR)

Click Upload receipt in the Line items card. A drop zone opens — you can either drag one or many files onto it (photos, PDFs) or click it to pick multiple files from disk. Each file is queued with a thumbnail preview and status pill.

When you're happy with the queue, click Extract — ALMAS runs the files through Textract and an AI analyzer one at a time, in the order you queued them, pulling out the vendor, date, amount, currency, and best-guess expense type from each. Every accepted file becomes its own line on the report. Rows that fail (bad scan, unreadable receipt, temporary AI outage) stay in the list with the error text so you know what to fix; the batch continues past a failure so one bad receipt doesn't block the rest.

Close the dialog when you're done and the new lines appear in the Line items table. If any value looks off (a wrong total, a mis-detected vendor), click the small pencil icon on that row to open the line for editing — corrected lines get a small ✎ manual badge next to the vendor so you can see at a glance which ones you've fixed.

Forwarding receipts by email

For receipts that arrive in your inbox during a trip, you don't have to upload them one by one — forward them to your personal ALMAS address and the system files them automatically. Find the address on the reimbursements list page in the Forward receipts by email card; it looks like reimbursement+abc123…@<your-tenant's-inbound-domain>. ALMAS will:

  • check that the attachment is a receipt (non-receipts are rejected and logged);
  • find your open reimbursement reports and attach the line to the right one — or auto-create a fresh Draft if you have none;
  • when there's more than one candidate, use AI to pick the best match (or, if the call is ambiguous, hold the email aside for you to resolve);
  • rate-limit per-user and per-tenant so a runaway forwarder doesn't get out of hand.

You can include a free-form hint in the email body — "for the Berlin trip", "new report titled Q2 client visits" — and the AI weights it when picking the destination. Tap Rotate on the card if you ever need to invalidate the address (any existing auto-forward rules will need to be updated to the new address).

Forwarded emails on the report

Each report detail page also shows a Forwarded emails card listing the emails that ended up on it. You'll see when each email was received, who sent it, the subject, and a row of paperclip chips — one per attachment on that email — plus a per-row Reprocess button. A green "processed" badge means the email landed a line; red "failed" with an inline message means something went wrong (commonly: the forwarding address was rotated and an old auto-forward kept using the stale token). Hit Reprocess after fixing the cause to re-run the same email through the pipeline — no need to forward it again from your mail client.

About the paperclip chips — every attachment on the email gets one chip. The chip for the file ALMAS picked to create the reimbursement line is rendered in green (hover for "Used for reimbursement line #N…"). Other chips stay gray and are still clickable, so you can preview signature logos that got filtered out or check what else was attached. Many web-receipts (Cinemark, Fandango, web-store confirmations) ship the receipt content inline in the email body rather than as a PDF attachment; when that happens ALMAS renders the body to a PDF on the fly and adds a chip labeled with (body) so you can verify what the AI actually analyzed.

Each line that came from a forwarded email also keeps the original message attached as a small .txt file (subject, from/to/received header + body) alongside the receipt itself — open it from the paperclip icon on the line if you need to remember which email a particular line came from.

Files attached to a line

Any line with one or more attached files shows a paperclip icon next to the vendor column. Click the icon to open the file in a new tab (each file rendered as its own icon, so a line with the receipt + the forwarded-email context shows two clips). Same pattern that the rest of ALMAS uses on tasks and projects.

What the totals mean

The detail page shows one Total value:

  • The headline number is the approved total — what finance has decided to pay so far.
  • If a different amount was originally requested, you'll see it next to the headline in parentheses, e.g. R$ 480.00 (R$ 520.00 requested). The gap exists when finance approved a smaller figure than what you asked for, or when individual lines have been declined.
  • Declined and excluded lines don't count toward either total — they're shown in the table for the audit trail but excluded from the math.

The same approved-with-requested-in-parens pattern appears in the table footer and on each line.

Workflow

Reimbursements move through a per-tenant workflow defined in Tenant settings → Workflows (default: Draft → Pending → Approved → Paid). Use the Actions buttons on the right of the detail page to transition the whole report; line-level approve/decline buttons live in each row of the Line items table. Workflow definitions support approval tiers and per-amount rules — tenant admins can customise the default.