Use case · worked example

The charger called it in.

When a public charger fails, it already tells its operator. Teleport turns that fault into a repair, from a $5 look by a driver nearby up to a licensed electrician, and the charger's own reports become the proof it's fixed: back online, charging, and still working three days later.

A charger that orders its own repairA charging site from above with four chargers. Charger C2's light turns to fault. The back-office tries a remote reset; nothing changes. C2 posts a repair task for a licensed electrician only. A technician walks from a service van, opens the panel and closes it again. C2 reports available, and a test session delivers 1.2 kilowatt-hours. Four checks tick: online, at least one kilowatt-hour, technician on site, left safe. The fifth, 72 hours with no repeat fault, stays pending. Verified, and a receipt prints: 80 percent paid now, 20 percent after 72 hours.C1C3C4C2 · AVAILABLEC2 · FAULTEDRESET · NO CHANGEBACK-OFFICEOCPP · SITE 44REPAIR · C2LICENSED ONLY$220 · EXAMPLETEST SESSION1.2 KWH≥ 1.0CHECKSONLINE≥ 1 KWHON SITELEFT SAFE72 H · HELDVERIFIEDPAID 80% NOW20% AFTER 72 H
Example · fictional operator · prices illustrative
§ 01

It's broken. It already knows.

Public chargers report faults to their operator over OCPP, the protocol between a charger and its back-office. Teleport turns that report into a job, and the charger's next reports into the proof.

Who asks
The charger itself, through its operator's back-office, under a mandate. The operator answers for every task it posts.
Who does it
A driver nearby, for a $5 look. The operator's licensed contractor, for the repair. Nobody else goes near the high-voltage side.
Evidence
Mostly the charger's own reports: back to Available, energy delivered, no repeat fault. Plus the technician's photos.
Who pays
The operator, from a budget per fault. $5 a look, $220 a repair. Example figures.
You get
One receipt per fault: what broke, who fixed it, and proof it's charging again.
Example · photo to come

The charger knows it's broken before anyone else does. It also knows when it's fixed.

The short version

Almost none of this needs a model's judgement. The charger reports its own status and its own meter readings; one photo question asks whether it was left safe.

Drive past chargers that are down? Join the contributor waitlist

Voltway, site 44 and Sparkfield are fictional. Prices are illustrative.

§ 02

Cheapest fix first.

Each step is a task, or no task at all, posted only because the one before didn't work. Most faults never reach an electrician. This one did, and the climb stopped there.

SPEND ↑SWAP UNITNOT NEEDED$4,000+RESETSTILL DOWN$0$5 LOOKNO DAMAGE$5TRIAGELOCK FAULT$5REPAIRFIXED$225
  1. 00

    Remote reset

    The back-office restarts the charger. If it comes back, no task is posted at all.

  2. 01

    $5 look

    A driver nearby photographs the screen, the cable and the connector, and says if the bay is blocked. Look, don't touch.

  3. 02

    Triage

    Fault code plus photos: a cable not seated, visible damage, or something inside the cabinet.

  4. 03

    Licensed repair

    The operator's contractor, with the likely part. If the part has to come first, its delivery is a linked task.

  5. 04

    Self-verify

    Back to Available, a test session past 1 kWh, the closed panel photographed.

  6. 05

    Hold, then release

    80% paid on accept. The last 20% after 72 hours without the same fault.

Each step is created by the outcome of the one before, all in one workflow per connector.

§ 03

The charger proves its own repair.

Four of the five checks read the charger's own reports or the technician's location. One question goes to a model: was it left safe? A versioned policy, not the model, makes the decision.

CONNECTOROCPP STATUSFAULTED 06:12AVAILABLE 11:40TEST SESSIONMETER VALUES01.0 KWH1.2 DELIVEREDNO REPEATSAME FAULT CODE0 H24 H48 H72 H20% RELEASED
CheckHowByResult
Back onlineThe charger's own status reports: connector Faulted, then Available.RulePassed
Actually chargesA test session Teleport starts delivers at least 1 kWh, read from the meter. Signed meter data where the hardware has it.RulePassed
Technician was thereThe tech app's GPS, and the charger's QR code scanned at the start and at the end.RulePassed
Left safeOne photo question: panel closed, cable holstered, no damage or exposed wiring?ModelPassed
Fix lastedNo repeat of the same fault code for 72 hours.RulePassed

Every piece of required evidence comes from the charger itself or from Teleport's own capture, so the proof can reach the top assurance level.

§ 04 · High voltage

Drivers look. Licensed hands fix.

A DC fast charger runs at voltages that kill. The repair task can't reach anyone without a checked licence. Not unlikely: impossible, by the operator's mandate and by Teleport's safety policy.

REPAIR · C2HIGH VOLTAGELICENCE REQUIREDNEARBY DRIVERLOOK TASKS ONLYSELF-DECLAREDNO CHECKED LICENCESPARKFIELD TECHLICENCE · CA · CHECKED
Mandate · Voltway self-serviceActive · v4
Who posts
Each charger, signed with its own key
Look tasks
Onboarded drivers nearby. Photos only, no tools, no panels.
Repairs
Sparkfield's licensed electricians, DC fast-charger certified
Fallback
Marketplace electricians with a licence checked for this state
Budget
Up to $600 per fault
Never
High-voltage work routed to anyone without a checked licence

Checked when the task is posted and again at matching. Its hash goes into every proof.

§ 05

What needs care.

