Strategie integrace

Apple a nový typ předplatného: Skryté riziko pro výplaty

Nový 12měsíční závazek od Applu může způsobit chyby ve výplatách. Zjistěte, jak upravit logiku, abyste se vyhnuli přeplatkům či nedoplatkům.

#Slepá skvrna v hodnotě 131,88 $ v novém typu tarifu od Applu

Apple v roce 2026 uvedl typ předplatného, který na obrazovce zákazníka vypadá jako běžný měsíční tarif, ale v datech, která dostává váš server, vypadá úplně jinak. Pokud vaše logika pro výpočet provizí nedokáže tyto dva typy rozlišit, dostanete se do jedné ze dvou nepříjemných situací: buď vyplatíte bonus za milník dvanáctkrát, nebo influencerovi nevyplatíte nic za příjmy, které jste skutečně obdrželi.

Dotčený tarif umožňuje předplatiteli zavázat se k 12měsíčnímu využívání služby, přičemž je mu účtována částka jednou měsíčně v rámci roční slevy rozprostřené do 12 plateb. Apple tento tarif oznámil v dubnu 2026 a v květné téhož roku jej spustil po celém světě (s výjimkou USA a Singapuru).

Příklad, který Apple sám používá ve vývojářské dokumentaci: roční cena 131,88 $ účtovaná jako 12 měsíčních splátek. To je číslo, na kterém celý tento model stojí.

131,88 $cena závazku, kterou Apple použil ve svém příkladu 12měsíčního předplatnéhoApple, WWDC26 "What's new in Apple In-App Purchase"

#Jak jsme tento model sestavili (a proč je to model, nikoliv živá čísla)

Vše níže uvedené je aritmetický výpočet založený na veřejně dostupném čísle, nikoliv na zákaznické účetní knize. Apple ve své relaci na WWDC použil částku 131,88 $ jako celkovou cenu závazku za 12měsíční předplatné s měsíční fakturací. Pokud tuto částku vydělíte 12, získáte splátku přibližně 10,99 $, což je „měsíční cena“, se kterou tato analýza pracuje.

Následně jsme aplikovali reálnou výši provize a bonus za milník (typu, který by obsahovala skutečná kampaň), abychom viděli, co se stane ve třech scénářích: správné vyplacení, chybná výplata jedním směrem a chybná výplata druhým směrem. Nic z toho nepochází z transakční historie InfluTo. Je to stejná matematika, kterou si můžete přepočítat s vlastními cenami a podmínkami provizí v kalkulačce níže.

#Co se skutečně změnilo: Apple nyní označuje obnovení typem závazku

Každá transakce StoreKit nyní obsahuje pole s názvem billingPlanType. Většina předplatných stále dostává výchozí hodnotu .upFront, což znamená, že se pro ně z hlediska načasování plateb nic nezměnilo. Předplatitel si však nyní může zvolit novou možnost, která toto pole nastaví na .monthly a připojí druhou strukturu, commitmentInfo, obsahující průběh závazku, datum vypršení a celkovou cenu (Apple, WWDC26).

Jednoduše řečeno: předplatiteli je účtováno měsíčně, ale je vázán na rok, a Apple to nyní u transakce explicitně uvádí. Pole RenewalInfo získalo ekvivalentní pole i pro obnovení. Jakýkoliv systém vytvořený před květnem 2026, kdy byla tato funkce zpřístupněna, předpokládal, že předplatné je buď měsíční, nebo roční, a nic mezi tím. Tento typ tarifu je třetí variantou skrývající se v „měsíčním“ balíku a kód, který se nenaučil ji hledat, ji bude chybně považovat za jednu z těch dvou původních.

#Chyba č. 1: Bonus za milník, který se aktivuje každý měsíc místo jednou

Opakované provize jsou zde obvykle v bezpečí. Deduplikace, která vychází z originalTransactionId od Applu (identifikátor propojující každé obnovení s původním nákupem), funguje stále stejně: každé obnovení je samostatná transakce, ale všechny sdílejí stejné kořenové ID, takže systém nastavený na deduplikaci podle původu nebude opakovanou provizi započítávat dvakrát.

