Programmatic month end close
Skill scumunna/programmatic-skills/skills/programmatic-month-end-close
Run month-end close for programmatic media, including delivery and spend reconciliation, ad server versus DSP discrepancies, platform invoices, make-goods, accruals, billing codes, taxonomy checks, client evidence packs, and sign-off. Use when the user asks for billing close, invoice reconciliation, delivery close, accruals, make-goods, or finance handoff.From its SKILL.md
npx -y skills add scumunna/programmatic-skills --skill programmatic-month-end-closeAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
5.2 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
Programmatic month-end close
Month-end close is where campaign operations becomes finance evidence. The desk needs to prove what delivered, what spent, what should be billed, what differs across systems, and what needs a make-good or accrual. This skill gives the close process.
Use discrepancy-and-reconciliation for the measurement and ad server discrepancy method. Use
this skill to run the full close calendar and handoff.
When to use this skill
- Month-end or campaign-end delivery needs to be closed.
- Platform spend, ad server delivery, client reporting, and invoices do not match.
- A finance team needs billing evidence, accruals, make-good notes, or PO mapping.
- A client asks for final delivery, overdelivery, underdelivery, or discrepancy explanation.
- A platform invoice or credit needs review.
Close package
| Component | Required evidence |
|---|---|
| Delivery export | Platform and ad server delivery by campaign, line, placement, date |
| Spend export | Media spend, fees where available, currency, tax or billing basis |
| Conversion export | If billed or judged on outcomes, the agreed conversion source |
| Discrepancy log | Difference by source, tolerance, root cause, action |
| Invoice or billing file | Platform invoice, DSP spend file, publisher invoice, or finance export |
| Taxonomy and PO map | Campaign code, cost center, PO, advertiser, market |
| Make-good or credit | Reason, amount, owner, approval, expected timing |
| Accrual | Amount, rationale, source, finance owner |
| Sign-off | Ops, account, finance, and client owner where required |
Close calendar
| Window | Work |
|---|---|
| Last 3 business days | Check pacing risk, taxonomy, PO mapping, invoice setup, and known discrepancies |
| Day 1 to 2 after close | Pull delivery, spend, conversion, and ad server exports |
| Day 2 to 4 | Reconcile platform, ad server, analytics, and invoice numbers |
| Day 4 to 5 | Resolve exceptions, document credits, prepare finance handoff |
| By client deadline | Send approved close pack or billing backup |
Adjust the dates to the client and finance calendar, but do not remove the pre-close check.
Core process
- Freeze the close scope. Define the month, clients, advertisers, platforms, campaigns, currencies, time zones, and billing basis. Write whether the client bills on DSP spend, ad-server impressions, publisher invoices, or another source.
- Pull source exports. Pull platform delivery, ad server delivery, spend, conversion, invoice, and dashboard extracts using the same date range and time zone where possible.
- Validate taxonomy and billing keys. Campaign code, cost center, PO, market, advertiser, and platform keys must join. Missing keys are close blockers.
- Reconcile delivery and spend. Compare platform vs ad server, platform vs invoice,
dashboard vs source, and currency conversions where applicable. Use tolerance bands from
discrepancy-and-reconciliation. - Classify exceptions. For each exception, mark timing lag, known discrepancy, invalid traffic, make-good, credit, setup error, missing invoice, platform issue, or data fault.
- Size financial impact. Convert exceptions into dollars, impressions, conversions, or credit amount. Finance needs numbers, not adjectives.
- Collect approvals. Ops confirms delivery evidence, measurement confirms numbers, account confirms client framing, finance confirms billing treatment.
- Archive the close pack. Store exports, reconciliation file, exception log, invoices, approvals, and client copy in the approved location.
Exception log template
Month-end exception
Client:
Advertiser:
Platform:
Campaign:
Source A:
Source B:
Metric:
Difference:
Tolerance:
Root cause:
Financial impact:
Action:
Owner:
Due:
Approval:
Decision rules
- Do not send a client final delivery number that does not state its source.
- Do not mix time zones inside one close pack without documenting it.
- Do not net discrepancies away without keeping the line-level evidence.
- Treat missing taxonomy or PO mapping as a close blocker, not an admin cleanup.
- If a platform invoice disagrees materially with source delivery, hold the billing line until the exception is classified and approved.
Common pitfalls
- Waiting until the first of the month to discover a missing PO or invalid taxonomy.
- Reconciling dashboard numbers instead of source exports.
- Forgetting currency, fees, tax, or time-zone differences.
- Treating a make-good as a note instead of an approved finance action.
- Losing the support case or incident evidence that explains an invoice exception.
Related artifacts
templates/ops/month-end-close-checklist.mddiscrepancy-and-reconciliationcross-platform-conversion-reconciliationmarketing-analytics-warehouse-and-dashboardsplatform-support-escalationmonth-end-closeloop
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.
Gives 0 of the 12 instructions most finance skills give in ~1.1k tokens
Counted across 469 of the 469 authors here whose files we hold, read 2026-08-07
- Extract date vendor amount and descriptionin 15 of 469, across 3 files
- Scan folder for invoice filesin 14 of 469, across 2 files
- Rename files to standard formatin 14 of 469, across 2 files
- Show organization plan before movingin 14 of 469, across 2 files
- Generate summary CSVin 14 of 469, across 2 files
- Organize files by categoryin 13 of 469, across 1 file
- Preserve original filesin 13 of 469, across 1 file
- Flag files missing critical infoin 13 of 469, across 1 file
- Produce the requested output filein 9 of 469, across 4 files
- Build best, base, and worst case scenariosin 9 of 469, across 5 files
- Implement backoff if rate limit errors occurin 8 of 469, across 3 files
- Determine the weighted average cost of capitalin 8 of 469, across 4 files
Said here and by no other author read
- freeze the close scope
- pull source exports
- validate taxonomy and billing keys
- reconcile delivery and spend
- classify exceptions
- size financial impact
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.