External PWA
External PWA
External PWAs allow the use of third-party PWA application builders (e.g., PWA.Group, TSL.app, etc.) instead of the platform's built-in builder. You create a PWA on an external service, and Adset.Pro takes care of traffic attribution, generating the tracker link, and sending postbacks about conversions back to the external service.
The section is located in the PWA → External PWA menu (/app/pwa/external) and is available on higher tariffs (Buying and Business lines of Social and Tracker).
Why is this needed
-
Any external PWA services — work with PWAs from any service, without being tied to a single vendor.
-
Fair A/B tests — compare different PWA services under the same conditions (one campaign with the same sets and filters).
-
Cross-statistics — the entire funnel from click to conversion in one place.
-
Adset.Pro as a tracker — use the platform as a full-fledged tracker for external PWAs.
How it works
-
The user clicks on the ad → lands on the tracker.
-
The tracker redirects traffic to the external PWA service (via your PWA URL + service parameters).
-
The user installs the PWA on the external service.
-
The external service redirects the user back to the tracker link.
-
The tracker records the installation (event
EXTERNAL_INSTALL) and directs the user to the offer according to your Flow. -
Upon conversion (registration, deposit), the platform sends a postback to the external service (if a Postback URL is specified).
Creating an external PWA
On the External PWAs page, click “Add External PWA” — a creation dialog will open. Fill in the fields:
Field | Required | Description |
|---|---|---|
Name | Yes (min. 2 characters) | System name for identifying the PWA in your account (e.g., “Casino Slots — PWA Storm”). Not shown to users. |
External service | Yes | PWA service from the catalog. When selecting a service, the Postback URL template is automatically filled in, its URL parameters are displayed, and the correct macros are used in the tracker link. |
PWA URL | Yes | Link to your PWA on the external service (valid URL format |
Tracker domain | Yes | The domain from your domains through which the return link is generated. This is the one the external service redirects to after installation. |
Postback URL | No | The URL to which the platform sends postbacks about conversions to the external service. Automatically filled from the template of the selected service; can be edited manually or click “Fill from template”. |
Active | — | Toggle in the header of the dialog. An inactive PWA is not used in tracking. |
Tracker link (post-install redirect)
After selecting the tracker domain, a ready link appears at the bottom of the dialog in the “Generated tracker link” block. It needs to be specified in the external PWA service as the return link after installation (post-install redirect) — that is, the link to the offer to which the service sends the user.
Link format:
https://{domain}/track/{campaignId}/eflow?clickId={clickId}&eid={eid}
-
{campaignId},{clickId},{eid}— macros that the external service will replace with real values. When a service from the catalog is selected, the macros are automatically filled in the format of that service. -
eid(External Event ID) — the event identifier on the external service side (for example, the event time); it is saved and can be used in the Postback URL via the macro{postback.eid}.
Click the copy icon to copy the link to the clipboard.
Setting up Postback URL
The Postback URL determines where Adset.Pro will send the conversion notification. The field is optional: without it, tracking and attribution work, but postbacks to the external service are not sent.
Available macros
Macro | Description |
|---|---|
| Our unique click ID (clickId) |
| External event ID from the PWA service (eid) |
| Internal event type: CPA_HOLD, CPA_ACCEPT, EXTERNAL_INSTALL, etc. |
| User's country |
Variable macros (event mapping)
To substitute different values for different types of events, use the syntax:
{event.event_type: hold=reg accept=dep}
This will substitute reg for registration and dep for deposit.
Example of a complete Postback URL
https://pwastorm.com/postback?click_id={postback.eid}&status={event.event_type: hold=reg accept=dep}
Services already contain a template for postbacks, check and replace places marked as REPLACE with values from your account.
Using external PWA in a campaign
To direct traffic to an external PWA:
-
Open the campaign for editing.
-
In the flow settings (Flow), select the created external PWA in the PWA field. The PWA type will automatically become
external. -
Save the campaign.
Then the external PWA is used in the usual Flow of the tracker — just like a regular PWA.
A/B testing of services
Create several external PWAs (e.g., on different services) and distribute them across different flows/sets of one campaign with weights. The traffic will be divided according to the specified shares, and you can compare the effectiveness in the statistics of one funnel.
List and management
On the page /app/pwa/external, a table with all external PWAs is displayed. Columns: Name, Service, PWA URL, Tracker Domain, Postback URL, Tags, Owner, Status, Created.
Filters: search by name, owner, status (active/inactive), service, tags.
Row actions (menu “⋮”): Edit, Manage tags, Copy tracker link, Delete.
-
Deletion = deactivation. The PWA is not physically deleted but is moved to the status “Inactive” (the Active toggle in the editing dialog does the same).
-
Bulk actions: assigning tags and deactivating for selected rows.
Statistics and billing
Installations in external PWAs are recorded as a separate event EXTERNAL_INSTALL and do not mix with the statistics of your own PWAs:
-
Separate metric External Install and conversions Click → External Install, External Install → Reg, External Install → Dep.
-
The overall metric Install in reports sums up internal and external installations, so the funnel remains complete.
-
Pixels (FB/TikTok) and postbacks for external installations work just like for regular PWAs.
-
Billing: external installations are not charged as your PWA installs (the PWA_INSTALLS metric does not account for them).
Frequently asked questions
What happens to Facebook pixels when using external PWA?
Facebook pixels for external PWAs are replaced by a postback to the external service. Other types of pixels (URL, TikTok, Telegram) continue to work as usual.
Can I work without a Postback URL?
Yes. Without it, tracking and attribution work, but the platform does not send postbacks to the external service.
What is eid?
eid (External Event ID) is an identifier that the external PWA service passes when returning the user. It is saved and can be used in the Postback URL via the macro {postback.eid} for correlating events on the service side.
How long is the clickId → eid binding stored?
7 days. During this time, all conversions for this click will contain the correct eid in the postbacks.
