L
Som Mobilitat prototype
This demo is private. Enter the password from the onboarding page.
That password does not match. Check the onboarding page and try again.
Home

Good afternoon, Gerard.

While you were away
Zoe at 31% before the 17:00 booking · swapped to the KonaBooking Swap · Núria Soler accepted at 12:06
12:06 PM Done · auto
Low charge on 3748 KLC caught before the 16:00 bookingBooking Swap · charge task resolved itself, no swap needed
2:10 PM Done · auto
Member guided to restart the charge · booking ended normallyEnding Bookings · cable reseated at Sabadell Nord
11:30 AM Done · auto
Force-ended at 42% · next booking moved, remote charge startedEnding Bookings · the charge point supports remote start
Yesterday You approved
June driver run: 214 members tiered from the 20-car pilotBehaviour Management · warnings and blocks held for you
Monday Written up
No car free at Vic Estació · member kept the Zoe with a €10 creditBooking Swap · low tyre pressure, safe to drive · she agreed
Tuesday You approved

Support Desk

Disputed charges and billing. Advises you

New case
A late fee that shouldn't have applied · refund readyJordi Puig · booking 2047106877 · Renault Zoe
approve the reply 41 m Your call
Cleaning fee · checking the return photosAnna Bosch · booking 2049810
12 m On it
Charged more than the quotePol Camps · booking 2049777
28 m On it
Late fee on a car returned on timeCarme Font · booking 2049740
44 m On it
Charged twice for a weekend bookingMontse Roca · booking 2049921
just now On it
"Charged twice for fuel"Quim Salas · booking 2049887
4 m On it
Done today
Phantom toll charge · €8 back to the customerApproved on the call
11:20 Done
Duplicate charge · €45 refundedApproved on the call
10:52 Done
"Where's my receipt" · resent, no refund neededClosed · handled another way
10:31 Done

Licence Check

Validations and renewals. Advises you

New check
Licence won't validate · renewed card, old expiry on fileLaia Ferrer · wants the Mini on Friday
run the retest 32 m Your call
Overnight portal queue · five match the renewed-card patternSix validations · retest steps prepared
1 h On it
Checking the expiry against the renewal patternsBen R · WA licence
12 m On it
Reading the uploaded card detailsEmma S · renewal
25 m On it
Expiry check on a team-join applicationTom W · corporate team
38 m On it
Renewal photos uploadedEmma S · awaiting review
6 m On it
Done today
Cleared on the +12 months retestCallum B · booked the same morning
9:12 Done
Cleared on the +5 years retestAna P
8:40 Done
New valid-to date confirmed · clearedCustomer replied with the new card
7:55 Done
Swap ready · same slot

The 17:00 Kona swap is staged for Jordi.

Jordi's Zoe is at 31% and won't charge before his 17:00 booking. The Kona is free at the same station, same slot, two bays over. On your approval, Lanterne cancels the old booking and rebooks the Kona on Jordi's own account, then emails him the change. Nothing posts until you approve.

Low charge read from INVERS · 31%, won't make the 17:00 Kona free · same station, same slot, two bays over Rebook lands on Jordi's own TMF account Asks first · nothing changes until you approve
What changes if you approve
Old booking · Zoecancelled
New booking · Konasame 17:00 slot→ Jordi's account
Jordi paysunchanged
Draft reply · for you to relay

Hi Jordi, your Zoe at Mataró Centre wasn't going to charge in time for your 17:00, so we've moved you to the Kona at the same station, same slot, two bays over. It's on your account already, nothing for you to do. Enjoy the trip.

GTYour call, Gerard

How Lanterne got here

  1. Read the Zoe's charge from INVERS: 31%, not charging since 8:40 AM, short of the range the 17:00 booking needs.
    Checked TMF for a same-slot car: the Kona is free at Mataró Centre, two bays over, 17:00 to 20:00 clear, same tier.
    Staged the swap: cancel booking 2047106877, create the Kona booking on Jordi's own account.
    Checked the playbook: swaps ask the member first, and nothing posts until Gerard approves.
    Receipt · what Lanterne read
    Booking
    2047106877
    Car
    Zoe → Kona · same 17:00 slot
    Playbook rule
    Swaps ask the member first
  2. Making the change and messaging Jordi are yours. The swap is laid out above.
  3. Once you approve, the swap is made, the outcome is recorded with who decided, and the case closes with a receipt.
Likely fine · renewed card

Laia's card was renewed; the record on file wasn't.

Laia Ferrer's licence failed validation, and the expiry on file falls inside this month: the classic sign of a licence renewed while the old card details stayed on the account. Lanterne recommends the standard retest first. About nine in ten of these clear right here.

