Skip to content

Activating Your Device

Hyvä POS is in closed beta

Hyvä POS is currently in a closed beta (pilot phase) with a small group of merchants. It is not yet generally available: the App Store release follows the pilot, and features and configuration may still change - possibly in backwards-incompatible ways - before the general release. Want to take part? Sign up at hyva.io/pos.

Activation binds a device to a terminal. It takes one code and a few seconds.

Before you start, three things must already exist:

  • the module is installed and the app connects to the store,
  • a terminal record with a license attached - activation works without the license, but the register only runs PRO once one is attached,
  • the activation code, read fresh from the terminal's edit form (codes are one-time; a code from a note taped under the counter has usually been consumed).

Activate

  1. Connect the store in the app as usual (connecting your store). Once the permission check detects the module, the guided setup adds a Terminal Activation step of its own, so a new device is normally activated during setup rather than after it. You can pass it with Skip for Now; settings then carries a Terminal Not Activated row that starts the same flow.
  2. In the Magento admin, open Hyvä POS → Store Setup → Terminals and open the terminal - its edit form shows the activation code and a QR code.
  3. On the device, tap Scan QR Code and point the camera at the admin screen (scanning activates immediately), or type the 6-character code and tap Activate. The scanner needs camera permission; if it was denied earlier, the app sends you to iOS Settings to grant it.
  4. The success screen confirms the terminal name and location, and a moment later the register is live.

What Arrives on Activation

The device receives everything it needs in one response:

  • The terminal identity: name and location - shown at the register and printed on receipts.
  • The location's configuration: receipt branding, tax, payment methods, categories, and any locked settings, which arrive as managed controls.
  • The location's own details: address, VAT number, phone and tax zone. Activating during guided setup therefore reaches the Store Settings step with these already filled in from Magento.
  • The staff list with roles for the location, so staff log in with their PINs immediately. Any staff sessions from a previous device on this terminal are signed out.
  • The license token, and fiscal (fiskaly) credentials when the license carries them - fiscal compliance configures itself.

If activation succeeds but no PRO license is attached to the terminal, the app says so on the spot: Terminal Activated - No PRO License Attached. Ask your admin to attach a license, then tap Check Again; or, when your store does not require terminal registration, tap Continue without PRO to run the register in the free tier under this terminal.

Re-Activation After a Clone or Restore

Each physical device has its own identity. A device restored from a backup, or cloned during a multi-iPad rollout, deliberately does not impersonate the original: it starts unregistered and asks for activation, and its store sign-in must be entered again (credentials are stored in the device keychain and never transfer to other hardware).

So the register can be re-linked without guesswork, the lock screen shows a breadcrumb: Previously linked: Counter 1 (ID: 3) - the terminal record this device (or its clone source) was bound to before. Two ways forward:

  • Same terminal: regenerate that terminal's activation code in the admin and activate. The device takes the terminal, its settings and its license back over.
  • New terminal: create (or clone) a terminal for the extra device and activate with its code.

Lock Screens You Might See Later

  • Terminal Reassigned: the terminal was activated on another device. Activate here to take it back (the other device is signed out - the app says so before you commit), or set this device up as a new terminal. This is the normal screen when you replace hardware.
  • Activation Code Changed: the code was regenerated in the admin; enter the new one.
  • Terminal Deactivated: an admin switched the terminal off. Contact your store admin - a valid code does not override a deliberate lock-out.
  • License Expired: the subscription lapsed and the 7-day grace period ended. Fix the payment, then tap Check License; the register can also continue on the free tier.

Lock screens with an old terminal to move away from also offer Link to a new terminal as a secondary path. It confirms the consequences first: sales start logging under the new terminal, local sales history stays on the device, and nothing changes until the new code is accepted. Every lock screen keeps its escape hatches - you can always switch to another configured store or start a fresh setup from the corner controls.

Common Errors During Activation

Error on the device Cause and fix
"Activation code not valid." The code was already used by another device, or regenerated since you read it. Open the terminal in the admin, Regenerate Activation Code, use the fresh code.
"This terminal is disabled. Enable it in the Magento admin before activating." The terminal's Active switch is off. Re-enable it first.
"License validation failed: ... bound to a different device" The attached license still belongs to another device on hyva.io. The module releases and retries once automatically; if it persists, deactivate the terminal on the hyva.io portal and retry.
"The store sign-in on this device has expired." The admin token aged out while the device sat on this screen - common right after a clone or restore. The app first retries silently; when that is not possible, tap Reconnect, sign in, and the app retries the code you already entered by itself.
"Too many activation attempts. Please wait N minutes." Rate limiting after repeated wrong codes from this device. Wait it out, then use a freshly regenerated code.

After Activation

The device checks in with Magento on its heartbeat and holds a license token that is valid for up to 30 days, so a store that is briefly unreachable never locks your register (see buying and licensing). Verify the link from the admin side: the terminal's Last Seen At updates, and its activity log shows a linked event with this device's identifier.