アプリ内購入とサブスクリプション
アプリストアAPIを通じて、一度限りのコンテンツ購入に対応するアプリ内購入と、継続課金型のサブスクリプションを設定します
「アプリ内購入とサブスクリプション」はCoddyKit上の無料Indie Hacker Mobile Appsレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはIndie Hacker Mobile Apps学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Indie Hacker Mobile Appsコースには全4レッスンが含まれています。
このレッスンの一部はまだ翻訳されておらず、英語で表示されています。
Monetizing with IAPs & Subscriptions
Welcome to monetizing your mobile app! As an indie hacker, generating revenue is key to sustainability. This lesson introduces In-App Purchases (IAPs) and Subscriptions.
These are ways for users to buy digital goods, services, or access within your app, directly through the app stores.
One-Time Purchases: Consumable
IAPs come in a few forms. First, Consumable IAPs are items that can be used up and purchased again. Think of them like digital currency or power-ups.
- Examples: Game coins, extra lives, hints, temporary boosts.
- Once used, they are gone and the user can buy more.
- These are often critical for 'freemium' game monetization.
One-Time Purchases: Non-Consumable
Next are Non-Consumable IAPs. These grant permanent access to content or features after a single purchase. They don't expire or get used up.
- Examples: Removing ads, unlocking premium features, full game versions, digital books.
- Users buy them once and own them forever.
- These purchases should be restorable if a user reinstalls your app or gets a new device.
Recurring Revenue: Subscriptions
Auto-Renewable Subscriptions are a powerful monetization model for ongoing access to content or services. Users are automatically charged on a recurring basis (e.g., monthly, yearly).
- Examples: Premium content in a news app, ad-free access to a streaming service, advanced features in a productivity app.
- They continue until the user cancels them.
- Many apps offer free trials to attract subscribers.
The IAP Integration Flow
Regardless of the type, the basic flow for integrating IAPs and Subscriptions is similar:
- Define Products: Set up your IAPs in App Store Connect / Google Play Console.
- Display Products: Show product details (price, description) in your app.
- Initiate Purchase: User taps 'Buy', your app requests the purchase.
- Process Payment: App store handles payment and authentication.
- Grant Access: Your app receives confirmation and unlocks content.
Setting Up Products (Conceptual)
Before writing any code, you define your IAPs and subscriptions in the respective app store consoles. This involves:
- Creating unique Product IDs (e.g.,
com.myapp.premium_feature). - Setting up names, descriptions, and pricing.
- For subscriptions, defining durations (monthly, yearly) and optional free trials.
These IDs are what your app will use to reference each specific product.
Initiating a Purchase Request
When a user decides to buy, your app communicates with the platform's billing API (e.g., StoreKit on iOS, Google Play Billing Library on Android).
Here's a simplified pseudo-code of how a purchase might be initiated:
/* Pseudo-code for a purchase request */
// Imagine the user tapped a 'Buy Premium' button
function startPurchase(productId) {
console.log(`User wants to buy: ${productId}`);
// 1. Request product details from the App Store API
// (This step often happens earlier to display prices)
const product = AppStoreAPI.getProductDetails(productId);
if (product) {
// 2. Initiate the purchase flow for this product
// The OS will handle the payment UI (Face ID/fingerprint)
AppStoreAPI.makePayment(product);
} else {
console.error("Product not found or invalid.");
}
}
// Example call
// startPurchase("com.myindieapp.remove_ads");Handling Transaction Outcomes
After a purchase is initiated, your app will receive a transaction update. You must handle various outcomes:
- Purchased: The payment was successful. Grant the user access to the purchased content/feature.
- Failed: Payment error or user cancelled. Inform the user.
- Pending: Payment is awaiting external approval (e.g., family sharing). Wait for further updates.
- Restored: User is re-downloading previously purchased non-consumables or subscriptions.
Server-Side Receipt Validation
For robust security and to prevent fraud, especially with subscriptions, server-side receipt validation is crucial. Your app sends the purchase receipt to your backend server.
Your server then sends this receipt to Apple/Google's verification servers. They confirm the purchase's authenticity, and your server can then securely grant access to the user.
This prevents users from tampering with local receipts to unlock features for free.
Check Your Understanding
Let's quickly check your knowledge of In-App Purchases and Subscriptions.
Recap & Next Steps
You've learned the fundamentals of monetizing with In-App Purchases and Subscriptions!
- We covered Consumable and Non-Consumable IAPs for one-time purchases.
- Explored Auto-Renewable Subscriptions for recurring revenue.
- Understood the basic integration flow and the importance of server-side receipt validation for security.
Next, dive into the specific platform APIs (Apple's StoreKit or Google Play Billing Library) to implement these powerful monetization strategies in your apps!
よくある質問
「アプリ内購入とサブスクリプション」レッスンは無料ですか?
はい。「アプリ内購入とサブスクリプション」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Indie Hacker Mobile Appsコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Indie Hacker Mobile Appsコースには全4レッスンが含まれています。
「アプリ内購入とサブスクリプション」で何を学びますか?
アプリストアAPIを通じて、一度限りのコンテンツ購入に対応するアプリ内購入と、継続課金型のサブスクリプションを設定します ブラウザで直接実行するハンズオンコードでIndie Hacker Mobile Appsを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Indie Hacker Mobile Appsを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのIndie Hacker Mobile Appsは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「アプリ内購入とサブスクリプション」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このIndie Hacker Mobile Appsレッスンでコードを書いて実行できますか?
はい。すべてのIndie Hacker Mobile Appsレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- アプリ内購入とサブスクリプション
- モバイル広告の導入
- 価格モデルと実験
- 解約率の低減と顧客生涯価値の最大化