Trustpilot integration
How to claim ticpoz.com on Trustpilot, generate a TrustBox widget, wire it into the homepage, and start collecting verified reviews.
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.
[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-idat 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.
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:
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.
Troubleshooting
The widget isn't appearing
- Open the browser dev-tools network tab. The script
tp.widget.bootstrap.min.jsshould load fromwidget.trustpilot.com. - Check the page source — the
div.trustpilot-widgetshould 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.comvia 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.
Related
- 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.