Handling failed transactions in Storekit 2

When simulating a Storekit error like an invalid device verification or others of that type, should we finish a failed transaction? When I test with a storekit configuration file, all failed transactions persist after every restart. The Apple-provided sample code for storekit 2 has transactions finished only when they are successful.

From the documentation:

Call finish() to complete a transaction after you deliver the purchased content or enable the purchased service.

Assuming you do not unlock the content for failed transactions, you should not finish them.

I believe failed transactions can resolve eventually, so that's why they persist.

Handling failed transactions in Storekit 2
 
 
Q