# Displaying users subscriptions

We believe that your customers should be able to unsubscribe as easily as they subscribed. This leads to a better global trust and offers some interesting opportunities like offering an upsell or downsell or getting to know why they choose to unsubscribe.

We provide a complete active subscriptions handling flow that you can call with a single line of code and that offers:

* Active subscriptions list
* Next renewal date
* Upsell / downsell
* Cancellation survey
* Cancellation

![Purchasely unsubscription flow](https://2145676854-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKuAJGBnHJWZbqzA4g8yO%2Fuploads%2Fgit-blob-faf7fbd6af8ba6b2567b3427713cfb25fa1d1c79%2FEaydAmMXsAIAntC.jpeg?alt=media)

You can get the subscriptions list root controller by calling

{% tabs %}
{% tab title="Swift" %}

```swift
// ⚠️ The controller must be added to a UINavigationController
let ctrl = Purchasely.subscriptionsController()
```

{% endtab %}

{% tab title="Objective-C" %}

```objectivec
// ⚠️ The controller must be added to a UINavigationController
UIViewController *ctrl = [Purchasely subscriptionsController];
```

{% endtab %}

{% tab title="Kotlin" %}

```kotlin
supportFragmentManager.beginTransaction()
    .addToBackStack(null)
    .replace(R.id.subscriptionsFragment, Purchasely.subscriptionsFragment(), "SubscriptionsFragment")
    .commitAllowingStateLoss()
```

{% endtab %}

{% tab title="Java" %}

```java
getSupportFragmentManager().beginTransaction()
    .addToBackStack(null)
    .replace(R.id.subscriptionsFragment, Purchasely.subscriptionsFragment(), "SubscriptionsFragment")
    .commitAllowingStateLoss();
```

{% endtab %}

{% tab title="React Native" %}

```javascript
Purchasely.presentSubscriptions();
```

{% endtab %}

{% tab title="Cordova" %}

```javascript
Purchasely.presentSubscriptions();
```

{% endtab %}

{% tab title="Flutter" %}

```dart
try {
  Purchasely.presentSubscriptions();
} catch (e) {
  print(e);
}
```

{% endtab %}

{% tab title="Unity" %}

```csharp
private PurchaselyRuntime.Purchasely _purchasely;

_purchasely.PresentSubscriptions();
```

{% endtab %}
{% endtabs %}
