> For the complete documentation index, see [llms.txt](https://docs.upzelo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.upzelo.com/developer-guide/customer-id-and-subscription-id.md).

# Customer ID and Subscription ID

Upzelo connects to your payment provider to take action on your behalf. Your customer Flows are completely configurable and can have different outputs such as:

* Pausing subscriptions
* Applying discounts
* Cancelling subscriptions
* Changing subscription plans

When initializing Upzelo, it's required that you send both a `customerId` and `subscriptionId`. The requirements exist because customers can have multiple subscriptions and we want you to have precise control over what we are taking action on.

{% hint style="info" %}
If you support multiple subscriptions, you can add event handlers to individual buttons for each subscription with the `subscriptionId` set in the [Upzelo configuration object](/developer-guide/advanced-configuration/upzelo-configuration-object.md)
{% endhint %}

Even though the system could function correctly using just a `subscriptionId`, we require the `customerId` too so we can verify that the subscription that is being actioned does belong to the customer.

{% hint style="danger" %}
In the event that a `subscriptionId` isn't passed into Upzelo, we will pick the most recent non-cancelled subscription to action. This is determined using the subscription created date.
{% endhint %}
