บทความทั้งหมด
Playbookใช้เวลาอ่าน 8 นาที

การใช้การคืนเงินในทางที่ผิดซ้ำ ๆ ทำให้คุณเสียสองต่อ นี่คือวิธีที่สโตร์เปิดทางให้คุณตอบโต้

ลูกค้าที่ขอคืนเงินครั้งแล้วครั้งเล่าไม่ใช่เรื่องบังเอิญ การใช้การคืนเงินในทางที่ผิดทำให้คุณเสียทั้งเงินที่ต้องคืนและ compute ที่คุณใช้ไปแล้ว และทั้งสองสโตร์มอบสัญญาณระบุตัวตนให้คุณเพื่อร้อยเรียงรูปแบบนี้เข้าด้วยกัน นั่นคือ appAccountToken ของ Apple และ obfuscated account ID ของ Google

ประตูหมุนในโถงสถานีขนส่งที่มืดสลัว มีคนคนหนึ่งเดินผ่านเข้าออกซ้ำ ๆ เพื่อสื่อถึงการใช้การคืนเงินในทางที่ผิดซ้ำ ๆ

ประเด็นสำคัญ

  • มีเพียงสอง flow การคืนเงินเท่านั้นที่ยอมให้นักพัฒนาส่งหลักฐานต่อสู้การใช้การคืนเงินในทางที่ผิดได้ นั่นคือ CONSUMPTION_REQUEST ของ Apple ที่มีหน้าต่างเวลา 12 ชั่วโมง และการตรวจสอบ chargeback ของ Google Play ผ่าน Review Refund API ที่มีหน้าต่างเวลา 24 ชั่วโมง
  • appAccountToken ของ Apple คือ UUID ที่คุณสร้างเองและแนบไปกับการซื้อ และ StoreKit จะผูกมันเข้ากับ transaction ที่เกิดขึ้น เพื่อให้เซิร์ฟเวอร์ของคุณเชื่อมโยงทุกการคืนเงินกลับไปยังบัญชีที่ทำรายการนั้นได้อย่างแม่นยำ
  • obfuscated account ID ของ Google Play คือสตริงที่ถูก hash แล้ว จำกัดไม่เกิน 64 ตัวอักษร ซึ่ง Google เองใช้เพื่อตรวจจับกิจกรรมผิดปกติ เช่น การมีอุปกรณ์จำนวนมากซื้อของบนบัญชีเดียวในช่วงเวลาสั้น ๆ
  • การเก็บข้อมูลส่วนบุคคลแบบข้อความธรรมดา (cleartext) ไว้ใน obfuscated account ID ของ Google จะทำให้การซื้อของคุณถูกบล็อก ดังนั้นฟิลด์นี้ต้องเป็นค่าที่ถูกเข้ารหัสหรือ hash แบบทางเดียว ไม่ใช่อีเมลดิบเด็ดขาด
  • ฟิลด์ voidedReason ของ Google Play ทำเครื่องหมาย friendly_fraud และ fraud ให้เป็นเหตุผลที่ต่างจากการคืนเงินเพราะเสียดาย (remorse) ทั่วไป ซึ่งช่วยให้คุณส่งผู้ที่ใช้ในทางที่ผิดซ้ำ ๆ ไปยังคิวตรวจสอบแทนเส้นทางคืนเงินแล้วลืมแบบอัตโนมัติ
  • Google ระบุว่าได้บล็อกธุรกรรมฉ้อโกงและใช้ในทางที่ผิดไปกว่า $2 billion ในปี 2022 และฟิลด์ระบุตัวตนที่ป้อนข้อมูลให้ระบบนั้นจะทำงานได้ก็ต่อเมื่อคุณกรอกลงไปในทุกการซื้อ
  • ทุกการซื้อที่ถูกคืนเงินแต่ยังคงการเข้าถึงไว้ คือ compute, storage และค่าใช้จ่าย API ที่คุณยังต้องจ่ายต่อไปบนเงินที่คุณคืนไปแล้ว และผู้คืนเงินซ้ำ ๆ จะทวีคูณบิลนั้นอย่างจงใจ

