iTunes In-App Purchase¶
itunes-iap is an easy way to verify iTunes In-App Purchase receipts. It also is a powerful and flexible interface for them too.
itunes-iap v2¶
Python 2 & 3 compatible! Even with asyncio
support!
- Source code: https://github.com/youknowone/itunes-iap
- Documentation: http://itunes-iap.readthedocs.io/
- Distribution: https://pypi.python.org/pypi/itunes-iap/
Quickstart¶
Create request to create a request to itunes verifying api.
>>> import itunesiap
>>> try:
>>> response = itunesiap.verify(raw_data) # base64-encoded data
>>> except itunesiap.exc.InvalidReceipt as e:
>>> print('invalid receipt')
>>> print response.receipt.last_in_app.product_id # other values are also available as property!
- The common attributes are:
- product_id, original_transaction_id and quantity.
- See the full document in:
itunesiap.verify()
: The verifying function.itunesiap.receipt.Receipt
: The receipt object.
asyncio¶
>>> import itunesiap
>>> response = await itunesiap.aioverify(raw_data) # verify -> aioverify
The other parts are the same.
- See the full document in:
itunesiap.aioverify()
: The verifying function.
Installation¶
PyPI is the recommended way.
$ pip install itunes-iap
- To browse versions and tarballs, visit:
- https://pypi.python.org/pypi/itunes-iap/
Apple in-review mode¶
In review mode, your actual users who use older versions want to verify in production server but the reviewers in Apple office want to verify in sandbox server.
Note: The default env is production mode which doesn’t allow any sandbox verifications.
You can change the verifying mode by specifying env.
>>> # review mode
>>> itunesiap.verify(raw_data, env=itunesiap.env.review)
Note for v1 users¶
There was breaking changes between v1 and v2 APIs.
- Specify version 0.6.6 for latest v1 API when you don’t need new APIs.
- Or use import itunesiap.legacy as itunesiap instead of import itunesiap. (from itunesiap import xxx to from itunesiap.legacy import xxx)
Contributors¶
See https://github.com/youknowone/itunes-iap/graphs/contributors