IAP Operation Modes

The IAP operation mode determines how Samsung In-App Purchase (IAP) behaves when you are testing your app.

There are three IAP operation modes and each mode is used differently when testing your in-app products:

  • OPERATION_MODE_TEST: Verify in-app product purchases succeed
  • OPERATION_MODE_TEST_FAILURE: Verify the app handles failed in-app product purchases correctly
  • OPERATION_MODE_PRODUCTION: Pre-launch validation

Test mode is commonly used during app development while production mode is used during and after closed teta testing.

For information on how to set the IAP operation mode, see Set the IAP operation mode.

Test mode: always succeeds

When the IAP operating mode is set to OPERATION_MODE_TEST, a purchase always succeeds.

A license tester :

  • Can view your in-app product offerings
  • Always completes their purchase transaction successfully (payments are not reported to the payment gateway card company or payment agency)
  • Receives an email confirming that the transaction succeeded
  • Is never charged for their purchase transactions
  • Can repurchase non-consumable items every 10 minutes
  • Waits 10 minutes for each subscription period
  • Waits 10 minutes for each one-day grace period

Test mode: always fail

When the IAP operating mode is set to OPERATION_MODE_TEST_FAILURE, a purchase never succeeds.

A license tester and non-license tester :

  • Cannot view your in-app product offerings
  • Never complete a purchase transaction
  • Are never charged for their failed purchase transactions

Production mode

When the IAP operating mode is set to OPERATION_MODE_PRODUCTION, license testers are not charged for successful purchase transactions during a Closed Beta Test (if not participating in a Closed Beta Test, license testers are charged for successful purchase transactions) and non-license testers are always charged for their successful purchase transactions.

A license tester :

  • Can view your in-app product offerings
  • Receives an email confirming that the transaction succeeded
  • When the app is not in beta testing, is charged for a successful purchase transaction
  • When the app is installed using the beta testing URL:
    • Is not charged for a successful purchase transaction
    • Can repurchase non-consumable items every 10 minutes
    • Waits 10 minutes for each subscription period
    • Waits 10 minutes for each one-day grace period

A non-license tester :

  • Can view your in-app product offerings
  • Receives an email confirming that the transaction succeeded
  • Is always charged for a successful purchase transaction
  • Cannot repurchase non-consumable items
  • Waits the actual time for subscription and grace periods