การคืนเงินครั้งเดียวคือต้นทุนของการทำธุรกิจ แต่บัญชีเดิมที่ขอคืนเงินเป็นครั้งที่สี่ หลังจากใช้สิ่งที่ซื้อไปในทุกครั้ง นั่นคือการใช้การคืนเงินในทางที่ผิด และเป็นรูปแบบที่คุณจะมองเห็นได้ก็ต่อเมื่อทุกการซื้อพกพาตัวตนที่คุณควบคุมได้ ทั้ง Apple และ Google มอบตัวตนนั้นให้คุณ และทั้งคู่ให้หน้าต่างเวลาแคบ ๆ เพื่อเสนอมันต่อสโตร์ก่อนที่การคืนเงินหรือ chargeback จะถูกตัดสิน หากพลาดหน้าต่างเวลา หรือไม่เคยแนบตัวตนไว้เลย ผู้คืนเงินซ้ำ ๆ ก็จะดูเหมือนลูกค้าที่ไม่พอใจในครั้งแรกทุกประการ นี่คือวิธีแยกแยะพวกเขา และความต่างนั้นมีค่าเป็นเงินเท่าใด

ทำไมการใช้การคืนเงินในทางที่ผิดจึงเป็นปัญหาเรื่องตัวตน ไม่ใช่ปัญหาเรื่องการคืนเงิน

สโตร์เป็นผู้ตัดสินการคืนเงิน คุณห้ามลูกค้าไม่ให้ขอไม่ได้ และในเกือบทุก flow คุณก็ห้ามสโตร์ไม่ให้อนุมัติไม่ได้ สิ่งที่คุณทำได้คือตัดสินว่าบัญชีหนึ่ง ๆ เคยทำเช่นนี้มาก่อนหรือไม่ และเนื้อหาที่ซื้อไปนั้นถูกส่งมอบและถูกใช้จริงหรือไม่ ทั้งสองอย่างเป็นคำถามเรื่องตัวตน นั่นคือผู้ใช้คนใดของคุณอยู่เบื้องหลัง transaction นี้ และประวัติของเขาเป็นอย่างไร หากการซื้อของคุณไม่พกพาตัวระบุที่คงที่กลับไปยังบันทึกผู้ใช้ของคุณเอง คุณก็ตอบคำถามทั้งสองข้อไม่ได้ และการคืนเงินทุกครั้งก็มาถึงโดยไร้บริบท

นั่นคือช่องว่างที่แท้จริง กลไกการคืนเงินถูกกำหนดตายตัวด้วยนโยบาย ส่วนหลักฐานที่คุณนำมาเสนอนั้นเป็นสิ่งที่คุณสร้างขึ้นเองทั้งหมด และมันเริ่มต้นตั้งแต่ขณะที่ซื้อ ไม่ใช่ขณะที่คืนเงิน

สองหน้าต่างเวลาที่หลักฐานเปลี่ยนผลลัพธ์ได้

มีเพียงสอง flow เท่านั้นที่สิ่งที่คุณส่งไปสามารถเขย่าคำตัดสินได้ CONSUMPTION_REQUEST ของ Apple จะถูกทริกเกอร์เมื่อลูกค้าขอคืนเงินสำหรับสินค้าที่บริโภคได้ (consumable) หรือ subscription แบบต่ออายุอัตโนมัติ และคุณมีเวลา 12 ชั่วโมงในการตอบ การตรวจสอบ chargeback ของ Google Play จะถูกทริกเกอร์เมื่อผู้ใช้โต้แย้งรายการเรียกเก็บเงินกับธนาคาร และคุณมีเวลา 24 ชั่วโมงในการตอบผ่าน Review Refund API ส่วนการคืนเงินอื่นทุกแบบ ไม่ว่าจะเป็นการคืนเงินแบบบริการตนเองของ Play ภายใน 48 ชั่วโมง การคืนเงินที่ฝ่ายสนับสนุนอนุมัติ หรือการคืนเงินอัตโนมัติของการซื้อที่ไม่ได้ยืนยัน ล้วนถูกตัดสินโดยไม่มีคุณ

ช่องทางหลักฐานทั้งสองนี้จะแข็งแกร่งกว่ามากเมื่อ transaction พกพาตัวระบุของคุณไว้แล้ว consumption information ของ Apple สามารถรวม appAccountToken เข้าไว้พร้อมกับประวัติและยอดใช้จ่ายของบัญชี และการตรวจสอบของ Google สามารถอาศัย obfuscated account ID ที่มันเฝ้าดูมาตั้งแต่การซื้อ บัญชีที่ไม่มีตัวระบุคือบัญชีที่ไม่มีประวัติให้ส่ง

สองฟิลด์ระบุตัวตน เทียบเคียงกัน

