การติดตามการสมัครสมาชิก Google Play
ภาพรวมการผสานรวม
Anchor link toReal-Time Developer Notifications (RTDN) เป็นบริการแบบ server-to-server ของ Google Play ที่ส่งข้อความแบบเรียลไทม์เมื่อใดก็ตามที่สถานะการสมัครสมาชิกมีการเปลี่ยนแปลง
ด้วยการเชื่อมต่อ Google Play RTDN กับ Pushwoosh คุณสามารถตอบสนองต่อวงจรชีวิตการสมัครสมาชิกทั้งหมดได้ ซึ่งรวมถึงการซื้อ, การต่ออายุ, การยกเลิก, ปัญหาการเรียกเก็บเงิน, การหมดอายุ และการคืนเงิน โดยไม่ต้องสร้างโครงสร้างพื้นฐาน backend ของคุณเอง เมื่อใดก็ตามที่สถานะการสมัครสมาชิกในบัญชี Google Play ของผู้ใช้มีการเปลี่ยนแปลง Google จะแจ้งเตือน Pushwoosh และ Pushwoosh จะส่ง event PW_Subscription* ที่ตรงกันบนโปรไฟล์ผู้ใช้
ประเภทการผสานรวม
Anchor link toแหล่งที่มา: Real-Time Developer Notifications ถูกส่งจาก Google Play ไปยัง Pushwoosh
Event ที่ถูกติดตาม
Anchor link toPushwoosh จะจับคู่การแจ้งเตือนของ Google Play ที่รองรับทุกรายการกับชุด event PW_Subscription* ที่เป็นหนึ่งเดียว เพื่อให้คุณสามารถเริ่มแคมเปญในทุกขั้นตอนของวงจรชีวิตการสมัครสมาชิกได้
| Event | เกิดขึ้นเมื่อ |
|---|---|
PW_SubscriptionStart | ผู้ใช้ซื้อการสมัครสมาชิกเป็นครั้งแรก |
PW_SubscriptionRenew | การสมัครสมาชิกต่ออายุอัตโนมัติสำหรับรอบการเรียกเก็บเงินใหม่ |
PW_SubscriptionCancel | ผู้ใช้ปิดการต่ออายุอัตโนมัติ การสมัครสมาชิกจะยังคงใช้งานได้จนกว่าจะหมดอายุ |
PW_SubscriptionResume | ผู้ใช้เริ่มการสมัครสมาชิกใหม่อีกครั้งก่อนที่จะสิ้นสุดลง |
PW_SubscriptionBillingIssue | การชำระเงินเพื่อต่ออายุล้มเหลว และการสมัครสมาชิกเข้าสู่ช่วงผ่อนผัน |
PW_SubscriptionRecovered | การต่ออายุที่เคยล้มเหลวสำเร็จ และการสมัครสมาชิกกลับมาใช้งานได้อีกครั้ง |
PW_SubscriptionExpired | การสมัครสมาชิกสิ้นสุดลงโดยสมบูรณ์และไม่สามารถใช้งานได้อีกต่อไป |
PW_SubscriptionRefund | Google Play เพิกถอนการสมัครสมาชิก (เช่น หลังจากการคืนเงิน) |
ทุก event จะมี attribute เหมือนกัน:
- productID: ตัวระบุผลิตภัณฑ์ของ Google Play สำหรับการสมัครสมาชิก
- expiresAt: เวลาที่รอบการชำระเงินปัจจุบันสิ้นสุดลง ในรูปแบบ Unix timestamp เป็นวินาที รวมอยู่ด้วยเมื่อ Google ให้ข้อมูลมา
การจับคู่ event กับ Real-Time Developer Notifications
สำหรับนักพัฒนาที่กำลังตรวจสอบการผสานรวม แต่ละ event ของ Pushwoosh จะสอดคล้องกับค่า notificationType ของ RTDN เหล่านี้:
| Pushwoosh event | RTDN notificationType |
|---|---|
PW_SubscriptionStart | SUBSCRIPTION_PURCHASED (4) |
PW_SubscriptionRenew | SUBSCRIPTION_RENEWED (2) |
PW_SubscriptionCancel | SUBSCRIPTION_CANCELED (3) |
PW_SubscriptionResume | SUBSCRIPTION_RESTARTED (7) |
PW_SubscriptionBillingIssue | SUBSCRIPTION_IN_GRACE_PERIOD (6) |
PW_SubscriptionRecovered | SUBSCRIPTION_RECOVERED (1) |
PW_SubscriptionExpired | SUBSCRIPTION_EXPIRED (13) |
PW_SubscriptionRefund | SUBSCRIPTION_REVOKED (12) |
ประเภทการแจ้งเตือนอื่นๆ เช่น การระงับ, การเปลี่ยนแปลงราคา, การเลื่อน และการหยุดชั่วคราว จะได้รับการรับทราบแต่จะไม่โพสต์ event
วิธีการทำงาน
Anchor link toการแจ้งเตือนของ Google Play ไม่มีตัวระบุของ Pushwoosh แต่จะมีเพียง purchase token และ packageName ของแอปเท่านั้น ดังนั้นแอปของคุณจะแท็กการซื้อแต่ละครั้งด้วยตัวระบุที่ Pushwoosh ต้องการ และ Pushwoosh จะอ่านข้อมูลนั้นกลับมาจากการซื้อเมื่อใดก็ตามที่ได้รับการแจ้งเตือน
- สถานะการสมัครสมาชิกในบัญชี Google Play ของผู้ใช้มีการเปลี่ยนแปลง (การซื้อ, การต่ออายุ, การยกเลิก และอื่นๆ)
- Google Play เผยแพร่ข้อความ RTDN ไปยัง topic ที่ใช้ร่วมกันของ Pushwoosh
- Pushwoosh อ่าน
obfuscatedAccountIdของการซื้อ ซึ่งแอปของคุณได้ตั้งค่าเป็น<AppCode>:<hwid>ในขณะที่ซื้อ - Pushwoosh ค้นหาอุปกรณ์ที่มี HWID ตรงกัน, ค้นหาผู้ใช้ที่ผูกกับอุปกรณ์นั้น และโพสต์ event
PW_Subscription*ที่ตรงกันสำหรับผู้ใช้นั้น
กรณีการใช้งาน
Anchor link toดึงดูดสมาชิกที่กำลังจะยกเลิกกลับมา: การปิดการต่ออายุอัตโนมัติไม่ได้ทำให้การเข้าถึงสิ้นสุดลงทันที การสมัครสมาชิกจะยังคงใช้งานได้จนกว่าจะสิ้นสุดรอบการชำระเงิน และนั่นคือโอกาสของคุณที่จะดึงผู้ใช้กลับมา เมื่อเกิด PW_SubscriptionCancel ให้เปิด Customer Journey พร้อมกับ push เพื่อรักษาลูกค้า, อีเมล เกี่ยวกับฟีเจอร์ที่พวกเขาจะสูญเสียไป หรือ ข้อความในแอป พร้อมส่วนลดการต่ออายุก่อนที่การเข้าถึงจะสิ้นสุดลง
แนะนำสมาชิกใหม่: เริ่มชุดข้อความต้อนรับเมื่อเกิด PW_SubscriptionStart เพื่อช่วยให้ผู้ใช้ได้รับประโยชน์จากแผนของพวกเขาตั้งแต่เนิ่นๆ และเตรียมพร้อมสำหรับการต่ออายุ
แก้ไขการชำระเงินที่ล้มเหลว: เมื่อเกิด PW_SubscriptionBillingIssue หมายความว่าการชำระเงินเพื่อต่ออายุไม่สำเร็จ และการสมัครสมาชิกอยู่ในช่วงผ่อนผัน แจ้งให้ผู้ใช้อัปเดตวิธีการชำระเงินก่อนที่จะสูญเสียการเข้าถึง และติดตามผลด้วย PW_SubscriptionRecovered เพื่อยืนยันเมื่อปัญหาได้รับการแก้ไขแล้ว
กระตุ้นผู้ใช้ที่หมดอายุแล้วอีกครั้ง: เริ่มแคมเปญกระตุ้นการใช้งานอีกครั้งเมื่อเกิด PW_SubscriptionExpired พร้อมข้อเสนอสำหรับลูกค้าที่กลับมาสำหรับสมาชิกที่ได้ยกเลิกไปโดยสมบูรณ์แล้ว
การตั้งค่าการผสานรวม
Anchor link toก่อนที่คุณจะเริ่ม ตรวจสอบให้แน่ใจว่าคุณมีแอป Pushwoosh ที่ กำหนดค่า FCM แล้ว (ซึ่งจำเป็นสำหรับการส่ง push อยู่แล้ว), มีแอป Google Play ที่มีการสมัครสมาชิก และมีสิทธิ์เข้าถึง Play Console ในฐานะผู้ดูแลระบบ
ตั้งค่าตัวระบุบัญชีในขณะที่ซื้อ
Anchor link toPushwoosh ระบุผู้ใช้ที่ถูกต้องจาก HWID ของอุปกรณ์ รวมกับ Application Code ของคุณ Pushwoosh Android SDK มีตัวช่วย getSubscriptionAccountId() ที่จะส่งคืนค่านี้ในรูปแบบ <AppCode>:<hwid> แล้ว ส่งค่านี้ไปยัง BillingFlowParams.setObfuscatedAccountId() เมื่อคุณเริ่มขั้นตอนการเรียกเก็บเงินของ Google Play
val billingParams = BillingFlowParams.newBuilder() .setProductDetailsParamsList(productDetailsParamsList) // Tag the purchase with the Pushwoosh account identifier "<AppCode>:<hwid>" .setObfuscatedAccountId(Pushwoosh.getInstance().subscriptionAccountId) .build()
billingClient.launchBillingFlow(activity, billingParams)BillingFlowParams billingParams = BillingFlowParams.newBuilder() .setProductDetailsParamsList(productDetailsParamsList) // Tag the purchase with the Pushwoosh account identifier "<AppCode>:<hwid>" .setObfuscatedAccountId(Pushwoosh.getInstance().getSubscriptionAccountId()) .build();
billingClient.launchBillingFlow(activity, billingParams);ชี้ Real-Time Developer Notifications ไปที่ Pushwoosh
Anchor link to- ใน Google Play Console ไปที่ Monetize → Monetization setup
- ค้นหา Real-time developer notifications และตั้งค่า Topic name เป็น:
projects/pw-playstore-subscriptions/topics/play-rtdn- คลิก Save สิทธิ์ในการเผยแพร่ได้ถูกมอบให้กับบริการแจ้งเตือนของ Google แล้ว ดังนั้นจึงไม่มีอะไรต้องกำหนดค่าเพิ่มเติมที่นี่
ให้สิทธิ์แก่ service account ของ Pushwoosh
Anchor link to- ใน Google Play Console ไปที่ Users and permissions → Invite new user
- ป้อนอีเมล service account ของ Pushwoosh:
play-api@pw-playstore-subscriptions.iam.gserviceaccount.com- ใต้ App permissions เพิ่มแอปของคุณและให้สิทธิ์ View financial data, orders, and cancellation survey responses (พร้อมกับสิทธิ์ข้อมูลแอปแบบอ่านอย่างเดียว)
- คลิก Save service account ไม่จำเป็นต้องยอมรับคำเชิญ การเข้าถึงจะใช้งานได้ทันที
ยืนยัน event ใน Pushwoosh
Anchor link toPushwoosh จะลงทะเบียนแต่ละ event PW_Subscription* ในโปรเจกต์ของคุณในครั้งแรกที่เกิดขึ้น พร้อมกับ attribute productID และ expiresAt หลังจากทำการทดสอบ ให้เปิด Audience → Events เพื่อตรวจสอบว่า event ปรากฏขึ้นแล้ว จากนั้น event เหล่านี้จะพร้อมสำหรับการแบ่งกลุ่ม, สถิติ และ Customer Journeys
สร้างแคมเปญของคุณ
Anchor link toสร้าง Customer Journey ด้วย entry แบบ trigger-based บน event PW_Subscription* ใดๆ เช่น PW_SubscriptionCancel สำหรับการดึงลูกค้ากลับมา หรือ PW_SubscriptionStart สำหรับการแนะนำผู้ใช้ใหม่ และเพิ่มข้อความที่คุณต้องการส่ง
การทดสอบ
Anchor link toเพื่อตรวจสอบการผสานรวมตั้งแต่ต้นจนจบ:
- ใน Google Play Console เปิด Monetization setup และคลิก Send test notification ควรจะรายงานว่าสำเร็จ ซึ่งเป็นการยืนยันว่า topic ได้เชื่อมต่ออย่างถูกต้องแล้ว
- ทำการซื้อการสมัครสมาชิกโดยตั้งค่าตัวระบุบัญชีตามที่อธิบายไว้ข้างต้น (ซึ่งจะทำให้เกิด
PW_SubscriptionStart) จากนั้นยกเลิกจาก Play Store → Subscriptions → Cancel (ซึ่งจะทำให้เกิดPW_SubscriptionCancel) - ใน Pushwoosh Control Panel เปิดโปรไฟล์ผู้ใช้และไปที่ Events history
- ยืนยันว่า event ปรากฏขึ้นภายในไม่กี่นาที