English Română
Drag to rotate • Scroll to zoom • Right-click to move

Table of Contents

  1. Introduction
  2. First Boot & Network
  3. Admin Menu
  4. Web Application Integration
  5. User Flow
  6. Troubleshooting

1. Introduction

The Metrici Payment Terminal is an unattended self-service kiosk that lets drivers pay for parking without staff assistance. A driver identifies their parking session — either by typing the license plate number on the touchscreen or by scanning a session QR code with the built-in QR scanner — the device calculates the amount due through the Metrici API, and the driver completes the payment from their own phone by scanning a second QR code shown on the screen. Payment is handled by Stripe, so the kiosk does not contain a card reader, cash slot, or any other on-device payment hardware.

The terminal communicates with the Metrici cloud or on-premise web application through two unique credentials: a Location Key that identifies the parking lot, and an API Key that authorises the terminal to talk to the server. Once configured, the device operates fully autonomously and only needs a single Ethernet cable for both data and power.

Key features:

Technical Data

SpecificationDetails
DescriptionUnattended parking payment kiosk with built-in QR scanner
Display1920 × 1200 capacitive touchscreen (16:10)
InputTouchscreen + integrated QR / barcode scanner
PaymentStripe checkout via user's mobile phone (Card, Apple Pay, Google Pay, Link, Klarna)
On-device payment hardwareNone — no card reader, no cash slot
Connectivity1 Ethernet port (RJ45, Cat6A compatible)
PowerPoE+ (IEEE 802.3at), 48 V DC over Ethernet, ≤ 25.5 W
Front face dimensions302 mm × 292 mm × 150 mm depth
LanguagesEnglish, Romanian, Bulgarian, Hungarian, Polish, Serbian, Ukrainian, Turkish, Croatian, French, Italian, Spanish, Portuguese, German, Dutch
Software CompatibilityMetrici Web Application with Parking Module license
InterfaceTouchscreen for end users, admin configuration panel for installers
Weight3.5 KG
Mechanical drawing of the Metrici Payment Terminal showing front, side and bottom views with overall dimensions of 302 × 292 mm and 150 mm depth.
Fig.1 Mechanical Drawing — Dimensions

2. First Boot & Network Configuration

The Metrici Payment Terminal is powered via PoE+ (Power over Ethernet Plus). Connect a single Ethernet cable from a PoE+ switch or PoE+ injector to the device's Ethernet port. This cable provides both network connectivity and electrical power — no separate power adapter is needed.

Note: The network switch or injector must support at least PoE+ (IEEE 802.3at). Standard PoE (802.3af) is not sufficient — the terminal requires PoE+ as a minimum due to the power demands of the 1920 × 1200 touchscreen and the QR scanner. The Ethernet port supports Cat6A cables but is backward compatible with Cat5e and Cat6.

After powering on, the terminal boots into the language selection screen within 30 seconds. Before the terminal can quote amounts or accept payments, an installer must access the admin menu to configure the Application Settings (Location Key, API URL, API Key) and verify the Network Settings.

The factory-default network configuration is Static IP at:

http://192.168.100.102

Note: The terminal must be on the same network as the Metrici server, or the server must be reachable via the internet. Without a valid network connection, the terminal cannot query parking fees or confirm payments.

3. Admin Menu

There are two ways to reach the admin menu — directly on the touchscreen, or from a browser on the same network. Both routes land on the same login page and use the same default password "metriciadmin" — see Fig.2 Admin Login.

On the terminal touchscreen

Tap the top-centre of the screen 8 times in a row (around the logo on the language selection menu) — see Fig.9 Language Selection (1) The gesture is intentionally hidden so that the public cannot stumble into the configuration screens. After the eighth tap the login page opens.

From a browser

Open a browser on any computer or phone connected to the same local network as the terminal and navigate to the terminal's IP address — by factory default this is http://192.168.100.102. The same login page appears. If the page does not load, the device's IP has probably been changed during installation. To find the current value, walk up to the terminal, enter the admin menu via the 8-tap gesture, and open the Network Settings tab — the live IP is shown in the read-only strip at the top.

