Troubleshooting Paywall Issues
The Arc XP Subscriptions paywall runs on the client side. For this reason, if you are experiencing issues with the paywall, you must provide detailed steps for the Arc XP Subscriptions team to reproduce the issue. Any records and additional information will help us to start investigating and debugging.
Complete the following steps and send us all the information that could be useful for investigating and troubleshooting the issue.
Step 1: Do you have a paywall deployed?
On the admin tool, you need to define the paywall rule(s) and deploy these rules. For this, you must follow the next steps:
Go into the Admin tool and create a rule(s) under the Paywall tab.
Create a Ruleset, including all the rules that will be part of the paywall.
Under the Overview tab, create a paywall and start it.
After following the previous steps, you see an "Active" paywall.
When a paywall is started, disabled, or enabled, the retail API invokes the paywall deployer lambda, which packages up the enabled ruleset, creating copies of p.js, p.min.js (minified version), and p.html into S3. These files live in something like Https://Your.Domain.Com/Arc/Subs/P.Js (example: https://subssinglesite-the-daily-intelligencer-prod.web.arc-cdn.net/arc/subs/p.js
).
In the first lines of the file, you should see var ArcPWPaused = false
If the file contains ArcPWPaused = true, you must redeploy the paywall through the Admin tool. If the issue persists after redeploying the paywall, notify the Arc XP Subscriptions team.
Step 2: Are you loading the script (p.js, p.min.js ) each time you load a page?
To check if the p.js/p.min.js script loads each time you are loading a page, you will need to inspect the page (Inspect Page In Chrome) and then go into the Sources tab, and you will find the p.js/p.min.js file. You will see the ArcP object under Local Storage/domain if this script executes correctly. The ArcP object contains all the information about the rules, subscriptions, and the number of articles visited.
You can find the meaning for each attribute on the ArcP object in the Getting Started with the Arc XP Subscriptions Paywall article. Each time a user visits a new page, this script runs, and then the ArcP object is updated depending on the ruleset you deployed.
Note
If the paywall behavior is updated with new features and you want to use the updates, you will need to redeploy the paywall.
Step 3: Are you experiencing unexpected behavior?
If you are facing unexpected behavior, send us a record where we can see each page you visited (Provide us with each link page step by step). At the same time, we need to see the changes in the ArcP object. Describe what is the behavior you are expecting. The first time a new user visits the site (first page), each time the user hits the paywall, or 24 hours later the last call to entitlements, the p.js/p.min.js is making a call to /sales/public/v1/entitlements. This call will gather all the information about the user's subscriptions and geolocation information. And all this information is used while the script runs and evaluates the rules. This information will help us troubleshoot the issue. Export a .har file from the browser and ensure that the request to /sales/public/v1/entitlements is included in this file.
If the user has access to the content - for instance, the user has an active subscription - /entitlements will be fetched 24 hours later. If a subscription was recently terminated, the user will see the content for 24 hours after the last fetch to /entitlements. After 24 hthey'llhey’ll hit the paywall. Also, check if the IP address on the user side does not fall into group packages based on IP Address.
If the Arc XP Subscriptions team cannot reproduce the issue in our testing environment, we will need to look into your implementation. Provide links to your code where the paywall was implemented. If the issue is not happening for all users:
Is it happening in all browsers on the same device?
Are you seeing this issue in regular or incognito mode?
Is it happening on different devices for the same user?
Check if you have an ad blocker or extensions enabled that could be preventing our script from executing.
Check the browser settings. Your browser must be allowing cookies.
Provide as much information as possible, for example, OS version, Browser version, browser extension list, browser settings, .har files, records showing the wrong behavior and ArcP object, etcetera.