> ## Documentation Index
> Fetch the complete documentation index at: https://docs.m1amdocs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Idempotency in a Platform-Managed Flow

In certain circumstances, MarketONE might trigger a retry of the same event. This could happen due to a delayed response from the Merchant or MarketONE misinterpreting a response. For successful subscription status management, the Merchant must support idempotency.

Here's an example of what can happen when idempotency isn't supported:

1. MarketONE sends the `AddSubscription` event to the Merchant. The `partnerSubscription` status is `UNPROVISIONED`.
2. The Merchant receives the event, processes it and returns a 200 OK with the `externalPartnerSubscriptionId`.
3. For some reason, MarketONE doesn't get the response. MarketONE retries the same `AddSubscription` event.
4. The Merchant receives the duplicated event. Instead of an idempotent response, it responds with a 400 error. Upon receiving the error response, MarketONE puts the `partnerSubscription` into a `FAILED` state.
5. The user will not be able to activate their subscription because the `partnerSubscription` status is in a `FAILED` state (it's supposed to be in an `INACTIVE` state) and a redemption link won't be sent out to the user. The user can request another redemption link, but, due to the `FAILED` state of the `partnerSubscription`, a redemption link still won't be sent out.

For this reason, MarketONE requires the Merchant's response to all MarketONE events to be idempotent (that is, the same 200 OK with successful payload for any duplicated events).

**Parent topic:**[Design Guidelines for the Platform-Managed Flow](designGuidelinesPlatformManaged)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.