App Store 新定價機制 - 2023年最全版

語言: CN / TW / HK

作者:iHTCboy

本文介紹了蘋果 App Store 的新定價機制,是 App Store 在 15 週年之際推出的最重要價格升級。 文章通過“為什麼,是什麼,怎麼辦”的方法論,讓讀者從根本原理上理解新機制的意義、背後的原因以及應對方式。對蘋果 App Store 新定價機制最全面和最詳盡的解讀,相信會讓關注的蘋果開發者能快速瞭解,所以本文力求讓開發者們從容應對新的價格系統,並掌握 App Store 新定價機制。

一、前言

大家好!我們在上一篇文章 《關於 App Store 蘋果商店價格的那些事(歷上最全版)》 介紹了蘋果 App Store 價格的歷史,2023 年 3 月 9 日蘋果正式上線新的 App Store 的定價機制,有非常多的朋友表示對新機制一知半解,好像懂又好像完全不懂,因為蘋果這次升級是完全推翻了之前的價格等級(Price Tier),顛覆了大家對它的認知,推出新的 “自定義價格”(customer Price),這正是本文要解答的重要內容之一。

App Store 新定價機制 是蘋果 App Store 在 15 週年之際推出的最重要價格升級!我們之前文章已經提及其中一部分的原因,本文我們就一起重新學習!從入門到精通新定價機制的原理,充分了解新機制背後的原因和解決的問題,從而可以輕鬆應對新的風險和機遇。

注:本文很多內容,是假設讀者已經閲讀過 《關於 App Store 蘋果商店價格的那些事》 的前提下展開編寫,所以本文會多次提及前文內容但不會細講,所以未看過的讀者,建議先閲讀,再讀本文。

本文會從“為什麼,是什麼,怎麼辦”的思路編寫,讓大家知道為什麼改變,改變了什麼內容,這些內容更新和配置會帶來什麼影響,開發者怎麼適配等等,從而認每位開發者都能全面地掌握 App Store 定價機制。

所以本文就帶大家一起深入淺出地學習!如果喜歡本文,記得點個讚唄~

二、App Store 舊的定價機制

首先,我們先了解一下 App Store 平台的商業模式:

  • 付費 App
  • 免費 App 內的廣告
  • 免費 App 的內購(IAP)
  • 訂閲(IAP)

所以,App Store 的價格設置,主要是 2 個維度,App 級別和 IAP 級別。 記得這個級別的區別,後續討論的配置都是基於這個前提的。

2023-App-Store-Pricing-System-01.jpeg

2.1 為什麼要增加新價格

為什麼要增加新價格? 或者這樣反問:現有價格點不能滿足那些需求呢?

跨國差異。舉例來説,假設一款應用程序在美國的價格為 $2.99,在印度的價格也是 $2.99,但由於匯率和購買力等因素的影響,在印度,該應用程序的售價可能過高,當地顧客就會覺得太貴,導致銷售量下降。有沒有辦法讓不同地區的價格不一樣,我們之前文章説過,2014 年蘋果在中國大陸推出 備用等級 “1 元區”,正是針對中國大陸的用户習慣,當年大家買一份報紙就是 1 元!

而如今 2023 年,全球那麼多國家和地區,如果都單獨增加一些特殊價格的 備用等級,理論上是可行的,但為什麼不這樣做,可能當年中國區 1 元價格是因為中國市場是巨大的(事實上也證明了),所以其它國家/地區蘋果沒有動力做?

缺乏靈活性。另一個例子,最近全球匯率波動大,各個國家或地區的税率政策變化頻繁,正如我們之前文章説過,僅 2022 年蘋果價格調整就有高達 4 次,這麼頻繁的調價對於一般 App 可能影響沒有這麼大。但如果是對於量級大的 App 或遊戲,因為價格的調整,會導致 App 充值生態、結算和對賬混亂等問題,影響的範圍會非常的深遠!

2.2 ”價格等級”(Price Tier)

