Tool 15 · Test Data

Synthetic A2A Test Data Generator

Generate realistic synthetic A2A payment datasets for testing and development. Seed-based PRNG ensures reproducible results. Export as CSV or JSON. Client-side only — zero PII.

All processing in your browser · No data transmitted Deterministic PRNG · FedNow · RTP · ACH · SEPA
Generator Config Deterministic by seed
Dataset
Record Count 1,000
Seed Value Same seed = same dataset
Date Range
From
To
Payment Rail
Rail Type
Amount Range
Min ($)
Max ($)
Amount Distribution
Failure & Edge Cases
Failure Rate 5%
Duplicate Rate 2%
Return Rate (R-codes) 3%
Pending Rate 4%
Output Fields
Generating…
Total Records
not yet generated
Settled
Failed
Returned
Duplicates
Total Volume
Preview First 20 rows shown
No dataset generated yet
Configure the parameters on the left and click ▶ Generate Dataset to build a synthetic A2A payment dataset.

What this tool does: This generator produces realistic synthetic A2A payment datasets for use in integration testing, QA pipeline validation, load testing, analytics development, and demo environments. All data is entirely synthetic — no real account numbers, names, or transaction IDs are used or inferred.

Deterministic PRNG: The generator uses a seeded linear congruential generator (LCG) implemented in pure JavaScript. Given the same seed, record count, and configuration, the output is identical every time — enabling reproducible test runs. Change the seed to produce a statistically independent dataset with the same schema.

Field generation logic (transparent JS):
txn_id — Rail-prefixed UUID-style ID: FN-[hex16] (FedNow), RTP-[hex16], ACH-[hex16], SEPA-[hex16].
end_to_end_idE2E-[YYYYMMDD]-[hex8] format matching ISO 20022 EndToEndId conventions.
routing_number — 9-digit synthetic RTN with valid ABA check digit formula (not real bank RTNs).
account_number — Masked: first 4 digits + **** + last 4. Lengths vary 8–17 digits by rail.
amount — Log-normal distribution by default (mean ~$400, realistic long tail). Uniform and bimodal modes also available.
timestamp — Uniformly distributed across selected date range. FedNow/RTP: 24/7. ACH: business-hours weighted.
status — Settled/Failed/Returned/Pending/Duplicate assigned via seeded PRNG against configured rates.
return_code — Failed records receive NACHA R-codes (R01–R29) or FedNow-equivalent codes weighted by realistic frequency (R01 NSF ~38%, R02 account closed ~12%, R03 ~8%, etc.).

Return code coverage: R01 (Insufficient Funds), R02 (Account Closed), R03 (No Account), R04 (Invalid Account Number), R05 (Unauthorized Debit), R07 (Authorization Revoked), R08 (Payment Stopped), R09 (Uncollected Funds), R10 (Customer Advises Not Authorized), R16 (Account Frozen), R20 (Non-Transaction Account), R23 (Credit Entry Refused), R29 (Corporate Customer Advises Not Authorized). FedNow status codes: RCVD, ACSC, RJCT, ACCP.

Data privacy: This tool runs entirely in your browser. No data is transmitted to any server. All generation and file processing happens locally on your device. Generated datasets contain no real PII — names are synthetic composites and account numbers are non-functional masked values.

Source: Built by AINumbers.co · Tool 15 · MIT License.