Bonusy za dosažení milníku jsou jiný příběh. Pravidlo typu „vyplať 25 $ při dosažení 6. měsíce předplatného“ je často nastaveno tak, že se spouští na základě počítadla období, nikoliv na základě „byl již tento bonus pro tohoto předplatitele vyplacen“. Pokud toto počítadlo pochází z nové struktury závazku a vaše kontrola zároveň neověří, zda již bonus nebyl pro danou transakční linii vyplacen, bude se při každém obnovení po zbytek závazku vyplácet znovu.

Modelový příklad: správná výplata vs. bonus za milník, který se duplikuje (na základě příkladu Applu se 131,88 $, 20% provizí, 25$ bonusem a 12 obnoveními)
ScénářOpakovaná provize (12 měs.)Bonus za milníkCelkem vyplaceno
Správná výplata26,38 $25,00 $ (jednou)51,38 $
Bonus se aktivuje při každém obnovení26,38 $300,00 $ (12x)326,38 $

Kalkulačka rizika výplat závazků

Zadejte podmínky předplatného a podívejte se na skutečný finanční rozdíl mezi správnou výplatou, bonusem, který se chybně aktivuje při každém obnovení, a transakcí, která tiše selže.

6 měs.
Období závazku 1–12 měsíců
Základ Správná výplata $0.00 Referenční částka
Pokud se bonus aktivuje dvakrát $0.00
Pokud tiše selže $0.00

Scénář tichého selhání předpokládá, že platební procesor transakci zcela zahodí, takže není vyplacena ani opakovaná provize, ani jednorázový milníkový bonus.

#Chyba č. 2: Když influencer nedostane zaplaceno vůbec

Opačná chyba je nenápadnější a snáze přehlédnutelná, protože systém nehavaruje. Prostě jen ztichne.

Pokud váš validační kód rozpoznává pouze pevnou sadu hodnot billingPlanType, neznámá struktura – tedy .monthly spárované s vyplněným commitmentInfo – může být ignorována namísto zpracování. Žádná chyba, žádné upozornění. Transakce se prostě nikdy nedostane k vaší logice pro výpočet provizí, takže opakovaná provize není vyplacena a bonus za milník nemá šanci se aktivovat.

A balance scale with coins piled on one side and nothing on the other, symbolizing overpayment versus missed payment.

Tato chyba zakladatele přímo nestojí peníze. Stojí ovšem influencera veškeré výdělky z daného předplatitele, a to tiše, po celou dobu trvání předplatného. To je pro důvěru horší výsledek než přeplatek, protože si toho nikdo nevšimne, dokud se influencer nezačne ptát, proč skupina doporučení z „12měsíčního tarifu“ vykazuje nulové příjmy. Hlubší technické detaily o tom, proč je identita transakce v obchodu klíčová pro správné připsání provize, naleznete v našem doplňujícím článku o Store-Direct deduplikaci.

#15minutový kontrolní seznam pro Store-Direct verifikaci

Toto je důležité pouze v případě, že využíváte cestu InfluTo Store-Direct a čtete surové odpovědi App Store Server API nebo StoreKit namísto atributů webhooků RevenueCat. Proveďte tuto kontrolu u skutečného předplatného ještě dnes:

::checklist

  • Vytáhněte jednu dekódovanou transakci aktivního předplatitele a zkontrolujte pole billingPlanType. Je vždy .upFront, nebo jste již narazili na .monthly?
  • Pokud jste narazili na .monthly, ověřte, zda je vyplněno commitmentInfo a zda váš kód s touto informací pracuje, místo aby automaticky předpokládal, že každá měsíčně účtovaná transakce je běžné opakované předplatné.
  • Zkontrolujte spouštěč bonusu za milník: vychází z logiky „byl již tento bonus pro danou transakční linii vyplacen“, nebo jen z počítadla období, které v rámci nového tarifu mění svůj význam?
  • Zkontrolujte, jak váš parser nakládá s neznámými hodnotami billingPlanType. Vyvolá neznámá hodnota chybu, nebo je tiše zahozena?
  • Spusťte nákup v sandboxu s využitím 12měsíčního závazku a potvrďte, že se jak opakovaná provize, tak bonus za milník aktivují přesně jednou napříč několika obnoveními. ::
Abstract timeline of twelve connected renewal points branching into two diverging paths.

