On this page

iap

Functions and constants for doing in-app purchases. Supported on iOS, Android (Google Play and Amazon) and Facebook Canvas platforms. [icon:ios] [icon:googleplay] [icon:amazon] [icon:facebook]

Functions

iap.buy(id: string, options: Record<string | number, unknown>)

Purchase a product.

Parameters

  • id: string — product to buy
  • options: Record<string | number, unknown> — optional parameters as properties. The following parameters can be set

iap.finish(transaction: Record<string | number, unknown>)

Explicitly finish a product transaction. [icon:attention] Calling iap.finish is required on a successful transaction if auto_finish_transactions is disabled in project settings. Calling this function with auto_finish_transactions set will be ignored and a warning is printed. The transaction.state field must equal iap.TRANS_STATE_PURCHASED.

Parameters

  • transaction: Record<string | number, unknown> — transaction table parameter as supplied in listener callback

iap.acknowledge(transaction: Record<string | number, unknown>)

Acknowledge a transaction. [icon:attention] Calling iap.acknowledge is required on a successful transaction on Google Play unless iap.finish is called. The transaction.state field must equal iap.TRANS_STATE_PURCHASED.

Parameters

  • transaction: Record<string | number, unknown> — transaction table parameter as supplied in listener callback

iap.get_provider_id(): Opaque<"constant">

Get current iap provider

Returns

  • provider_id: Opaque<"constant"> — one of the following values
  • iap.PROVIDER_ID_GOOGLE
  • iap.PROVIDER_ID_AMAZON
  • iap.PROVIDER_ID_APPLE
  • iap.PROVIDER_ID_FACEBOOK

iap.list(ids: Record<string | number, unknown>, callback: (...args: unknown[]) => unknown)

Get a list of all avaliable iap products.

Parameters

  • ids: Record<string | number, unknown> — table (array) of identifiers to get products from
  • callback: (...args: unknown[]) => unknown — result callback taking the following parameters

iap.restore(): boolean

Restore previously purchased products.

Returns

  • success: boolean — value is true if current store supports handling restored transactions, otherwise false.

iap.set_listener(listener: (...args: unknown[]) => unknown)

Set the callback function to receive purchase transaction events.

Parameters

  • listener: (...args: unknown[]) => unknown — listener callback function. Pass an empty function if you no longer wish to receive callbacks.