For end users

User guide

A practical, task-oriented walkthrough. The extension does one thing: it converts and normalizes web links into affiliate links per your configured rules, and can optionally broadcast them. Everything else supports that one workflow.

Version 1.0.12 Just installed? Start with §1
Alt+Shift+LOpen popup
Alt+Shift+KConvert tab
Alt+Shift+MMobile Preview
Alt+Shift+ODashboard

On macOS, Command replaces Alt.

1. First-run setup wizard

On install, a welcome wizard opens automatically and walks you through the pipeline: resolve redirects → unwrap embedded URLs → clean tracking params → add your affiliate tag → optional network wrap → optional shorten → optional broadcast.

  1. Read the intro. It shows the pipeline overview.

  2. Pick or confirm your stores. Choose from the 11 presets or add a custom store; replace any placeholder tags with your real affiliate tags.

  3. Add a network. Use a starter template (Cuelinks, EarnKaro, INRDeals, Admitad) or define your own. INRDeals and Cuelink are seeded, with Cuelink as the catch-all fallback.

  4. (Optional) Connect a Telegram channel. Paste a bot token and chat id and use Send test message. You can skip and do it later (§6).

  5. Review the analytics consent toggle. It is pre-enabled (on by default). To opt out now, toggle it OFF on this step before finishing; to opt out later, Settings → Behavior (§13).

  6. Finish. The quick-jump cards take you to common tasks.

Nothing you enter here leaves your device for a DealsGroup account — there is no account. All config and credentials are stored locally. The one first-party network feature is the optional Deal Feed (§8).

2. Converting a link

Four ways to convert. All run the same pipeline and store the result in your local history.

A · From the popup

Open a product page, click the toolbar icon (or Alt+Shift+L); the popup pre-fills the active tab's URL. Click Convert, then Copy or share.

B · Convert the current tab

Press Alt+Shift+K on any page — converts without opening the popup; a result notification appears and the link is copied.

C · From the dashboard Home

Open the dashboard (Alt+Shift+O), paste a URL into the convert box, click Convert.

D · Right-click any link or page

Choose Process with dealsgroup. Each use requires an explicit click — nothing runs automatically.

Maximum input URL length is 8192 bytes; default redirect depth is 4 hops. Amazon short links (amzn.to, amzn.in) are expanded to the real Amazon URL first, then matched to your Amazon rule.

3. Stores, networks, shorteners, tokens, excluded domains & unwrap rules

Open the dashboard with Alt+Shift+O. All edits save immediately to chrome.storage.local.

Stores

Stores → Add store. Pick a preset or add a custom domain, set your affiliate tag and which network applies (or "Direct Affiliate" for no wrapping).

Networks

Networks → Add network. Pick a starter template or define a custom one; configure the link template, param rules, and your network ID. A network can be the "covers all hosts" fallback.

Shorteners

The bundled ViaDeals Free is the default and needs no signup. Add a preset or custom API and toggle shortening per pipeline. Custom URLs pass an SSRF guard; responses capped at 64 KB; cookies only to the allowlist.

Smart Replacement tokens [DG-*]

Template link and network values dynamically (FULL_URL, DOMAIN, PARAM:name, TIMESTAMP, UUID, and more). Define your own. Note: no longer applied to Telegram inline-button values — buttons are static.

Excluded domains & unwrap rules

Excluded domains pass through untouched. Unwrap rules extract a destination embedded in a redirector — per domain + parameter, decoding none/url/base64/base64url, up to 5 nested peels. 12 redirector rules seeded by default.

4. Reminders and scheduled messages

Backed by chrome.alarms. Missed items fire on browser startup within a 24-hour grace window.

  1. Dashboard → Reminders → Add.

  2. Choose the kind: Reminder (notifies about a URL + note) or Message (broadcasts free text at the scheduled time).

  3. Set the time and repeat (none / hourly / daily / weekly / monthly / custom).

  4. Choose channels: Chrome notification, Telegram, and/or webhooks. Save.

Reminder notifications include an Open URL button. If OS notifications are blocked, the dashboard warns you. Deleting a reminder clears its alarm.

5. Webhooks

Broadcast to Discord, Slack, n8n, or any custom HTTP endpoint.

  1. Dashboard → Integrations → Webhooks → Add.

  2. Enter the destination URL. It must be public — localhost, loopback, link-local, RFC1918 private ranges, and cloud-metadata are rejected by the SSRF guard.

  3. Set the method and any headers.

  4. Build the body template using {{message}}, {{message_json}}, {{message_url}}, {{timestamp}}, {{token}}.

  5. Choose the trigger type (message, all, or reminder). Save and test.