那麼,蘋果新定價機制升級了那些內容呢?我們先從 價格點(Price Points)説起,瞭解舊價格機制,對比新價格機制,然後説明新價格機制的優缺點。

我們之前文章説過,蘋果一直以來都是根據 產品定價等級表 來設置付費 App 和 IAP 內購商品的價格,例如:

| 產品定價等級 | 價格(USD) | 價格(CNY) | 等級説明 | | --- | --- | --- | --- | | 1 | 0.99 | 6 | 等級 1 | | 2 | 1.99 | 12 | 等級 2 | | 3 | 2.99 | 18 | 等級 3 | | 4 | ... | ... | ... | | 5 | ... | ... | ... |

簡單來説,如果開發者設定價格為:產品定價等級 1 ,則表示價格在 USD(美元)結算的國家或地區,用户支付金額為 0.99 美元,在中國大陸 CNY(人民幣)則是 6 元。(注:未考慮税費問題)

蘋果這個定價等級關係,同一個定價等級在不同貨幣之間是一一對應的關係,開發者不能改變映射的價格關係。也就是説,產品定價等級 1 的 USD 0.99 美元價格不能設置 CNY(人民幣)為 12 元。也不支持,自定義設置價格,比如產品定價等級上沒有的價格,例如 USD 1.68 美元、CNY 4 元、CNY 9 元等等。

擴展知識:為什麼美元 USD 不是隻有美國才用?因為蘋果在 175 個國家和地區的商店,目前只有 45 種貨幣為產品定價。也就是有 130 個國家或地區使用的是美元(USD)或歐元(EUR)等等同一種貨幣結算。

綜上,蘋果舊的 ”價格等級”(Price Tier) 機制,已經不能完全適應如今的市場需求。“自定義價格”(Customer Price) 應運而生!

三、App Store 新的定價機制

2023 年 3 月 9 日蘋果正式上線新的 App Store 的定價機制,大概更新的內容:

  • 更為靈活的價格點。
    • 可在 900 個價格點中選擇定價 — 比此前付費 App 和一次性 App 內購買項目的可選價格點數量增加了近 9 倍。這些選項也提供了更高的定價靈活度,價格點按價格區間逐漸遞增 (如在 RMB 10 以下每檔相差 RMB 0.5;RMB 10 到 RMB 200 之間每檔相差 RMB 1 等)。
  • 增強的全球定價機制。
    • 全球均衡價格遵循了各個國家或地區最常見的定價方式。採用全球均衡價格,你可以提供更適用於當地顧客的定價。
  • 根據基準價格提供全球定價形式。
    • 針對付費 App 和一次性 App 內購買項目,指定你熟悉的國家或地區,以之為基礎為其他 174 個國家或地區的店面以及 43 種貨幣生成全球均衡價格。你為這個基準店面設定的價格,Apple 不會根據税款或外匯變化進行調整。此外,你也可以按個人喜好為每個店面自行設定價格。
  • 為上架產品提供地區性定價方案。
    • 針對不同國家和地區的店面決定 App 內購買項目 (包括訂閲) 的銷售範圍,因此你可以為各個市場分發定製的內容和服務。

下面,我們就一個一個來講解。

3.1 更為靈活的價格點 --- “自定義價格”(customer Price)

怎麼理解 更為靈活的價格點

從現在開始,我們要摒棄 ”價格等級”(Price Tier) 的理念,從今世間再無價格等級表!

蘋果全新的“自定義價格”(customer Price) 矩陣表:

2023-App-Store-Pricing-System-02.jpeg

注:因為價格矩陣表過大,上圖只展示部分國家/地區的部分價格點,用於本文參考示例。

擴展知識:蘋果針對不支持當地貨幣的國家或地區,統一使用美元來結算,如上圖中的中國澳門 MAC(USD)

從上圖片可以直觀看出,使用 自定義價格(customer Price) 來統稱價格點。我們以美國(美元)為基準時,可以得到以下結論:

價格點按價格區間逐漸遞增

2023-App-Store-Pricing-System-03.jpeg

