用途:说明 RevenueCat 场景下 Android 应用后端的职责。收据验证由 RevenueCat 后端完成,它调用 Google Play Developer API 校验购买令牌并向 SDK 返回 CustomerInfo;应用客户端与自有服务器都不直接调用该 API。后端主要负责消费 RevenueCat 状态:用户认证、自身用户与权限数据库、提供付费内容的接口以及接收 Webhook 的服务。
主要能力:用 GET https://api.revenuecat.com/v1/subscribers/{app_user_id} 读取订阅者状态,请求头 Authorization: Bearer sk_... 与 X-Platform: android,响应结构与 Android SDK 的 CustomerInfo 一致;用 POST https://api.revenuecat.com/v1/subscribers/{app_user_id}/entitlements/{entitlement_id}/promotional 授予促销权益,duration 可取 daily、three_day、weekly、monthly、two_month、three_month、six_month、yearly、lifetime,仅限服务端支持场景;用 revoke_promotionals 撤销;用 attributes 端点设置服务端属性;用数据导出做批量同步。事件驱动可选 Webhook 接收器,按 INITIAL_PURCHASE、RENEWAL、CANCELLATION、EXPIRATION 等事件授予或安排撤销,校验 Authorization 头并快速返回 2xx。
使用方式:先确认已配置 RevenueCat 项目与 Android 应用,准备 Project Settings 中的密钥 API key(非公开 Android SDK key),明确 SDK 使用的 app_user_id,并决定采用 REST 实时查询还是 Webhook 事件驱动。密钥只能放在服务端环境变量,绝不能进入 APK、BuildConfig 或任何客户端包。若仅在客户端控制功能,可能无需后端组件。
限制:不要自建 Google Play 收据验证端点,不要把购买令牌交给服务器手工验证,不要在后端直接查询 Google Play Developer API(除非绕过 SDK 的自定义集成),也不要在自有数据库复制七种订阅状态机,应消费 entitlements.active 或 Webhook 事件。具体价格、收费与配额资料暂未提供。