I need to validate a receipt received from an android app. I have tried using the python package pyinapp for validating in-app purchases, but end up with a "bad signature" error at validator.validate(receipt, signature):
from pyinapp import GooglePlayValidator, InAppValidationError
bundle_id = "com.yourcompany.yourapp"
api_key = "API key from the developer console"
validator = GooglePlayValidator(bundle_id, api_key)
receipt = json.dumps(
{
"orderId": "GPA.3371-6663-9953-88022",
"packageName": "com.yourcompany",
"productId": "com.yourcompany.basic.five.annually",
"purchaseTime": 1617944948660,
"purchaseState": 0,
"purchaseToken": "fkefffonlgkfapblnahlokjp"
".AOJ1OzvaGGwTt24bMs47c98hpPQI62qdITM"
"-uphoHzK4HQkW5locx9xDILRasO7eQTTRoGr0LwyflO2mqvnfn0fNVkZ0ipPgQ",
"autoRenewing": true,
"acknowledged": true,
}
)
signature = "" # (signature from android app)
purchases = validator.validate(receipt, signature)
process_purchases(purchases)