Electron Documentation

Docs / API / inAppPurchase v3.0.0

inAppPurchase

In-app purchases on Mac App Store.

Process: Main

Events

The inAppPurchase module emits the following events:

Event: 'transactions-updated'

Emitted when one or more transactions have been updated.

Returns:

  • event Event
  • transactions Transaction[] - Array of Transaction objects.

Methods

The inAppPurchase module has the following methods:

inAppPurchase.purchaseProduct(productID, quantity, callback)

  • productID String - The identifiers of the product to purchase. (The identifier of com.example.app.product1 is product1).
  • quantity Integer (optional) - The number of items the user wants to purchase.
  • callback Function (optional) - The callback called when the payment is added to the PaymentQueue.

    • isProductValid Boolean - Determine if the product is valid and added to the payment queue.

You should listen for the transactions-updated event as soon as possible and certainly before you call purchaseProduct.

inAppPurchase.getProducts(productIDs, callback)

  • productIDs String[] - The identifiers of the products to get.
  • callback Function - The callback called with the products or an empty array if the products don't exist.

    • products Product[] - Array of Product objects

Retrieves the product descriptions.

inAppPurchase.canMakePayments()

Returns Boolean, whether a user can make a payment.

inAppPurchase.getReceiptURL()

Returns String, the path to the receipt.

inAppPurchase.finishAllTransactions()

Completes all pending transactions.

inAppPurchase.finishTransactionByDate(date)

  • date String - The ISO formatted date of the transaction to finish.

Completes the pending transactions corresponding to the date.