注:上圖價格點區間圖表,下載鏈接 http://www.apple.com.cn/newsroom/pdfs/App-Store-Pricing-Update.pdf

價格點區間,規則説明示例:

  • 中國(人民幣):在 RMB 10 以下每檔相差 RMB 0.5;RMB 10 到 RMB 200 之間每檔相差 RMB 1 等。
  • 美國(美元):在 USD$ 10 以下每檔相差 USD$ 0.1;USD$ 10 到 USD$ 50 之間每檔相差 USD$ 0.5 等。

注:為什麼是 USD$ 呢?在 $ 前增加 USD,是因為 $ 不只是美元。我們之前在 遊戲出海本地化概述 文章中有討論過:

“$” dollar 使用的國家或地區: * 港幣: HongKong dollar * 台幣: New Taiwan dollar * 新西蘭元: New Zealand dollar * 澳元: Australian Dollar * 新幣(新加坡幣): Singapore dollar * 加元(加拿大元): Canadian dollar

以上這些價格點的區間,大家可以不用記住,大概瞭解最低和最高價格點,然後在蘋果 ASC(App Store Connect,下文統一簡稱 ASC) 後台下載 “自定義價格”(customer Price) 矩陣表,就能查看所有國家或地區的價格點。下載的方法有 2 個:

  • 價格與銷售範圍 -> 價格時間表 -> 所有價格和貨幣 -> 可用價格(按國家或地區) -> 下載所有價格和貨幣
  • App 內購買項目 -> 價格時間表 -> 所有價格和貨幣 -> 可用價格(按國家或地區) -> 下載所有價格和貨幣

蘋果總計有 900 個價格點,其中在 “自定義價格”(customer Price) 矩陣表裏面有 800 個價格點,從 USD$ 0.29 ~ USD$ 1000(人民幣 RMB 1 ~ RMB 7499)。另外 100 個高價價格點可通過 申請 (需要登陸開發者賬號)獲得。100 個高價格點是從 USD$ 1099.99 ~ USD$ 10000(人民幣 RMB 7997 ~ RMB 74999)。

3.2 增強的全球定價機制 --- 全球均衡價格

全球均衡價格遵循了各個國家或地區最常見的定價方式。採用全球均衡價格,你可以提供更適用於當地顧客的定價。

那麼什麼是 全球均衡價格 呢?在 ASC 後台,價格與銷售範圍(或 App 內購買項目) -> 價格時間表 -> 所有價格和貨幣,可以打開下面的頁面:

2023-App-Store-Pricing-System-04.jpeg

我們選擇一個國家或地區價格點後,蘋果將根據最新的外匯匯率自動計算所有 175 個國家或地區的價格和收入。

我們在來對比一下 “自定義價格”(customer Price) 矩陣表,以下,我們以美國 USD$ 0.99 價格點來分析一下:

2023-App-Store-Pricing-System-05.jpeg

從上圖我們有 2 種顏色,分別是 USD$ 0.99 和 USD$ 1.99,對應的部分國家和地區的全球均衡價格:

| USA (USD) | CHN (CNY) | HKG (HKD) | TWN (TWD)| MAC (USD)| JPN (JPY) | KOR (KRW) | |---|---|---|---|---|---|---| | 0.99 | 8 | 8 | 30 | 0.89 | 100 | 1100 | | 1.99 | 15 | 18 | 60 | 1.99 | 300 | 3300 |

可以看出來,USD$ 0.99 價格點,現在蘋果的全球均衡價格系統,認為在中國的價格是人民幣 RMB¥8。(注:如果用以前的價格等級(Price Tier)是 CNY¥6,JPY¥160)

所以,開發者需要注意!“自定義價格”(customer Price) 矩陣表,不再是一一對應關係,列表上的不同國家或地區,可以映射為價格相差很大的不同價格點! 那麼怎麼配置不同的價格點映射,下文會講到,這裏先跳過。

所以,現在明白蘋果説的以下 2 點內容了吧:

  • 遵循各個國家或地區最常見的定價方式
  • 提供更適用於當地顧客的定價