Licence record read Expiry falls inside this month DoT check is yours to run · Lanterne can't do the lookup
The retest · WA licences renew for 12 months or 5 years
  1. On the DoT site, test the same licence number with the expiry moved +12 months.
  2. No luck? Test it again at +5 years.
  3. One of them validates for most renewed cards; clear Laia and she can book straight away.
Draft email · only if neither retest validates

Hi Laia, we couldn't confirm your licence against the current record. If you've renewed it recently, could you send us the new valid-to date shown on your card? We'll update it and you'll be able to book right away.

GTYour call, Gerard· licences are advise-only, by the playbook.

How Lanterne got here 2 steps

  1. Picked the failed validation off the portal queue: licence number, expiry, date of birth.
    Expiry on file falls inside the current month, matching the renewed-card pattern that clears on retest ~90% of the time.
    Checked the playbook: licences are never cleared by Lanterne; the retest guidance and the customer email are prepared instead.
  2. If a retest validates, mark Laia cleared. If neither does, the drafted email asks Laia for the new valid-to date on her card.
Booking Swap

New case · a member calls

Helps to includeThe caller's nameA booking number or plateWhat they're seeing
Licence Check

New check

Helps to includeThe customer's nameThe licence numberWhat the validation said
Booked driver confirmed

Dan is the booked driver; the app lost sync with the car.

Pau Serra is standing at the Mini in Mataró Centre with an active booking, and his app won't unlock it. The failed attempts in the log fit a sync error. The lock-then-unlock reset didn't take, so the remote unlock is staged. It is sent only when you approve, and the customer is waiting with the car.

Active booking matched Lock-then-unlock walked, no luck High urgency · caller waits with the car
GTYour call, Gerard

How Lanterne got here

  1. Matched the caller to the active booking on the Mini at Mataró Centre.
    The app log shows three failed unlocks in four minutes: the sync-error signature.
    Walked the playbook reset: press Lock first, then Unlock. It didn't take.
    Receipt · what Lanterne read
    Driver
    Pau Serra · booking active now
    Vehicle
    Mini · Mataró Centre
    Playbook rule
    Approval-first · lockout, escalate if unfixed
  2. The unlock is staged, not sent. If it fails, the playbook says escalate; the case keeps its log.
Car verified in its spot

The car is in its spot and charging; TMF says it isn't.

Marc Vidal called: the app will not end his booking. The rule needs the car in its designated spot with the charging session active, and TMF thinks the Kona is not in its bay. It is: GPS puts it exactly where it should be, and the charge point reports an active session. This is the stale-state pattern, usually a backend error. Force-ending frees Marc; his confirmation is drafted.

In its bay · GPS verified Charging session active · the charge point confirms it Next booking today · 6 PM · charge covers it
Draft to the waiting driver

Hi Marc, sorted: your booking is closed as of 5:12 PM. The car was exactly where it should be, plugged in and charging; the platform just couldn't see it. Nothing more to do on your side, and no charges beyond the booking itself.

GTYour call, Gerard

How Lanterne got here

  1. Pulled Marc Vidal's booking: the ending rule needs the designated spot and an active charging session.
    Checked the car: GPS puts the Kona in its bay at Mataró Centre; TMF's parking state disagrees, which is the stale-state pattern.
    Checked the charge point: session active on that connector, charge at 64%, enough for the 6 PM booking.
    Receipt · what Lanterne read
    Booking
    Marc Vidal · called 5:04 PM
    Car state
    In its bay · charging active · 64%
    TMF state
    "Not in its bay" · stale
    Next booking
    Today 6 PM
  2. Force-ending closes Marc's booking at the verified state and frees the car for the 6 PM member. The charge stays on.
Access & Unlock

New unlock

Helps to includeThe driver's nameThe car or plateWhat the app shows
Ending Bookings

New call · a booking won't end

Helps to includeThe booking numberThe plateWhere the car was left
Lanterne

Good afternoon, Gerard.

How can I help with your fleet?

Workflows

The three routines Lanterne runs for Som. Each one carries its own playbook, and you set how far it goes: advise, ask first, or run on its own.

Logbook

Every run and every decision, with its receipt. Click a row to see exactly what was read and what was done.

Analytics

What Lanterne is carrying for Som. June, month to date.