Pro přesné mapování polí JWS se podívejte na náš specializovaný technický článek, kde vše procházíme řádek po řádku: /blog/apple-12-month-commitment-store-direct-dedup/.

#Pokud používáte RevenueCat namísto Store-Direct

Pokud využíváte cestu InfluTo přes RevenueCat, toto konkrétní riziko se vás většinou netýká. RevenueCat abstrahuje události předplatného do atributů předplatitele a webhooků, takže surová pole billingPlanType nebo commitmentInfo sami neparsujete. RevenueCat navíc potvrdil, že nový tarif spadá pod stejné ID produktu jako stávající roční varianta.

Jediné, co stojí za ověření, je to, zda používáte aktuálně podporovanou verzi SDK, protože mapování pro tento typ tarifu existuje pouze ve verzích vydaných po spuštění v květnu 2026. Pokud je vaše SDK starší, zeptejte se přímo svého poskytovatele, místo abyste předpokládali, že je to vyřešeno.

#Co to znamená pro vaše budoucí výplaty

Jde o dočasnou záležitost, nikoliv o trvalé nebezpečí. Většina aplikací zatím 12měsíční tarif se závazkem nenabízí a ty, které jej nabízejí, se soustředí do měsíců těsně po WWDC26. Pokud jste však mezi nimi, řešením je revize kódu, nikoliv migrace.

Dva popsané typy chyb jsou specifické pro tento nový tarif. Obecné dvojí započítávání obnovení, ke kterému dochází i u běžných měsíčních předplatných, je samostatný a častější problém, kterému se věnujeme v článku Stop Paying Influencers Twice on the Same Renewal. Pokud přemýšlíte o struktuře provizí šířeji, dalším vhodným čtením je Pay Influencers by Revenue? One Purchase Could Pay Two.

Cesta InfluTo Store-Direct umožňuje aktivní pouze jednu validační cestu a deduplikuje nákupy podle identity transakce v obchodu, takže se nestane, že by jedno obnovení bylo připsáno dvěma influencerům nebo platformou započítáno dvakrát. Sice to neopraví chybu v logice vašeho bonusu za milník v kampani, ale eliminuje to vrstvu identity jako možný zdroj problémů.

Změní se tím způsob, jakým jsou účtována nebo připisována moje stávající měsíční předplatná bez závazku?

Ne. Předplatná bez nové možnosti závazku si ponechávají výchozí hodnotu billingPlanType a chovají se úplně stejně jako dříve.

Jak poznám, který z mých předplatitelů si vybral nový 12měsíční závazek oproti běžnému měsíčnímu tarifu?

Zkontrolujte pole billingPlanType u transakce. Hodnota .monthly s vyplněným commitmentInfo znamená, že využívají tarif se závazkem; .upFront znamená, že nikoliv.

Mění se 72hodinové okno pro atribuci u předplatitelů s tarifem se závazkem?

Ne. Načasování atribuce nesouvisí se strukturou fakturace; je založeno na tom, kdy došlo k instalaci nebo nákupu, který vedl k doporučení.

Co se stane s provizí influencera, pokud předplatitel zruší předplatné v průběhu 12měsíčního závazku podle pravidel Applu pro předčasné ukončení?

To závisí na vašich vlastních pravidlech pro zrušení předplatného a refundace, nikoliv na samotném tarifu se závazkem. Podmínky Applu pro předčasné ukončení ovlivňují fakturaci předplatitele, nikoliv to, jak by měl váš systém nakládat s již vyplacenými provizemi.

Zdroje

  1. Now Available: Monthly Subscriptions with a 12-Month Commitment - Apple Developer
  2. What's new in Apple In-App Purchase - WWDC26
  3. originalTransactionId | Apple Developer Documentation
  4. Apple Monthly Subscription 12-Month Commitment Explained
JH
Jan Horák — Zakladatel a vývojář InfluTo

Jan vyvíjí InfluTo a využívá ho pro své portfolio aplikací. Píše o tom, jak atribuce skutečně vypadá v záznamech webhooků: co nefunguje, co konvertuje a co SDK vidí a co nikoliv.

Čtěte dále → Validace předplatného: RevenueCat vs. Store-Direct Strategie integrace · 6 min čtení