3.3 根據基準價格提供全球定價形式 --- 基準國家或地區

針對付費 App 和一次性 App 內購買項目,指定你熟悉的國家或地區,以之為基礎為其他 174 個國家或地區的店面以及 43 種貨幣生成全球均衡價格。你為這個基準店面設定的價格,Apple 不會根據税款或外匯變化進行調整。此外,你也可以按個人喜好為每個店面自行設定價格。

怎麼理解 基準店面設定的價格 呢?

我們以前配置 App Store 價格,是以價格等級(Price Tier) 美元為基準。很簡單就可以明白,那現在我們怎麼選擇國家/地區和貨幣為基準呢?

答案就是:根據我們上面介紹的 “自定義價格”(customer Price) 矩陣表和全球均衡價格系統。蘋果現在允許我們選擇 3 種定價方案策略:

  1. 全球價格調整:Apple 將為所有國家或地區提供相應價格,並可能根據税率或外匯匯率的變化在未來調整部分價格。
  2. 臨時價格調整:若想在特定國家或地區進行一段時間的促銷,建議採用此方法。在此期間,Apple 不會調整任何價格。
  3. 自定價格調整:你可以手動管理所有國家和地區的價格,或只管理特定國家或地區的價格。

2023-App-Store-Pricing-System-06.jpeg

3.3.1 全球價格調整

簡單來説,就是蘋果根據全球均衡價格系統,自動幫你調整不同國家或地區的更適用於當地顧客的定價,你不用操心!?

那麼,怎麼做到蘋果自動調整定價呢,就要開發者設定一個基準國家或地區。比如設置:

  • 基準國家或地區:中國大陸(CNY)
  • 基準價格:人民幣 RMB¥8

那麼蘋果的全球均衡價格系統,就會計算剩下的其他 174 個國家或地區的店面以及 43 種貨幣生成全球均衡價格。

這就是自動定價~ 但需要注意,此時,中國大陸作為基準,所以中國大陸的價格,並不會隨着全球匯率的變化而價格調整,因為,其它 174 個國家或地區的價格,要通過中國大陸的價格來計算匯率從面自動調整,明白了吧?

3.3.2 自定價格調整

就是你可以自由的不同國家或地區的價格點:

  • 全部國家或地區,開發者自己選擇自定的價格點
  • 部分國家或地區,開發者自己選擇自定的價格點,剩下的國家和地區,根據全球均衡價格系統自動調價

自定價格,可以理解為“固定”價格,相當於開發者寫死的價格,它不會跟進匯率和全球均衡價格系統的價格調整。

3.3.3 臨時價格調整

如促銷或匯率變化等原因,開發者可以選擇一段時間的一些國家或地區的價格調整,調整的方法為 自定價格調整

以上就是 基準國家或地區 的作用!

3.4 提供地區性定價方案 --- 銷售範圍

針對不同國家和地區的店面決定 App 內購買項目 (包括訂閲) 的銷售範圍,因此你可以為各個市場分發定製的內容和服務。

以前,蘋果 IAP 購買並不能限制購買的用户所在的國家或地區,IAP 配置只有一個勾選或不勾選“准許銷售”,用來決定內購商品是可以購買或不能購買。

現在蘋果允許開發者選擇 IAP 上架的國家或地區:

2023-App-Store-Pricing-System-07.jpeg

沒有勾選的國家或地區所在地的蘋果賬號,不能購買此 IAP 商店。(注:具體的規則和效果,下文會單獨講解。)

蘋果建議:

如果你計劃更改 App 內購買項目的銷售範圍,請考慮用户可能會受到的影響,以及如何妥善地通知用户。

為確保用户體驗,建議你先完成以下準備工作,再下架 App 內購買項目:

  1. 通知用户 App 內購買項目即將下架,並至少提前 31 天停止在 App 內銷售要刪除的 App 內購買項目。這一步的目的是讓用户有時間充分使用之前購買的消耗型 App 內購買項目產品。你可以通過電子郵件、網站公告和 App 內消息等方式來通知用户。
  2. 結束相應的推廣活動,以免更多用户購入該 App 內購買項目。
  3. 將下架 App 內購買項目的計劃告知 Apple。Apple 有權要求你為未完成的 App 內購買項目提供退款。

