8 codes that cover most of what an originator sees. Each one carries the decision: retry or stop, how long the receiving institution has to send it, what the guidance rests on, and when it was last checked.
On a rail fact, every detail line names the section or instrument it rests on and whether that is a rule, a law, operator guidance, or observed practice.
Not yet covered: Pay.UK does not publish the rejection code list. It is in the FPS Procedures, Appendix B, FPS Codes, section 8.2, which Pay.UK's 2025 PFMI self-assessment, key consideration 23.1, says is available for review by participants' legal departments; 42 of the 50 rejection codes a participant's developer documentation lists are not drafted here. Either only one public source family carries them, or the two families that carry them disagree on what they mean. The held codes are listed by number in docs/rails/uk-fps.md; the qualifier codes at Appendix B section 7, which a qualified acceptance carries: Pay.UK publishes the five funds availability timescales they signal but no code values; which side raises each code. The one public statement read is that the central infrastructure passes participant rejection codes through to the sending institution, with 1181 as the stated exception, so the codes drafted here are read as the receiving institution's [Inference]; the response time a receiving institution has, which Pay.UK says is defined in the FPS Procedures and Technical Specifications and describes publicly only as a few seconds.