Admin Password modal with a password input field, an Exit button (red) and an Enter button (green).
Fig.2 Admin Login
Important! We strongly recommend changing the default password (metriciadmin) immediately after the first login — see Admin Settings. Anyone with eight taps' worth of patience could otherwise get into the configuration.
Do not lose the new password! There is no on-device reset and no recovery procedure. If the password is forgotten, the terminal has to be physically returned to Metrici so we can re-flash it. Write it down somewhere safe before you change it.

Once authenticated, the operator lands on the Configuration panel. It has three tabs: Admin Settings, Application Settings, and Network Settings. After making any changes, click the green Save button to apply. Click the red Exit button to return to the public flow.

3.1 Admin Settings

The Admin Settings tab holds the security-related options — see Fig.3 Admin Settings.

Admin Settings tab with two fields: 'New Admin Password' (placeholder Leave empty to keep current) and 'Restart Delay (seconds)' set to 60. Exit and Save buttons are at the top.
Fig.3 Admin Settings
FieldDescription
New Admin PasswordEnter a new password to replace the current one. Leave empty to keep the existing password.
Restart Delay (seconds)How long the terminal waits on an idle screen before automatically resetting back to the language selection. The purpose is to recover from abandoned sessions — if a user starts a payment and then walks away (or leaves mid-flow without tapping Cancel), the kiosk clears itself after this delay so the next driver sees a fresh welcome screen instead of someone else's half-typed plate or invoice form. Default is 60 seconds.
Important! Be sure to remember the new password — if it is lost, there is no way to reset it on the device. The terminal has to be physically sent back to Metrici for a re-flash to recover access.

3.2 Application Settings

The Application Settings tab is where the terminal is linked to a specific parking location on the Metrici server — see Fig.4 Application Settings.

