Ownware
Field, stock & service · v1.0.0

WarrantoraSelf-Hosted Warranty & RMA Register: Expiry and Claims

Self-hosted warranty register: what you sold, when the cover ends, and every claim with the reason for each decision — computed, never stale.

Two licences, one payment each — yours forever, no subscription. Running your own business on one site? The Single licence. Building for other people, or a second domain? Extended. Buy Warrantora — $79.00 once → Which licence do I need? → Try the live demo ↗

No sign-up, no password — the demo opens already signed in, on sample data.

The problem it solves

Warranty is one of the few records a small business is asked to produce under pressure — by a customer who is annoyed, or a supplier who would rather not pay. The answer has to be exact, and it has to still be defensible six months later.

  • The register is usually a spreadsheet with an expiry column somebody typed, which stops being true the first time a sale date is corrected
  • Claims get decided in email, so the reason a claim was rejected exists only in somebody's memory
  • Software that does this properly is priced for manufacturers processing thousands of claims a month; the cheapest price published anywhere in the category is $549/mo

What you get

Expiry is computed, never stored

There is no expiry column on an item and no endpoint that accepts one. Cover is worked out from the sale date and the term every time it is asked. Correct a sale date and every date that depends on it corrects itself.

Month arithmetic that does not drift

31 August plus six months is 28 February, not 3 March — the customer does not get three extra days because the calendar is awkward. Twelve fixtures cover the short-month, leap-year and year-boundary edges.

The expiry dashboard

What lapses in 30, 60 and 90 days, and which claims are sitting unassessed — the two questions that actually need answering before the month ends.

Claims with a reason at every step

Raised, assessed, approved or rejected, resolved. Assess, approve and reject all refuse to save without a written reason — on the form, through the API and through an AI tool alike. A rejection with nothing written on it is the record that cannot be defended later.

In-warranty is frozen when the claim is raised

A claim raised inside the term stays inside the term however long the assessment takes. Deciding it against today's date would make being slow a way of rejecting claims.

RMA tracking

Issued, on its way back, received, closed — with a reference number allocated under a real write lock, so two people saving at the same moment cannot take the same one.

Evidence on the claim

Photographs and documents attached to the claim, byte-sniffed on upload so a file that claims to be a photo has to be one.

Exports that leave the building

A claims CSV, a register CSV, and a warranty certificate PDF per item — the document a customer actually asks for.

Own It 3.0 — works for your AI, not just for you

Seven MCP tools, every one carrying its own read-only annotation. An agent can look up cover, list what is expiring and raise a claim; voiding a registration, deleting anything and editing the warranty terms are deliberately not exposed — the last because it silently re-dates every item on the term.

  • MCP endpoint with read-only or full API keys
  • Approving or rejecting additionally requires an administrator key
  • Append-only audit trail across browser, API and agent
  • Your logo and colours on the certificate
  • Scheduled backups with a guided dry-run restore
  • Optional single sign-on (OIDC)
Own It 3.1 — it writes to the people you serve

The 3.1 wave gave the catalogue a way to reach the other side of the transaction: counterparty email through your own SMTP server, calendar feeds your own calendar subscribes to, attachments filed where the paperwork belongs, and export presets other people's software imports. Every outbound path ships switched off, runs on your own credentials, and can never break the thing that triggered it. This app gained no new outbound path in 3.1 — its pass rewrote the honest-limitations list against the shipped code instead, which is the more useful change when the product was already complete.

See it running — right now, on sample data

No sign-up, no password — it opens already signed in, and resets itself. Click around freely.

Open the live demo

Is Warrantora right for you?

Before the price, not after it: what Warrantora deliberately does not do. We publish this on every product because the wrong purchase costs you more than the price.

  • One business per installation.
  • No customer-facing anything. No portal, no emails, no self-service claim form.
  • Editing a warranty term re-dates every item registered under it.
  • An item with no sale date has no expiry and is reported as unknown. The product will not guess.
  • A claim's in-warranty flag is frozen when it is raised. Correcting the sale date later does not move it — which means a data-entry error found late needs the claim raising again.
  • No approval workflow beyond one decision. No multi-signature chain, no escalation, no SLA timer.
  • No money. Not the purchase price, not the repair cost, not a refund amount.
  • Evidence is stored unencrypted on your disk, behind the login. The backup export covers the database, not the uploaded files.
  • English only.

Still the right fit? See the price → · Not sure — see who should stay with the SaaS →

Pricing — one-time, yours forever

Single licence One business, running it on one site. $79.00 Version 1.0.0 · instant download · license key included One (1) domain or subdomain What this licence covers → Buy now
Extended licence Agencies, and anyone running it on more than one site. $179.00 Version 1.0.0 · instant download · license key included Unlimited sites you own or operate What this licence covers → Buy now
  • ✔ Full source included — PHP you can read and change
  • ✔ No subscription. One payment, yours forever
  • ✔ It never phones home
  • ✔ Your data stays on your server
  • ✔ 14-day refunds — we’d rather refund than argue
  • ✔ Offline test suite in the box — run it before you rely on it
  • ✔ If we ever stop: after 1 year the domain limit lifts, after 3 years your copy relicenses to MIT — it’s in the licence