詳細參考:為 App 內購買項目設置銷售範圍

以上,就是蘋果 App Store 的新定價機制的全部內容!你理解了嗎,給一個點贊吧~

3.5 總結 App Store 新定價機制

新的 App Store 的定價機制的優點

  • 為了給開發者提供更多的定價選擇和靈活性,可以根據不同的國家或地區、市場需求和消費能力來設置合適的價格。
  • 為了讓開發者更容易管理匯率波動、税率變化等因素,避免造成收入損失或不公平。
  • 為了讓用户有更多的選擇空間和體驗,增加他們對 App 的興趣和滿意度。

缺點/不足:

  • 價格點太多,如果上架多個國家或地區,配置流程複雜
  • 2023 年 5 月 9 日後不再保留和支持使用 “價格等級”(Price Tier)

四、App Store 新定價機制的配置和規則

注意! 現在開發者,就可以針對已經上架或者準備上架的 App 設置價格,選擇基準國家或地區或銷售國家/地區等。

前面,我們提到,配置價格,有2個級別:

  • 付費 App
  • App 內購買/訂閲(IAP)

而定價方案,開發者可以選擇 2 個價格配置:

  • 全球價格:根據全球均衡價格系統,自動調價
  • 自定價格:開發者手動設置固定的價格點

下面,我們將從 3 個維度,分析不同場景下的配置區別:

  1. 開發者什麼都不配置(不處理)
  2. 開發者只設置 App 級別的基準國家或地區
  3. 開發者設置 App 級別和 IAP 級別的基準國家或地區

4.1 開發者什麼都不配置(不處理)

如果開發者現在已上架的 App 什麼都不處理,到 2023 年 5 月 9 日,現有 App 和一次性 App 內購買項目還沒有完成價格更新,那麼蘋果 將以產品當前在美國店面的價格為基礎,為它們生成相應的更新價格。

簡單來説,就是以美國(美元)為基準國家或地區,根據以前的價格等級(Price Tier)的美元價格,通過全球均衡價格系統,分別設置不同的國家或地區的價格。

4.2 開發者只設置 App 級別的基準國家或地區

如果開發者修改了 App 級別的 “基準國家或地區”,那麼未設置 IAP 基準國家或地區會繼承使用 App 級別的基準國家或地區

App 級別的 “基準國家或地區”,是指 ASC 的 App 下面的 價格與銷售範圍 標籤下配置。

那麼這個 App 下的所有未設置 IAP 基準國家或地區的內購買商品(IAP),都將以 App 級別的基準國家或地區,來自動計算不同國家或地區的全球價格。

舉例來説:

  • IAP 商品檔位 Tier 1: USD $0.99,對應人民幣 CNY ¥6
  • 基準國家或地區:App 級別設置為 中國;IAP 級別(未選擇)
  • 自定價格的國家或地區:無配置

以上的 IAP 商品,當 App 級別的基準國家或地區設置為中國大陸 時,IAP 的價格不會馬上進行調整。

當有新的價格平衡生效(全球均衡價格系統價格調整),例如目前蘋果確認 2023 年 5 月 9 日會生效!

根據目前蘋果全球均衡價格矩陣表,可以查到以中國大陸基準國家或地區 CNY ¥6最新的價格矩陣:

  • 美國 (USD):$0.99
  • 日本 (JPY):¥100

注:“全球均衡價格矩陣表”可參考 3.2 全球定價機制章節

所以,2023 年 5 月 9 日(新的價格平衡生效),這個 IAP 商品在美國還是 USD $0.99,但日本從等級價格(Tier 1 )原來的 JPY ¥160,變成全球均衡價格系統給出的 JPY ¥100。其它的國家或地區類似推導。