38 hof coordination savedswaps, endings and the pilot, together
14bookings swapped before they brokeevery member accepted by email
46ending calls resolved31 guided · 11 force-ended verified · 4 remote charges
€76in tier-difference creditshigher-tier swaps · all inside the cap · 0 breaches
Runs by weekran on its ownwith your call
26 May2 Jun9 Jun16 Junthis week
RoutineRunsEnd to endMedian handle
Booking Swap1479%4 m
Ending Bookings4667%3 m
Behaviour Management1asksmonthly

End to end means no operator touch. Handle time runs from the call or the flag to the close, receipts included. Failed endings are tracked by reason on the weekly pattern.

Integrations

Lanterne plugs into what you already run. Reads flow continuously; writes go through the same gates as everything else.

T
TMFBookings, app & unlock
Connected

Bookings, members and charges through the TMF REST API, read continuously. It also maps driving events to the person and the reservation. Writes only ever go through your approval gates.

IN
INVERSThe One API
Connected

Battery, state of health, mileage, charging state, location and driving events. It's how a booking gets flagged early and a force-end gets verified.

@
EmailShared mailbox
Connected

How the member confirmations travel, and how the ops team gets notified. The swap's one-tap accept is an email.

Legacy portalsNo API needed
Browser-driven

Nothing to migrate and no API to build. Where an endpoint doesn't exist yet, Lanterne can work the same screens your team does, and every click lands in the Logbook.

The build that makes this real is the TMF and INVERS integration. That is the first job after a yes, and the honest driver of the timeline.

Booking Swap

A booking whose car won't be ready, handled end to end. Asks you first

How it runs
Watches every upcoming booking against live charge, state of health and fault signals from INVERS, and picks up member calls the same way.
Finds a nearby car with the exact same slot free, cancels the old booking, and rebooks it on the member's own account. A higher-tier replacement gets the difference credited.
Never swaps without the member's confirmation. If no comparable car is free, it offers the member the same slot on the nearest option instead of deciding for them.
Recent runs
Jordi's 17:00 Kona swap is staged · the Zoe won't charge in timesame slot, two bays over · booking 2047106877
approve the swap Your call
Zoe at 31% before the 17:00 booking · swapped to the Konaexact same slot, two bays over · Núria Soler accepted at 12:06
12:06 PM Done · asked first
No same-tier car free · Jordi moved up to the Konahigher tier · the €9 difference credited to his account
Yesterday Done · asked first
No car free at Vic Estació · member kept the Zoe with a €10 creditlow tyre pressure, safe to drive · asked first, she agreed
Tuesday You approved

Driver Categorisation & Behaviour Management

Three months of INVERS driving data, turned into a monthly tier for every member and the action that follows. Asks you first

The playbook · how we categorise
Reads the INVERS Driving Analysis summary the pilot cars already record, one per trip: heavy braking and harsh cornering per kilometre, speeding measured against the road’s real limit, any crash or shock, and the Excellent-to-Critical rating INVERS gives each trip.
Sorts each member into one of three tiers for the month, then drafts the matching action: a thank-you for the careful drivers, a drive-carefully warning for the rough ones, a temporary block and a call for the risky ones.
INVERS reports each event against the car and the time, not the person. Lanterne matches the member through TMF, by the reservation that held the car for that trip. A member needs at least 50 km logged in the month before the per-100 km rates are used.
Never warns or blocks a member on its own. Every warning and every block waits for your approval, one row at a time.
The three tiers · June
182Good
27Rough
5Risky
TierWhat we observe from INVERSMembersThe action
GoodBraking and cornering both at 2 or fewer per 100 km · no speeding · no crash · no Critical trips182Thank-you · sent automatically
RoughBraking or cornering at 3 to 7 per 100 km · 1 to 3 speeding incidents · up to two Critical trips27Drive-carefully warning · your call
RiskyBraking or cornering above 7 per 100 km · 4 or more speeding, or any incident over 20 km/h above the limit · any crash · 3 or more Critical trips5Temporary block and a call · your call

The thresholds are illustrative starting points. INVERS does not publish its own scoring formula, so Som sets the final cut points once real event volume from the pilot is in view.

Over time · the tiers are moving the right way
Members needing action, by month
Apr · 40
May · 36
Jun · 32
RoughRisky

Since May, 8 members improved a tier and 4 slipped. Rough and Risky together are down from 40 in April to 32 in June, as last month's warnings land. Good drivers rose from 174 to 182 over the same window.

