In-App Purchases

AdvisoryAudited by Static analysis on Apr 30, 2026.

Overview

No suspicious patterns detected.

Findings (0)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

If used against production, the agent or developer could query subscriber information and grant or revoke paid access.

Why it was flagged

The documentation shows use of a RevenueCat secret API key for subscriber and entitlement operations. This is expected for subscription management, but it is sensitive delegated authority.

Skill content
# Grant entitlement (promo) ... -H "Authorization: Bearer $SECRET_API_KEY" ... # Revoke entitlement
Recommendation

Keep provider secret keys in a secure backend or vault, avoid pasting secrets into chat, and require explicit human approval before making live entitlement changes.

What this means

A poorly protected webhook implementation could incorrectly grant or revoke subscription access or expose purchase-event data.

Why it was flagged

The skill includes provider webhook examples that change access based on inbound event data. This is a normal IAP architecture, but webhook origin, schema validation, idempotency, and replay protection are important.

Skill content
app.post('/revenuecat/webhook', (req, res) => { const event = req.body; ... grantAccess(event.app_user_id, event.product_id); ... revokeAccess(event.app_user_id); })
Recommendation

Validate webhook signatures or shared secrets, check event schemas, make handlers idempotent, log safely, and restrict access to webhook endpoints.

What this means

If stored insecurely, purchase tokens, receipts, and subscription history could leak customer activity or be misused to affect entitlements.

Why it was flagged

The server guidance recommends persistent storage of raw receipts, purchase tokens, and user-linked entitlement data. This is purpose-aligned for receipt verification and dispute handling, but it is sensitive persistent payment data.

Skill content
3. **Store raw receipts** — for dispute resolution ... purchase_token TEXT ... user_id UUID NOT NULL
Recommendation

Encrypt sensitive purchase fields, minimize retention, avoid logging raw tokens or receipts, and apply strict database access controls.

What this means

End users could be pressured by paywall language if the tactics are applied without clear pricing, cancellation terms, or truthful claims.

Why it was flagged

The paywall guidance includes conversion tactics that can pressure users, while also warning not to fake scarcity. This is aligned with paywall design, but needs transparent implementation.

Skill content
Loss Aversion ... "Don't lose your progress" ... Scarcity/Urgency (Use Carefully) ... "50% off - Today only" ... ⚠️ Don't fake scarcity.
Recommendation

Keep prices, renewal terms, trial terms, restore options, and cancellation information clear; avoid fake urgency or misleading social proof.