การติดตามการสมัครสมาชิก App Store
ภาพรวมการผสานรวม
Anchor link toApp Store Server Notifications เป็นบริการแบบ server-to-server ของ Apple ที่จะส่งข้อความแบบเรียลไทม์ไปยัง backend ของคุณเมื่อใดก็ตามที่สถานะการสมัครสมาชิกมีการเปลี่ยนแปลง
ด้วยการเชื่อมต่อ App Store Server Notifications กับ Pushwoosh คุณสามารถตอบสนองต่อวงจรชีวิตการสมัครสมาชิกทั้งหมดได้ ซึ่งรวมถึงการซื้อ การต่ออายุ การยกเลิก ปัญหาการเรียกเก็บเงิน การหมดอายุ และการคืนเงิน โดยไม่ต้องสร้างโครงสร้างพื้นฐาน backend ของคุณเอง เมื่อใดก็ตามที่สถานะการสมัครสมาชิกในบัญชี App Store ของผู้ใช้มีการเปลี่ยนแปลง Apple จะแจ้งเตือน Pushwoosh และ Pushwoosh จะส่ง event PW_Subscription* ที่ตรงกันบนโปรไฟล์ผู้ใช้
ประเภทการผสานรวม
Anchor link toSource: App Store Server Notifications จะถูกส่งจาก Apple ไปยัง Pushwoosh
Event ที่ติดตาม
Anchor link toPushwoosh จะจับคู่การแจ้งเตือน App Store ที่รองรับทุกรายการกับชุด event PW_Subscription* ที่เป็นหนึ่งเดียวกัน เพื่อให้คุณสามารถเริ่มแคมเปญได้ในทุกขั้นตอนของวงจรชีวิตการสมัครสมาชิก
| Event | เกิดขึ้นเมื่อ |
|---|---|
PW_SubscriptionStart | ผู้ใช้ซื้อการสมัครสมาชิกเป็นครั้งแรก |
PW_SubscriptionRenew | การสมัครสมาชิกต่ออายุอัตโนมัติสำหรับรอบการเรียกเก็บเงินใหม่ |
PW_SubscriptionCancel | ผู้ใช้ปิดการต่ออายุอัตโนมัติ การสมัครสมาชิกจะยังคงใช้งานได้จนกว่าจะหมดอายุ |
PW_SubscriptionResume | ผู้ใช้เปิดใช้งานการต่ออายุอัตโนมัติอีกครั้ง หรือสมัครสมาชิกใหม่ก่อนที่การสมัครสมาชิกจะสิ้นสุดลง |
PW_SubscriptionBillingIssue | การชำระเงินสำหรับการต่ออายุล้มเหลว และการสมัครสมาชิกเข้าสู่ช่วงเวลาลองเรียกเก็บเงินใหม่ของ Apple |
PW_SubscriptionRecovered | การต่ออายุที่ล้มเหลวก่อนหน้านี้สำเร็จ และการสมัครสมาชิกกลับมาใช้งานได้อีกครั้ง |
PW_SubscriptionExpired | การสมัครสมาชิกสิ้นสุดลงโดยสมบูรณ์และไม่สามารถใช้งานได้อีกต่อไป |
PW_SubscriptionRefund | Apple คืนเงินสำหรับการซื้อหรือเพิกถอนการเข้าถึง |
ทุก event จะมี attribute เดียวกัน:
- productID: ตัวระบุผลิตภัณฑ์ของ App Store สำหรับการสมัครสมาชิก
- expiresAt: เวลาที่รอบการชำระเงินปัจจุบันสิ้นสุดลง ในรูปแบบ Unix timestamp หน่วยเป็นวินาที จะรวมอยู่ด้วยเมื่อ Apple ให้ข้อมูลมา
วิธีที่ Event จับคู่กับ App Store Server Notifications
สำหรับนักพัฒนาที่กำลังตรวจสอบการผสานรวม แต่ละ event ของ Pushwoosh จะสอดคล้องกับค่า notificationType (และ subtype) ของ App Store ดังนี้:
| Pushwoosh event | notificationType / subtype |
|---|---|
PW_SubscriptionStart | SUBSCRIBED / INITIAL_BUY |
PW_SubscriptionRenew | DID_RENEW |
PW_SubscriptionCancel | DID_CHANGE_RENEWAL_STATUS / AUTO_RENEW_DISABLED |
PW_SubscriptionResume | DID_CHANGE_RENEWAL_STATUS / AUTO_RENEW_ENABLED, SUBSCRIBED / RESUBSCRIBE |
PW_SubscriptionBillingIssue | DID_FAIL_TO_RENEW |
PW_SubscriptionRecovered | DID_RENEW / BILLING_RECOVERY |
PW_SubscriptionExpired | EXPIRED |
PW_SubscriptionRefund | REFUND, REVOKE |
ประเภทการแจ้งเตือนอื่นๆ เช่น การขึ้นราคา การเปลี่ยนแปลงแผน การระงับชั่วคราว และคำขอการใช้งาน จะได้รับการยอมรับแต่จะไม่ส่ง event
วิธีการทำงาน
Anchor link to- สถานะการสมัครสมาชิกในบัญชี App Store ของผู้ใช้มีการเปลี่ยนแปลง (การซื้อ การต่ออายุ การยกเลิก และอื่นๆ)
- Apple ส่ง App Store Server Notification (V2) ไปยัง URL การแจ้งเตือน Pushwoosh ของคุณ
- Pushwoosh ถอดรหัส payload ที่ลงนามแล้วและอ่าน
appAccountTokenจากธุรกรรม - Pushwoosh ค้นหาอุปกรณ์ที่มี HWID ตรงกับ token นั้น ค้นหาผู้ใช้ที่ผูกกับอุปกรณ์นั้น และส่ง event
PW_Subscription*ที่ตรงกันสำหรับผู้ใช้นั้น
กรณีการใช้งาน
Anchor link toดึงดูดสมาชิกที่กำลังจะยกเลิกกลับมา: การปิดใช้งานการต่ออายุอัตโนมัติไม่ได้ทำให้การเข้าถึงสิ้นสุดลงทันที การสมัครสมาชิกจะยังคงใช้งานได้จนกว่ารอบการชำระเงินจะสิ้นสุดลง และนั่นคือโอกาสของคุณที่จะดึงผู้ใช้กลับมา เมื่อเกิด event PW_SubscriptionCancel ให้เริ่ม Customer Journey ด้วย push เพื่อรักษาลูกค้า, อีเมล เกี่ยวกับฟีเจอร์ที่พวกเขาจะสูญเสียไป หรือ ข้อความในแอป พร้อมส่วนลดการต่ออายุก่อนที่การเข้าถึงจะสิ้นสุดลง
แนะนำสมาชิกใหม่: เริ่มชุดข้อความต้อนรับเมื่อเกิด event PW_SubscriptionStart เพื่อช่วยให้ผู้ใช้ได้รับประโยชน์จากแผนของพวกเขาตั้งแต่เนิ่นๆ และเตรียมพร้อมสำหรับการต่ออายุ
แก้ไขการชำระเงินที่ล้มเหลว: เมื่อเกิด event PW_SubscriptionBillingIssue แสดงว่าการชำระเงินสำหรับการต่ออายุไม่สำเร็จ และการสมัครสมาชิกอยู่ในช่วงเวลาลองเรียกเก็บเงินใหม่ของ Apple แจ้งให้ผู้ใช้อัปเดตวิธีการชำระเงินก่อนที่จะสูญเสียการเข้าถึง และติดตามผลด้วย PW_SubscriptionRecovered เพื่อยืนยันเมื่อปัญหาได้รับการแก้ไขแล้ว
กระตุ้นผู้ใช้ที่หมดอายุแล้วอีกครั้ง: เริ่มแคมเปญกระตุ้นการใช้งานอีกครั้งเมื่อเกิด event PW_SubscriptionExpired พร้อมข้อเสนอสำหรับลูกค้าที่กลับมาสำหรับสมาชิกที่ยกเลิกไปแล้วโดยสมบูรณ์
การตั้งค่าการผสานรวม
Anchor link toตั้งค่า appAccountToken เป็น HWID ของอุปกรณ์ Pushwoosh
Anchor link toPushwoosh ระบุผู้ใช้ที่ถูกต้องจาก HWID ของอุปกรณ์ ดังนั้นแอปของคุณต้องแนบ HWID ของอุปกรณ์ Pushwoosh เป็น appAccountToken เมื่อมีการซื้อการสมัครสมาชิกผ่าน StoreKit
โดยค่าเริ่มต้น Pushwoosh iOS SDK จะใช้ identifierForVendor (IDFV) ของอุปกรณ์เป็น HWID ซึ่ง IDFV เป็น UUID อยู่แล้ว ซึ่งเป็นรูปแบบที่ Apple ต้องการสำหรับ appAccountToken จากนั้น Pushwoosh จะแก้ไขผู้ใช้ที่ผูกกับอุปกรณ์นั้นโดยอัตโนมัติ ดังนั้นวิธีนี้จึงใช้งานได้ไม่ว่าคุณจะกำหนด User ID ของคุณเองด้วย setUserId หรือไม่ก็ตาม
// Attach the device's Pushwoosh HWID (the default IDFV) as the appAccountTokenvar options: Set<Product.PurchaseOption> = []if let hwid = UIDevice.current.identifierForVendor { options.insert(.appAccountToken(hwid))}
let result = try await product.purchase(options: options)// applicationUsername must be a UUID string to populate appAccountTokenlet payment = SKMutablePayment(product: product)payment.applicationUsername = UIDevice.current.identifierForVendor?.uuidStringSKPaymentQueue.default().add(payment)ค้นหา Application Code ของ Pushwoosh
Anchor link toเปิดแอปพลิเคชันของคุณใน Pushwoosh Control Panel Application Code ของคุณ (รูปแบบ XXXXX-XXXXX) จะแสดงอยู่ใต้ชื่อโปรเจกต์ในแถบด้านข้าง
คุณจะต้องใช้ Application Code เพื่อสร้าง URL การแจ้งเตือน
เพิ่ม URL การแจ้งเตือนใน App Store Connect
Anchor link to- ใน App Store Connect ไปที่ Apps → แอปของคุณ → App Information (ใต้ General) และเลื่อนไปที่ App Store Server Notifications
- เลือกการแจ้งเตือน Version 2
- ตั้งค่าทั้ง Production Server URL และ Sandbox Server URL เป็น:
https://appstore-notifications.pushwoosh.com/appstore/YOUR_APPLICATION_CODE/- แทนที่
YOUR_APPLICATION_CODEด้วย Application Code จากขั้นตอนก่อนหน้า และคงเครื่องหมายทับ (/) ไว้ที่ท้ายสุด
ยืนยัน Event ใน Pushwoosh
Anchor link toPushwoosh จะลงทะเบียนแต่ละ event PW_Subscription* ในโปรเจกต์ของคุณในครั้งแรกที่เกิดขึ้น พร้อมด้วย attribute productID และ expiresAt หลังจากทำการทดสอบใน sandbox แล้ว ให้เปิด Audience → Events เพื่อตรวจสอบว่า event ปรากฏขึ้น จากนั้น event เหล่านี้จะพร้อมสำหรับการแบ่งกลุ่ม สถิติ และ Customer Journeys
สร้างแคมเปญของคุณ
Anchor link toสร้าง Customer Journey ด้วย trigger-based entry บน event PW_Subscription* ใดๆ ตัวอย่างเช่น PW_SubscriptionCancel สำหรับการดึงลูกค้ากลับมา หรือ PW_SubscriptionStart สำหรับการแนะนำผู้ใช้ใหม่ และเพิ่มข้อความที่คุณต้องการส่ง
การทดสอบ
Anchor link toApp Store Server Notifications สามารถถูกเรียกใช้งานได้ในสภาพแวดล้อม Sandbox ของ Apple หากต้องการตรวจสอบการผสานรวม:
- ทำการซื้อการสมัครสมาชิกใน sandbox โดยตั้งค่า
appAccountTokenตามที่อธิบายไว้ข้างต้น ซึ่งจะทำให้เกิด eventPW_SubscriptionStart - ปิดใช้งานการต่ออายุอัตโนมัติจากหน้าจอการจัดการการสมัครสมาชิกของอุปกรณ์ ซึ่งจะทำให้เกิด event
PW_SubscriptionCancel - ใน Pushwoosh Control Panel เปิดโปรไฟล์ผู้ใช้และไปที่ Events history
- ยืนยันว่า event ปรากฏขึ้นภายในไม่กี่นาที