Not ready to own it? Ownware Cloud runs selected apps from $12/month — and after 12 paid months the perpetual self-host licence is yours.

Read before you buy — what the zip looks like inside
warrantora/
  README.md · QUICKSTART.txt · LICENSE.txt
  app/
    index.php · router.php · config.sample.php · Dockerfile
    src/          the classes — plain PHP 8, no framework, no Composer
    controllers/  every route handler
    views/        every screen
    tests/        the offline test suite — run it yourself: php tests/run.php
    bin/          packaging · seeding · maintenance scripts
    API.md        the REST + webhook + MCP reference

Nothing is obfuscated or encoded. What you read is what runs.

What the same job costs rented

Every figure is read from the vendor’s own pricing page and carries the date it was read.

WarrantyHub

Essentials $549/mo (up to ~1,000 claims); Professional $849/mo (up to ~2,000 claims); Enterprise quote-gated

1 month of WarrantyHub equals the one-time $79.00.

Source, read 2026-08-22 →
Claimlane

Core $800/month, billed annually, including 2,000 tickets a year; Custom is quote-gated

1 month of Claimlane equals the one-time $79.00.

Source, read 2026-08-22 →

The full table — every competitor, what each does better than us, and who should stay with them: Warrantora vs renting →

Which licence do I need?

It comes down to how many installations you need. Running your own business on one site is the Single licence. Building or running sites for other people — a second domain of your own, or an installation a client keeps — is the Extended licence.

Single licence

One (1) domain or subdomain

One business, running it on one site.

  • Install it on one domain or subdomain you own or operate
  • Change the source however you like for that installation
  • Run your own business on it commercially, client work included
  • Re-download the current build any time from your buyer portal
  • A second site, or an installation you hand to a client as theirs, needs the Extended licence
  • No reselling, redistributing or sublicensing the source
  • Not for offering it to other people as a hosted service
$79.00 — buy this one →

Extended licence

Unlimited sites you own or operate

Agencies, and anyone running it on more than one site.

  • Everything the Single licence grants
  • Install it on as many domains as you own or operate — no cap on the number
  • Build and hand over one installation per client project
  • Still no reselling or redistributing the source itself
  • Running it as a multi-tenant service others sign up for needs a SaaS agreement
$179.00 — buy this one →

Every download carries the full terms as LICENSE.txt, and the licence you bought is named on your order and in your buyer portal. The complete wording lives on the terms page, and the live demo is free for as long as it takes to decide.

No reviews yet — so here is what we offer instead. Every competitor price on our comparison pages is source-linked and dated, and when a vendor’s price won’t load we say so rather than guess. See the sources for yourself →

After you buy

The four things people ask right before they decide.

Updates

Your download link always serves the current build at the time you fetch it — re-download any time from your order page or the buyer portal. No renewal fee to keep what you bought.

Help

Email support for installation and for defects in the code as delivered — a person answers, usually within a day or two. It does not cover custom development or server administration. What support covers →

If it isn’t right

Refunds are handled by Lemon Squeezy as Merchant of Record, case by case — if something is broken and we can’t fix it, we’d rather refund than argue. EU consumers additionally hold the statutory 14-day right until delivery starts. Refund terms →

If we disappear

Nothing stops. You hold the full PHP source, it runs on your own server, and the software does not phone home — there is no licence check that can fail and no cloud that can be switched off. LICENSE.txt ships inside the zip, so your right to keep running it never depended on this site existing.

Covered in these guides

Your Warranty Spreadsheet Has an Expiry Column — and That Is the Bug

Why a stored warranty expiry is wrong the first time somebody corrects a sale date, the month-arithmetic trap that quietly gives customers three extra days, which day "in warranty" should be measured against, and what this software costs — two live prices, read 22 August 2026.

Questions about Warrantora

Why not just store the expiry date?

Because it goes stale the moment somebody corrects a sale date or edits a term, and a register whose expiry column disagrees with its own inputs is worse than no register — it is a register that will be quoted at somebody in a dispute. Warrantora computes it instead. The cost is stated plainly: editing a term re-dates every item on it, and the terms page tells you how many that is before you do it.

What happens to a claim if I fix the sale date afterwards?

Nothing. The in-warranty answer is frozen at the date the claim was raised, on purpose. Which means a data-entry error found late needs the claim raising again — that is in the honest-limitations list, not hidden.

Does it handle money?

No. Not the purchase price, not the repair cost, not a refund amount. It is a register and a claim record, and it says so.

Will this run on shared hosting?

Yes. PHP 8+ with PDO, MySQL or SQLite. 24 checks run against MariaDB in strict mode, including the computed expiry coming out identical on both drivers.

Is there a customer portal?

No. No portal, no emails, no self-service claim form. It is the internal register; the certificate PDF is what goes out.

More from this store

Affiliate program
Recommend tools people own — earn 35% on every sale. 90-day tracking, instant delivery, payouts by Lemon Squeezy.
Become an affiliate →