Relayium

Transfer files by scanning a QR code

Last updated: 2026-08-05

Typing a six-digit code is fast, but scanning is faster still — point a phone camera at the screen and the transfer is set up before you'd have finished typing. Relayium's pairing flow shows a QR code alongside every pairing code for exactly this reason.

This is the cross-network flow: it works whether both devices are on the same Wi-Fi or on opposite sides of the planet. The QR is just a shortcut into that flow — the code and the link underneath it work exactly the same way if scanning isn't convenient.

Create a code, get a QR

Before you start

  • A signed-in account on the sending device only. Creating a pairing code needs one — so does creating an async download link — while the person who scans never signs in.
  • A verified email address on that account, because relay for a cross-network session is only issued to verified accounts and the pairing card says so when it refuses.
  • A camera or any QR scanner on the receiving device, and both of you present at the same time — the code lives five minutes.
  • An agreement about who creates the code: the QR is rendered only on that device, so the other one does the scanning. That settles who joins whom, not which way files can travel once both are in the room.

On the sending device, open relayium.com and sign in — creating a pairing code needs an account, because the code has to belong to someone, and creating an async download link needs one for the same reason. Joining is the part that never does: the person who scans stays signed out throughout. Pick a file, a folder, or just connect without files queued yet.

Relayium mints a short pairing code — six decimal digits, so a phone can offer its numeric keypad and the code can be read aloud without spelling anything out — and, right next to it, renders a QR code. The code is good for five minutes; after that you generate a fresh one. The QR doesn't encode anything new — it's the same join link the "copy link" button gives you, just rendered as a scannable square instead of text. Whoever opens that link lands straight in your pairing room.

Scan it — no app, no account

On the other device, open the camera app (or any QR scanner) and point it at the screen. Tapping the notification that pops up opens the link in a browser, which joins the room automatically — no typing, no relayium.com account for the person scanning, and nothing to install. Joining is all a scan does; it moves no files. An incoming batch still waits on the receiving screen until someone presses “Accept”.

If a camera isn't handy, the same link works pasted into any browser, and the six-digit code works typed into the "enter code" box on relayium.com. The QR is a convenience layered on top of both, not a separate mechanism — pick whichever is easiest in the moment.

  1. On the sending device, open the realtime transfer page and sign in.

    https://relayium.com/cross-network
  2. Create the pairing code. The card then shows the six digits, the QR square under them, and a countdown.

    Your pairing code — read it to the other person
    483920
    or have them scan / open the link to join
    pairing code expires in 4:52
  3. On the other device, open the camera app or any QR scanner and point it at that square. Tap the link notification it offers.

  4. The link opens in a browser and joins the room on its own — nothing to type, and no account on this side. It is the same address the “Copy link” button puts on your clipboard.

    https://relayium.com/cross-network#c=483920
  5. Back on the sending device, choose the files to send if you did not queue any before creating the code. Nothing moves until the receiving side presses “Accept”, so answer that prompt there, then leave both tabs open until the file counter reaches the end.

What a successful scan looks like

On the sending device the QR and the “Waiting for the other device to join…” line give way to the connected card, and the path badge on it reads “Relayed” — the expected value for a pairing-code session, which takes the encrypted TURN relay by design.

The file counter then runs to the last file on both screens. Nothing about the transfer differs from a typed-in code: scanning only decided how the second device got into the room.

Relayed
File 1/1

What happens after the scan

Scanning only gets the two devices into the same room; the transfer itself is unchanged from any other pairing-code session. Whoever created the code owns the room and whoever scanned joined it, but that is a fact about the rendezvous rather than about direction: once both are in, either side can be the one sending, and every incoming batch is still gated by “Accept” on the receiving screen. A pairing code puts you in a separate two-device room rather than the same-network device list, but the surface inside that room is the same shared workspace two up-to-date browsers open anywhere: one action on the peer card, then one encrypted connection carrying files and messages together. What the code does change is the path — it is relay-only by design, and that relayed link runs under a bounded lifetime the workspace warns about before it is reached. The two browsers derive a shared key with an X25519 key exchange and encrypt every chunk with AES-256-GCM, then send those chunks over a WebRTC channel carried by a TURN relay.