簡單來説,要先設置 IAP 商品的基準國家或地區。然後決定是否要使用全球均衡價格。否則,蘋果默認使用全球均衡價格系統,自動算各國家地區的價格,新價格可能會比原價格高,或者低,所以開發者需要自行檢查和決定。大家明白這個意思了吧?

4.3 開發者設置 App 級別和 IAP 級別的基準國家或地區

如果開發者設置了 IAP 內購買的基準國家或地區,則 IAP 內購買會以當前 IAP 的基準國家或地區為準。並且如果選擇全球均衡價格時,各國家地區的價格,會馬上生效!!!

舉例來説:

  • IAP 商品檔位 Tier 1: USD $0.99,對應人民幣 CNY ¥6
  • IAP 基準國家或地區:IAP 級別設置為 中國
  • 自定價格的國家或地區:無配置

根據目前蘋果全球均衡價格矩陣表,可以查到以中國大陸基準國家或地區 CNY ¥6最新的價格矩陣:

  • 美國 (USD):$0.99
  • 日本 (JPY):¥100

注:“全球均衡價格矩陣表”可參考 3.2 全球定價機制章節

注意此時此刻,這個 IAP 商品的各國家和地區的價格會馬上生效! 如在美國還是 USD $0.99,但日本從等級價格(Tier 1 )原來的 JPY ¥160,變成全球均衡價格系統給出的 JPY ¥100。其它的國家或地區類似推導。

簡單來説,目前蘋果的全球均衡價格系統已經可用啦!開發者設置 全球價格調整,則價格會根據全球均衡價格馬上調整並生效!

4.4 基準國家或地區的規則總結

所以,關於基準國家或地區的生效規則 總結:

  • App 級別的基準國家或地區沒有設定:以美國為準
  • 如果設置了 App 級別的基準國家或地區,則 IAP 內購買會以 App 級別的基準國家或地區為準【新的價格平衡時生效】
  • 如果設置了 IAP 內購買的基準國家或地區,則 IAP 內購買會以當前 IAP 的基準國家或地區為準【馬上生效】

4.5 銷售範圍的規則

目前 ASC 後台最新支持配置的銷售範圍,有 2 個級別:

  • App 級別的銷售範圍
  • App IAP 內購買項目的銷售範圍

4.5.1 App 級別的銷售範圍

  • 只是針對 App Store 是否可以下載的配置,跟內購商品是否可以購買無關
  • 在蘋果新機制實行前,內購商品是無限制地區,所有地區都能購買。(以前只能開發者自己根據用户 ip 或蘋果賬號地區等限制購買)

4.5.2 IAP 內購買項目的銷售範圍

  • IAP 內購商品的銷售範圍 是新增的配置項
  • 此配置項,與 App 級別的完全單獨,相互不影響。
  • IAP 內購商品的銷售範圍配置,是每個內購商品單獨配置,相互不影響。
  • 只有勾選的國家或地區,對應的用户 Apple ID 賬號才能購買和支付成功,否則無法購買。

4.6 App Store Connect API 支持

以上講到的配置,如果是全球發行的 App,那麼在 ASC 後台人工一個個配置會非常繁瑣,所以可以通過 App Store Connect API 進行配置:

  • 管理基準國家或地區
  • 管理付費 App 或 IAP 生效的國家或地區
  • 管理價格價格時間表
  • 讀取有效價格信息
  • 添加、修改或刪除 IAP

App Store Connect API version 2.3 支持以上新價格機制功能的自動化配置,另外可以下載 OpenAPI 規範文檔 瞭解接口的參數和格式要求等。

注:我們後續會單獨寫一篇文章來説明新 API 的使用示例,敬請期待和關注我們~

五、測試和疑問解答

5.1 蘋果全球均衡價格系統(新的價格平衡)調整的時間節奏

答:目前蘋果最新的調整時間為 2023 年 5 月 9 日。後續可能是每個季度調整一次,需要注意的是,不是每個國家或地區都會有價格調整,蘋果會定期在各地區根據税款和外幣匯率變化更新定價,會根據金融數據機構提供的公開匯率信息更新定價,確保 App 內購買內容的定價在所有商店中保持平衡。

