Search code examples
iphoneiosios4itunes

Re-validating the receipt


I have successfully verified my sandbox receipt with apple server for auto renewable subscription.I have stored the latest-receipt content which is stored returned by the apple server into my php server side.

Now when i tried to re-validate the stored receipt for checking is that valid still, against the apple server, i am receiving {"status":21002, "exception":java.lang.IlegalArgumentException"}

Please let me know am i storing the wrong part of the receipt data returned by the apple server?

I am facing this issue only when re-validating the receipt.

Thanks for stopping by

Update:

"receipt":{"original_purchase_date_pst":"2012-07-24 05:41:19 America/Los_Angeles", "unique_identifier":"46f070c011e0da17bc168ae9d3901dcf961f8c09", "original_transaction_id":"1000000053343936", "expires_date":"1343135478998", "transaction_id":"1000000053343936", "quantity":"1", "product_id":"com.XX.XXX", "original_purchase_date_ms":"1343133679239", "bid":"com.XX.XXX", "web_order_line_item_id":"1000000026126403", "bvrs":"1.0", "expires_date_formatted":"2012-07-24 13:11:18 Etc/GMT", "purchase_date":"2012-07-24 12:41:18 Etc/GMT", "purchase_date_ms":"1343133678998", "expires_date_formatted_pst":"2012-07-24 06:11:18 America/Los_Angeles", "purchase_date_pst":"2012-07-24 05:41:18 America/Los_Angeles", "original_purchase_date":"2012-07-24 12:41:19 Etc/GMT", "item_id":"547592716"}, "latest_receipt_info":{"original_purchase_date_pst":"2012-07-24 05:41:19 America/Los_Angeles", "unique_identifier":"46f070c011e0da17bc168ae9d3901dcf961f8c09", "original_transaction_id":"1000000053343936", "expires_date":"1343135478000", "transaction_id":"1000000053343936", "quantity":"1", "product_id":"com.XX.XXX", "original_purchase_date_ms":"1343133679000", "bid":"com.XX.XXX", "web_order_line_item_id":"1000000026126403", "bvrs":"1.0", "expires_date_formatted":"2012-07-24 13:11:18 Etc/GMT", "purchase_date":"2012-07-24 12:41:18 Etc/GMT", "purchase_date_ms":"1343133678000", "expires_date_formatted_pst":"2012-07-24 06:11:18 America/Los_Angeles", "purchase_date_pst":"2012-07-24 05:41:18 America/Los_Angeles", "original_purchase_date":"2012-07-24 12:41:19 Etc/GMT", "item_id":"547592716"}, "status":0, "latest_receipt":"ewoJInNpZ25hdHVyZSIgPSAiQWgvbnBVK2liUWpHR3VHWFBrNlZ0OUUzbEwwWjFPeUgyeHYxM0RKbXYxK1RuRHBZa1JCcThYbXlxd1BaUDRvNDcvY3A1RWNCMUFmYi9SbnYzQldoZWNVQ1ZsVk85b0hmTDljUVloY01TTHdyNURFcVdFTTZqbXRpRjNxN3VldmlCcE5qb2l3b3pjWmIyaXlzYTE3emVoaVplTlNRVlByYXhUSmppNFFoTjdDWkFBQURWekNDQTFNd2dnSTdvQU1DQVFJQ0NHVVVrVTNaV0FTMU1BMEdDU3FHU0liM0RRRUJCUVVBTUg4eEN6QUpCZ05WQkFZVEFsVlRNUk13RVFZRFZRUUtEQXBCY0hCc1pTQkpibU11TVNZd0pBWURWUVFMREIxQmNIQnNaU0JEWlhKMGFXWnBZMkYwYVc5dUlFRjFkR2h2Y21sMGVURXpNREVHQTFVRUF3d3FRWEJ3YkdVZ2FWUjFibVZ6SUZOMGIzSmxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1CNFhEVEE1TURZeE5USXlNRFUxTmxvWERURTBNRFl4TkRJeU1EVTFObG93WkRFak1DRUdBMVVFQXd3YVVIVnlZMmhoYzJWU1pXTmxhWEIwUTJWeWRHbG1hV05oZEdVeEd6QVpCZ05WQkFzTUVrRndjR3hsSUdsVWRXNWxjeUJUZEc5eVpURVRNQkVHQTFVRUNnd0tRWEJ3YkdVZ1NXNWpMakVMTUFrR0ExVUVCaE1DVlZNd2daOHdEUVlKS29aSWh2Y05BUUVCQlFBRGdZMEFNSUdKQW9HQkFNclJqRjJjdDRJclNkaVRDaGFJMGc4cHd2L2NtSHM4cC9Sd1YvcnQvOTFYS1ZoTmw0WElCaW1LalFRTmZnSHNEczZ5anUrK0RyS0pFN3VLc3BoTWRkS1lmRkU1ckdYc0FkQkVqQndSSXhleFRldngzSExFRkdBdDFtb0t4NTA5ZGh4dGlJZERnSnYyWWFWczQ5QjB1SnZOZHk2U01xTk5MSHNETHpEUzlvWkhBZ01CQUFHamNqQndNQXdHQTFVZEV3RUIvd1FDTUFBd0h3WURWUjBqQkJnd0ZvQVVOaDNvNHAyQzBnRVl0VEpyRHRkREM1RllRem93RGdZRFZSMFBBUUgvQkFRREFnZUFNQjBHQTFVZERnUVdCQlNwZzRQeUdVakZQaEpYQ0JUTXphTittVjhrOVRBUUJnb3Foa2lHOTJOa0JnVUJCQUlGQURBTkJna3Foa2lHOXcwQkFRVUZBQU9DQVFFQUVhU2JQanRtTjRDL0lCM1FFcEszMlJ4YWNDRFhkVlhBZVZSZVM1RmFaeGMrdDg4cFFQOTNCaUF4dmRXLzNlVFNNR1k1RmJlQVlMM2V0cVA1Z204d3JGb2pYMGlreVZSU3RRKy9BUTBLRWp0cUIwN2tMczlRVWU4Y3pSOFVHZmRNMUV1bVYvVWd2RGQ0TndOWXhMUU1nNFdUUWZna1FRVnk4R1had1ZIZ2JFL1VDNlk3MDUzcEdYQms1MU5QTTN3b3hoZDNnU1JMdlhqK2xvSHNTdGNURXFlOXBCRHBtRzUrc2s0dHcrR0szR01lRU41LytlMVFUOW5wL0tsMW5qK2FCdzdDMHhzeTBiRm5hQWQxY1NTNnhkb3J5L0NVdk02Z3RLc21uT09kcVRlc2JwMGJzOHNuNldxczBDOWRnY3hSSHVPTVoydG04bnBMVW03YXJnT1N6UT09IjsKCSJwdXJjaGFzZS1pbmZvIiA9ICJld29KSW05eWFXZHBibUZzTFhCMWNtTm9ZWE5sTFdSaGRHVXRjSE4wSWlBOUlDSXlNREV5TFRBM0xUSTBJREExT2pReE9qRTVJRUZ0WlhKcFkyRXZURzl6WDBGdVoyVnNaWE1pT3dvSkluQjFjbU5vWVhObExXUmhkR1V0YlhNaUlEMGdJakV6TkRNeE16TTJOemd3TURBaU93b0pJblZ1YVhGMVpTMXBaR1Z1ZEdsbWFXVnlJaUE5SUNJME5tWXdOekJqTURFeFpUQmtZVEUzWW1NeE5qaGhaVGxrTXprd01XUmpaamsyTVdZNFl6QTVJanNLQ1NKdmNtbG5hVzVoYkMxMGNtRnVjMkZqZEdsdmJpMXBaQ0lnUFNBaU1UQXdNREF3TURBMU16TTBNemt6TmlJN0Nna2laWGh3YVhKbGN5MWtZWFJsSWlBOUlDSXhNelF6TVRNMU5EYzRNREF3SWpzS0NTSjBjbUZ1YzJGamRHbHZiaTFwWkNJZ1BTQWlNVEF3TURBd01EQTFNek0wTXprek5pSTdDZ2tpYjNKcFoybHVZV3d0Y0hWeVkyaGhjMlV0WkdGMFpTMXRjeUlnUFNBaU1UTTBNekV6TXpZM09UQXdNQ0k3Q2draWQyVmlMVzl5WkdWeUxXeHBibVV0YVhSbGJTMXBaQ0lnUFNBaU1UQXdNREF3TURBeU5qRXlOalF3TXlJN0Nna2lZblp5Y3lJZ1BTQWlNUzR3SWpzS0NTSmxlSEJwY21WekxXUmhkR1V0Wm05eWJXRjBkR1ZrTFhCemRDSWdQU0FpTWpBeE1pMHdOeTB5TkNBd05qb3hNVG94T0NCQmJXVnlhV05oTDB4dmMxOUJibWRsYkdWeklqc0tDU0pwZEdWdExXbGtJaUE5SUNJMU5EYzFPVEkzTVRZaU93b0pJbVY0Y0dseVpYTXRaR0YwWlMxbWIzSnRZWFIwWldRaUlEMGdJakl3TVRJdE1EY3RNalFnTVRNNk1URTZNVGdnUlhSakwwZE5WQ0k3Q2draWNISnZaSFZqZEMxcFpDSWdQU0FpWTI5dExtaHZhUzUwWlhOMExuTmhiWEJzWlhCdlpXMTBlWEJsTG5OcGVHMXZiblJvY3lJN0Nna2ljSFZ5WTJoaGMyVXRaR0YwWlNJZ1BTQWlNakF4TWkwd055MHlOQ0F4TWpvME1Ub3hPQ0JGZEdNdlIwMVVJanNLQ1NKdmNtbG5hVzVoYkMxd2RYSmphR0Z6WlMxa1lYUmxJaUE5SUNJeU1ERXlMVEEzTFRJMElERXlPalF4T2pFNUlFVjBZeTlIVFZRaU93b0pJbUpwWkNJZ1BTQWlZMjl0TG1GdVoyeGxjaTVvYjJscGJtRndjSEIxY21Ob1lYTmxkR1Z6ZEdsdVp5STdDZ2tpY0hWeVkyaGhjMlV0WkdGMFpTMXdjM1FpSUQwZ0lqSXdNVEl0TURjdE1qUWdNRFU2TkRFNk1UZ2dRVzFsY21sallTOU1iM05mUVc1blpXeGxjeUk3Q2draWNYVmhiblJwZEhraUlEMGdJakVpT3dwOSI7CgkiZW52aXJvbm1lbnQiID0gIlNhbmRib3giOwoJInBvZCIgPSAiMTAwIjsKCSJzaWduaW5nLXN0YXR1cyIgPSAiMCI7Cn0"


Solution

  • 21002 is "The data in the receipt-data property was malformed.". This means the receipt data is not properly encoded. TEXT data type is the problem, you should store it as binary base 64 encoded.

    okay I have links that you may found helpful. Use this to verify your receipt data. Check this & this questions