# Offer code App Store Connect: cara membuat kode promo

> Sejak Maret 2026, offer code menggantikan kode promo untuk pembelian dalam app: kode unik atau kustom, ditukar lewat link, App Store, atau di app.

Halaman asli: [Offer code App Store Connect: cara membuat kode promo](https://devoria.fr/id/blog/offer-code-app-store-connect-kode-promo)
Penulis: [Mehdi Azizi](https://devoria.fr/id/mehdi-azizi)
Terbit: 2026-11-04
Revisi konten terakhir: 2026-11-04


Di App Store Connect, kode promo untuk langganan atau pembelian dalam app sekarang disebut kode penawaran, atau offer code. **Sejak 26 Maret 2026, Apple tidak lagi mengizinkan pembuatan kode promo untuk pembelian dalam app**: kode promo sekarang hanya bisa dipakai untuk memberikan unduhan app berbayar secara gratis. Kamu membuat penawaran di produkmu, lalu membuat kode unik atau kode kustom. Penggunanya menukarkan kode itu lewat link, di App Store, atau langsung di app-mu.

App-ku gratis diunduh dan menjual langganan: kode promo app tidak ada gunanya buatku. Jadi di kode TradaZen, program referral memberi hadiah berupa offer code, dan app-nya sendiri yang membuka proses penukaran kode. Berikut apa saja yang berubah, tabel penawaran Apple, cara membuat kode, cara menukarnya, lalu apa yang dilarang aturan 3.1.1.

## Kode promo dan offer code: apa yang berubah di 2026

Apple mengumumkannya pada 29 Oktober 2025 di [berita untuk developer](https://developer.apple.com/news/?id=gf6mgrs6): offer code sekarang mencakup semua pembelian dalam app. Consumable, non-consumable, dan langganan non-renewing ditambahkan ke langganan auto-renewable. Akibatnya, sejak 26 Maret 2026, kamu tidak bisa lagi membuat kode promo untuk pembelian dalam app. Kode yang dibuat sebelumnya tetap bisa dipakai sampai kedaluwarsa.

Kode promo app sendiri masih ada. Menurut [bantuan App Store Connect](https://developer.apple.com/help/app-store-connect/offer-promo-codes/request-and-manage-promo-codes/), kode ini memberikan salinan gratis app berbayar. Setiap kode hanya bisa dipakai sekali dan berlaku empat minggu. Kamu bisa meminta hingga 100 kode per versi dan per platform, dari Promo Codes di sidebar app-mu. Orang yang memakainya tidak bisa memberi rating atau ulasan untuk app tersebut.

**Untuk app gratis yang menjual langganan, kode promo app tidak memberikan apa-apa**: yang perlu diberikan adalah langganannya, dengan offer code.

## Penawaran Apple: untuk siapa, dan cara mendapatkannya

Ini penawaran Apple seputar langganan, ditambah kode promo app, dalam tabel yang selalu kusimpan untuk memilih:

| Jenis penawaran    | Untuk siapa                 | Cara mendapatkannya       |
| ------------------ | --------------------------- | ------------------------- |
| Introductory offer | Pelanggan baru di grup      | Otomatis saat pembelian   |
| Offer code unik    | Satu orang tertentu         | Link, App Store, atau app |
| Kode kustom        | Satu kampanye, satu audiens | Link atau input di app    |
| Promotional offer  | Pelanggan aktif atau lama   | Ditawarkan oleh app-mu    |
| Win-back offer     | Mantan pelanggan            | Settings, App Store, app  |
| Kode promo app     | Hanya app berbayar          | Input di App Store        |

**Offer code dibuat untuk kamu bagikan sendiri, di luar app**: lewat email, di situsmu, di acara, ke content creator. Penawaran lainnya kebanyakan muncul sendiri atau di dalam app-mu, sesuai aturan yang kamu tetapkan. Introductory offer, yang dipakai untuk free trial, punya panduannya sendiri: [introductory offer dan free trial](https://devoria.fr/id/blog/introductory-offer-app-store-connect-uji-coba-gratis-ios).

## Membuat offer code untuk langganan

Prosedur di [bantuan offer code langganan](https://developer.apple.com/help/app-store-connect/manage-subscriptions/set-up-subscription-offer-codes/) terdiri dari dua tahap: penawaran, lalu kodenya. Label yang dipakai sesuai bantuan Apple.

**1. Penawaran.** Di Subscriptions, buka grup lalu langganannya. Di Subscription Prices, klik tombol plus, lalu Create Offer Codes. Selanjutnya:

- beri nama referensi, yang nanti akan muncul di laporan penjualanmu;
- pilih apakah langganan diperpanjang setelah penawaran berakhir; tanpa perpanjangan, hanya penawaran gratis yang bisa dipilih;
- centang siapa saja yang memenuhi syarat: pelanggan baru, pelanggan aktif, mantan pelanggan di grup;
- kalau langganannya punya introductory offer, pilih apakah orang itu menikmatinya dulu sebelum penawaran dari kode, atau hanya kodenya saja;
- pilih negara, lalu gratis, bayar di muka, atau bayar per periode, beserta durasi dan harganya.

Penawaran yang sudah dibuat tidak bisa diubah lagi. Untuk mengubah syarat kelayakan, buat penawaran baru.

**2. Kode.** Ada dua jenis, dibuat dari halaman penawaran:

- **Kode unik**: satu kode per orang, dibuat per batch 500 sampai 25.000. Kode ini kedaluwarsa paling lambat enam bulan setelah dibuat. Kamu mengunduh file berisi kode dan link-nya.
- **Kode kustom**: kata yang kamu pilih sendiri, hingga 64 karakter tanpa karakter khusus, misalnya BACKTOSCHOOL (contoh fiktif). Kamu menentukan berapa orang yang bisa memakainya, hingga 25.000 per batch, dan tanggal berakhir opsional.

Batas yang berlaku untuk keduanya: satu juta kode per app per kuartal, sepuluh penawaran aktif per langganan, satu kode per penawaran per orang. Kode bisa butuh waktu hingga satu jam sebelum bisa dipakai. Dan yang paling penting, **app-mu harus sudah dijual agar kodenya bisa ditukar**: kamu tidak bisa memberikan langganan sebelum app rilis.

Untuk pengujian, Apple menyediakan kode sandbox, 10 sampai 10.000 per batch, yang ditukar dari pengaturan akun sandbox di iOS 16.3 ke atas.

## Offer code untuk pembelian sekali bayar atau kredit

Halaman tentang [offer code untuk pembelian dalam app](https://developer.apple.com/help/app-store-connect/manage-in-app-purchases/create-offer-codes-for-in-app-purchases/) mengikuti logika yang sama. Di In-App Purchases, buka pembeliannya, lalu Create Offer di bagian Offer Codes. Syarat kelayakan didasarkan pada riwayat pembelian di app-mu: belum pernah membeli, membeli dalam 30 hari terakhir, atau lebih dari 30 hari yang lalu. Penawarannya bisa gratis atau berbayar.

Untuk membuat kode, app harus sudah dijual dan pembeliannya sudah disetujui. Satu app maksimal punya sepuluh penawaran aktif sekaligus. Penukaran di dalam app membutuhkan iOS 16.3 ke atas.

## Cara pengguna menukar kode

[Dokumentasi StoreKit](https://developer.apple.com/documentation/storekit/supporting-offer-codes-in-your-app) menjelaskan tiga cara:

1. **Link penukaran.** App Store Connect menyediakan contoh link di halaman penawaran, lalu kamu tambahkan kodenya. Kalau app belum terpasang, orang itu akan diminta mengunduhnya dulu.
2. **App Store.** Kode unik dimasukkan di halaman Redeem Gift Card or Code di akun. Sedangkan kode kustom ditukar lewat link atau lewat app-mu.
3. **App-mu.** Di Swift, pakai `offerCodeRedemption` dengan SwiftUI atau `presentOfferCodeRedeemSheet` dengan UIKit. Dengan RevenueCat di app Expo, pakai `presentCodeRedemptionSheet`.

[Dokumentasi RevenueCat](https://www.revenuecat.com/docs/subscription-guidance/subscription-offers/ios-subscription-offers) memberikan format link-nya: `https://apps.apple.com/redeem?ctx=offercodes&id={apple_app_id}&code={code}`. Dokumentasi itu juga memperingatkan bahwa sheet penukaran Apple sangat tidak stabil sejak diluncurkan, dan menyarankan link sebagai cadangan. Ini prinsipnya, dalam TypeScript:

```ts
import { Linking } from "react-native";
import Purchases from "react-native-purchases";

const PAGE_ECHANGE = "https://apps.apple.com/redeem";

export async function echangerUnCode(): Promise<void> {
  try {
    await Purchases.presentCodeRedemptionSheet();
  } catch {
    await Linking.openURL(PAGE_ECHANGE); // cadangan kalau sheet gagal
  }
}
```

Sheet ini tidak mengembalikan hasil apa pun. Hak akses (entitlement) datang setelahnya seperti setelah pembelian, lewat listener `addCustomerInfoUpdateListener` yang sudah ada di app-mu. Agar RevenueCat menghitung pendapatan dari kode ini dengan benar, ia butuh In-App Purchase key milikmu.

Inilah susunan yang sudah disiapkan di kode TradaZen. Untuk memakai hadiah referral, app membuka link dengan kode yang sudah terisi: ini lebih andal daripada sheet, yang mengharuskan orang menyalin ulang kodenya. Untuk memasukkan kode yang diterima, app membuka sheet native, dengan halaman penukaran App Store sebagai cadangan. **Kode yang orang tidak tahu harus dimasukkan di mana itu tidak ada gunanya**: halaman akun App Store tersembunyi dan tidak ada petunjuk ke sana. Tombol "Saya punya kode" di app-mu menyelesaikan masalah ini.

## Promotional offer dan win-back offer, singkatnya

Dua penawaran ini tidak memakai kode yang kamu bagikan, tapi menjawab kebutuhan yang sama: mempertahankan pelanggan atau membuatnya kembali.

**Promotional offer** ditujukan untuk pelanggan aktif atau lama. Kamu yang menentukan di app kapan menampilkannya, misalnya ke orang yang hendak berhenti berlangganan. Menurut [bantuan tentang promotional offer](https://developer.apple.com/help/app-store-connect/manage-subscriptions/set-up-promotional-offers-for-auto-renewable-subscriptions/), kamu bisa punya sepuluh yang aktif per langganan. Penawaran ini berlaku di semua negara langganan, dan orang tetap berhak mendapatkannya meski sudah pernah memakai introductory offer. Kamu butuh In-App Purchase key untuk menandatangani penawarannya.

**Win-back offer** ditujukan untuk mantan pelanggan. [Bantuan tentang win-back offer](https://developer.apple.com/help/app-store-connect/manage-subscriptions/set-up-win-back-offers/) merinci kriterianya: durasi minimum langganan berbayar, waktu yang berlalu sejak berakhir, jeda antara dua penawaran. Apple menampilkannya sendiri di halaman pengelolaan langganan, dan di app-mu pada iOS 18 ke atas. Apple juga membuat link untuk dibagikan, yang hanya boleh dikirim ke orang yang memenuhi syarat. Agar muncul di App Store, kamu perlu mempromosikannya dengan gambar langganan yang sudah disetujui, yang tidak memakai ikon maupun screenshot app-mu. Aku membahasnya di panduan tentang [gambar promosi langganan](https://devoria.fr/id/blog/guideline-2-3-2-gambar-promosi-langganan-ditolak).

## Yang dilarang aturan 3.1.1

[Guideline 3.1.1](https://developer.apple.com/app-store/review/guidelines/#3.1.1) mewajibkan pembelian dalam app untuk membuka fitur atau konten. Guideline ini melarang mekanisme buatan sendiri, seperti license key atau QR code. **Kode buatanmu sendiri, yang dimasukkan di kolom app untuk membuka premium, berisiko ditolak karena 3.1.1**, meskipun diberikan gratis. Offer code dari Apple, sebaliknya, berjalan lewat pembelian dalam app. Aturan lengkapnya ada di panduanku tentang [guideline 3.1.1](https://devoria.fr/id/blog/guideline-3-1-1-in-app-purchase-wajib).

Satu hal lagi, untuk referral: [guideline 5.1.2](https://developer.apple.com/app-store/review/guidelines/#5.1.2) melarang mewajibkan pengaktifan notifikasi, lokasi, atau tracking untuk mendapatkan hadiah, termasuk kode. Jadi hadiah tidak boleh bergantung pada izin-izin ini. Detailnya ada di panduan tentang [guideline 5.1.2](https://devoria.fr/id/blog/guideline-5-1-2-ai-pihak-ketiga-att-berbagi-data).

## Memberikan langgananmu tanpa salah pilih alat

Sebelum rilis, untuk membiarkan orang mencoba app secara gratis, pakai [TestFlight](https://devoria.fr/id/blog/testflight-cara-tes-aplikasi-iphone): pembelian di sana melewati lingkungan pengujian, tanpa tagihan. Setelah rilis, pakai offer code. Penyiapan langganannya sendiri ada di [RevenueCat untuk langganan iOS](https://devoria.fr/id/blog/revenuecat-langganan-in-app-ios).

[iOS & Android Kit](https://devoria.fr/id/kits/ios) berangkat dari kode awal app-ku: onboarding, paywall, dan langganan sudah dikodekan, dan langkah ketiganya, "menyambungkan uang", memandumu untuk mengaturnya. Seluruh alurnya ada di halaman [langganan in-app iOS](https://devoria.fr/id/expertise/langganan-in-app-ios). Kalau kamu sedang menyiapkan rilis pertamamu, [lakukan diagnostik gratis](https://devoria.fr/id/diagnostic): diagnostik ini mengurutkan langkah-langkahnya dan mengirimkan checklist anti-penolakan Apple milikku.

## Pertanyaan umum

### Bagaimana cara membuat kode promo di App Store Connect?

Untuk app berbayar, buka Promo Codes di sidebar app: hingga 100 kode per versi, berlaku empat minggu. Untuk langganan atau pembelian dalam app, buat penawaran di produknya, dengan Create Offer Codes atau Create Offer, lalu buat kode unik atau kode kustom.

### Apa bedanya kode promo dan offer code?

Kode promo memberikan unduhan app berbayar. Offer code memberikan langganan atau pembelian dalam app, gratis atau dengan harga diskon, untuk durasi yang dipilih. Sejak 26 Maret 2026, hanya offer code yang bisa dibuat untuk pembelian dalam app.

### Berapa banyak offer code yang bisa dibuat?

Hingga satu juta per app per kuartal, untuk semua produk. Kode unik dibuat per batch 500 sampai 25.000, dan satu kode kustom menerima hingga 25.000 pemakaian per batch. Satu langganan maksimal punya sepuluh penawaran aktif sekaligus.

### Bisakah offer code dipakai sebelum app rilis?

Tidak: app harus sudah dijual agar kodenya bisa ditukar. Sebelum rilis, pakai TestFlight untuk tester-mu, dan kode sandbox untuk menguji penukaran di app-mu.

### Bisakah pelanggan aktif memakai offer code?

Bisa, kalau kamu mencentang pelanggan aktif di syarat kelayakan penawaran. [Halaman Apple tentang langganan](https://developer.apple.com/app-store/subscriptions/) menjelaskan bahwa ia hanya bisa menukar kode dengan level yang sama atau lebih tinggi dari langganannya.

### Di mana pengguna memasukkan offer code?

Lewat link penukaran, di halaman Redeem Gift Card or Code di akun App Store-nya untuk kode unik, atau di app-mu kalau kamu memasang sheet penukaran. Kode kustom ditukar lewat link atau lewat app.


## Proyekmu

[iOS & Android Kit](https://devoria.fr/id/kits/ios): Bikin app iPhone dan Android kamu dengan Claude Code: kode awal dari app-app saya, langkah demi langkah sampai ke store, dan semua kit. Rp 1.999.000.

[Diagnosis: apa yang memisahkanmu dari app iPhone-mu](https://devoria.fr/id/diagnostic): 7 pertanyaan, 60 detik: kamu tahu apa yang benar-benar menghambatmu merilis app iPhone, jalurmu dalam 4 tahap, dan kit yang cocok untukmu.
