electron/docs/api/in-app-purchase.md
Cheng Zhao 2dd545ebda Payment should be part of Transaction
This follows The SKPayment API, and makes our JS wrappers easier to
implement.
2018-01-10 17:06:27 +09:00

1.5 KiB

inAppPurchase macOS

In-app purchases on Mac App Store.

Process: Main

Events

The inAppPurchase module emits the following events:

Event: 'transaction-updated'

Emitted when a transaction has been updated.

Returns:

  • event Event
  • transaction Object
    • transactionIdentifier String
    • transactionDate String
    • originalTransactionIdentifier String
    • transactionState String - The transaction sate ("purchasing", "purchased", "failed", "restored", or "deferred")
    • errorCode Integer
    • errorMessage String
    • payment Object
      • productIdentifier String
      • quantity Integer

Methods

The inAppPurchase module has the following methods:

inAppPurchase.purchaseProduct(productID, quantity, callback)

  • productID String - The id of the product to purchase. (the id 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. (You should add a listener with inAppPurchase.addTransactionsListener to get the transaction status).
    • isProductValid Boolean - Determine if the product is valid and added to the payment queue.

inAppPurchase.canMakePayments()

Returns true if the user can make a payment and false otherwise.

inAppPurchase.getReceiptURL()

Returns String, the path to the receipt.