App Store 的全球平衡工具將為開發者提供簡單便利的方式,在國際市場中管理定價。當然,開發者可隨時根據税款和外幣匯率的變化自行調整定價。

5.2 訂閲類型價格調整

蘋果在去年 2022 年 5 月 16 日的 訂閲通知更新 公告中説明:當自動續期訂閲提價時,訂閲者必須在 App 提價之前選擇接受。

所以,根據蘋果全球均衡價格系統,如果自動調整價格是漲價會怎麼樣呢?

答:需要訂閲者同意的情況:

  • 訂閲者所在的地區要求任何價格變動都需要徵得訂閲者的同意。
  • 價格漲幅:
    • 超過當前價格的 50%,並且每期的價格變動超過下方列出的門檻值。
    • 門檻值:非年度訂閲約為 5 美元,年度訂閲約為 50 美元。
    • 對於不使用美元定價的地區,門檻值將按當前匯率換算得出。請注意,門檻值會隨外匯匯率和税務政策的變化而變動。查看 各個國家或地區的價格漲幅門檻值
  • 在過去 12 個月內,訂閲者經歷過一次該訂閲的價格上調。

詳細參考官方文檔:管理自動續期訂閲的定價

5.3 新創建的 App 或 IAP 項目的配置

新創建的 App 或 IAP 內購買項目,蘋果默認都沒有配置銷售範圍和價格時間表,需要開發者按最新的定價規則進行配置:

2023-App-Store-Pricing-System-08.jpeg

5.4 限制銷售範圍

如果蘋果後台配置了限制地區,當限制地區的用户點擊 App 內購買項目支付時,蘋果 StoreKit 會有相應的異常錯誤,表示用户當前賬號地區不在銷售範圍內。

筆者使用線上 App 的 IAP 項目測試,結果如下:

  • App 級別有選擇的地區,但 IAP 項目不在銷售的地區:不能購買
  • App 級別有選擇的地區,且 IAP 項目在銷售的地區: 可以發起支付
  • App 級別沒有選擇的地區,且 IAP 項目不在銷售的地區:不能購買
  • App 級別沒有選擇的地區,但 IAP 項目在銷售的地區: 可以發起支付

所以,一句話總結,IAP 項目不在銷售的地區,該地區的蘋果賬號無法完成購買支付!

蘋果 StoreKit 會有相應的異常錯誤,會在 2 個支付環節報錯:

  1. productsRequest(_:didReceive:) 方法回調的 SKProductsResponse 中有一個 invalidProductIdentifiers 屬性,當數組有值時,裏面包含的 IAP 項目就是不在當前用户登陸的 App Store 商店賬號的國家或地區銷售的 IAP 項目。
  2. paymentQueue(_:updatedTransactions:) 方法回調的 SKPaymentTransaction 中有一個屬性 SKPaymentTransactionState ,當狀態為 .failed 時,從 error 屬性會有一個 "不提供此項目。" 錯誤異常。

以下是 SKPaymentTransactionState 報錯內容的示例:

swift print("paymentQueue: error: \(transaction.error)");

中文環境: objc <SKPaymentQueue: 0x2824b0250>: Payment completed with error: Error Domain=ASDServerErrorDomain Code=3502 "不提供此項目。" UserInfo={storefront-country-code=CHN, client-environment-type=Sandbox, AMSServerErrorCode=3502, NSLocalizedDescription=不提供此項目。}

日文環境: objc <SKPaymentQueue: 0x2809d5d30>: Payment completed with error: Error Domain=ASDServerErrorDomain Code=3504 "このアイテムは見つかりませんでした。" UserInfo={storefront-country-code=JPN, client-environment-type=Production, AMSServerErrorCode=3504, NSLocalizedDescription=このアイテムは見つかりませんでした。}

為什麼會在 2 個支付環節報錯呢?