Apple และ Google แก้ปัญหาเดียวกันด้วยวิธีที่แทบจะเหมือนกัน เพียงแต่มีชื่อและกฎที่ต่างกัน ทั้งคู่ให้คุณประทับค่าลงบนการซื้อที่ชี้กลับไปยังบันทึกผู้ใช้ของคุณเอง ไม่มีอันไหนเปิดใช้งานโดยค่าเริ่มต้น และทั้งคู่ไร้ประโยชน์หากคุณไม่ตั้งค่ามันตอนซื้อ

Apple: appAccountToken

appAccountToken คือ UUID ที่คุณสร้างและส่งเข้าไปเมื่อการซื้อเริ่มต้น StoreKit จะเชื่อมโยงมันเข้ากับ transaction ที่เกิดขึ้น และมันจะปรากฏในข้อมูล transaction ที่เซิร์ฟเวอร์ของคุณตรวจสอบ และใน consumption information ที่คุณส่งกลับระหว่าง CONSUMPTION_REQUEST เนื่องจากมันเป็นค่าของคุณ มันจึงแมป transaction ของสโตร์เข้ากับบัญชีในฐานข้อมูลของคุณโดยตรง โดยไม่มีอีเมลหรือชื่อเข้ามาเกี่ยวข้อง มันต้องเป็น UUID จริง ๆ และอย่างอื่นจะถูกปฏิเสธ ภายหลัง Apple ได้เพิ่ม endpoint ที่ชื่อ Set App Account Token ซึ่งสามารถแนบหรืออัปเดต token บน transaction ในอดีตได้ รวมถึงการซื้อที่ทำนอกแอปของคุณ เช่น การแลกโค้ดข้อเสนอ

Google Play: obfuscated account ID

สิ่งที่เทียบเท่าของ Google คือ setObfuscatedAccountId ซึ่งเป็นสตริงเสริมที่ผูกกับบัญชีผู้ซื้อ เอกสารของ Google เองพูดตรง ๆ ถึงวัตถุประสงค์ของมัน นั่นคือ Google Play ใช้มันเพื่อตรวจจับกิจกรรมผิดปกติ เช่น อุปกรณ์จำนวนมากทำการซื้อบนบัญชีเดียวกันภายในช่วงเวลาสั้น ๆ และเพื่อบล็อกธุรกรรมฉ้อโกงบางส่วนก่อนที่มันจะเสร็จสมบูรณ์ มันจำกัดไม่เกิน 64 ตัวอักษร และต้องไม่พกพาข้อมูลส่วนบุคคลแบบข้อความธรรมดา (cleartext) หากคุณเก็บอีเมลดิบไว้ตรงนั้น Google จะบล็อกการซื้อทันที เพราะฟิลด์นี้คาดหวังค่าที่ถูกเข้ารหัสหรือ hash แบบทางเดียว ยังมีฟิลด์พี่น้องคือ setObfuscatedProfileId สำหรับแอปที่บัญชีหนึ่งถือหลายโปรไฟล์

FieldStoreชนิดและขีดจำกัดตั้งค่าโดยค่าเริ่มต้นสิ่งที่สโตร์ทำกับมัน
appAccountTokenAppleUUIDคุณ ตอนซื้อไม่ได้ตั้งค่าผูก transaction เข้ากับผู้ใช้ของคุณ ส่งกลับในข้อมูล transaction และ consumption
obfuscatedAccountIdGoogle Playสตริงที่ถูก hash สูงสุด 64 ตัวอักษรคุณ ตอนซื้อไม่ได้ตั้งค่าตรวจจับกิจกรรมผิดปกติและบล็อกการฉ้อโกงบางส่วนก่อนเสร็จสมบูรณ์

การคืนเงินจากผู้ใช้ในทางที่ผิดซ้ำ ๆ มีต้นทุนจริงเท่าใด

ตัวการคืนเงินเองคือส่วนที่เล็กที่สุดของบิล เมื่อสโตร์อนุมัติการคืนเงิน คุณคืนรายได้ และเท่านั้นที่มองเห็นได้บนบัญชีแยกประเภท สิ่งที่ไม่อยู่บนบรรทัดคืนเงินคือทุกอย่างที่คุณใช้จ่ายไปในการส่งมอบผลิตภัณฑ์ที่ตอนนี้กลายเป็นของฟรี