Lethal voltages, a payer that owns the source of the evidence, and hardware that drops out and comes back. Without these, it's an automated way to send the wrong person.

  • Licensed hands only

    Fast chargers run at voltages that kill. A repair task can't reach anyone without a checked licence, and drivers get look tasks only. The app says so in plain words.

  • The payer owns the meter

    The operator runs the charger and the back-office. Signed telemetry, a test session Teleport starts, and the technician's own photos make “fixed” hard to fake either way.

  • Chargers flap

    They drop out and come back. A fault has to last 10 minutes and survive a remote reset before anything is posted, and each connector gets one open workflow.

  • Blocked isn't broken

    A petrol car in the bay looks like a charger nobody uses. The $5 look tells them apart, so an electrician isn't sent to a parking problem.

  • Warranty rules

    Some hardware has to be serviced by the maker's certified techs or the warranty goes. That's a capability on the task, not something the technician has to remember.

  • A new fault is a new task

    If C2 fails again with a different code after the fix, that's a new job, not a clawback. The holdback only covers the fault that was fixed.

§ 06

Fixed, and still fixed three days later.

The technician is paid 80% when the repair is accepted. The other 20% follows after 72 hours with no repeat of the same fault. The operator gets a record of every fault and every verified fix.

Dollars pay the technician. The proof shows the work. Nobody needs $PORT to post a repair or get paid for one.

PROOF OF PHYSICAL WORKclaim · example
VERIFIED

Task
Repair · charger C2, site 44
Requested by
Charger C2, under Voltway's mandate
Performed by
Human · licensed electrician
Licence
Checked · California, valid
Evidence
Charger telemetry + tech capture
Test session
1.2 kWh delivered
Policy
evse-repair v1.0
Decision
Accepted
Paid
$176 on accept · $44 after 72 h

STATUS: FINAL

Telemetry: hashes on-chain. The raw logs stay with the operator.

Example receipt. Fictional operator; amounts illustrative.
§ 07

For builders.

A DEVICE requester, a ROBOT_EXCEPTION trigger, a REPAIR through a DIRECT contractor, a TRANSITION from Faulted to Available, and evidence that is almost all ATTESTED_DEVICE.

PhysicalTaskSpec · the repairTAP v0.2 · preview, subject to change
{
  "schema": "teleport.tap.physical-task",
  "version": "0.2.0",
  "title": "Repair charger C2 at site 44 — connector lock failure",
  "category": "REPAIR",
  "requester": {
    "requesterType": "DEVICE",
    "principal": { "principalType": "ORGANIZATION" },
    "mandateId": "mdt_voltway_selfservice_v4",
    "authentication": { "method": "DEVICE_ATTESTATION" }
  },
  "trigger": { "type": "ROBOT_EXCEPTION", "sourceRef": "ocpp:site44:C2:connector1" },
  "fulfillment": {
    "mode": "DIRECT",
    "designatedPerformers": [{ "fleetId": "contractor_sparkfield_techs", "actorType": "HUMAN" }]
  },
  "relations": {
    "workflowId": "wf_site44_c2_fault",
    "followUpOf": "task_site44_c2_look"
  },
  "actorRequirement": {
    "permittedActorTypes": ["HUMAN"],
    "requiredCapabilities": [
      { "capability": "LICENSE.ELECTRICIAN", "attributes": { "jurisdiction": "US-CA", "verified": true } },
      { "capability": "EVSE.DCFC_SERVICE" }
    ]
  },
  "completionConditions": [
    { "type": "TRANSITION", "id": "back_online", "subjectRef": "ocpp:site44:C2:connector1",
      "from": { "status": "Faulted" }, "to": { "status": "Available" },
      "verificationMethod": "DETERMINISTIC", "minimumEvidenceOrigin": "ATTESTED_DEVICE" },
    { "type": "MEASUREMENT", "id": "test_session", "metric": "energy_delivered",
      "unit": "Wh", "min": 1000, "verificationMethod": "DETERMINISTIC" },
    { "type": "SEMANTIC", "id": "left_safe",
      "question": "Is the panel closed, the cable holstered, and no damage or exposed wiring visible?",
      "verificationMethod": "JEV" },
    { "type": "DURATION", "id": "no_recurrence", "eventRef": "ocpp:fault:ConnectorLockFailure",
      "minMs": 259200000, "verificationMethod": "DETERMINISTIC" }
  ],
  "safety": { "policyId": "high-voltage-licensed-only-v1" },
  "economics": {
    "performerPayUsdCents": 22000,
    "settlementAssets": ["FIAT"],
    "requesterPayment": { "method": "MANDATE_BUDGET", "maxSpendUsdCents": 60000 }
  },
  "popw": { "required": true, "assurancePolicyId": "HIGH_ASSURANCE", "proofTiming": "WORKFLOW" },
  "timing": { "expiresInSeconds": 86400, "priority": "HIGH" }
}

Proposed additions this use case surfaced

Holdback
Pay most of it on accept and the rest when a durability condition holds: a percentage, a release condition, a window. The task is done at acceptance; the holdback has its own small state. Useful for any repair or install.
Escalation ladder
An ordered list of task templates (look, triage, repair), each one's outcome deciding the next. The same standing-order idea as a camera's watch rule or a campaign, triggered by an outcome.
Licensed capabilities
A licence with its issuer, jurisdiction, expiry and how it was checked, which matching can enforce. Safety depends on it.
Trigger adapters
Standard adapters for OCPP, building systems and robot fleet managers that turn a native fault into a TAP trigger, with the event hashed the same way every time.
Uptime proofs
A rollup per charger over time: every fault, every response, every verified fix. Uptime backed by proof instead of the operator's own report.

The awkward part in v0.2: no_recurrence keeps the whole task open for 72 hours and holds all of the pay. That's what holdback is for. Developer docs

Charge-point operators

Chargers down more often than you'd like?

Tell us about your sites and your contractors. We're working with design partners on repairs that prove themselves.