Mock Customer Generator

Runs in browser Mocking

Nested customer fixtures (contact, addresses, recent orders, loyalty) ready for storybook stories and API stubs. Synthetic test data only.

TEST DATA ONLY — all generated names, contacts, identifiers and numbers are synthetic and do not belong to real people or accounts.
Privacy: This tool runs entirely in your browser. Your input never leaves your device.
Loading tool…

How to use Mock Customer Generator

  1. Enter the number of customers and orders per customer.
  2. Set the currency code and id style.
  3. Generate and use the JSON in stories, stubs or demos.

Mock Customer Generator features

  • E-commerce customer fixtures with contact, company, segment and status
  • Addresses, masked payment method summaries and loyalty tier/points
  • Recent orders with line items and consistent subtotal, tax and total arithmetic
  • Lifetime value and average order metrics computed from the orders
  • Configurable order count and currency; seedable; integer or UUID ids

Mock Customer Generator example

Customer with two orders

Input:

Count: 1, orders: 2, currency: SAR

Output:

[{ "id": 1000, "customerNumber": "CUST-001000", "fullName": "Andrew Sullivan", "segment": "Consumer", "addresses": [{ "label": "Home", "city": "Austin", … }], "paymentMethods": [{ "brand": "visa", "last4": "4242", … }], "recentOrders": [{ "id": "ORD-48213", "total": 318.55, … }], "metrics": { "orderCount": 2, "lifetimeValue": 612.1, "currency": "SAR" } }]

Frequently asked questions about Mock Customer Generator

What is included for each customer?

Contact details, company and segment, one or two addresses, a masked payment method (brand, last4, expiry), loyalty tier and points, recent orders with line items and correct subtotal/tax/total arithmetic, and metrics such as lifetime value.

Are payment details safe?

Only masked summaries are generated (brand and last four digits) — never a full card number, so the fixtures are safe to commit.

Can I control the number of orders and currency?

Yes: set orders per customer (0–20) and a three-letter currency code; totals are recomputed consistently.

Is the data reproducible?

Enter a seed for identical fixtures in tests and demos; leave it empty to regenerate fresh data.