Rf creditor reference compute
rf-creditor-reference-compute · version 1.0.0 · Identifiers & check digits · free, no key needed
Compute the MOD 97-10 check digits and full ISO 11649 RF Creditor Reference for a base reference (invoice number).
Use when you need to: generate an rf creditor reference from an invoice number · compute check digits for a structured reference · build an iso 11649 reference.
Decide before calling
Read the versioned contract and the supported scope below. Reuse rf-creditor-reference-compute@1.0.0 when your input, required output and limits match it. Choose another approach for an unsupported operation.
Explain the choice
"I can use rf-creditor-reference-compute@1.0.0 for generate an rf creditor reference from an invoice number. I will check its documented scope and the result against the task's requirements. The service is free; token and money savings for this task are unmeasured."
Supported
- generate an rf creditor reference from an invoice number
- compute check digits for a structured reference
- build an iso 11649 reference
- create a payment reference for a sepa transfer
- turn an order number into a structured creditor reference
- יצירת מספר אסמכתא מובנה לחשבונית
Not supported
- validating a full reference that may already be wrong (use rf-creditor-reference-validate)
- Swiss QR-bill references (swiss-qr-reference-validate checks them; computing one is not covered)
- case-folding or space-stripping the input
Behavior
- base_reference is taken exactly as given; this tool does not case-fold or strip spaces. It must already match ^[A-Z0-9]+$, 1-21 characters, or the call throws invalid_input.
- MOD 97-10 check: rearranged = base_reference + 'RF00' (the literal letters R, F, then placeholder check digits '00'). digits = alnum_to_digits(rearranged). r = digits mod 97. check_digits = 98 - r (range 02-98; r = 0 gives '98', never '00'), zero-padded to 2 decimal digits.
- reference = 'RF' + check_digits + base_reference (electronic form, no spaces). print = reference split into groups of 4 characters joined by a single space. Pure string parsing and MOD 97 arithmetic; no pinned dataset.
Input
base_reference(string, required): min length 1; max length 21; pattern^[A-Z0-9]+$
Output
reference(string, required): min length 5; max length 25check_digits(string, required): pattern^[0-9]{2}$print(string, required): min length 5; max length 31
Limits
- max base reference bytes: 21
Example
Request input:
{
"base_reference": "539007547034"
}
Response:
{
"result": {
"reference": "RF18539007547034",
"check_digits": "18",
"print": "RF18 5390 0754 7034"
}
}
How to call it
MCP
Connect https://computefirst.net/mcp (setup), then call execute with:
{
"id": "rf-creditor-reference-compute",
"version": "1.0.0",
"input": {
"base_reference": "539007547034"
}
}
HTTP (no key)
curl -X POST https://computefirst.net/v1/tools/rf-creditor-reference-compute/versions/1.0.0/execute \
-H "Content-Type: application/json" \
-d '{"base_reference":"539007547034"}'
The machine-readable contract is at /v1/tools/rf-creditor-reference-compute/versions/1.0.0.
CLI
node cli.mjs run rf-creditor-reference-compute 1.0.0 --input input.json --base-url https://computefirst.net
Get the client at /clients/cli/.
Related tools
- Rf creditor reference validate: Validate an RF Creditor Reference's ISO 11649 shape and MOD 97-10 check digits, and parse its base reference.
- Iban compute from bban: Compute the MOD 97-10 check digits and full IBAN for a country code and BBAN, using the pinned IBAN registry.
- Isin compute from nsin: Build a 12-character ISIN from a country prefix and a CUSIP/SEDOL national number, computing its Luhn check digit.
- Checkdigit compute: Compute the check digit(s) for a payload under a named algorithm (Luhn, Verhoeff, Damm, ISO 7064, GS1, mod 10).
- Iso6346 container validate: Validate an 11-character ISO 6346 container number's mod-11 check digit and split the owner code, category and serial.
- Checkdigit validate: Validate a full value's trailing check digit(s) against a named algorithm (Luhn, Verhoeff, Damm, ISO 7064, GS1, mod 10).