Overflow Issue in the Amount Length of GetTransactionInfo for Retrieving Transaction Details

1.We are making a request to Apple's GetTransactionInfo api:

request_uri: GET https://api.storekit.itunes.apple.com/inApps/v1/transactions/570xxxxxx152928
request_response_body`
:{"signedTransactionInfo":"eyJh....."}

2.Parse the signedTransactionInfo content returned by the GetTransactionInfo Api

JWSTransactionDecodedPayload: 
{
	"appAccountToken": "FBACxxxx376",
	"bundleId": "com.test.xx",
	"currency": "VND",
	"environment": "Production",
	"inAppOwnershipType": "PURCHASED",
	"originalPurchaseDate": 1700369755000,
	"originalTransactionId": "57xxxxxx2928",
	"price": -1795967296,
	"productId": "com.text.xx9",
	"purchaseDate": 1700364444000,
	"quantity": 1,
	"signedDate": 1700364444000,
	"storefront": "VNM",
	"storefrontId": "123456",
	"transactionId": "57xxxxxx2928",
	"transactionReason": "PURCHASE",
	"type": "Consumable"
}

3. The Apple Api returned an abnormal price: -1,795,967,296.

Personal speculation: The original price of the current order item [com.text.xx9] is 2,499,000 VND, and the Apple Api multiplies the price amount by 1000, resulting in a final amount of 2,499,000,000. However, due to an overflow issue in the length of the price amount, the price in the order details becomes -1,795,967,296, a negative number.

Appstore api doc:

GetTransactionInfo Api docGet Transaction Info | Apple Developer Documentation

JWSTransactionDecodedPayload doc:JWSTransactionDecodedPayload | Apple Developer Documentation

Overflow Issue in the Amount Length of GetTransactionInfo for Retrieving Transaction Details
 
 
Q