Ownership Checker
Learn how to set up and manage the Ownership Check app to facilitate secure, brand-verified ownership handshakes between item owners and potential buyers.
Ownership Check — User & Admin Guide
A friendly, plain-English manual for brand managers, marketing teams, and admins running the Ownership Check app.
What this app does
Ownership Check is a simple two-party handshake between a verifier (someone who wants to confirm a product is genuinely owned — for example, a buyer about to purchase a second-hand item) and an owner (the person registered against that product on your platform).
A typical scenario:
A buyer is about to pay for a watch listed on eBay. Before sending money, they want to be sure the seller actually owns it. They open the watch's product page, click "Request an ownership check", fill in a short form, and the real owner is notified. The owner approves the request and the buyer receives a public verification page (with a short code they can read out, a one-time URL, and an optional note from the owner) that proves the seller is genuine — at that moment in time.
It is designed for collectibles, luxury goods, second-hand marketplaces, art, watches — anywhere ownership matters and counterfeits or scams are a risk.
Who it's for
- Owners / collectors — respond to verifier requests in one click.
- Verifiers / buyers — get a trusted answer before spending money.
- You (the brand) — provide the trust layer between them, with an audit trail of every request.
Getting started
The first time you open the admin console you'll be walked through a short setup wizard. You only need to do this once per collection.
Step 1 — Open the admin console
Open your collection in the platform and launch the Ownership Check admin. You'll land on a four-tab dashboard: Overview, Requests, Listings, Settings.
Step 2 — Run the setup wizard
The wizard asks you for a handful of choices. You can change every one of them later from the Settings tab, so don't agonise over them.
| Setup question | What to enter | Recommended |
|---|---|---|
| Sender name | The name shown on emails to verifiers and owners | Your brand or collection name (2–4 words) |
| Verification page style | How the public proof page looks | Detailed (good middle ground) |
| Show owner's note | Display the optional owner-written message on the proof page | On |
| Show verifier's reason | Display why the verifier asked | On |
| Show verifier's name | Display the verifier's name on the proof page | Off (privacy) |
| Artifact lifetime (hours) | How long an approved proof stays valid | 24 |
| Request expiry (days) | How long a request waits before auto-expiring | 7 |
| Confirm-link lifetime (hours) | How long the verifier's email confirmation link works | 1 |
| Register notification topics | Sets up the four required email templates | Yes |
When you save, the app is live. Every product in the collection is immediately request-able.
The four admin tabs
Overview
A live KPI dashboard. Numbers refresh automatically every 60 seconds.
| KPI | What it tells you |
|---|---|
| Pending requests | Requests waiting for an owner to act on them right now |
| Total submitted | All-time count of verifier requests |
| Confirmation rate | Percentage of verifiers who clicked their email confirmation link |
| Approval rate | Percentage of confirmed requests that owners approved |
| Approved | Total approvals all-time |
| Declined | Total declines all-time |
| Verifications viewed | How many times public proof pages were opened |
| Total confirmed | How many requests got past the email-confirmation step |
A low confirmation rate usually means verifiers are mistyping emails or not finding the confirmation message. A low approval rate can mean owners aren't seeing notifications or are receiving suspicious-looking requests.
Requests
Your operations queue. Every proof-of-ownership request your collection has ever received lives here.
Filtering
- Search box — filter by request ID, proof ID, verifier name, or verifier email.
- Status dropdown — narrow by status.
Statuses
| Status | Meaning |
|---|---|
| Awaiting confirmation | Verifier submitted the form but hasn't clicked their email link yet |
| Pending owner | Verifier confirmed; the owner has been notified and needs to approve or decline |
| Approved | Owner approved; verifier has a working proof page |
| Declined | Owner declined the request |
| Expired | Nobody acted in time — auto-closed |
| Revoked | Owner (or you) revoked a previously-approved proof |
Inspecting a request
Click any row to open a detail panel showing:
- The verifier's name, email, and the reason they gave
- Which proof and product the request is about
- The listing URL the verifier supplied (if any), and whether it matched an owner-declared listing
- The artifacts issued (short code + expiry) if approved
- A full audit log — every state change with timestamp and actor
Revoking an approved proof
If you discover a proof was approved in error (for example the owner clicked too quickly, or you suspect fraud), open the request and click Revoke artifact. The public proof page stops working immediately and the verifier will see a "no longer valid" state.
Listings
Owners can declare upfront where their items are listed for sale (eBay, Etsy, Vinted, Depop, Facebook Marketplace, their own website, or other). When a verifier later requests an ownership check and supplies a listing URL, the app automatically checks whether it matches one the owner has registered. This helps the owner decide quickly whether the request is legitimate.
This tab lets you (the admin) manage these listings on a specific proof.
Managing listings
- Enter the Product ID and Proof ID, then click Load listings.
- The existing listings appear, each showing platform, expiry date, and a clickable URL. Expired listings are clearly badged.
- Use Add a listing to register a new one — pick a platform, paste the URL, and set an expiry date. Optional notes (e.g. "Auction ends Friday") are supported.
- Click the trash icon to remove a listing.
Settings
Edit any of the wizard answers post-launch. Changes take effect immediately for new requests.
| Section | What you can edit |
|---|---|
| Sender | Name shown on outgoing email and SMS |
| Verification page | The default look of the public proof page — and which fields it shows |
| Lifecycle defaults | Artifact, request expiry, and confirmation-link timings |
Verification page styles
| Style | Best for |
|---|---|
| Minimal | Just a verified badge and timestamp — fast and modern |
| Detailed | Item info, owner note, reason, expiry — most informative (default) |
| Certificate | A formal, printable document layout — best for high-value items |
Field toggles let you choose what the public verification page reveals. Toggle off Verifier's name if your verifiers prefer to stay private.
Lifecycle defaults
| Field | Notes |
|---|---|
| Artifact TTL (hours) | How long an approved proof remains valid. 24 is a good default; raise to 72 for slow-moving high-value sales |
| Request expiry (days) | How long a request waits for owner action before auto-expiring. 7 days is standard |
| Confirm token TTL (hours) | How long the email confirmation link stays clickable. 1 hour is typical for security |
Click Save settings at the bottom. A toast confirms success.
What verifiers experience (the public flow)
Here's exactly what someone scanning a SmartLink and requesting an ownership check sees.
- Land on the proof page — they arrive on the product's public SmartLink.
- Click "Request an ownership check" (the embedded widget — see below).
- Fill in a short form:
- Your name (required)
- Your email (required)
- Reason for the request (required, at least 8 characters — e.g. "I'm buying this on eBay and want to verify the seller")
- Listing URL (optional — but if the owner has declared listings, this becomes required and helps confirm legitimacy)
- See a "check your email" confirmation screen.
- Open the email — it contains a confirmation link valid for the time you set (default 1 hour).
- Click the link — the request flips from "Awaiting confirmation" to "Pending owner" and the owner is notified through their preferred channel.
- Wait for the owner — once approved, the verifier receives a result email containing:
- A short code (e.g.
7K9-QF2X-MN3P) they can read aloud to confirm authenticity - A one-time URL to a public verification page
- An optional signed note from the owner
- A short code (e.g.
If the verifier mistypes the URL, lets the link expire, or the owner declines, they see a clear, plain-language error and can start over.
Widgets
The app ships with one embeddable widget you can drop onto any product or proof page.
| Widget | Purpose |
|---|---|
| Request an ownership check CTA | A "Request an ownership check" button that takes the verifier into the request flow |
It comes in three sizes:
- Compact — minimal footprint, fits in sidebars or sticky bars
- Standard — default size, fits most product page layouts
- Large — expanded variant with extra context for the verifier
No extra setup needed beyond the initial wizard — the widget picks up your sender name and styling automatically.
Bulk-importing listings
If you manage many proofs and want to seed listings in bulk (for example after an auction or marketplace sync), use the CSV import on the Listings tab.
CSV template
proofId,productId,platform,url,expiresAt,note
prf_001,prod_paint_a,ebay,https://www.ebay.co.uk/itm/123456789,2026-12-31,Auction ends Friday
prf_002,prod_paint_a,etsy,https://www.etsy.com/listing/987654,2026-06-30,
prf_003,prod_watch_b,own-website,https://example.com/sale/watch,2026-09-15,Direct sale
Field reference
| Field | Required | Type | Notes |
|---|---|---|---|
proofId | Yes | text | The proof this listing attaches to |
productId | Yes | text | The product containing the proof |
platform | Yes | choice | One of: ebay, etsy, vinted, depop, facebook-marketplace, own-website, other |
url | Yes | URL | Canonical, public listing URL |
expiresAt | Yes | date | ISO date (YYYY-MM-DD). Listings are ignored after this date |
note | No | text | Free-text reminder visible only to admins/owners |
Rows with unknown proofId or productId are skipped — you'll see a summary after import showing how many succeeded and which rows failed.
FAQ & troubleshooting
Why didn't the verifier receive a confirmation email? Check their email is spelled correctly (case-insensitive but exact otherwise). If you maintain a suppression list, their address or domain may be on it — in that case the request is recorded but no email is sent (this is intentional, to avoid leaking your suppression rules). Also confirm in Settings that the four notification topics were registered during setup.
The verifier clicked the link but got an "expired" or "already used" error. Confirmation links are single-use and time-limited. If the link expired (default 1 hour) or was clicked twice, the verifier needs to start again from the request form. You can lengthen the Confirm-link lifetime in Settings if this is a frequent problem.
The owner says they never got notified.
Open the request in the Requests tab and check the audit log — you'll see whether a notified-owner entry was recorded. If it was, the issue is with the owner's preferred notification channel (email filters, push permissions). If it wasn't, the proof may not have an owner contact registered — they need to claim the proof first.
Can I change the verification page style after a request has already been approved? Yes — style and field-visibility changes apply immediately to all proof pages, including ones already issued. Lifetimes (TTLs) only affect new requests; already-issued artifacts keep the expiry they were issued with.
A request is stuck on "Awaiting confirmation" — can I push it forward manually? No, by design. The verifier must prove they own the email address. If they can't find the email, they should resubmit the form.
My CSV import skipped some rows.
Check that every proofId in your CSV matches an existing proof in the collection, and every productId matches a real product. Also confirm your expiresAt values are valid ISO dates (YYYY-MM-DD) and your platform values are from the allowed list.
A buyer is challenging an approved proof — how do I revoke it? Open the request in the Requests tab, scroll to the bottom of the detail panel, and click Revoke artifact. The public verification page becomes invalid immediately and the audit log records who revoked it and when.
How long is the audit trail kept? Forever — every state change on every request is appended to the case's audit log and is visible in the Requests detail panel.
Can I delete a request entirely? No — requests are part of your audit trail. You can revoke approved artifacts, but the case record itself is preserved for traceability.