JWT, webhook and JSON schema tools

UETR Generator

Create UETR-format values, or paste one to check its format.

The UETR generator makes random UETR values, which are UUID version 4 identifiers in the 36-character form that payment messages use to follow one payment through the chain. It can also check whether a UETR you paste in has that form. The tool is free, needs no sign-up or account, and runs in your browser, so nothing you enter is sent anywhere.

Each value follows the RFC 4122 rules for version 4 and keeps 122 random bits. The page states that these are random UUIDs in the UETR form and are not registered with any payment network. The UETR of a real payment is created by the payment initiator, so use generated values for testing and examples. A value that passes the check has the right form, but that does not show that it was issued for a payment.

Uetr generator example

How to use the UETR generator

  1. Enter a whole number from 1 to 1000 in How many. The default is 5. Leave it empty if you only want to check a value.
  2. In Case, choose “lower case” (the default) or “UPPER CASE”.
  3. In Separate with, choose “new line” (the default) or “comma”. Comma writes “, " between values.
  4. Read the Generated result, such as “5 UETR(s), lower case”. The values appear in the UETRs block.
  5. Click Copy to copy the values, or Download to save them as uetrs.txt.
  6. Click Generate new ones to draw fresh random bytes and make a new set.
  7. To check a value, paste it into Check a UETR. Read the Check result, then Check details for the reason and Version and variant for the version and variant bits.
  8. Use the presets Five UETRs, A valid UETR, or An invalid UETR (a version 1 UUID) to see examples of each result.

The How it was calculated section shows the 16 random bytes behind the first value and the two bit operations that turn them into a UETR. The checker does not accept braces, a “urn:uuid:” prefix, or values without hyphens. Use Copy result, Copy link or Print / save as PDF to keep the result, and Reset to return to the sample.

What is a UETR?

A UETR is a Unique End-to-end Transaction Reference. It is a UUID version 4 that follows one payment through every step of the chain, so each party can refer to the same payment.

What format is a UETR?

A UETR has 36 characters in the 8-4-4-4-12 pattern: hexadecimal digits in five groups separated by hyphens. The first digit of the third group must be 4, and the first digit of the fourth group must be 8, 9, a or b. An example is eb6305c9-1f7f-49de-aed0-16487c27b42d.

Is a UETR upper or lower case?

RFC 4122 section 3 says UUID letters are output in lower case and are case insensitive on input, so this tool writes lower case by default. It accepts upper case in the checker but marks it “Valid form, but upper case”.

Who generates the UETR?

The party that initiates the payment creates the UETR. No lookup service supplies it, and this tool only makes values in the correct form.

Can I generate a UETR myself for testing?

Yes, for test messages. Following RFC 9562 section 5.4 and RFC 4122 section 4.4, the tool takes 16 random bytes, sets the top four bits of byte 7 to 0100, sets the top two bits of byte 9 to 10, and keeps the other 122 bits random.

How do I check whether a UETR is valid?

Paste the value into Check a UETR. The checker tests the length first, then the hyphen positions, then the hexadecimal characters, then the third and fourth group digits, and it reports the first problem it finds.

Is a UETR the same as a UUID?

A UETR is a UUID of version 4. Every UETR is a UUID, but a UUID of another version, such as the version 1 example in the presets, is not a valid UETR.

Can two payments share a UETR?

No. A UETR must be unique for each payment, so a test set should not reuse one value for two cases.

Sources (checked 2026-10-15): RFC 9562; RFC 4122.

Worked examples

InputResult
1 UETR(s), lower case919108f7-52d1-4320-9bac-f847db4148a8
3 UETR(s), UPPER CASE919108F7-52D1-4320-9BAC-F847DB4148A8
eb6305c9-1f7f-49de-aed0-16487c27b42dValid
6ba7b810-9dad-11d1-80b4-00c04fd430c8the first digit of the third group is "1", but a UETR needs 4 (a version 4 UUID).

Calculated by the tool above; open it with the same values to see each step.

Frequently asked questions

How do I check a UETR that I copied from a message?

Paste it into Check a UETR exactly as it appears. If the Check result says “Valid form, but upper case”, convert the letters to lower case and check again. The result shows the form only, so a valid result does not confirm the payment.

Are my UETRs registered or sent anywhere?

No. They are made in your browser and are not registered with any payment network. Use them for test messages and examples only.

How random are the values?

The page draws random bytes from the browser’s crypto.getRandomValues and sets the version and variant bits. 122 of the 128 bits are random, as RFC 4122 section 4.4 describes.

Can I paste a real payment’s UETR?

The check only looks at the form, so it works for any value, but treat any live production identifier or secret pasted into any website as exposed and use test values where you can.

Can I share or print my result?

Copy result copies the numbers as text, Copy link copies a web address that reopens the tool with your non-secret settings, and Print / save as PDF opens your browser’s print dialog. Secret fields are left out of the link.