Stop overpaying: 10 AI skills for VAT, tax and what HMRC expects
payroll-rti
pay the team and report it on time, every time
How the two work together
Claude thinks it through. Paste the Claude prompt into Claude Code, or drop the folder into your skills folder. Claude does the judgement: what to look for, what is worth doing, what is right.
Codex gets it done. At the hand-off point Claude runs Codex on your machine with one command and passes it the Codex prompt. Codex does the mechanical part and hands the result back. Claude checks it before you see it.
No API key to set up: Claude calls the Codex you already have installed. If Codex is not installed, Claude does that half itself and tells you.
Prompt for Claude
--- name: payroll-rti description: Turns your payroll software's RTI submission log, your payslip data and your payday calendar into a written on-time record for every single pay run: a pay-run register naming each Full Payment Submission's due date against the date it was actually sent, the named HMRC exception applied wherever a submission genuinely qualifies to go late, an Employer Payment Summary and payment-to-HMRC deadline tracker, a National Minimum Wage and National Living Wage comparison against the age band and hourly rate you supply, a check of your payroll software's tax and National Insurance thresholds against the rates HMRC has published for the current tax year, a penalty exposure count, and a gaps list for anything not yet supplied. Use when you run payroll each pay period, when you take on a casual or zero hours worker, when a payday lands on a weekend or bank holiday, or when you cannot say in writing whether last month's submissions actually went in on time. --- # Pay the team and report it on time, every time, with the evidence to prove it You give this your payroll software's RTI submission log, your payslip data for every employee in every pay period, your payday calendar, each employee's age band and hourly rate where they are paid hourly, and your record of what you actually paid HMRC and when. You get back a pay-run register that tests every Full Payment Submission against the on or before rule, names the one HMRC exception it relied on wherever it genuinely went late for a lawful reason, an Employer Payment Summary and payment tracker, a minimum wage comparison, a check of the tax year's own thresholds against what your software used, and a count of your actual penalty exposure. It will not calculate a single tax code, National Insurance deduction or net pay figure. Your payroll software already did that arithmetic, correctly or not, and re-deriving it here is a second guess sitting next to the real one. This checks whether what was calculated was reported on time, and whether the rates behind it match the tax year you are actually in. ## What it does 1. **Enumerate every pay run before asking whether any of it was on time.** Pull the RTI submission log from your payroll software, which records every FPS and EPS it has sent with a timestamp, and pull the payslip data for the same period: every employee, every payday, gross pay, tax code, National Insurance category, and net pay. Add your own record of what you actually paid HMRC, when, and by which method. Do this first, in full, before checking a single deadline, because a review that starts from "was last month's FPS late" instead of "here is every FPS this tax year" only ever finds the one problem someone already suspected. 2. **Fix the default rule and test every FPS against it before looking for an excuse.** GOV.UK's payroll guidance states the default plainly, under the heading "On or before your employees' payday": you must "Report their pay and deductions to HMRC in a Full Payment Submission (FPS)." That is the test for every single row in the register: the submission timestamp against the payday. A submission sent on payday or before it passes. Everything else needs step 3 before it can be recorded as anything other than late. 3. **Name the one exception each late FPS actually relies on, from the fixed list HMRC publishes, and record it against that row alone.** HMRC's own guidance on sending an FPS after payday lists a closed set of situations, each with its own deadline, and hospitality kitchens and floors hit several of them routinely. A new starter with no P45, paid less than £96 a week or in the job less than a week, can be reported within 7 days, which covers a casual hired on a Thursday for the Friday and Saturday shifts. A payday on a non-banking day, "for example weekend or bank holiday", moves to the next banking day under code G, which matters for any venue paying weekly on a Saturday. An ad hoc payment "you're told about after you've sent your FPS, for example a new starter or a missed overtime payment" goes in the next regular or an additional FPS, the tips-and-extra-shift case that shows up in every kitchen. Day-based work paid "based on their work on the day, for example harvest workers paid based on how much they pick" allows 7 days, and rarely applies outside casual event staff paid by the cover. An expense or benefit carrying National Insurance but not Income Tax, and certain non-cash payments, each allow 14 days from the end of the tax month; a missing PAYE reference and a foreign tax calculation carry their own separate allowance. An FPS matching none of these is recorded as simply late, not excused. 4. **Check whether an EPS was due this tax month, and whether it went in by the 19th.** GOV.UK's guidance sets the deadline: send an Employer Payment Summary "by the 19th" of the following tax month to "claim any reduction on what you'll owe HMRC (for example statutory pay)". An EPS is also the only way to tell HMRC that no FPS is coming because no one was paid, and a missing nil-payment EPS is a reportable failure in its own right, alongside a late FPS. A seasonal venue that closes in January and pays nobody still owes HMRC a nil EPS, not silence. Where Employment Allowance is being claimed, note it here too: the allowance "allows eligible employers to reduce their annual National Insurance liability by up to £10,500", claimed through the EPS, so a claim that never went in is a real cost, not a paperwork gap. 5. **Check the payment to HMRC itself against its own separate deadline.** Reporting pay and paying what is owed are two different obligations with two different dates, and mixing them up is the second most common failure after a late FPS. GOV.UK's guidance states it in one line: "Pay what you owe by the 22nd of the month (or the 19th if paying by post)." A smaller employer has an alternative worth recording if it applies: "If you usually pay less than £1,500 per month, you may be able to pay quarterly instead of monthly." Record the payment date, the method and which deadline it was tested against. 6. **Compare hourly pay against the National Minimum Wage and National Living Wage band the employee's own age puts them in, without recalculating their wage.** From 1 April 2026 the rates are £12.71 an hour for a worker aged 21 and over, £10.85 for 18 to 20, and £8.00 for both under 18 and an apprentice, up from £12.21, £10.00 and £7.55 the year before. This step does one thing: it takes the age band and hourly rate supplied and flags any rate below the band it belongs to. It does not touch accrued holiday pay, uniform deductions, tips, or anything else that can turn a rate that looks compliant into one that is not once those are accounted for; that stays with your payroll provider. 7. **Check your payroll software's own thresholds against the rates HMRC has published for the tax year you are actually in.** For 2026 to 2027, HMRC's guidance sets the personal allowance at £12,570 a year, income tax at 20% on the next £37,700 of taxable income, 40% up to £125,140, and 45% above it; the employee Primary Threshold at £12,570 a year and the employer Secondary Threshold at £5,000; the employer Class 1 National Insurance rate at 15%; the Employment Allowance at £10,500; and Statutory Sick Pay at £123.25 a week or 80% of average weekly earnings, whichever is lower. This step never recalculates a deduction. It records these six figures against the tax year and flags, as a mismatch for your provider to explain, anywhere your software implies it is still running a prior year's numbers. 8. **Build the penalty exposure count from what the register actually shows, not from a guess.** HMRC's guidance sets out the mechanics: the first late report in a tax year is disregarded, an FPS that is late but where every reported payment falls "within 3 days of your employees' payday" is tolerated, and beyond that a monthly penalty applies on a scale by employee count, from £100 for 1 to 9 employees up to £400 for 250 or more, charged quarterly. Count the late FPS rows from step 3 with no valid exception, discount the first one in the tax year and any inside the 3 day tolerance, and total what is left. This is exposure from the facts in the register, not a demand HMRC has actually issued. 9. **Hand the finished register to Codex and let it build the trackers.** Claude hands over the pay-run data with, for every FPS row, the due date, the submitted date, the on time answer, and the exception where one applies; the EPS requirement and submission date for every tax month; the payment to HMRC record; the age band and hourly rate for every hourly paid employee; and the six published rates with the date they were read. Codex makes no judgement: it tabulates what it is given, counts it, and writes anything unanswered into the gaps list. Run it from the folder holding the exports: ``` codex exec --sandbox danger-full-access --skip-git-repo-check -C "<working folder>" - < CODEX.md ``` What comes back is the pay-run register, the EPS and deadlines tracker, the minimum wage check, the rate and threshold check, the penalty exposure note, and gaps.md, plus the counts you check in the next section. 10. **Write the list for your payroll provider or accountant, and date the whole thing.** Anything the register flags, a late FPS with no exception, a missed EPS, a wrong-deadline payment, a wage rate under its band, or a stale threshold, goes on one list with the row it came from and the evidence behind it. This is not a corrected payroll. It is a dated question list for the person who runs your PAYE scheme to check and, where something is genuinely wrong, put right. ## Then it checks 1. Every FPS enumerated in step 1 appears in the pay-run register with an on time answer recorded, and the register row count equals the pay-run line count from step 1 with no unexplained difference. 2. Every FPS marked late names exactly one of the exceptions listed in step 3, or is recorded as simply late with no exception found. 3. Every tax month has an EPS row recorded as either required and submitted, required and missing, or not required, and no tax month is left blank. 4. Every payment to HMRC has a payment date and a deadline it was tested against, either the 22nd for electronic payment or the 19th for post, or the quarterly deadline where that basis applies. 5. Every hourly paid employee's rate is compared against the band their supplied age puts them in, and every rate below the band is named with the employee reference and the pay period. 6. The six published rates for the 2026 to 2027 tax year appear in the rate and threshold check with the date they were read, and any mismatch against the payroll software's own figures is named rather than silently noted. Any check fails: name it, redo that step once. Failed twice: say what is wrong and stop. ## Rules - Public information only. - Never invent a fact, a number or a quote. - Anything sent in someone's name says whose name it is. - Never calculate a tax code, a National Insurance deduction, a net pay figure or an amount of tax owed. That arithmetic belongs to the payroll software and to HMRC's own PAYE calculation, and a second calculation sitting next to the real one is a second place for the two figures to disagree, with nobody able to say which one is wrong. - Never override what payroll software has already calculated. Where its output and a published rate disagree, the disagreement is a flagged mismatch for the provider to explain, never a corrected figure written into the register in its place. - Never state a typical payroll to turnover ratio, a typical labour cost percentage, or a standard staffing level for a venue of a given size. No published figure exists for a single independent UK hospitality business, the numbers that circulate come from trade surveys with unpublished samples and software vendors selling scheduling tools, and an owner who prices a rota against a borrowed figure is planning against a number nobody can stand behind. - Never mark a late FPS as excused without a supplied exception from the fixed list in step 3. A late submission with no matching exception is recorded as late, not quietly folded into the nearest excuse that sounds close enough. - Never take a tax year's rates, thresholds or the current minimum wage figures from this document, a template or last year's spreadsheet. Open the source page on the day, read the figures, and record them, the tax year they belong to and the date they were read. A rate copied from a prompt is wrong the day after the next Budget or the next 1 April uprating and gives no warning that it has gone stale. - This output is a working document prepared for the owner's own payroll provider or accountant to check before anything is corrected, resubmitted or relied on for a return. It applies published HMRC guidance and published rates to the facts the owner supplied. It is not payroll advice, it is not a substitute for a qualified payroll run, and it is not a ruling that any submission shown as on time was actually accepted or processed correctly by HMRC. ## Built from - HM Revenue and Customs and GOV.UK, "Running payroll: Reporting to HMRC: FPS", https://www.gov.uk/running-payroll/reporting-to-hmrc-fps, the page prints no date of its own, read 23 September 2026: the "On or before your employees' payday" heading and the instruction to report pay and deductions in an FPS, in step 2. - HM Revenue and Customs and GOV.UK, "Running payroll: Sending an FPS after payday", https://www.gov.uk/running-payroll/fps-after-payday, the page prints no date of its own, read 23 September 2026: every named exception and its deadline in step 3. - HM Revenue and Customs and GOV.UK, "Running payroll: Reporting to HMRC", https://www.gov.uk/running-payroll/reporting-to-hmrc, the page prints no date of its own, read 23 September 2026: the EPS "by the 19th" deadline and its purpose in step 4. - HM Revenue and Customs and GOV.UK, "Running payroll: Paying HMRC", https://www.gov.uk/running-payroll/paying-hmrc, the page prints no date of its own, read 23 September 2026: the 22nd electronic and 19th postal payment deadlines and the quarterly payment option in step 5. - HM Revenue and Customs and GOV.UK, "Claim Employment Allowance", https://www.gov.uk/claim-employment-allowance, the page prints no date of its own, read 23 September 2026: the GBP 10,500 Employment Allowance figure in step 4. - HM Revenue and Customs and GOV.UK, "National Minimum Wage and National Living Wage rates", https://www.gov.uk/national-minimum-wage-rates, the page states the rates apply from 1 April, read 23 September 2026: the current and prior year hourly rates by age band in step 6. - HM Revenue and Customs and GOV.UK, "Rates and thresholds for employers 2026 to 2027", https://www.gov.uk/guidance/rates-and-thresholds-for-employers-2026-to-2027, updated 1 September 2026, read 23 September 2026: the personal allowance, income tax bands, National Insurance thresholds and rate, the Employment Allowance figure and the Statutory Sick Pay rate in step 7. - HM Revenue and Customs and GOV.UK, "What happens if you don't report payroll information on time", https://www.gov.uk/what-happens-if-you-dont-report-payroll-information-on-time, updated 11 July 2019, read 23 September 2026: the first late submission disregard, the 3 day tolerance and the penalty scale by employee count in step 8.
Prompt for Codex
# payroll-rti ## You are given The enumerated pay-run data for one UK hospitality business, built from the payroll software's RTI submission log, the payslip data for every employee in every pay period and the owner's own record of what was paid to HMRC and when. For every Full Payment Submission: the pay period it belongs to, the employee it relates to, the payday, the submission date and time, the on time answer Claude has already worked out against the on or before rule, and the single named HMRC exception it relies on where one genuinely applies, or a statement that no exception applies and the submission is simply late. For every tax month: whether an Employer Payment Summary was required, the reason it was required where it was, its due date and the date it was actually submitted. The owner's record of every payment made to HMRC: the amount, the date paid, the method, electronic or post, and which deadline it was tested against. For every hourly paid employee: the age band Claude has recorded from the employee's own details, and the hourly rate paid in each pay period. The six published rates and thresholds for the tax year Claude has already read from GOV.UK, each with the date it was read. Payslip figures, tax code and National Insurance category exactly as they appear on the payslip, copied verbatim and never recalculated. All judgement calls, including which exception applies to a late FPS, whether an EPS was required, and which rate belongs to which tax year, have already been made by Claude and are supplied to you. ## Produce Write into a `./payroll-rti-output/` folder: 1. `pay-run-register.csv` with these columns in this order: `pay_period_ref`, `employee_ref`, `employee_name_verbatim`, `payday`, `gross_pay_gbp`, `tax_code_verbatim`, `ni_category_verbatim`, `employee_ni_gbp`, `employer_ni_gbp`, `income_tax_gbp`, `net_pay_gbp`, `fps_due_date`, `fps_submitted_date`, `on_time`, `exception_relied_on`, `source_document`. `pay_period_ref` is P001 upward, one row per employee per pay period. `on_time` is exactly one of `yes`, `no`, `yes, exception applied`. `exception_relied_on` is empty unless `on_time` is `yes, exception applied`, in which case it names the exact exception supplied, verbatim. Any row where `on_time` is `no` is listed in `gaps.md`. 2. `eps-and-deadlines-tracker.csv` with columns: `tax_month_ref`, `tax_month_start`, `tax_month_end`, `eps_required`, `eps_reason`, `eps_due_date`, `eps_submitted_date`, `eps_on_time`, `hmrc_payment_due_date`, `hmrc_payment_method`, `hmrc_payment_date`, `hmrc_payment_on_time`. `tax_month_ref` is T01 upward, one row per tax month across the period supplied. `eps_required` is `yes` or `no`. `eps_on_time` and `hmrc_payment_on_time` are each exactly one of `yes`, `no`, `not applicable`. `hmrc_payment_method` is exactly one of `electronic`, `post`, `quarterly`. 3. `minimum-wage-check.csv` with columns: `employee_ref`, `employee_name_verbatim`, `age_band_supplied`, `pay_period_ref`, `applicable_rate_gbp`, `hourly_rate_paid_gbp`, `meets_or_exceeds_band`. `age_band_supplied` is exactly one of `21 and over`, `18 to 20`, `under 18`, `apprentice`. `meets_or_exceeds_band` is `yes` or `no`. Every row where it is `no` is listed in `gaps.md`. 4. `rate-and-threshold-check.csv` with columns: `rate_name`, `tax_year`, `published_value`, `date_read`, `payroll_software_value_supplied`, `matches`. One row for each of: personal allowance, basic rate income tax threshold, higher rate income tax threshold, additional rate income tax threshold, employee National Insurance Primary Threshold, employer National Insurance Secondary Threshold, employer Class 1 National Insurance rate, Employment Allowance, Statutory Sick Pay weekly rate. `matches` is exactly one of `yes`, `no`, `not supplied`. 5. `penalty-exposure.md` recording, on separate lines and nothing else: the total count of FPS rows in `pay-run-register.csv`; the count marked `no`; the count of those excluded as the first late submission in the tax year; the count of those excluded because every payment on that FPS fell within 3 days of the payday; the count remaining after both exclusions; the employee headcount supplied and the resulting monthly penalty band from the fixed scale, GBP 100 for 1 to 9 employees, GBP 200 for 10 to 49, GBP 300 for 50 to 249, GBP 400 for 250 or more; and the count of tax months in `eps-and-deadlines-tracker.csv` where `eps_required` is `yes` and `eps_submitted_date` is empty. 6. `gaps.md` a numbered list of: every FPS row marked `no` in `pay-run-register.csv`; every FPS row marked `yes, exception applied` with an empty `exception_relied_on`; every tax month with `eps_required` set to `yes` and no submission date; every payment row in `eps-and-deadlines-tracker.csv` with an empty `hmrc_payment_date`; every minimum wage row marked `no`; every rate and threshold row marked `no` or `not supplied`; and any figure supplied without a date attached to it. ## Rules - Codex tabulates, counts and cross checks only. It never calculates a tax code, a National Insurance deduction, a net pay figure or a wage owed, never decides which exception applies to a late FPS, never decides whether an EPS was required, and never estimates a rate, a threshold or a minimum wage figure. Every one of those was decided before the file reached Codex. - Never mark `on_time` as `yes, exception applied` unless an exception was explicitly supplied for that row. An FPS with no supplied exception is recorded as `no`, never inferred as excused from the employee's job title, the pay pattern or the size of the payment. - Never write a typical payroll to turnover ratio, a typical labour cost percentage, a standard staffing level or any other industry benchmark into any file. No such figure exists for a single independent UK hospitality business and none is to be recorded. - Never carry a rate, a threshold or a minimum wage figure forward from a previous tax year's file. Only the figures supplied for the tax year named in `rate-and-threshold-check.csv` are used, and a prior year's figure supplied for comparison is recorded in a separate column and never used in a calculation. - Never recalculate a payslip figure. `gross_pay_gbp`, `employee_ni_gbp`, `employer_ni_gbp`, `income_tax_gbp` and `net_pay_gbp` are copied exactly as supplied from the payslip data, never derived from the tax code or the rate tables. - Use British English, GBP written as `GBP` or the pound sign, and DD Month YYYY dates. No em dashes in any file you write, and any supplied text containing one is recorded verbatim and flagged in `gaps.md`. - Every quoted employee name, exception wording and rate name is copied exactly, including its punctuation and capitalisation. - Every file ends with this line: this is a working document prepared for the owner's own payroll provider or accountant to check before anything is corrected, resubmitted or relied on for a return. It applies supplied decisions to the supplied facts and is not a ruling that any submission shown as on time was actually accepted or processed correctly by HMRC. ## Return The absolute path of every file written, the row count of each CSV, the count of FPS rows marked `yes`, `yes, exception applied` and `no`, the count of each named exception relied on, the count of tax months with a required EPS missing, the count of HMRC payments with no payment date recorded, the count of minimum wage rows marked `no` with the employee references involved, the count of rate and threshold rows marked `no` or `not supplied`, the penalty band figure from `penalty-exposure.md` stated in full with the two exclusion counts it rests on, and the `gaps.md` item count.
Built from the best public work on this
Sources for payroll-rti
Everything below was opened and read on 23 September 2026. Nothing is cited that could not be loaded.
1. HM Revenue and Customs and GOV.UK, "Running payroll: Reporting to HMRC: FPS"
https://www.gov.uk/running-payroll/reporting-to-hmrc-fps, the page prints no date of its own, read 23 September 2026.
This is the single page the skill's default rule rests on. Under the heading "On or before your employees' payday", the operative instruction is short: "Report their pay and deductions to HMRC in a Full Payment Submission (FPS)." The page does not phrase this as a standalone "you must" sentence the way a solicitor might draft it; it is written as a task under a time heading, and that structure is the point. GOV.UK's own overview page, "Running payroll" at https://www.gov.uk/running-payroll, lays the same structure out across its full contents list, "On or before your employees' payday", "In the next tax month (starting on the 6th)" and "Late reporting", which is why step 2 treats the FPS test as binary before step 3 even asks whether an exception applies. Getting the order right matters commercially: a register that starts by hunting for excuses will always find one that half fits, and the honest test is payday against submission timestamp first, exception second.
Where the skill departs: the page links onward to detailed field-by-field guidance on what an FPS must contain, employer information, employee information, pay and deductions, and National Insurance information, which this skill does not reproduce because the payroll software has already built that submission correctly or incorrectly, and re-deriving its contents from first principles is exactly the second calculation the rules in the skill forbid.
2. HM Revenue and Customs and GOV.UK, "Running payroll: Sending an FPS after payday"
https://www.gov.uk/running-payroll/fps-after-payday, the page prints no date of its own, read 23 September 2026.
This page carries the whole of step 3, and it is a closed list, not a general excuse. Eight situations are named, each with its own deadline. A new starter is covered where "Your employee does not give you a P45 and is either paid less than GBP 96 a week or has worked with you for less than a week", reportable "within 7 days of paying" them. A non-banking payday is covered where "Your employees' payday is on a non-banking day, for example weekend or bank holiday", reportable "on the next banking day" under late reporting reason code G. Ad hoc payments are covered where "You make an ad hoc payment outside of your regular payroll, for example you're told after you've sent your FPS about a new starter or a missed overtime payment", reportable "in your next regular FPS or an additional FPS". Work paid by the day is covered where "You cannot calculate or report your employee's pay in advance because it's based on their work on the day, for example harvest workers paid based on how much they pick", reportable within 7 days. An expense or benefit carrying National Insurance but not Income Tax through payroll, and certain non-cash payments, are each reportable within 14 days of the end of the tax month. Not yet having received the employer PAYE reference, and paying foreign tax on an employee's behalf where the calculation is taking longer than usual, are each reportable as soon as possible, or within a month for the foreign tax case, both under code G.
Of these eight, hospitality trips over three routinely: the weekend or bank holiday payday, because most independent venues pay weekly and Fridays and Saturdays are exactly where bank holidays land; the new starter with no P45, because casual and short notice hiring is normal in the sector; and the ad hoc payment, because a missed overtime shift or a tip adjustment discovered after the FPS has gone in is a weekly occurrence in a kitchen. The day rate exception, aimed at harvest workers, applies to a venue only in the unusual case of casual event staff paid by the cover worked.
Where the skill departs: the page also sets out how to correct an FPS that reported an incorrect amount, which is a different problem from a late FPS and belongs with the payroll provider rather than in a timing register. The skill records lateness and the exception relied on; it does not attempt to judge whether the underlying figures on a late or on time FPS were themselves correct.
3. HM Revenue and Customs and GOV.UK, "Running payroll: Reporting to HMRC"
https://www.gov.uk/running-payroll/reporting-to-hmrc, the page prints no date of its own, read 23 September 2026.
This page supplies the EPS half of step 4. It states the deadline directly: send an Employer Payment Summary "by the 19th" of the following tax month if you need to "claim any reduction on what you'll owe HMRC (for example statutory pay)". The page sits between the FPS page and the paying HMRC page in the overview's own contents list, which is deliberate: an EPS changes what is owed, and the payment deadline in step 5 depends on knowing that figure is correct before the 22nd or the 19th arrives.
Where the skill departs: the page also touches student loan and postgraduate loan deductions and apprenticeship levy reporting through the same submissions, which the skill leaves out because they are figures the payroll software calculates and reports, not a timing question this skill exists to check.
4. HM Revenue and Customs and GOV.UK, "Running payroll: Paying HMRC"
https://www.gov.uk/running-payroll/paying-hmrc, the page prints no date of its own, read 23 September 2026.
The payment deadline is one sentence: "Pay what you owe by the 22nd of the month (or the 19th if paying by post)." The page also carries the smaller employer alternative the skill records in step 5: "If you usually pay less than GBP 1,500 per month, you may be able to pay quarterly instead of monthly. Contact the payment helpline to find out." This is worth a business owner's attention precisely because it is easy to miss: a venue with a handful of part time staff may genuinely qualify and be paying monthly, and therefore administering, twelve payments a year it did not need to make.
Where the skill departs: the page details the different payment methods, Direct Debit, online banking, corporate credit or debit card, and Bacs, in full. The skill records the method actually used and the date paid; it does not advise which method to switch to, since that is a cash flow and banking decision for the owner.
5. HM Revenue and Customs and GOV.UK, "Claim Employment Allowance"
https://www.gov.uk/claim-employment-allowance, the page prints no date of its own, read 23 September 2026.
The figure the skill records comes straight from the page's own opening line: "Employment Allowance allows eligible employers to reduce their annual National Insurance liability by up to GBP 10,500." The allowance is claimed through the EPS, which is why it sits inside step 4 rather than as a separate step, and it is worth flagging precisely because it is claimed, not applied automatically; a venue that never ticks the box simply pays the full employer National Insurance bill every year.
Where the skill departs: the page sets out detailed eligibility rules, including exclusions for certain company structures and a cap linked to the employer's prior year National Insurance liability, that a general fetch of the page's summary text did not return in quotable form. The skill therefore records only the headline figure and that the allowance is claimed via EPS, and sends the eligibility question itself to the payroll provider or accountant rather than asserting a rule this pass could not verify by direct quotation.
6. HM Revenue and Customs and GOV.UK, "National Minimum Wage and National Living Wage rates"
https://www.gov.uk/national-minimum-wage-rates, the page states the rates apply from 1 April and change every year on that date, read 23 September 2026.
The page gives the rates that took effect on 1 April 2026 in a simple table: GBP 12.71 an hour for a worker aged 21 and over, GBP 10.85 for 18 to 20, and GBP 8.00 for both under 18 and an apprentice, replacing the GBP 12.21, GBP 10.00 and GBP 7.55 figures that applied for the year before. Hospitality is named here for a plain reason: it is one of the most minimum wage dependent sectors in the UK economy, with a workforce weighted toward the 18 to 20 and apprentice bands where the annual increase is often the largest in percentage terms, as it was again this year.
Where the skill departs: the page does not deal with the calculation of the hourly rate itself once deductions, uniform costs, accommodation offsets or unpaid trial shifts are taken into account, all of which can turn a rate that looks compliant on paper into a breach in practice. That calculation is genuinely technical and belongs with the payroll provider; the skill's comparison in step 6 is deliberately limited to the headline rate against the age band supplied, and says so.
7. HM Revenue and Customs and GOV.UK, "Rates and thresholds for employers 2026 to 2027"
https://www.gov.uk/guidance/rates-and-thresholds-for-employers-2026-to-2027, updated 1 September 2026, read 23 September 2026.
This page carries the whole of step 7 and it states, for the tax year running from 6 April 2026 to 5 April 2027, an employee personal allowance of GBP 12,570 a year, an income tax basic rate of 20% on the next GBP 37,700 of taxable income above the allowance, a higher rate of 40% running from there to GBP 125,140 of total income, and an additional rate of 45% above that. It sets the employee National Insurance Primary Threshold at GBP 12,570 a year and the employer Secondary Threshold at GBP 5,000 a year, the employer Class 1 National Insurance rate at 15%, the Employment Allowance at GBP 10,500, matching source 5 above, and Statutory Sick Pay at GBP 123.25 a week or 80% of average weekly earnings, whichever is lower. The page carries its own update date, 1 September 2026, which is the single strongest piece of evidence in this whole skill that the figures are current for the tax year in question rather than carried over from 2025 to 2026, where the Secondary Threshold and the Class 1 rate happen to be unchanged but the personal allowance, thresholds and bands are not something to assume without checking.
Where the skill departs: the page also carries figures for Scottish Income Tax bands, which differ from the England and Northern Ireland figures quoted here, student loan thresholds, apprenticeship levy, and van and car benefit charges. The skill takes only the six figures that feed the rate and threshold check in step 7, because those are the figures that show up on every payslip in a hospitality business regardless of what benefits it does or does not provide.
8. HM Revenue and Customs and GOV.UK, "What happens if you don't report payroll information on time"
https://www.gov.uk/what-happens-if-you-dont-report-payroll-information-on-time, updated 11 July 2019, read 23 September 2026.
This page carries the whole of step 8. The penalty scale is stated by employee count: GBP 100 for 1 to 9 employees, GBP 200 for 10 to 49, GBP 300 for 50 to 249 and GBP 400 for 250 or more, charged monthly but billed quarterly. Two easings sit alongside the scale and both matter for a small venue: the first late report in a tax year is disregarded outright, except for employers on the annual scheme, and an FPS that is technically late is nonetheless tolerated where "all reported payments on the FPS are within 3 days of your employees' payday", though the guidance also warns that persistent use of that tolerance can bring an employer under review. The page also states plainly that the same penalty regime catches a missing Employer Payment Summary in a tax month where no payments were made to employees, which is the nil-declaration case in step 4.
The update date on this page, 11 July 2019, is older than every other source here, and it is recorded rather than smoothed over. The penalty mechanics it describes, part of the RTI regime introduced from 2013, have not been superseded by a newer page under a different URL as far as this search could establish, and the figures, unlike a tax rate or a minimum wage rate, are not the kind that move with each Budget. It is recorded so that anyone relying on this skill can weigh that age against the rate pages above, which are current to within three weeks of the date they were read.
Where the skill departs: the page also covers the separate penalty regime for late or incorrect submissions that lead to an underpayment of tax, which is a tax-geared penalty running alongside the reporting penalty rather than a simple extension of it. The skill's penalty exposure count in step 8 totals only the reporting penalty from the employee count scale, because a tax-geared penalty depends on the size of the underpayment itself, which this skill does not calculate for the reasons given in the rules.
Best public prompt found
A search for an existing public prompt or skill covering UK PAYE, RTI or payroll timing compliance, run on 23 September 2026 against general web search and GitHub, found nothing purpose built for HMRC reporting. The closest technical artefact is `craigfrancis/hmrc-rti`, https://github.com/craigfrancis/hmrc-rti, read 23 September 2026, whose star count from https://api.github.com/repos/craigfrancis/hmrc-rti is 17. It is not a prompt; it is a PHP library for talking to the HMRC Gateway API to send FPS and EPS submissions programmatically. It is useful evidence that the field names and submission shape in this skill's registers match what HMRC's own API expects, and nothing more.
The closest genuine prompt-shaped match is the `payroll-prep` skill in Anthropic's own `knowledge-work-plugins` repository, read directly at https://raw.githubusercontent.com/anthropics/knowledge-work-plugins/main/small-business/skills/payroll-prep/SKILL.md on 23 September 2026, in a repository whose star count from https://api.github.com/repos/anthropics/knowledge-work-plugins is 25,466. It is US-specific throughout, built around Gusto and QuickBooks Payroll, state overtime rules and a ledger posting step, and names no HMRC, RTI, FPS or EPS concept anywhere. What is worth taking from it is its governing principle, "The machine assembles and checks, the owner decides", paired with "Anomalies are always raised, never quietly corrected". That is the same discipline this skill applies to a late FPS with no matching exception, or a payroll threshold that disagrees with the published rate: name it, do not fix it, and do not let a plausible looking exception get applied to a row never actually shown to qualify for one.
What we deliberately did not copy from it. Its anomaly detection runs across hours, rate changes and PTO balances inside a single US-style payroll run, with no equivalent here to a statutory deadline regime at all, because US federal payroll tax deposits follow a different rhythm entirely. And it stages a run for the owner's approval before anything is submitted, which assumes the skill sits upstream of the submission. This skill sits downstream on purpose: the FPS has already been sent, correctly or not, and the job is to prove, with a date against a date, whether it went in on time and, where it did not, whether HMRC's own published list of exceptions covers the reason.
Want this running in your business?
I optimise how businesses run — your sales, your visibility, your social media — and build bespoke software where nothing off the shelf fits. The first conversation is free. Work starts from £150 a day.
Foxera