With advanced verification on (it is off by default), both screens show the same six-digit verification code (SAS) — glance at both and confirm they match before trusting the connection. A match confirms the keys weren't replaced: a server or relay has not impersonated either endpoint or terminated the application-layer end-to-end encryption. A pairing-code transfer always takes that relay route rather than hunting for a direct path first, so it does not depend on discovering a direct path through the NATs and firewalls between the two networks, which can prevent one. The relay only ever forwards ciphertext — it holds no key, so it never sees your files. Each file is checked end-to-end with a SHA-256 hash, and a dropped connection can resume instead of restarting.

If scanning doesn't work

Cameras misfire, lighting is bad, or one device just doesn't have a camera handy — none of that should block the transfer. The pairing card on the sending device also shows copy buttons for the raw code and the link (and a share-sheet button on devices that support it), plus a countdown until the code expires.

Retype the code, paste the link, or use the share sheet to send it another way (chat, AirDrop, whatever's fastest) — every path lands in the same room and gets the same encrypted connection. The QR is one entry point among several, never a requirement.

Symptom, check, fix

The scan opens the page and it says the pairing code is invalid or expired.
https://relayium.com/cross-network   # the sender's card shows the live countdown

The five minutes ran out, and a QR of a dead code stays a dead link no matter how often it is scanned. Create a fresh code on the sending device — the card renders a new QR with it — and scan that one straight away.

The camera recognises the square but never offers to open anything.
https://relayium.com/cross-network   # the “Enter a pairing code” box takes the six digits

Some scanners only copy the text instead of handing it to a browser. Paste what it copied into the address bar, or skip the QR entirely: open the page on the receiving device, type the six digits into the “Enter a pairing code” box and press “Connect”.

Both of you are looking for a QR to scan and neither screen has one.
https://relayium.com/cross-network   # only the card that minted the code renders a QR

The QR belongs to the device that created the code, so one of you has to create first and the other scans. Decide which side creates — either of you can send once both are in the room — press “Create a pairing code” there, and point the other device's camera at that screen.

The link was forwarded through a chat app and the page opens with no code in it.
https://relayium.com/cross-network#c=483920   # everything after #c= is the code

The code travels in the URL fragment, and a link rewriter or preview service can drop everything after the #. Read the six digits out instead, or paste the link into the address bar yourself so nothing between you and the browser rewrites it.

The scan joins the room and then the card says relay is only issued to verified accounts.
https://relayium.com/cross-network   # the pairing card names the reason it was refused

The sending account's email address is not verified yet, and that is checked when the session asks for a relay rather than when the code is minted. Verify the address from the account panel, then create a new pairing code and scan its QR — same-network transfers are unaffected by this.

Frequently asked questions

Does the person scanning the QR need a Relayium account?

No. Only the side creating the pairing code and its QR signs in — the same requirement an async download link carries. Whoever scans just joins the room that was already created: no account, no sign-up, nothing to install.

What does the QR code actually contain?

The same join link the "copy link" button copies — a relayium.com URL with the pairing code baked in. Scanning it just opens that link in the browser, which joins the room automatically. Joining is where it stops: no file is picked and none is sent, and whatever is sent afterwards still has to be accepted on the receiving device.

Is scanning the QR as secure as typing the code?

Yes, it's the identical connection either way. Both devices still negotiate an X25519 key exchange, encrypt with AES-256-GCM, and — if advanced verification is on — show a matching SAS verification code you can check before trusting the transfer. The QR only changes how you get into the room, not how the transfer is secured.

What if the QR won't scan?

Nothing is lost — the same pairing card shows the raw code and a copyable link, and a share-sheet button on supported devices. Any of them opens the same room as the QR.

Does this work across different networks, like phone data to home Wi-Fi?

Yes. This is the cross-network pairing flow, so it works whether both devices share a network or not. A pairing code always connects the two through an encrypted TURN relay — the route that does not depend on finding a way through the NATs and firewalls between the networks, which can prevent a direct connection — and that relay only ever carries ciphertext. Connecting directly is what devices on the same network do when they find each other without a code.

Open Relayium, create a code, and try scanning the QR with another device — no app, no account needed for the person scanning.

Try Relayium now

Keep reading