Trustpilot integration

How to claim ticpoz.com on Trustpilot, generate a TrustBox widget, wire it into the homepage, and start collecting verified reviews.

Last updated · 2026-05-13

TICPOZ is set up to display a Trustpilot TrustBox widget alongside curated early-access reviews on the homepage. The component <TrustSection /> renders the widget when the public environment variable NEXT_PUBLIC_TRUSTPILOT_BUSINESS_UNIT_ID is set, and hides it cleanly when it isn't — so the homepage never shows a broken or empty Trustpilot area before the account is provisioned.

What you need before you start
A business email on the ticpoz.com domain (e.g. [email protected] or [email protected]) and access to the domain's DNS records (Cloudflare console).

Step 1 — Create a Trustpilot Business account

  • Go to business.trustpilot.com/signup.
  • Sign up with a business email on the ticpoz.com domain.
  • Enter the company name as TICPOZ Ltd and the website as https://ticpoz.com.
  • Choose the Free plan to start. Paid tiers add review-invitation automation and the Business API; we'll upgrade only when we've outgrown the free tier.

Step 2 — Claim and verify the domain

Trustpilot needs to know we own ticpoz.com. They will give you a DNS verification token to add as a TXT record.

  • In the Trustpilot Business panel, go to Settings → Domain & verification.
  • Trustpilot will display a TXT record like trustpilot-verification=abc123....
  • In Cloudflare DNS, add a TXT record on the apex (@) with that exact value.
  • Click Verify back in Trustpilot. DNS propagation is usually instant on Cloudflare.

Step 3 — Find your Business Unit ID

The Business Unit ID is the public identifier Trustpilot uses to connect a widget to your reviews. It looks like a long hex-looking string.

  • In the Trustpilot Business panel, go to Integrations → TrustBox.
  • Pick any TrustBox template. The configuration screen will show your data-businessunit-id at the bottom of the embed snippet.
  • Copy that value — it is what we plug into the env var.

Step 4 — Set the env var

Add the ID to .env.local on the VPS:

# .env.local — production
NEXT_PUBLIC_TRUSTPILOT_BUSINESS_UNIT_ID=YOUR_ID_FROM_STEP_3

Then restart with the new env:

ssh ticpoz@<vps> 'cd ~/apps/ticpoz/frontend && npm run build && pm2 restart ticpoz --update-env'

The TrustBox widget appears below the aggregate-rating line on the homepage. Until it loads, the placeholder “Independent verification coming soon” line remains, so users always see something coherent.

The env var must be NEXT_PUBLIC_*
Trustpilot's widget is rendered client-side, so the Business Unit ID has to ship to the browser. Next.js only exposes env vars to the client when they start with NEXT_PUBLIC_. If you name the variable anything else, the widget will silently not render.

Step 5 — Choose a TrustBox template

The component currently uses the Micro Star template (5-star inline rating). Other templates worth knowing:

Micro Star (current)
Tiny one-line rating row: stars + score + count. Best for a homepage social-proof strip alongside our curated carousel. Template id: 5419b6ffb0d04a076446a9af.
Mini
Slightly larger card showing stars + rating + count + Trustpilot logo. Good for a dedicated reviews page. Template id: 53aa8807dec7e10d38f59f32.
Carousel
Rotating set of full reviews pulled straight from Trustpilot — name, country flag, text, date. Replaces our hand-curated carousel once you have ~10+ real reviews. Template id: 53aa8912dec7e10d38f59f36.
Drop-down
Compact button that expands the rating breakdown. Good for a header. Template id: 5418cfb6d4884ec5fcc6cc8b.

To switch templates, edit components/marketing/trust-section.tsx and change data-template-id on the .trustpilot-widget div.

Step 6 — Start collecting reviews

Manual invitations (free tier)

  • In Trustpilot Business, go to Get reviews → Invite by email.
  • Paste a list of customer emails or upload a CSV.
  • Customise the invite email subject and intro.
  • The free tier caps invitations per month — see your plan limits.

Automated invitations (Standard plan or higher)

The paid plan exposes an Automatic Feedback Service (AFS) — Trustpilot sends invites automatically when your backend POSTs a customer email + reference to their API. We'll wire this into TICPOZ once revenue justifies the plan upgrade.

Step 7 — Display real reviews (later)

Once we have ~10 real verified reviews on Trustpilot, the hand-curated carousel can be replaced by the Trustpilot Carousel TrustBox, which renders real reviews with names, country flags, dates, and text — no engineering work needed beyond changing the template id.

The hand-curated carousel stays available as a fallback for the period right after launch when Trustpilot has too few reviews for a meaningful rotation.

Smart review prompts (in-app)

Asking for a review at the wrong time produces noise reviews or no reviews at all. TICPOZ only prompts after a confirmed positive signal:

  • The user accepts an AI-generated strategy spec without major edits.
  • A backtest completes with a positive expectancy (Sharpe > 1.0, win rate > 50%, positive net P&L).
  • The first profitable live trade lands on a deployment.
  • The user reaches 7 days of active sessions.

Prompts are capped at one per 90 days and three lifetime per user. We never prompt after a loss, a support email, an error, or a refund request. If a user accepts the prompt, the modal opens the Trustpilot review URL in a new tab pre-set to ticpoz.com, while quietly storing the in-app rating + comment for our own analytics.

Editing the hand-curated reviews

Until the Trustpilot Carousel takes over, the homepage shows reviews from a curated list. The list lives in two places:

  • Default fallback in app/api/public/reviews/route.ts (always available, ships with the build).
  • Optional override in content/reviews.json — drop a JSON array there to update reviews without redeploying. The file is read at request time, ISR-cached for 5 minutes.

Each review has the shape:

{
  "id":          "r-2026-05-14-01",
  "name":        "Hassan K.",      // first name + last initial
  "role":        "Prop trader · FTMO funded",
  "region":      "UAE",             // country level
  "avatarBg":    "#06b6d4",         // hex tint for the initial circle
  "rating":      5,                 // 1-5
  "title":       "...",             // one-line headline
  "body":        "...",             // 1-3 sentences
  "source":      "direct",          // direct | trustpilot | verified
  "publishedAt": "2026-05-14",      // ISO date
  "verified":    true
}

Always use first name + last initial; never a full name without explicit written consent. Profile pictures are deliberately not supported — they invite spoofing concerns and we cannot prove consent for the image rights.

Don't fake reviews
Fabricating reviews — for Trustpilot OR for our internal carousel — violates Trustpilot's terms, FTC guidance, and UK Consumer Protection Regulations. The hand-curated reviews shipped with the launch are real quotes from real early-access users who consented to the use of their first name and the wording. If we're ever uncertain about a quote, we leave it out.

Troubleshooting

The widget isn't appearing

  • Open the browser dev-tools network tab. The script tp.widget.bootstrap.min.js should load from widget.trustpilot.com.
  • Check the page source — the div.trustpilot-widget should be present with your business unit id. If the id reads as blank, the env var didn't make it into the build.
  • Build the project locally with the env var set and inspect the page; if it appears locally but not on prod, the prod env wasn't updated.
  • Cloudflare Rocket Loader can occasionally interfere with widget scripts. If suspected, exclude widget.trustpilot.com via a Cloudflare Page Rule.

The widget shows but the rating is blank

  • Trustpilot requires at least one published review before any rating renders. Until then the widget shows the brand name with no stars.
  • Pending reviews don't count — they must be public.
  • Security — overall posture, no implementation details exposed.
  • API — for plumbing the smart review prompt into your own webhooks later.
  • Contact: [email protected] for review-platform integration questions.