5 Replies
      Latest reply on Feb 18, 2020 11:05 AM by PBK
      blubberlutsch80 Level 1 Level 1 (0 points)

        Sometime i got strange transactionId reported from the ios client.

        Normally they are 15 digits like:

        400000123456789

        but sometimes i got 40 character uuid, example:

        FAB60FFD-906D-48CB-8FED-092C4B2707D6

        In that case the receipt does not contain any transactions (in_app list in the response when verifiying against apple is empty).

        What does this mean? Is someone trying to hack or some strange fallback mechanism? Are there valid transactiondIds in this format?

        I get similar String in response Header of verifyReceipt in the following header: x-apple-request-uuid

        • Re: subscription: strange transactionId uuid style
          PBK Level 7 Level 7 (3,565 points)

          > Sometime i got strange transactionId ......the receipt does not contain any transactions

           

          Then there should not be a transactionId.

           

          If there are no IAPs in the receipt then it is reasonable to conclude that no IAPs were purchased.  It sounds like a hack attack on your app.

            • Re: subscription: strange transactionId uuid style
              blubberlutsch80 Level 1 Level 1 (0 points)

              sometimes apple is too slow and the transaction is not yet in the receipt, so i have to store the failed transactions to re-validate them later. But sometimes i get these weired transactions and it's useless to revalidate them.

              I just look for some advice which format may be valid and which format i can drop instantly.

                • Re: subscription: strange transactionId uuid style
                  PBK Level 7 Level 7 (3,565 points)

                  I have never found Apple "too slow".  Whenever there is a call to updatedTransactions with a state of 'purchased' there is always an updated receipt.  Are you finding something different?

                   

                  EDIT - Wait - I mean the receipt in the device is updated, not that the Apple servers will respond with a latest_receipt_info field that is updated.  -  Is that your issue????

                    • Re: subscription: strange transactionId uuid style
                      blubberlutsch80 Level 1 Level 1 (0 points)

                      I mean our client sends a successfull purchase to our backend. I validate the receipt from the  backend against apple and this transaction is not yet in the receipt. I store this transacion and when i check the receipt later again, the transaction is in the receipt and valid.

                      Maybe this is some kind of outage, i see saw this behaviour for some hours and then weeks or months without. Normally it happend on the sandbox.

                        • Re: subscription: strange transactionId uuid style
                          PBK Level 7 Level 7 (3,565 points)

                          >I mean our client sends a successfull purchase to our backend. I validate the receipt from the  backend against apple and this transaction is not yet in the receipt. I store this transacion and when i check the receipt later again, the transaction is in the receipt and valid.

                           

                          I would expect that the receipt that the client's device could capture after a call to updatedTransactions and send to your server would have the latest information.  However, if you used an older receipt from that client and sent that older receipt looking for a latest_receipt_info field - that field may be delayed.  After all, the new purchase receipt was just issued on one end of a transaction and may not have made it into the pre-existing database latest_receipt_info field for earlier receipts.