ลองนึกภาพสินค้าที่บริโภคได้ซึ่งทริกเกอร์งานจริง เช่น การสร้างภาพ, ชุดของ API calls ไปยังผู้ให้บริการโมเดล, การส่งออกวิดีโอ, การจ่ายเงินให้ครีเอเตอร์ คุณจ่ายค่า compute นั้นไปในวินาทีที่ลูกค้าใช้มัน การคืนเงินดึงราคากลับคืนมา แต่มันไม่ได้ดึงใบแจ้งหนี้ของผู้ให้บริการกลับคืน ผู้คืนเงินซ้ำ ๆ คือคนที่เรียนรู้แล้วว่าเนื้อหายังอยู่รอดหลังการคืนเงิน เขาจึงรันลูปอีกครั้ง นั่นคือ ซื้อ ใช้ คืนเงิน ทำซ้ำ ในทุกรอบ คุณต้องแบกรับต้นทุนการส่งมอบเป็นครั้งที่สอง

จากนั้นก็มีการโยกย้ายต้นทุนของสโตร์เอง ตั้งแต่ August 3, 2026 เป็นต้นไป Google Play จะโยกราคาซื้อและค่าธรรมเนียม chargeback ของธนาคารมาให้นักพัฒนาสำหรับคำสั่งซื้อที่วางหลังวันดังกล่าว chargeback ที่เคยเป็นปัญหาของ Google เป็นส่วนใหญ่จะกลายเป็นรายได้ของคุณบวกค่าธรรมเนียม และผู้โต้แย้งซ้ำ ๆ จะเพิ่มตัวเลขนั้นทุกครั้ง ฟิลด์ระบุตัวตนคือสิ่งที่ยอมให้คุณป้อนหลักฐานให้ Review Refund API เพื่อโต้แย้งข้อพิพาทที่ไม่ชอบด้วยกฎภายในหน้าต่างเวลา 24 ชั่วโมง

Google อธิบายขนาดของมันอย่างตรงไปตรงมา โดยระบุว่าได้บล็อกธุรกรรมฉ้อโกงและใช้ในทางที่ผิดไปกว่า $2 billion ในปี 2022 ตัวเลขนั้นมีอยู่ได้เพราะสัญญาณต่าง ๆ ซึ่งรวมถึง obfuscated account ID ถูกกรอกไว้ แอปที่ส่งการซื้อออกไปพร้อมฟิลด์ระบุตัวตนที่ว่างเปล่าก็เท่ากับเลือกที่จะไม่รับการป้องกันนั้น

ลายนิ้วมือถูกอ่านบนเซ็นเซอร์กระจกที่มีแสงส่อง เพื่อสื่อว่าฟิลด์ระบุตัวตนของสโตร์เชื่อมโยงการซื้อกลับไปยังบัญชีที่อยู่เบื้องหลังการใช้การคืนเงินในทางที่ผิดอย่างไร

วิธีจับผู้คืนเงินซ้ำ ๆ ก่อนที่สโตร์จะตัดสิน

ติดแท็กทุกการซื้อด้วยตัวตนที่คุณเป็นเจ้าของ

ตั้งค่า appAccountToken บนทุกการซื้อผ่าน StoreKit และ setObfuscatedAccountId บนทุกการซื้อผ่าน Play Billing โดยทั้งคู่สร้างขึ้นจากบันทึกผู้ใช้ของคุณเอง บน Apple ให้ใช้ UUID จริงที่แมปกับบัญชี บน Google ให้ hash คีย์บัญชีเพื่อไม่ให้ข้อมูลส่วนบุคคลเดินทางในรูปข้อความธรรมดา ทำสิ่งนี้ตอนซื้อ เพราะบน Google มันเป็นขั้นตอนเดียวที่คุณกู้คืนภายหลังไม่ได้

เก็บบัญชีแยกประเภทที่ใช้ตัวตนนั้นเป็นคีย์

จัดเก็บทุกการซื้อ การส่งมอบ เหตุการณ์การบริโภค และการคืนเงินไว้เทียบกับตัวระบุ เมื่อ CONSUMPTION_REQUEST หรือการตรวจสอบ chargeback มาถึง ประวัติทั้งหมดของบัญชี รวมถึงการคืนเงินก่อนหน้า ก็อยู่ห่างเพียงการค้นหาครั้งเดียว consumption information ของ Apple มีฟิลด์ที่ชัดเจนสำหรับสิ่งนี้โดยเฉพาะ ได้แก่ consumptionStatus, deliveryStatus, playTime, accountTenure, lifetimeDollarsPurchased และ refundPreference ของคุณ

