Let’s talk
RUENAR
BEIZ Studio’s own product
DUBAI / 2026

QR Service — dynamic QR codes.

Print the code once and change its destination in the dashboard. We created our own service, from redirect logic and QR design to analytics, teams and subscriptions.

SaaS · Web service · Analyticsqr-redirect-vercel.vercel.appVisit website ↗
QR Service homepage with oversized typography and an analytics interface demo

QR Service / homepage. Figures in the interface demo illustrate how data is displayed.

View full size
01 / The brief

Keep printed materials relevant when their destination changes.

The need emerged in Acting Gym and TalentHub: business cards, displays and other materials were prepared before a permanent domain was chosen. We built an intermediary service. The QR holds a short address, while its destination can change without reprinting. We handled the architecture, interface, development, access protection and billing.

What we delivered

  • Dynamic link and redirect architecture
  • Landing page and dashboard interface design
  • QR studio with brand styles and export
  • Scan analytics, campaigns and teams
  • Subscriptions, AED payments and REST API
  • Access protection, tests and backups
02 / DESIGN

A closer look at the website.

We built a visual system around a graphite foundation, a vivid accent, oversized typography and a modular grid. The landing page explains the service through interface examples, short scenarios and a plan comparison.

Project scope

API routes
35
Automated tests, including 11 payment scenarios
62
Database tables
15
Plans: Free, Pro and Max
3

Planning your own web service?

We will define the user journey and first release, from the interface to payments and integrations.

Discuss your project

A need from real projects

Acting Gym and TalentHub needed QR codes before their permanent domains were chosen. A direct link encoded in print cannot be edited. We separated the QR from its destination: the code points to a short service URL, and the destination is managed in the dashboard. Development ran from 24 June to 17 July 2026.

Redirects without reprinting

We implemented short identifiers, uniqueness checks and custom slugs. Redirects use a 302 response with caching disabled so a changed destination applies on the next request. We added expiry rules, UTM tags, query forwarding and destination history. Disabled and unknown codes have a fallback page.

From prototype to web service

The first version used three Cloudflare Workers, KV caching, a D1 database and R2 backups. It explored client management, bulk QR creation, templates and access rules. We developed the production version on Next.js 15, React 19 and TypeScript with Neon Postgres, using PGlite for local development.

A dashboard for daily work

We brought together links, clients with brand kits, folders, campaigns and link-in-bio pages. Context stays with the user: a campaign or folder leads to its links and lets them create a new one in place. Bulk actions cover activation, pausing, archiving and labels. The QR studio customises dots, corners, colours and a centre logo, then exports the selected design as SVG or PNG.

Understanding placements

We separated scan recording from the redirect. Analytics cover countries, cities, channels, devices, browsers, operating systems and top codes. We added date filters, bot filtering, PNG chart exports and CSV and JSON downloads. Raw IPs are replaced with salted hashes. Figures in the landing page demos illustrate the interface.

Teams, API and subscriptions

We implemented organisations, invitations, roles, password recovery and API keys. The public REST API creates and retrieves links for external systems. Free, Pro and Max have monthly and annual AED billing through Ziina, server-side limits and signed payment notifications. Duplicate notifications do not activate a subscription twice; a refund removes the paid plan.

Protection and scenario testing

We added protected sessions, session revocation after password changes, one-time recovery tokens and sign-in rate limits. Destination validation, checks on state-changing requests and CSV export protection address common failure paths. The project underwent two security review rounds. We prepared 62 automated tests, including 11 for the payment lifecycle, plus daily backups and a database health check.

The public product and next step

We released the landing page, blog, API documentation and terms pages. The product interface is in English and payments are in AED. It currently runs at qr-redirect-vercel.vercel.app. A branded short domain has yet to be connected.

04 / The outcome.

From a print problem to an independent SaaS.

Launched a web service with link management, a QR editor, scan analytics and team access. Built three plans with AED payments through Ziina, a public API, a blog and documentation. The service runs on Vercel; a dedicated short domain remains the next step.

NEXT STEP
BEIZ / LET’S TALK

Let’s build your digital product.

Discuss a service, dashboard or platform. We will define the architecture, design and launch stages.

Let’s talk
DUBAI, UAE / RU · EN · AR
BEIZ / YOUR NEXT CHAPTER

Tell us what you need. We will come back with a clear next step.

What would you like to improve?
Add details

This enquiry is not an order or a mailing list subscription.

Contact us directly ↗
IN DETAIL

Project preview