<!--
{
  "availability" : [
    "iOS: 15.0.0 -",
    "iPadOS: 15.0.0 -",
    "macOS: 12.0.0 -",
    "tvOS: 15.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 8.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "StoreKit",
  "identifier" : "/documentation/StoreKit/Transaction/OfferType-swift.struct",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "StoreKit"
    ],
    "preciseIdentifier" : "s:8StoreKit11TransactionV9OfferTypeV"
  },
  "title" : "Transaction.OfferType"
}
-->

# Transaction.OfferType

The types of offers that apply to a transaction.

```
struct OfferType
```

## Overview

You don’t create offer types in [`Transaction.OfferType`](/documentation/StoreKit/Transaction/OfferType-swift.struct). The static values indicate the offer types that the system reports for a transaction.

## Topics

### Getting offer types

[`introductory`](/documentation/StoreKit/Transaction/OfferType-swift.struct/introductory)

An introductory offer for an auto-renewable subscription.

[`promotional`](/documentation/StoreKit/Transaction/OfferType-swift.struct/promotional)

A promotional offer for an auto-renewable subscription.

[`code`](/documentation/StoreKit/Transaction/OfferType-swift.struct/code)

An offer code.

[`winBack`](/documentation/StoreKit/Transaction/OfferType-swift.struct/winBack)

A win-back offer for an auto-renewable subscription.

### Getting a localized description

[`localizedDescription`](/documentation/StoreKit/Transaction/OfferType-swift.struct/localizedDescription)

The localized text that describes the offer type.



---

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)