A member's trajectory, month by month
Laia FerréRisky → Rough → Roughimproving after the call
Arnau GilRough → Rough → Roughsecond warning, firmer tone
Oriol SerraGood → Rough → Roughfirst warning this month
This month’s decisions · your call, row by row
182 careful driversthe Good tierGood
Thank-you message sent automatically · a small booking credit applied
182 sent · logged
Laia FerréBooking 20 Jun · 3 tripsRough
hard-braking 5.4/100km · cornering 3.1/100km · 1 speeding · 2 Critical trips of 9
Arnau GilBooking 18 Jun · 5 tripsRough
cornering 6.8/100km · hard-braking 3.0/100km · 2 speeding · second month in Rough
Pau CampsBooking 22 Jun · 4 tripsRough
hard-braking 4.7/100km · cornering 4.2/100km · 3 speeding · no Critical trips
Sergi BoschBooking 21 Jun · 6 tripsRisky
hard-braking 9.1/100km · cornering 7.9/100km · 1 speeding over 20 km/h · 3 Critical trips
Ivet RocaBooking 19 Jun · 2 tripsRisky
1 crash-shock event · hard-braking 6.2/100km · a crash escalates on its own, whatever the rest reads

Showing the top of each tier. The full list of 27 warnings and 5 blocks is in the export, and every decision you take lands in the Logbook with the events behind it.

Recent runs
June run: 214 members tiered from the 20-car pilot182 thanked · 27 warned · 5 proposed for a temporary block
Monday Written up
Pilot coverage: 20 cars, three months of driving eventsthe INVERS Driving Analysis data Som already collects, read as it lands
June Reading

Ending Bookings

Bookings that won't end: the car isn't charging, or the platform can't see it. Always starts with a member call. Asks you first

How it runs
Checks the two ending conditions first: is the car in its designated spot, and is the charging session active. Not charging: the member gets guided to restart it; where the charge point supports remote management, the charge starts remotely.
When the car can't be confirmed in its bay, because GPS drops underground or no fresh location comes through, Lanterne says so plainly instead of guessing. It lays out the circumstantial evidence: the last known position, whether the charge session is live, the member's history, and how often this bay has done this before, so your call is one click rather than a dig. A real hardware or connectivity gap is not something software can close, and it will not pretend otherwise.
After a low-charge force-end, it checks the remaining charge against the next booking and moves anything that no longer has the range. The weekly pattern is tracked by reason.
Never claims certainty it does not have, and never force-ends on its own. Whether the spot is confirmed or only circumstantial, the force-end is staged for you to send.
Recent runs
Marc Vidal can't end his booking · force-end stagedTMF says the Kona isn't in its bay; the car says otherwise
approve the force-end Your call
Member guided to restart the charge · booking ended normallycable reseated at Sabadell Nord · session came back on the first try
11:30 AM Done · auto
Force-ended at 42% · next booking moved, remote charge startedthe charge point supports remote start · the Leaf took the morning booking
Yesterday You approved
Booking force-ended after a phantom parking mismatchGPS put the Spring in its bay · backend state was stale
Yesterday You approved
11 failed endings this week · tracked by reason6 not charging · 4 not in the spot · 1 no location
This week Tracked

How Lanterne got here

New workflow

Teach Lanterne something new

Helps to includeWhat kicks it offWhat Lanterne should doWhat it must never do

Damage Triage

Return photos graded against the damage guide. Asks you first

How it runs
Every return's photos get compared with the last set on file; light wear is released and noted.
Anything that grades as real damage puts a hold on the car and drafts a quote for your call.
Never bills a customer on its own; charges always go through you.
Recent runs
Kerb rash on the front-left rim · quote drafted at €180booking 2049688 · Corolla YBC-441 · 4 photos compared
hold or release Your call
Light scuff on the rear bumper · released, noted on filebooking 2049812 · matched against the previous return's photos
4:31 AM Done · auto
Interior flagged for a clean, not damagebooking 2049694 · routed to the cleaning roster
Yesterday Done · auto
Windscreen chip matched to an existing notebooking 2049601 · on file since May, no new charge
Tuesday Done · auto

Invoice Ingest

Supplier bills parsed, matched, reconciled. Autonomous

How it runs
Reads every invoice that lands in the shared mailbox; each line is matched to bookings and the rate card.
Clean matches are posted and filed; the bookkeeper gets a weekly digest instead of a pile.
A mismatch is never guessed at. It surfaces with the exact diff and waits.
Recent runs
2 price mismatches on the March batchfuel card up 4c/L against the rate card · tyre invoice quantity off by one
6:12 AM Flagged
March batch · 38 invoices parsed, 36 posted cleanmatched to bookings and rate card v14
6:12 AM Done · auto
Rate card refreshed from Google Sheets7 supplier rates updated overnight
Monday Done · auto
February batch · 41 invoices, all cleanposted and filed, digest sent
1 Jun Done · auto