Guideline 3.1.2: előfizetés miatt elutasított app
Írta: Mehdi Azizi
Megjelent: , 9 p
Guideline 3.1.2: a ténylegesen levont összeg legyen a paywall legfeltűnőbb ára, időtartammal, megújulással és ÁSZF-linkekkel. Két valós elutasítás és javításuk.
A 3.1.2-es guideline az automatikusan megújuló előfizetésekre vonatkozik. Ha az Apple erre hivatkozik, két dolgot ellenőrizz: a ténylegesen levont összegnek kell a paywallod legfeltűnőbb árának lennie, és az appnak, illetve az adatlapjának is meg kell adnia az időtartamot, az árat, valamint működő linkeket a felhasználási feltételeidhez és az adatvédelmi szabályzatodhoz.
2026 októberében két appomra is megkaptam ezt az elutasítást: a Solysra 10-én, a TradaZenre 12-én. Mindkétszer ugyanaz a megjelenítés volt a gond: nagy betűvel egy heti ár, apróval a valódi levont összeg. Itt a szabály szövege, a két eset, aztán a check-lista, amit most már használok. A többi okért olvasd el, miért utasítja el az Apple az appokat.
Mit mond a 3.1.2-es guideline?
A 3.1.2, „Subscriptions”, az App Review Guidelines 3. „Business” szakaszában, a 3.1 „Payments” részben található. Innen jön az e-mail tárgya: „Guideline 3.1.2 - Business - Payments - Subscriptions”. Három bekezdése van, és a zárójeles betű megmondja, hol keresd a hibát.
| Bekezdés | Mit követel az Apple | A tipikus elutasítás |
|---|---|---|
| 3.1.2(a) Permissible uses | Folyamatos érték, legalább 7 nap | Előfizetés változó tartalom nélkül |
| 3.1.2(b) Upgrades and Downgrades | Csomagváltás dupla fizetés nélkül | Két csomag egyszerre fizetve |
| 3.1.2(c) Subscription Information | Mit kap a felhasználó, és milyen áron | A számított ár nagyobb, mint a levont |
A 3.1.2(c) szövege rövid. Mielőtt valakit előfizetésre kérsz, „clearly describe what the user will get for the price”: világosan le kell írnod, mit kap ezért az árért. Ezután a fejlesztői program licencszerződésének 2. mellékletére (Schedule 2) hivatkozik. Ez a melléklet sorolja fel, mit kell „clearly and conspicuously”, vagyis világosan és jól láthatóan megjelenítened:
- az előfizetés nevét;
- az időtartamát;
- az árát, és ha releváns, az egységárat;
- linkeket az adatvédelmi szabályzatodhoz és a felhasználási feltételeidhez, az appon belül elérhetően.
Az árak méretére vonatkozó szabály az Apple előfizetésekről szóló oldalán van. A vásárlási folyamatban „the amount that will be billed must be the most prominent pricing element in the layout”: a levonandó összegnek kell a legfeltűnőbb árelemnek lennie. Havi egyenérték vagy megtakarítás továbbra is megengedett, ha másodlagos helyen és kisebben szerepel. Ugyanez az oldal ingyenes próbaidőszaknál azt kéri, hogy add meg a hosszát és a végén levont árat.
A két 3.1.2(c) elutasítás, amit kaptam
Solys: 0,38 € nagyban, 19,99 € kicsiben
A Solys az ébresztőórám, ami elaltatja a közösségi médiádat. Az onboarding paywallján az „Éves” kártyán „0,38 €/hét” állt 21 pontos, félkövér betűvel. Alatta, 15 pontban: „azaz 19,99 €/év”. Csakhogy 19,99 €-t von le, nem 0,38 €-t.
- október 10-én az Apple a 3.1.2(c)-re hivatkozva elutasítja a verziót. Az üzenet azt kéri, hogy a levont összeg legyen a legvilágosabb és legfeltűnőbb árelem. Az ingyenes próbaidő, a bevezető ár és a számított árak maradjanak ennek alárendelve. Az Apple felsorolja a szempontjait: betűtípus, méret, szín és elhelyezés.
Ezt a megjelenítést tudatosan tartottam meg: a TradaZen egy korábbi, ugyanerre az elvre épülő verzióját elfogadták. Fogadás volt, és egy review-körbe került.
A javítás: „19,99 €/év” nagyban, „azaz 0,38 €/hét” szürke feliratként alatta, az app mind a 30 nyelvén. Mivel a paywall a kódban van, új build kellett, mielőtt újra beküldtem a verziót.
TradaZen: ugyanaz az ok, két nappal később
A TradaZen a tőzsdeszimulátorom. 2026. október 12-én az 1.5.1-es verziót ugyanezen szabály miatt utasítják el. Az üzenet egy „weekly calculated” árról beszél, amely „more clearly and conspicuously than the billed amount” jelenik meg: a heti egyenérték feltűnőbb volt a levont összegnél.
Az első javításom nem volt elég, és ezt még beküldés előtt észrevettem. A „0,92 €/hét”-et kisebbre vettem, de jobb oldalon hagytam, az ár sorában. Csakhogy a heti előfizetés kártyája ugyanebben az oszlopban mutatta a valódi árát: „8,99 €/hét”. A két összeg egyenrangúnak tűnt. Ha egy számított ár a valódi árak oszlopában áll, levont árnak olvassák, még kicsiben is.
A végleges javítás: minden kártyán nagyban, jobb oldalon áll a levont összeg. A heti ár szürke feliratként kerül alá. Bal oldalon csak a csomag neve. A következő review-n az Apple már nem kifogásolta a 3.1.2(c)-t.
Az app további tanulságait a TradaZen esettanulmányban találod.
Mit utasított el az Apple, és mi ment át
Itt vannak a valós megjelenítések, sorrendben, az eredményükkel.
| Az ár megjelenítése | Eredmény |
|---|---|
| TradaZen, korábbi verzió: a heti ár kiemelve | Egy korábbi review-n elfogadva |
| Solys: „0,38 €/hét” félkövéren, „19,99 €/év” alatta | Elutasítva 2026.10.10-én, 3.1.2(c) |
| TradaZen 1.5.1: a heti ár feltűnőbb a levontnál | Elutasítva 2026.10.12-én, 3.1.2(c) |
| TradaZen: kisebb heti ár, de az árak oszlopában | Beküldés előtt én vetettem el |
| TradaZen: levont összeg nagyban jobbra, heti ár feliratként | A következő review-n már nem kifogásolták |
| Solys: „19,99 €/év” nagyban, heti ár szürke feliratként | Javítva és újra beküldve az Apple-nek |
Az első sor a legfontosabb. Egy elfogadott review nem hagyja jóvá a paywallodat a következőre. Minden verzió újra egy reviewer elé kerül, aki szigorúbban is olvashatja a szabályt, mint az előző. Az egyetlen biztonságos megjelenítés az, amelyik betartja a szöveget.
A levont összeg az egyetlen nagy ár. Minden egyenérték, legyen heti, havi vagy napi, kisebb és halványabb felirat, soha nem a helyén áll.
A 3.1.2-nek megfelelő paywall check-listája
Ezt a listát futom végig most minden appom minden paywallján, minden beküldés előtt:
- Minden kártyán a levont összeg a legnagyobb, legkontrasztosabb és legjobb helyen lévő ár.
- Minden számított ár (heti, havi, napi) felirat, kisebb és halványabb, a levont összeg alatt.
- Egyetlen számított ár sem áll abban az oszlopban, ahol egy másik csomag a valódi árát mutatja.
- Az időtartam egyértelműen ki van írva: „évente”, „hetente”.
- Az ingyenes próbaidő megadja a hosszát és a próbaidő végén levont összeget.
- Egy mondat közli, hogy az előfizetés automatikusan megújul, és az Apple-fiók beállításaiban mondható le.
- Hogy mit old fel az előfizetés, az a vásárlás gomb előtt szerepel.
- Egy „Restore Purchases” gomb látható a paywallon.
- A felhasználási feltételekre és az adatvédelmi szabályzatra mutató linkek a paywallon vannak, és megnyílnak.
- Ha több csomagot kínálsz, azok egyetlen előfizetési csoportban vannak, ahogy az Apple javasolja.
- A megjelenést a legkisebb iPhone-on és a leghosszabb árral is ellenőrzöd. A TradaZennél vietnámi dongban tesztelem az árat: egy sortörő összeg tönkreteszi a hierarchiát.
Ha a RevenueCat paywalljait használod, a RevenueCat dokumentációja ugyanerre figyelmeztet: egy havi ár változó önmagában nem elég, ha a levont összeg és a gyakorisága máshol nem jelenik meg. A teljes bekötés a RevenueCat: in-app előfizetés beállítása cikkben van, a tervezési hibák pedig az iOS paywall: 7 kezdő hiba cikkben.
Az ÁSZF- és adatvédelmi linkek: az appban és az adatlapon
A 3.1.2-es elutasítás másik formája nem a paywallt, hanem a metaadatokat érinti. A fejlesztők által az Apple fórumain közzétett üzenetek pontosítják az elvárt helyet: az adatvédelmi szabályzat linkje az App Store Connect erre szolgáló mezőjébe kerül, a felhasználási feltételeké (EULA) a leírásba vagy az EULA mezőbe.
A csapda a standard szerződésből jön. Az App Store Connect súgója szerint ha nem adsz meg egyedi szerződést, az Apple standard szerződése érvényes, és „the license agreement link isn't shown on your App Store product page”: semmilyen link nem jelenik meg az adatlapodon. Ha a standard szerződést használod, neked kell a linkjét a leírásba tenni, a saját feltételeid oldalára vagy az Apple standard licencszerződésére.
Az előfizetéses appjaimnál a leírást két sorral zárom, az adatlap minden nyelvén. Itt a sablon, igazítsd az ajánlatodhoz és a domainedhez:
7 napos ingyenes próbaidő, utána éves vagy heti előfizetés,
bármikor lemondható.
Feltételek: https://your-domain.com/terms
Adatvédelem: https://your-domain.com/privacy
Mielőtt beilleszted, nyisd meg mindkét linket: egy nem található oldal ugyanannyit ér, mint a hiányzó link. Hogy mit kell tartalmaznia a szabályzatnak, azt az alkalmazás adatvédelmi szabályzata cikk részletezi, az adatlap többi részét pedig az ASO App Store oldal.
Ez új build nélkül javítható: a leírás és az App Store Connect mezői metaadatok.
3.1.2(a): az előfizetésnek folyamatos értéket kell adnia
A másik bekezdés, ami miatt elutasítanak, a modellt célozza, nem a képernyőt. A 3.1.2(a) „ongoing value”-t kér: időben folyamatos értéket. Az időszak legalább hét nap, és az előfizetés a felhasználó összes eszközén működik. Az előfizető további feladat nélkül megkapja, amiért fizetett, például nem kell posztolnia egy közösségi oldalon.
Ha az appod egyszeri szolgáltatást nyújt, lehet, hogy egy egyszeri vásárlás jobban illik hozzá. A két modellt az előfizetés vagy egyszeri vásárlás cikk hasonlítja össze.
Mit válaszolj az Apple-nek egy 3.1.2-es elutasítás után
A beszélgetés az appod App Review szekciójában zajlik. Az App Review-nak való válaszadás menete ugyanaz, mint a többi szabálynál. Két eset lehetséges:
- A probléma az appban van (árak mérete, a paywall szövegei): új build kell, mint a Solysnál és a TradaZennél. A reviewer a beépített kódot teszteli, ezt a 2.1-es guideline-ról szóló útmutatóban magyarázom el.
- A probléma az adatlapon van (hiányzó vagy halott linkek): javítod a metaadatokat, válaszolsz, és ugyanaz a beküldés megy tovább.
Angolul írj, tárgyilagosan: mi volt a gond, mi változott, hogyan ellenőrizhető. Ezt a sablont használom (cseréld a build számát, az árakat és a folyamatot a sajátodra):
Hello,
Thank you for your review.
Issue: on the paywall, the weekly equivalent price was displayed
more prominently than the billed amount.
Fix in build X:
- Each plan now shows its billed amount (e.g. "€19.99/year")
as the largest price on the card.
- The weekly equivalent is a smaller grey caption below it.
- The paywall states the duration, the auto-renewal, and links
to our Terms of Use and Privacy Policy.
How to verify: launch the app and complete the onboarding.
The paywall appears at the end.
Best regards,
Javítsd a paywalladat a következő beküldés előtt
Ha az appodat most utasították el 3.1.2 miatt, az Apple Review Kit segít megtalálni a hivatkozott szabályt, hogy mit kér, és ad egy példát a javításra és a válaszra. A Claude Code skilljei beküldés előtt át is nézik a paywalladat és az adatlapodat. Ha emberi szemre van szükséged, foglalj velem egy órát: elolvassuk az Apple üzenetét, és a képernyődön átdolgozzuk a paywallt. A teljes folyamat az Apple által elutasított alkalmazás oldalon van, az előfizetés beállítása pedig az iOS in-app előfizetés oldalon.
Ha az első megjelenésedre készülsz, csináld meg az ingyenes diagnózist: sorba rendezi a lépéseket, és elküldi az Apple-elutasítás elleni check-listámat. Ha olyan mobilalkalmazást akarsz készíteni, ami a megjelenéstől bevételt hoz, az iOS Kit harmadik lépése, a „pénz bekötése”, az előfizetéssel és a paywall-lal foglalkozik.
Senki nem garantálhatja, hogy az Apple elfogadja az appodat. Amit tehetek: megkíméllek attól a 3.1.2(c)-s elutasítástól, amiért én kétszer fizettem.
Gyakori kérdések
Mit jelent a „Guideline 3.1.2 - Business - Payments - Subscriptions”?
Ez az előfizetésekre vonatkozó szabály teljes neve. Rosszul rangsorolt árat, a paywallról hiányzó információt, az adatlapról hiányzó linket vagy folyamatos érték nélküli előfizetést jelez. A zárójeles betű, például a 3.1.2(c), megmutatja az érintett bekezdést.
Megjeleníthetek még heti vagy havi árat?
Igen. Az Apple megenged heti vagy havi egyenértéket, vagy megtakarítást, ha ezek kisebbek és kevésbé feltűnőek, mint a ténylegesen levont összeg. Az appjaimban az egyenérték szürke felirat a levont ár alatt, soha nem a valódi árak oszlopában.
Kell új build egy 3.1.2-es elutasítás után?
Igen, ha a probléma a paywallon van, hiszen a reviewer a beépített kódot teszteli. Nem, ha az adatlapon, például egy link hiányzik a leírásból: javítod a metaadatokat, és ugyanaz a beküldés megy tovább.
Hová tegyem a felhasználási feltételek (EULA) linkjét?
Az appban, a paywallra. Az adatlapon a leírásba, vagy az App Store Connect EULA mezőjébe, ha egyedi szerződésed van. Az Apple standard szerződésével semmilyen link nem jelenik meg az adatlapodon: tedd be te magad a leírásba, minden nyelven.
A paywallomat már elfogadták, miért utasítják el most?
Mert minden verzió újra review-n megy át, néha egy másik reviewer előtt. A TradaZennél egy kiemelt heti árat elfogadtak, aztán 2026 októberében a Solysnál és a TradaZennél is elutasították. Csak a szabály szövege véd meg.