latest_receipt_info and in_app differencies

Firstly I thought that the differencies are:

  • latest_receipt_info also contains purchases, which are proceeded after receipt generation, in_app - doesn't. Good for tracking future events.
  • in_app also contains consumable, for which the receipt was generated (I noticed this fact in sandbox environment: consumable was only in response for receipt, which was associated with this consumable purchase), latest_receipt_info - doesn't. Good for validation of random purchase with associated receipt.

BUT. I found case, when I have the same transaction in in_app and in latest_receipt_info (it has the same web_order_line_item_id), but transaction_ids differ. Can you explain cases, when this behaviour appear?

Or more precisely: Is it possible for any transaction to change transaction_id in latest_receipt_info? Does it happen when user do something with exact transaction (restores on other device etc.)? (found the same question: https://developer.apple.com/forums/thread/84812, didn't find answer)

I know, that I still can track subscription state using web_order_line_item_id, BUT I am interested in reasons why id can change

latest_receipt_info and in_app differencies
 
 
Q