Introductory offer ב-App Store Connect: ניסיון חינם ב-iOS
מאת Mehdi Azizi
פורסם ב-, 8 דק׳
Introductory offer היא תקופת הניסיון החינמית או המחיר המוזל בתחילת מנוי iOS, פעם אחת לכל קבוצה ולכל חשבון Apple. ככה יוצרים ומציגים אותה.
Introductory offer, או הצעת היכרות, היא מחיר הפתיחה של מנוי שמתחדש אוטומטית: ניסיון חינם, תשלום מראש או תשלום לפי תקופה. כל לקוח זכאי לה רק פעם אחת לכל קבוצת מנויים, אז האפליקציה שלך צריכה לבדוק זכאות לפני שהיא כותבת "ניסיון חינם". יוצרים אותה בעמוד המחירים של המנוי, וה-paywall שלך חייב להציג בבירור את משך ההצעה ואת המחיר שיחויב אחריה.
ב-Solys וב-TradaZen, הניסיון החינמי של 7 ימים יושב על המנוי השנתי. לתוכנית השבועית אין ניסיון. הנה שלושת סוגי ההצעות, מי זכאי להן, איך יוצרים אותן, ואז שתי טעויות שעשיתי בתצוגה. המונח "הצעת השקה" מתייחס לרוב לאותו דבר, כולל במדריך שלי על טעויות ב-paywall.
מה זה introductory offer?
העזרה של App Store Connect מגדירה אותה כמחיר מוזל או ניסיון חינם, מוגבלים בזמן, לתקופה הראשונה של מנוי. היא רלוונטית רק למנויים שמתחדשים אוטומטית. בסוף ההצעה המנוי מתחדש במחיר הרגיל, אלא אם האדם ביטל לפני כן.
ההצעה מוצגת בדף ה-App Store שלך לאנשים הזכאים. ברכישה, Apple מחילה אותה אוטומטית אם האדם זכאי. התפקיד שלך הוא לא להבטיח על המסך הצעה ש-Apple לא תעניק.
שלושת סוגי הצעות ההיכרות
התיעוד של StoreKit מתאר שלושה מצבי תשלום. הנה כל אחד עם דוגמה בדויה: שנתי ב-39.99 אירו וחודשי ב-6.99 אירו, שהם לא המחירים של אף אחת מהאפליקציות שלי.
| סוג | דוגמה בדויה | משולם בהתחלה | אחר כך |
|---|---|---|---|
| ניסיון חינם | 7 ימים במתנה | 0 אירו | 39.99 אירו לשנה |
| תשלום מראש | 3 חודשים ב-9.99 אירו | 9.99 אירו פעם אחת | 39.99 אירו לשנה |
| תשלום לפי תקופה | 2.99 אירו לחודש, 3 חודשים | 2.99 אירו לחודש | 6.99 אירו לחודש |
והנה מה שהמסך צריך להגיד בכל מקרה, עדיין עם המחירים הבדויים:
- ניסיון חינם: "7 ימים חינם, ואז 39.99 אירו לשנה." במהלך הניסיון המנוי כבר התחיל, אבל שום דבר לא מחויב עד הסוף.
- תשלום מראש: "9.99 אירו ל-3 החודשים הראשונים, ואז 39.99 אירו לשנה." האדם משלם פעם אחת על כל התקופה המוזלת.
- תשלום לפי תקופה: "2.99 אירו לחודש במשך 3 חודשים, ואז 6.99 אירו לחודש." המחיר המוזל חוזר בכל תקופה.
בכל שלושת המקרים, המשפט כולל את המחיר שיחויב אחרי ההצעה.
מי זכאי להצעת ההיכרות?
העזרה של Apple ברורה: הצעה אחת אפשרית לכל מנוי, אבל רק הצעת היכרות אחת לכל אדם ולכל קבוצת מנויים. התיעוד של StoreKit מפרט את שלושת המקרים:
- מנוי חדש תמיד זכאי;
- מנוי לשעבר שחוזר זכאי אם הוא אף פעם לא השתמש בהצעת היכרות בקבוצה הזו;
- מנוי נוכחי לא זכאי, גם אם הוא מחליף תוכנית באותה קבוצה.
הזכאות צמודה לחשבון Apple שמשלם, לא לאייפון ולא לחשבון שנוצר באפליקציה שלך. מי שעשה ניסיון, ביטל ואז התקין מחדש את האפליקציה כבר לא זכאי. ובכל זאת, המוצר ממשיך להכריז על ההצעה שלו: פה נולדת התצוגה המטעה.
תוצאה ישירה: ניסיון על התוכנית השבועית היה מנצל את הזכאות לניסיון על השנתית, כי שתיהן באותה קבוצה. בגלל זה הניסיונות שלי נמצאים רק על השנתי.
מגבלה נוספת: אפשר שתהיה הצעת היכרות פעילה אחת והצעה עתידית אחת לכל מדינה. אם שתי הצעות חופפות, האחרונה שנוצרה מחליפה את השנייה. ביולי 2026, ב-TradaZen, רציתי גם מחיר מוזל וגם ניסיון חינם על השנתי. הצעה אחת בכל פעם: זה היה או זה או זה. בסוף יצרתי מנוי שנתי שני, זול יותר, שנושא את הניסיון.
יצירת ההצעה ב-App Store Connect
צריך את התפקיד Account Holder, Admin, App Manager או Marketing. התוויות הן אלה שמופיעות בעזרה של Apple:
- ב-Apps, פתח את האפליקציה שלך, ואז Subscriptions בסרגל הצד.
- בחר את הקבוצה, ואז את המנוי.
- בחלק Subscription Prices, לחץ על View all Subscription Pricing, ואז על Set up Introductory Offer.
- בחר את המדינות או האזורים, ואז את תאריכי ההתחלה והסיום. אם אתה מתחיל היום, ההצעה מתחילה מיד.
- בחר Free, Pay up front או Pay as you go, ואז את המשך והמחיר.
- App Store Connect מציע מחירים מקבילים ל-175 המדינות. התאם אותם אם צריך, ואז אשר.
הצעה שנוצרה כבר לא ניתנת לעריכה: כדי לשנות את המשך או המחיר, מחק אותה בלשונית Introductory Offers וצור אותה מחדש. שינוי יכול לקחת עד שעה להגיע ל-sandbox. התיעוד של RevenueCat ממליץ גם לחכות עד 24 שעות לפני שמסיקים שהצעה לא מוחלת.
משכי הזמן האפשריים
ניסיון חינם נמשך 3 ימים, שבוע או שבועיים, 1, 2, 3 או 6 חודשים, או שנה, בלי קשר למשך המנוי. תשלום מראש מכסה 1, 2, 3 או 6 חודשים, או שנה. תשלום לפי תקופה תלוי במשך המנוי:
| מנוי | תשלום לפי תקופה |
|---|---|
| שבוע | 1 עד 12 שבועות |
| חודש | 1 עד 12 חודשים |
| חודשיים | 2 עד 12 חודשים, בקפיצות של 2 |
| 3 חודשים | 3, 6, 9 או 12 חודשים |
| 6 חודשים | 6 או 12 חודשים |
| שנה | שנה |
באפליקציות שלי בחרתי 7 ימים, על השנתי. זה לא כלל של Apple, זו החלטת מוצר, שכדאי לבחון מחדש לפי המדידות שלך.
להציג את הניסיון רק למי שזכאי
Apple אומרת את זה באותו עמוד עזרה: אם אתה מציג את ההצעה באפליקציה, ודא שהאדם באמת יכול ליהנות ממנה. תשאל את הקוד שלך שתי שאלות: האם למוצר יש ניסיון חינם, והאם האדם הזה עדיין זכאי לו?
את התשובה לראשונה קוראים מהמוצר. שים לב, הצעת היכרות היא לא בהכרח חינמית. ב-TradaZen, השנתי הרגיל נשא תשלום מראש, שנה ראשונה זולה יותר, והניסיון חי על השנתי השני. שניהם מגיעים כ"הצעת היכרות". אז הקוד שלי קורא את מחיר ההצעה: אפס, זה ניסיון; מעל זה, זו הצעה בתשלום.
את השנייה שואלים את ה-store. ב-Swift, StoreKit 2 מספק את isEligibleForIntroOffer, החל מ-iOS 15. Apple מציינת שהערך הזה יכול להיות true גם בלי שהוגדרה הצעה: מכאן השאלה הראשונה. עם RevenueCat באפליקציית Expo, זה checkTrialOrIntroductoryPriceEligibility, שמחזיר זכאי, לא זכאי, אין הצעה, או לא ידוע. הנה העיקרון ב-TypeScript:
import Purchases, {
INTRO_ELIGIBILITY_STATUS as S,
type PurchasesStoreProduct,
} from "react-native-purchases";
type Essai = "oui" | "non" | "doute";
export async function essaiGratuit(p: PurchasesStoreProduct): Promise<Essai> {
if (!p.introPrice || p.introPrice.price > 0) return "non";
try {
const r = await Purchases.checkTrialOrIntroductoryPriceEligibility([
p.identifier,
]);
const statut = r[p.identifier]?.status;
if (statut === S.INTRO_ELIGIBILITY_STATUS_ELIGIBLE) return "oui";
if (statut === S.INTRO_ELIGIBILITY_STATUS_INELIGIBLE) return "non";
if (statut === S.INTRO_ELIGIBILITY_STATUS_NO_INTRO_OFFER_EXISTS)
return "non";
return "doute";
} catch {
return "doute";
}
}
המקרה "doute" (ספק) הוא העניין האמיתי. RevenueCat מתארת את הבדיקה שלה כהערכה במיטב היכולת, וגיליון התשלום של Apple מציג בכל מקרה את התנאים האמיתיים לפני האישור. לסטטוס לא ידוע, RevenueCat ממליצה להציג את המחיר הרגיל, כדי לא להטעות אף אחד.
את הצד השני של הבעיה למדתי ב-TradaZen. הגרסה הראשונה התייחסה לשגיאת קריאה כאל סירוב: אנשים שהיו זכאים לניסיון לא ראו אותו. היום, האפליקציות שלי מורידות את הניסיון רק בסירוב חד של ה-store, לא זכאי או אין הצעה. במקרה של ספק נשארת התצוגה של המוצר. זו פשרה, לא ההמלצה של RevenueCat: אם אתה מעדיף זהירות, לך לפי ההמלצה שלהם. בכל מקרה, אף פעם אל תבלבל בין "אני לא יודע" לבין "לא".
אם אתה משתמש ב-paywalls של RevenueCat, לכל טקסט יכולה להיות גרסה לאנשים שזכאים להצעה, לפי העמוד שלהם על הצעות. שאר ההרכבה נמצאת במדריך שלי RevenueCat למנוי iOS.
מה ש-3.1.2 דורשת על המסך
Guideline 3.1.2(a) מתירה ניסיון חינם על מנוי, בתנאי שנותנים את המידע שנדרש ב-App Store Connect. העמוד של Apple על מנויים מפרט: בתהליך הרכישה של ניסיון, ציין בבירור את משכו ואת המחיר שיחויב בסופו. הסכום המחויב צריך גם להיות רכיב המחיר הבולט ביותר על המסך.
הדחייה ש-Solys קיבלה ב-10 באוקטובר 2026 אמרה את זה: הניסיון החינמי, מחיר ההשקה והמחירים המחושבים חייבים להישאר משניים לסכום המחויב. מותר להכריז על הניסיון, אבל המחיר שמחויב אחריו חייב להישאר המחיר הקריא ביותר על המסך. שתי הדחיות והתיקון שלהן נמצאים במדריך שלי על guideline 3.1.2.
גם הטעות ההפוכה קיימת: להציע ניסיון בלי להגיד את זה. פעם, הכפתורים ב-paywalls שלי אמרו "המשך". ב-Solys, "7 ימים במתנה" בכלל הופיע רק בתווית של VoiceOver, לא כטקסט גלוי.
לבדוק את ההצעה ב-sandbox
קנה את המנוי עם חשבון sandbox: הניסיון צריך להופיע בגיליון התשלום של Apple. כדי לשחזר את המסלול של מנוי חדש, בחר Clear Purchase History בהגדרות חשבון ה-sandbox באייפון. לפי תיעוד ה-sandbox של Apple, החשבון חוזר אז להיות זכאי להצעות היכרות.
בדוק גם חשבון שכבר עשה את הניסיון: ה-paywall שלך לא אמור להכריז יותר על שום דבר חינמי. אם המוצר לא נטען בכלל, קרא את המדריך שלי על הסטטוס Missing Metadata.
לחבר את הניסיון החינמי שלך בלי טעויות
ה-iOS & Android Kit מתחיל מקוד הבסיס של האפליקציות שלי: onboarding, paywall ומנויים כבר כתובים, והשלב השלישי שלו, "לחבר את הכסף", מדריך אותך בהגדרת המוצרים והניסיון. כל השרשרת מתוארת בעמוד מנוי in-app ב-iOS. אם אתה עדיין מתלבט לגבי המודל, תתחיל עם מנוי או רכישה חד-פעמית.
אם אתה מכין את ההשקה הראשונה שלך, עשה את האבחון החינמי שלך: הוא מסדר את השלבים לפי הסדר ושולח לך את הצ'קליסט שלי נגד דחיות של Apple. כדי לתת חודש במתנה או להחזיר מנוי לשעבר, ההמשך נמצא במדריך שלי על קודי הצעה.
שאלות נפוצות
מה זה introductory offer ב-App Store?
זה מחיר הפתיחה של מנוי שמתחדש אוטומטית: ניסיון חינם, תשלום מראש או תשלום לפי תקופה. יוצרים אותה ב-App Store Connect, ו-Apple מחילה אותה אוטומטית ברכישה על אנשים זכאים. אחר כך המנוי עובר למחיר הרגיל.
משתמש יכול לעשות שני ניסיונות חינם?
לא באותה קבוצת מנויים: רק הצעת היכרות אחת לכל קבוצה ולכל חשבון Apple. התקנה מחדש של האפליקציה לא מחזירה את הזכאות. לעומת זאת, אם הוא נרשם לקבוצה אחרת באפליקציה שלך, הוא יכול ליהנות מההצעה של הקבוצה ההיא.
אפשר לשלב ניסיון חינם והנחה?
לא על אותו מנוי באותו זמן: רק הצעת היכרות פעילה אחת לכל מדינה. אפשר ליצור מנוי שני שנושא את ההצעה השנייה, או להשתמש בקוד הצעה, שיכול לבוא אחרי הצעת ההיכרות לפי ההגדרות שלך.
צריך גרסה חדשה של האפליקציה כדי להוסיף ניסיון?
לא בשביל ההצעה עצמה: מגדירים אותה ב-App Store Connect והיא מוחלת ברכישה. אבל אם ה-paywall שלך כותב "7 ימים" ישירות בקוד, תצטרך לעדכן אותו. תקרא את המשך מהמוצר שה-store מחזיר, והמסך יתעדכן בהתאם.
מנוי לשעבר זכאי לניסיון החינמי?
כן, אם הוא אף פעם לא השתמש בהצעת היכרות בקבוצת המנויים הזו. אם הוא כבר נהנה ממנה, הוא כבר לא זכאי, גם חודשים אחר כך. כדי להחזיר אותו, Apple מציעה הצעות win-back והצעות קידום מכירות.