Requests use credentials:'omit'. Authorization-type headers and secret-bearing query params are redacted when you export (§12).

6. Connecting Telegram and sending

Set up a channel

  1. Create a bot with Telegram's @BotFather and copy the bot token.

  2. Add the bot to your channel/group and get the chat id.

  3. Dashboard → Integrations → Telegram → Add channel: paste token and chat id, pick a parse mode (Markdown or HTML).

  4. Click Send test message to confirm delivery.

Your bot token and chat id are stored locally only and never uploaded to any DealsGroup server. When you send, the message text/photo and bot token go to api.telegram.org — no browser cookies are attached.

Compose: rich-text editor with copy as WhatsApp / Telegram (Markdown) / Markdown / Plain. Markdown is upgraded to MarkdownV2/HTML so formatting survives.

Image: per-message image attach sends a photo with your text as caption; falls back to caption-less photo + separate text if too long.

Inline reply buttons (static): values sent verbatim (smart tokens no longer applied). A set can include fill-in-the-blank empty slots prompted at send.

7. Sending a converted link to your destinations

After converting (any method in §2), broadcast in one step: from the popup or dashboard Home choose Send (or Convert & Send on the Deal Feed — §8) to push the templated message/link to all configured destinations (Telegram channels and webhooks). The exact text uses your message template and respects each destination's settings (parse mode, image attach, buttons).

8. Using the Deal Feed

The Deal Feed connects to https://tg-forwarded-deals.deals.group over Socket.io WSS to receive a real-time stream of Telegram deal messages. It is receive-only and opt-in — nothing happens until you click Connect.

Connect

Dashboard → Feed tab → Connect → confirm. Deals stream in live (newest at the bottom) with an unread pill, auto-scroll, and a live online-client count.

Act on a message

Convert (opens the composer), Convert & Send (broadcast to all destinations), or Copy (WhatsApp / Markdown / Telegram / Plain).

Disconnect / reconnect

Live-only (no backlog). Auto-disconnects after 5 minutes of inactivity — click Reconnect to resume. Disconnect manually anytime.

What it sends

Only a standard WebSocket connection plus the server's anonymous online-client count. Images fetched credentials:'omit'; incoming HTML re-sanitized (XSS-safe). No config/credentials/browsing uploaded.

9. Mobile Preview

  1. On any page, press Alt+Shift+M (or use the context menu, or open from Tools).

  2. The side panel opens with the page in a phone-sized viewport.

  3. Pick from ~22 device presets (iPhone, Pixel, Galaxy, OnePlus, iPad) or set a custom user agent.

To frame refusing sites, the extension registers a scoped rule applied only to sub-frames initiated by its own pages, only while the preview is open. It never affects your normal browsing.

10. Redirect Tracer

  1. Dashboard → Redirect Tracer.

  2. Paste a shortened or redirecting link and run the trace.

  3. Review every hop — HTTP 3xx, meta-refresh, JS redirects — with timing, plus the final URL.

  4. Use the Redirect Resolver tab for a single link's resolved destination.

HTTP fetch hops use credentials:'omit'. JS redirects settle in a brief hidden tab (using your normal session); a watchdog alarm closes orphans. Results cached briefly (default 24-hour TTL per entry).

11. Built-in tools

Open Tools in the dashboard:

UTM builderPlay Store referrer builderAmazon link builderFlipkart link builderQR code generator

QR generation uses api.qrserver.com only when you click to generate, and the app shows an in-app warning that the URL is sent to that service.

12. Import, export, and backup

Export (backup)

All secrets redacted by default. To include them in a private backup, explicitly choose Include credentials.

Share a single item

Community shares of a single item always strip secrets, regardless of settings.

Import

Validates each key's shape, runs the SSRF guard, writes atomically with rollback. Unknown/wrong-shape values rejected; a failed import restores your previous state.

13. Settings & turning analytics OFF

Anonymous usage analytics is on by default (the onboarding toggle is pre-enabled). To turn it off:

  1. Open the dashboard.

  2. Go to Settings → Behavior.

  3. Toggle anonymous usage analytics off.

Turning it off takes effect within milliseconds across the extension. While on, it sends only allowlisted event counts to GA4, with non_personalized_ads:true; it never sends URLs, domains, tags, tokens, secrets, message bodies, page content, or your config. Other settings here: themes (light / dark / auto), history size (default 500, configurable 100–5000), and behavior toggles.

The current version is 1.0.12 (the dashboard About page shows it). Questions or problems?

Add DealsGroup Affiliate Engine to Chrome

Free on the Chrome Web Store — works on Chrome, Edge, Brave, Vivaldi and Arc.