อ่าน voidedReason และจัดเส้นทางผู้ใช้ในทางที่ผิดให้ต่างออกไป

เมื่อการซื้อของ Google ถูกยกเลิก (voided) ฟิลด์ voidedReason จะบอกคุณว่าทำไม และ friendly_fraud กับ fraud เป็นค่าที่แยกจากการคืนเงินเพราะเสียดาย (remorse) ทั่วไป ให้ส่งพวกนั้นไปยังคิวตรวจสอบและนโยบายที่เข้มงวดกว่า ไม่ใช่เส้นทางอัตโนมัติเดียวกับการคืนเงินครั้งแรก แนวทางของ Google เองเป็นโมเดลแบบเตือนหลายครั้ง นั่นคือ เตือนผู้กระทำผิดครั้งแรก ดำเนินการเด็ดขาดขึ้นกับผู้ที่ทำซ้ำ และปิดการซื้อสำหรับบัญชีที่ยังทำต่อไปเรื่อย ๆ

ตอบภายในหน้าต่างเวลาทุกครั้ง

หลักฐานจะถูกนับก็ต่อเมื่ออยู่ภายในหน้าต่างเวลาทั้งสองเท่านั้น จงทำการตอบ CONSUMPTION_REQUEST ให้เป็นอัตโนมัติเพื่อให้มันทำงานภายใน 12 ชั่วโมงอย่างเหลือเฟือ และการตรวจสอบ chargeback ให้ทำงานภายใน 24 ชั่วโมง ประวัติที่สมบูรณ์แบบที่คุณส่งช้าไปคือประวัติที่สโตร์ไม่มีวันอ่าน

สัญญาณที่คุณอยากจับมันอยู่ที่ไหนฟิลด์หรือ flow ที่เผยให้เห็น
บัญชีเดียวกัน อุปกรณ์จำนวนมาก ช่วงเวลาสั้นGoogle Playการตรวจจับกิจกรรมผิดปกติของ Obfuscated account ID
บัญชีนี้เคยคืนเงินมาก่อนบัญชีแยกประเภทของคุณประวัติที่ใช้ appAccountToken หรือ obfuscated account ID เป็นคีย์
เนื้อหาถูกส่งมอบและถูกใช้แล้วAppledeliveryStatus และ consumptionStatus ใน consumption info
ข้อพิพาทแท้จริงคือการฉ้อโกงจากฝ่ายแรกGoogle Playค่า voidedReason ที่เป็น friendly_fraud

สิ่งที่สโตร์จะทำและจะไม่ทำให้คุณ

การพูดให้ชัดเจนเรื่องการแบ่งหน้าที่กันเป็นสิ่งที่คุ้มค่า เพราะมันง่ายที่จะเข้าใจไปว่าสโตร์จัดการเรื่องการใช้ในทางที่ผิดให้ และส่วนใหญ่พวกเขาก็ไม่ได้บอกคุณเวลาที่ไม่ได้จัดการ Google ใช้ obfuscated account ID อย่างจริงจังเพื่อบล็อกการฉ้อโกงบางส่วนก่อนที่การซื้อจะเสร็จสมบูรณ์ และระบบของมันจับได้เป็นสัดส่วนใหญ่ในระดับแพลตฟอร์ม Apple ตัดสินการคืนเงินทุกครั้งด้วยตัวเองและถือว่า consumption information ของคุณเป็นข้อมูลนำเข้า ไม่ใช่คะแนนเสียง ไม่มีสโตร์ใดดูแลรายชื่อผู้ใช้ในทางที่ผิดให้คุณ หักสินค้าที่บริโภคได้ที่ถูกคืนเงินออกจากยอดคงเหลือของคุณ หรือปฏิเสธผู้คืนเงินซ้ำ ๆ แทนคุณ ตัวตนเป็นของสโตร์ที่จะจัดการที่ขอบ ๆ และเป็นของคุณที่จะจัดการทุกที่ที่เหลือ

ด้วยเหตุผลเดียวกันนี้เอง RefundHalt จึงใช้ตัวตนของการซื้อเป็นคีย์กับทุกอย่าง การคืนเงิน การตรวจสอบ chargeback และคำขอการบริโภคของบัญชีเดียวกันจะแก้กลับไปยังประวัติเดียว เพื่อให้ผู้คืนเงินซ้ำ ๆ ปรากฏเป็นรูปแบบตั้งแต่ครั้งแรกที่เขาทำซ้ำ ไม่ใช่หลังจากใบแจ้งหนี้ใบที่สี่ที่คุณจ่ายไปแล้ว