因為這樣才能保證不會存在支付漏洞,很多開發者或非法用户,可能跳過 productsRequest(_:didReceive:) 方法查詢當前 IAP 項目是否在用户地區銷售,但如果開始時,用户登陸了 AppStore 賬號,而且是銷售的地區時,是可以查詢到商品的信息,蘋果不會回調 invalidProductIdentifiers,所以當時用户購買時,蘋果系統還會驗證一次最終用户登陸的賬號是否在銷售地區裏。

另外,蘋果這次是調整價格機制,對於 StoreKit Original API 還是 StoreKit 2,字段和收據都沒有變化!使用的字段都是以前就存在。另外,StoreKit 2 products(for:) 大家可以自行測試,原理類似通過 StoreKitErrorProduct.PurchaseError.productUnavailable 獲取異常錯誤。

5.5 銷售範圍的生效時間

  • 從非銷售地區,添加到銷售地區
  • 從銷售地區,移除為非銷售地區

答:目前測試發現大概30 分鐘左右生效。(線上和測試環境)

5.6 匯率差問題解決了嗎

答:匯率差解決了,但開發者需要注意價格漏洞

因為,現在開發者可以設置不同國家或地區的價格,如果你的 App 是全球銷售,並且你設置的不同國家的價格點有很大的差異,比如 USD $9.99,而 CNY ¥6,那麼必然用户或黑產,會大部使用中國大陸地區進行購買。

這裏需要注意,黑產囤貨,比如內購收據會大批量保留不消耗,然後銷售給用户的問題。

所以,現在開發者設置不同國家或地區的價格點,需要考慮清楚銷售的國家或地區,還有銷售的價格。

5.7 獲取真實的本地化貨幣

通過 StoreKit 查詢到的商品本地化信息是否可靠?比如用户登陸的 App Store 賬號登出,購買 IAP 時,系統會要求用户重新登陸賬號,此時前後賬號的國家地區不一樣,就會導致查詢到的貨幣不一樣。

答:雖然蘋果發佈了新的價格機制,並且推出蘋果全球均衡價格系統,本質就是計算各國的匯率換算,但是目前為止,蘋果依然沒有提供匯率換算的 API,當然也包含當前購買的本地化貨幣。所以,目前並沒有 100% 可靠方案。

六、總結

2023 年 3 月 9 日發佈,到 2023 年 5 月 9 日新的價格平衡生效,蘋果提供了 2 個月的過渡期。所以建議開發者:

  • 瞭解最新的 “蘋果全球均衡價格” 矩陣表
  • 為 App 或 IAP 設置 “基準國家或地區” (可選)
  • 為需要特定國家或地區設置 “自定價格” (可選)

如果在這 2 個月內,開發者什麼都不設置,那麼過渡期間現在的所有國家和地區的價格不會變化。直到 5 月 9 日新的價格平衡生效,蘋果會自動設置基準國家或地區為“美國”,並使用全球均衡價格調整各個國家和地區的價格點。

所以,在這段過渡期,開發者需要思考如何配置適合的價格點,從而提高你的 App 的銷售和用户滿意度,進一步推動業務增長。

從本文讀者們可以看出來,App Store 定價機制涉及面非常廣!本文只是從整體上讓大家掌握原理,不可能面面具到詳細介紹。所以,還有一些細節或疑問,歡迎大家在評論區一起交流~

App Store 問世以來,憑藉領先的交易和支付機制,幫助開發者便捷地在全球範圍內為其產品和服務進行定價與銷售。從為用户提供順暢結算和明晰收據到強大的營銷工具、税務與防欺詐服務以及退款管理,App Store 的交易和支付機制為開發者提供了不斷拓展的功能和工具,幫助他們發展業務。

如今新的價格機制,相信開發者現在可以應對自如啦!讓我們提升用户的付費體驗吧!


歡迎大家評論區一起討論交流~

歡迎關注我們,瞭解更多 iOS 和 Apple 的動態~

參考引用

本文使用 ChatGPT 、New bing 和 NotionAI 參與創作! 如果內容有抄摘或複製,反饋則刪除。感謝大家的閲讀~