<!--
{
  "documentType" : "article",
  "framework" : "StoreKit",
  "identifier" : "/documentation/StoreKit/testing-complete-transactions",
  "metadataVersion" : "0.1.0",
  "role" : "article",
  "title" : "Testing complete transactions"
}
-->

# Testing complete transactions

Verify that your app completes transactions properly by confirming that any downloadable purchases are present on your test device.

## Discussion

Locate where your app calls the [`finishTransaction(_:)`](/documentation/StoreKit/SKPaymentQueue/finishTransaction(_:)) method, and verify that your app completes all work related to the transaction before calling the method. For example, if the purchase includes downloadable content, verify your app downloaded the content to your test device as described in [Persisting a purchase](/documentation/StoreKit/persisting-a-purchase). Verify that you call [`finishTransaction(_:)`](/documentation/StoreKit/SKPaymentQueue/finishTransaction(_:)) for every transaction, whether it succeeded or failed. For more information, see [Finishing a transaction](/documentation/StoreKit/finishing-a-transaction).

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)