Skill detail
finance-expert
Designs, reviews, operates and audits systems that hold, move, account for and report money — ledgers, payments, banking and open finance, reconciliation and close, risk, fraud, AML, markets and portfolio accounting, and corporate finance/FP&A. Brings a normative money model (minor units, rounding…
Why we recommend it: Designs, reviews, and audits ledgers, payments, reconciliation, controls, and FP&A — squarely finance.
Inspect before use
Read the source instructions and check the requirements before you install this skill.
SKILL.md
The saved excerpt is a snapshot from when this skill was listed. The external source remains the complete and most current version.
---
name: finance-expert
version: 3.0.0
description: >-
Designs, reviews, operates and audits systems that hold, move, account for and report money —
ledgers, payments, banking and open finance, reconciliation and close, risk, fraud, AML,
markets and portfolio accounting, and corporate finance/FP&A. Brings a normative money model
(minor units, rounding and allocation policy, FX, ISO 4217), a double-entry ledger contract
(chart of accounts, posting rules, immutability, corrections by reversal), delivery semantics
for money events (idempotency keys, at-least-once webhooks, holds and settlement finality),
reconciliation and period close, controls (limits, separation of duties, approvals, audit
trail), the regulatory map (PCI DSS, PSD2/PSD3, SOX, IFRS 15/9, Basel, MiCA, DORA, AML/KYC),
and two executable audit harnesses. Use it whenever a task touches an amount of money — a
balance, a charge, a refund, a payout, a transfer, an invoice, a fee, a tax, an FX conversion,
an interest accrual, a journal entry, a trial balance, a settlement file, a chargeback, a P&L,
an ARR or unit-economics number, a valuation model — and whenever someone says "just add an
amount field", "just sum the transactions", or "the numbers don't match".
category: domains
tags:
[
finance,
ledger,
double-entry,
accounting,
payments,
banking,
open-banking,
reconciliation,
fx,
risk,
fraud,
aml,
kyc,
compliance,
fpa,
valuation,
trading,
]
allowed-tools:
- Read
- Write
- Edit
- Bash
- Grep
- Glob
- WebSearch
dependencies:
[
fintech-expert,
trading-expert,
regtech-expert,
security-expert,
api-design-expert,
banking-expert,
accountant-expert,
]
author: pcl-stdlib
license: MIT
metadata:
legacy-category: industry-specializations
---
# Finance Expert
Money is not a number. A number can be recomputed; money is a claim, recorded at a point in time,
owed by someone to someone, in a currency, under an accounting policy, subject to a regulator, and
irreversible once it moves. Almost every serious defect in a financial system comes from having
modelled the number and not the claim: a `float` column, a balance that is a mutable row, a retry
that charges twice, a report that sums two currencies, a correction that overwrites history.
This skill encodes the model that survives contact with reality: **an append-only, double-entry
ledger is the source of truth; everything else — balances, reports, dashboards, KPIs — is derived
from it and must be reproducible from it.** Everything below follows from that.
## Rule 0 — the ledger of record already exists
If the organisation already books money somewhere — a general ledger, an ERP, a PSP dashboard, the
bank statement, even a spreadsheet the finance team closes each month — then **that is the source of
truth until a written decision says otherwise**, and your system reconciles to it (M9). Do not
introduce a second authoritative record. Two systems that both believe they hold the truth do not
produce a discrepancy you can debug; they produce a monthly argument that no one can win.
Likewise, if an accounting policy exists (functional currency, rounding rule, revenue recognition
treatment, close calendar, chart of accounts), it is **decided**. It belongs to the finance owner and
the auditor, not to a code review. Extend it consistently; changing it is a costed proposal with a
restatement plan, never a refactor.
## 1. Pick a mode
| Mode | Trigger | Output |
| ----------- | ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| **DESIGN** | A newRead the full source on GitHub (opens external page)