คำถามที่พบบ่อย

การใช้การคืนเงินในทางที่ผิดในแอปคืออะไร?
การใช้การคืนเงินในทางที่ผิดคือการที่ลูกค้าขอคืนเงินซ้ำ ๆ หลังจากได้รับและใช้สิ่งที่ซื้อไปแล้ว เพื่อเก็บเนื้อหาหรือประโยชน์ไว้พร้อมกับได้เงินคืน บนแอปสโตร์ มันมักปรากฏเป็นบัญชีเดียวกันที่คืนเงินสินค้าที่บริโภคได้หรือ subscription ครั้งแล้วครั้งเล่า หรือเป็น friendly fraud ที่รายการเรียกเก็บเงินอันชอบด้วยกฎถูกโต้แย้งกับธนาคาร
ฉันจะเชื่อมโยงการซื้อในแอปเข้ากับผู้ใช้รายใดรายหนึ่งได้อย่างไร?
บน Apple ให้สร้าง UUID แล้วส่งมันเป็น appAccountToken เมื่อการซื้อเริ่มต้น และ StoreKit จะผูกมันเข้ากับ transaction และส่งกลับในข้อมูล transaction และ consumption บน Google Play ให้เรียก setObfuscatedAccountId ด้วยค่าที่ถูก hash ที่ผูกกับบัญชี ทั้งคู่จะแมป transaction ของสโตร์เข้ากับบันทึกผู้ใช้ของคุณเองโดยไม่เปิดเผยข้อมูลส่วนบุคคล
Apple หรือ Google บอกฉันได้ไหมว่าบัญชีหนึ่งเป็นผู้คืนเงินซ้ำ ๆ?
ไม่โดยตรง Google ใช้ obfuscated account ID เพื่อตรวจจับกิจกรรมผิดปกติและบล็อกการฉ้อโกงบางส่วนก่อนการซื้อ และ Apple ให้คุณส่งประวัติบัญชีระหว่างคำขอการบริโภค แต่ไม่มีสโตร์ใดยื่นรายชื่อผู้คืนเงินซ้ำ ๆ ให้คุณ คุณต้องสร้างมันขึ้นเองจากบัญชีแยกประเภทของคุณที่ใช้ฟิลด์ระบุตัวตนเป็นคีย์
ทำไม Google จึงบล็อกการซื้อของฉันเมื่อฉันตั้งค่า account ID?
เพราะ obfuscated account ID ต้องไม่มีข้อมูลส่วนบุคคลแบบข้อความธรรมดา (cleartext) การเก็บบางอย่างเช่นที่อยู่อีเมลดิบไว้ในนั้นทำให้ Google Play บล็อกการซื้อ ให้ใช้ค่าที่ถูกเข้ารหัสหรือ hash แบบทางเดียว และคงไว้ภายในขีดจำกัด 64 ตัวอักษร
การโต้แย้งการคืนเงินผ่านคำขอการบริโภคหยุดการใช้ในทางที่ผิดได้ไหม?
มันช่วยลดได้ CONSUMPTION_REQUEST เป็นหนึ่งในสอง flow เท่านั้นที่หลักฐานของคุณไปถึงสโตร์ก่อนที่มันจะตัดสิน และประวัติบัญชีบวกกับข้อมูลการส่งมอบและการบริโภคช่วยให้ Apple ระบุการใช้การคืนสินค้าในทางที่ผิดและ friendly fraud ได้ แต่มันไม่ใช่การบล็อก Apple ยังคงเป็นผู้ตัดสิน และการใช้ในทางที่ผิดที่มาผ่าน flow ที่โต้แย้งไม่ได้ก็ยังไม่ถูกกระทบ

แหล่งข้อมูลและเนื้อหาเพิ่มเติม

RefundHalt

ระบบอัตโนมัติสำหรับการคืนเงินบน App Store และ Google Play

อ่านต่อ

คำขอคืนเงินครั้งต่อไปกำลังมา

ตั้งค่า RefundHalt ได้ในเวลาพอ ๆ กับการอ่านอีเมลฝ่ายช่วยเหลืออีกฉบับเกี่ยวกับการคืนเงินที่คุณไม่มีโอกาสโต้แย้ง