electron/docs/api/in-app-purchase.md
Adrien Fery 5486a65702 Improve in-app purchase for MacOS (#12464)
* Add methods to finish transactions

* Add a method to get the product descriptions from the App Store

* Improve the documentation of a transaction structure

* Add a tutorial for In App Purchase

* Fix typo in In-App Purchase tutorial

* Fix style of In-App Purchase files

* Fix In-App-Purchase product structure conversion in amr64

* Fix code style in In-App Purchase tutorial documentation

* Fix typos in In-App Purchase documentation

* Fix typo in In-App Purchase spec

* Slight style fixes
2018-04-05 15:33:13 +09:00

1.8 KiB

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 true if the user can make a payment and false otherwise.

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.