Application Settings tab with three input fields side by side: Location Key (showing a long hex string starting 2792d92f1...), API URL (https://devn.metrici.ro/api, with the helper text 'Base URL for payment terminal API calls (step 3/5/6)') and API Key (WX72W38M). Exit and Save buttons sit at the top.
Fig.4 Application Settings
FieldDescription
Location KeyA 32-character hex string that uniquely identifies this parking lot on the Metrici server. Copy it from the web app's Parking Settings page — see API Key & Location Key.
Example: 2792d92f10111fa0f8b608f3b1e57d63
API URLThe base URL of the Metrici server's API. The terminal calls this URL when it needs to look up an amount, create a Stripe checkout, and verify a payment. Replace it with the address or IP of your own Metrici server.
Example: https://devn.metrici.ro/api_v2/lpr/parking
API KeyA short alphanumeric token that authenticates this terminal to the server. The API Key is global to the web application — the same value is reused on every Metrici device that talks to the same server.
Example: WX72W38M
Important! All three fields must be configured for the terminal to function. If the Location Key is wrong, the server will reject the request. If the API URL is unreachable, the terminal cannot retrieve pricing or confirm payments. If the API Key is invalid, every request will return 401 Unauthorized.
Recommendation: The first time you deploy a Metrici parking system, log in to the web app and click Renew API key once — this rotates the value away from any factory default. Copy the new value into the terminal's Application Settings and keep it; every additional terminal you install in the future should reuse the same API key. You only need to renew it again if you suspect it has been leaked.

3.3 Network Settings

The Network Settings tab configures how the device connects to the local network — see Fig.5 Network Settings.

Network Settings tab showing the current live interface details (eth0, IP 192.168.100.102/255.255.255.0, Gateway 192.168.100.1, DNS 192.168.100.1, MAC 88:A2:9E:4F:03:01), a Mode selector with Static IP / DHCP radio buttons, and editable fields for IP Address, Netmask, Gateway, and DNS Servers, plus an 'Apply Network Settings' button.
Fig.5 Network Settings

The top strip is a read-only summary of the live interface: name (always eth0), current IP and netmask, default gateway, DNS server, and MAC address. The bottom half lets the installer change those values. The settings must match the local network at the parking location.

FieldDescription
ModeStatic IP (recommended) lets you assign IP, Netmask, Gateway, and DNS manually. DHCP lets the router assign the address automatically.
IP AddressThe device's unique address on the local network. Must not collide with any other device on the same subnet. e.g. 192.168.100.102.
NetmaskDefines the local network range. With 255.255.255.0 the device can reach any address from 192.168.100.1 to 192.168.100.254 directly.
GatewayThe router's IP address. The terminal uses this to reach the internet — specifically the Metrici API and Stripe. e.g. 192.168.100.1.
DNS ServersComma-separated list of DNS servers. Usually the same address as the gateway. Without working DNS, the terminal cannot find Metrici or Stripe by name.

After editing the fields, click Apply Network Settings. The device reconfigures the interface and the new values become live almost immediately.

Attention! Changing the IP address may disconnect any browser session you have open against the terminal. If you are configuring the device remotely, reconnect at the new IP after applying.

4. Web Application Integration

The Payment Terminal works in conjunction with the Metrici Web Application's Parking Module. The following must be configured on the server side for the terminal to function correctly.

4.1 Parking Module Setup

Before the terminal can quote an amount, the parking location must be fully set up in the web app. Open Parking for LPR → Settings for the relevant location and make sure the items below are configured. The detailed documentation lives in the Parking for LPR section of the web interface manual.

  1. At least one camera must be configured as type License Plate Recognition — Parking under Global Settings → Locations & Cameras.
  2. A valid Metrici license with Parking Module support must be active.
  3. Parking Spaces must be defined — the total number of available spaces in the location.
  4. Parking Prices must be configured — at least one pricing rule (hourly, half-hour, or one-time) — see Parking Prices.
  5. Cash Register — at least one cash register named Cloud (or similar) must exist on the location — see Cash Register.
  6. Optionally, Grace minutes after payment can be set to define a free-exit window after a successful payment.

4.2 API Key & Location Key

The Application Settings on the terminal (section 3.2) need two values that come from the web application: the global API Key and the per-location Location Key.

Server API Key

The API Key is server-wide, not per-location. Find it in Global settings → Application settings in the web application — see Fig.6 Server API Key.

Global Settings → Application Settings page showing rows for Owner's name (Metrici), From e-mail address, Outgoing mail server, API key (WX72W38M) with a red Renew api key button next to it, Use API key (enabled), and Server address (https://dev2.metrici.ro).
Fig.6 Server API Key

Make sure Use API key is enabled (green tick). The API key field shows the current value; the red Renew api key button rotates the value to a new random token.

Important! Renewing the API key invalidates the previous one immediately. Every terminal and integration that uses the old key will stop working until you update them with the new value. Renew once right after first installation, then leave it stable.

Location Key

If you have purchased the Metrici Cloud solution, you have access to the Location Key and the Cloud API URL for online payments.

The Key lives at the bottom of the location's Parking Settings table — see Fig.7 Location Key. Open the parking location in the web app and scroll to the row labelled Location Key. Same for Cloud API URL.

Parking Settings page in the web application showing many parking parameters including Currency: RON and a long hex Location Key (2792d92f10111fa0f8b608f3b1e57d63), with Cloud API URL https://pay.metrici.ro/api/v1 just below.
Fig.7 Location Key on the Server

Copy the full hex string (32 characters) and paste it into the terminal's Application Settings → Location Key field.

4.3 Cash Register

Each Payment Terminal must be linked to a Cash Register in the Metrici Web Interface. The Cash Register defines what appears on the receipt and how long receipts remain valid — see Fig.8 Cash Registers & Prices.

Web application Settings page for a parking location showing the Cash Registers table (Cloud / Plata parcare / Receipt expire 0) and the Parking prices table (1 ora / 5 / Hourly price / All the time).
Fig.8 Cash Registers & Parking Prices

To create a Cash Register, go to the Parking Module in the Web Interface and click Add new cash register. Fill in the following:

4.4 Parking Prices

Parking prices are configured in the Metrici Web Interface under the Parking Module — see again Fig.8 Cash Registers & Prices. You can define as many pricing rules as needed:

Price TypeDescription
HourlyCharges the set amount for each hour of stay.
Half-hourCharges the set amount for each half-hour of stay.
One-timeA fixed flat fee regardless of how long the vehicle stays.

Each price can be assigned to a specific timetable, allowing differentiated pricing for weekdays vs. weekends, daytime vs. overnight, or any other time-based structure.

Tip: If your parking facility uses different rates at different times, first create timetables in Global Settings → Time Tables, then assign each parking price to the appropriate timetable. The system automatically applies the correct rate based on the time of entry and duration of stay.

5. User Flow

This section describes what a driver sees and does when they walk up to the terminal to pay for parking. The entire flow is a guided sequence of full-screen pages on the touchscreen, designed so that anyone can complete payment in well under a minute.

5.1 Language & GDPR Consent

The first screen displayed to the driver is the language selector menu — see Fig.9 Language Selection. 15 languages are bundled by default. The currently active language is highlighted with a white border.

Welcome screen with 15 language tiles arranged in a grid: English, Romanian, Bulgarian, Hungarian, Polish, Serbian, Ukrainian, Turkish, Croatian, French, Italian, Spanish, Portuguese, German, Dutch.
Fig.9 Language Selection

After the language is chosen, the GDPR consent notice appears — see Fig.10 GDPR Consent. Because the terminal handles personal data (license plate, optional phone and email for the invoice, and payment details through Stripe), the user must accept this notice before proceeding.

GDPR Consent Notice modal listing the categories of personal data collected (license plate, email, phone, payment details) and the purposes of processing, with I Decline and I Accept buttons.
Fig.10 GDPR Consent
Note: Selecting a language only changes the current session. After the terminal returns to the idle screen, it will display the default language again until another user selects something else.

5.2 Plate / Code Input

Next the user identifies their parking session. There are two ways to do this — see Fig.11 Plate / Code Input.

Plate entry screen with an input field (placeholder AB1234 or #XXXXX), a blue Scan QR Code button to the right, and a full QWERTY on-screen keyboard with numeric keys.
Fig.11 Plate / Code Input
MethodHowWhen to use
Type the plate Use the on-screen QWERTY + numeric keyboard. The field accepts a license plate in the format AB1234. The × key clears the field; the ⌫ key deletes one character. Standard option — works at every Metrici parking location.
Scan QR Code Tap the blue Scan QR Code button and hold the QR in front of the built-in scanner. If the parking is equipped with a Metrici Access Terminal at the entry, that device issues a QR code and a session code (#XXXXX) the driver can use here. Availability depends on the site. Only at parkings with a Metrici Access Terminal installed.

Once the plate or code is in the field, the user taps Confirm Plate Number or Code. The terminal sends the value to the Metrici server, which looks up the vehicle in the parking database and returns the calculated fee. The Cancel button returns to the language screen at any time.

5.3 Payment Amount

After the server responds, the terminal displays the amount due — see Fig.12 Payment Amount.

Payment Amount screen showing the recognised plate B200AAA in a license-plate-style frame, the amount due (5.00 RON in green) and the parking duration (35 minutes), with Back, Cancel, and Accept & Pay buttons.
Fig.12 Payment Amount

The screen shows three pieces of information:

The driver has the following options:

5.4 Invoice Details

Romanian and EU law allows the user to request a fiscal invoice. Before showing the payment QR, the terminal asks "Do you need an invoice?" — see Fig.13 Invoice Prompt.

Modal dialogue asking 'Do you need an invoice?' with No and Yes buttons. Back and Cancel buttons are visible below.
Fig.13 Invoice Prompt

Tapping No skips the form and jumps straight to the payment QR. Tapping Yes opens the Invoice Details form — see Fig.14 Invoice Details.

Invoice Details form with three input fields (VAT ID, Phone, Email) above a touchscreen QWERTY keyboard that also includes the @ and . characters used for typing email addresses.
Fig.14 Invoice Details
FieldRequiredUsed for
VAT IDYesThe fiscal identifier of the company being invoiced (used to issue a B2B invoice).
PhoneOptionalFor sending the invoice link via SMS.
EmailOptionalFor emailing the invoice PDF.

The keyboard automatically includes @ and . to make typing email addresses easy. After filling in the form, tap Submit. Back returns to the invoice prompt; Cancel abandons the session.

Note: Invoices are issued by the Metrici server, not by the terminal. The kiosk only collects the details and forwards them with the payment request.

5.5 Payment QR & Receipt

The terminal now displays the on-screen payment QR code that the user must scan with their phone to complete the transaction — see Fig.15 Payment Required.

Payment Required screen showing the plate B200AAA, the amount 5.00 RON, a 'Waiting for payment...' badge in amber, and a large QR code on the right labelled 'Scan with your phone to pay'. A red Cancel button is at the bottom.
Fig.15 Payment Required

The user opens any QR scanner (most phones do this directly from the camera app) and points it at the QR code. Their phone opens the Stripe-hosted checkout in a mobile browser — see Fig.16 Stripe Checkout.

Stripe-hosted checkout page on a mobile phone showing the merchant 'METRICI AI SOLUTIONS SRL sand...', the line item 'Parking Fee - B200AAA' priced at RON 5.00, quick-pay buttons for Apple Pay, Link, and Klarna, an email field, and a Payment method list with Card, Apple Pay, and Klarna options. A blue Pay button is visible at the bottom.
Fig.16 Stripe Checkout (User's Phone)

The user can pay using any method offered by Stripe — typically Card, Apple Pay, Google Pay, Link, or Klarna depending on the country and device. The terminal screen shows the badge Waiting for payment... and polls the server in the background until the transaction is confirmed.

Note: The terminal itself never sees the user's card data. Card collection, 3-D Secure, and settlement are all handled by Stripe; the terminal only receives a success or failure notification.

As soon as Stripe confirms the payment, both the terminal and the user's phone are updated. On the terminal, a confirmation screen appears — see Fig.17 Payment Successful.

Terminal confirmation screen with a green check mark next to 'Payment Successful', a summary card showing Plate Number or Code: B200AAA and Amount Paid: 5.00 RON, an orange message 'You can leave the parking without additional charge until: 15:14', and a green New Payment button.
Fig.17 Payment Successful — Terminal

The terminal shows the plate, the amount charged, and a grace period message in orange ("You can leave the parking without additional charge until: HH:MM"). The length of the grace period is set by the parking operator in the web application (Grace minutes after payment) — see Parking Module Setup. A New Payment button resets the kiosk for the next driver; the screen also auto-returns to the language selector after the Restart Delay.

On the user's phone, the receipt looks like Fig.18 Receipt on Phone.

Mobile receipt page titled 'Plata Reusita' with a green check mark, showing Parking: LOCATIE TEST, Date and time of payment: 25/05/2026 14:54, Amount: 5.00 RON, a large exit QR code, the Session Code (Cod Sesiune) 22006070 and Payment Code (Cod Plata) 58321670. A purple 'Salveaza tichetul' button saves the ticket.
Fig.18 Receipt on Phone

The mobile receipt contains the location, date and time of payment, the amount, the session code, the payment code, and a QR code that the user can present at the exit barrier. The Salveaza tichetul button saves the receipt to the phone for later reference.

6. Troubleshooting

The screen is dark / the device does not boot

Plate is recognised but the terminal says no active session

Amount displayed is incorrect

I forgot the admin password

The browser cannot open http://192.168.100.102