# Selling per-channel access to an Extension outside Twitch (one-time purchase)

**URL:** <https://discuss.dev.twitch.com/t/selling-per-channel-access-to-an-extension-outside-twitch-one-time-purchase/65043>\
**Category:** Extensions\
**Created:** [September 17, 2026, 11:31am UTC](https://discuss.dev.twitch.com/t/selling-per-channel-access-to-an-extension-outside-twitch-one-time-purchase/65043 "2026-09-17T11:31:28Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![vipervex](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/vipervex/32/31874_2.png) [@vipervex](https://discuss.dev.twitch.com/u/vipervex)\
**Post date:** [September 17, 2026, 11:31am UTC](https://discuss.dev.twitch.com/t/selling-per-channel-access-to-an-extension-outside-twitch-one-time-purchase/65043/1 "2026-09-17T11:31:28Z")

</div>

Hi Twitch team,

I’m the developer of STREAMVERSE, a panel extension (a community pet, quests and viewer profiles; no Bits, no purchases, no chat, no random rewards).

I’d like to sell streamers a one-time license on my own store (Shopify/Etsy). After purchase, I activate their channel on my backend (EBS). Channels without a license see a short “not active on this channel” message inside the extension. The extension contains no price, no purchase link and no payment flow for streamers or viewers.

Guideline 5.1 allows compensation from broadcasters, but I couldn’t find anything about the purchase happening outside Twitch.

1. Is selling access this way (payment off-platform, license checked by the EBS) allowed for a released extension?
2. Is there anything the extension or its listing must show or disclose about the license?

Thank you!

---

<div class="post-metadata">

**Author:** ![BarryCarlyon](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/barrycarlyon/32/253_2.png) [@BarryCarlyon](https://discuss.dev.twitch.com/u/BarryCarlyon)\
**Post date:** [September 17, 2026, 11:35am UTC](https://discuss.dev.twitch.com/t/selling-per-channel-access-to-an-extension-outside-twitch-one-time-purchase/65043/2 "2026-09-17T11:35:53Z")

</div>

> [@vipervex](#):
>
> Guideline 5.1 allows compensation from broadcasters

> 5.1 Extensions may provide differentiated experiences or functionality to broadcasters, in exchange for compensation from broadcasters. Examples: tiered access to features or purchasable plugins to add functionality.

`differentiated experiences` as in it must do something when a caster hasn’t paid, not do nothing/have nothing shown to viewers\*

\*this is my interpretation.

> [@vipervex](#):
>
> but I couldn’t find anything about the purchase happening outside Twitch.

Theres no mechanism for handling this _on site_ so off site is fine/expected.

> [@vipervex](#):
>
> 1. Is selling access this way (payment off-platform, license checked by the EBS) allowed for a released extension?

Payments being offsite yes/is expected.

Flat pay to use is not allowed\*

\*except when using allow list to block access as the streamer has paid for access/it to be built which then is reviewed under a different context (see 4.10 regarding global overlay extensions). Again this is my inerpreation. As the policy states “differentiated access/features”

> [@vipervex](#):
>
> 1. Is there anything the extension or its listing must show or disclose about the license?

Policy aside: it should be noted on the extension details page as otherwise you are gonna get a high bounce rate

**Disclaimer** : I am not a laywer and this isn’t legal advice and the bulk of your query is pertianing to legal advice

---

<div class="post-metadata">

**Author:** ![Xemdo](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/xemdo/32/29273_2.png) [@Xemdo](https://discuss.dev.twitch.com/u/Xemdo)\
**Post date:** [September 17, 2026, 6:43pm UTC](https://discuss.dev.twitch.com/t/selling-per-channel-access-to-an-extension-outside-twitch-one-time-purchase/65043/3 "2026-09-17T18:43:58Z")

</div>

This should be fine, as per Guideline 5.1.

Important things to note:

- You cannot sell this access using Bits, as that breaks our Bits Acceptable Use Policy. If you’re using your own off-site purchasign then that should be fine.
- The viewer-facing half of the Extension cannot have any links to purchase access. Your Configuration (streamer-facing half) is allowed to have these linkouts.
- Do not imply that Twitch is related to your sale, or that Twitch provides any warranty. All Terms of Sale and other compliance expectations for local laws is on you.
- As Barry said, for UX purposes you should note this on your Extension details page, and also note it in your Configuration very clearly.
  - Also, do not utilize the Streamer Allowlist for this. We do not expedite reviews because of allowlist changes, so if you go that route then you’ll end up waiting the regular Extension Review SLA for each person added.

- Your Extension still has to follow all other Extension guidelines regardless of being public or paywalled.
- Remember to grant access to _/qa\_moderation_ at the very least, and preferably also _/qa\_moderation3_. These are our primary review channels.
  - Note in your review notes that the access is granted for these channels. This helps us test functionality on non-allowed channels.

---

<div class="post-metadata">

**Author:** ![jdrninja](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/jdrninja/32/20237_2.png) [@jdrninja](https://discuss.dev.twitch.com/u/jdrninja)\
**Post date:** [September 18, 2026, 12:31am UTC](https://discuss.dev.twitch.com/t/selling-per-channel-access-to-an-extension-outside-twitch-one-time-purchase/65043/4 "2026-09-18T00:31:11Z")

</div>

I’m in exactly this situation with my extension.

My extension is publicly installable, but its functionality requires an active paid subscription on my website. The subscription status is verified by my backend/EBS.

I actually received a rejection from Twitch QA today specifically telling me that, because the extension requires a paid subscription, I need to use the Streamer Allowlist.

This seems to conflict with the guidance here saying that the Streamer Allowlist should not be used for managing paying customers, especially since every change to the allowlist would require submitting the extension for review again.

Could you clarify which approach Twitch expects us to follow in this situation?

Ideally, I would like to keep the extension public and have my backend determine whether the broadcaster has an active subscription, rather than having to update the Twitch Streamer Allowlist for every new subscriber.

---

<div class="post-metadata">

**Author:** ![BarryCarlyon](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/barrycarlyon/32/253_2.png) [@BarryCarlyon](https://discuss.dev.twitch.com/u/BarryCarlyon)\
**Post date:** [September 18, 2026, 10:12am UTC](https://discuss.dev.twitch.com/t/selling-per-channel-access-to-an-extension-outside-twitch-one-time-purchase/65043/5 "2026-09-18T10:12:30Z")

</div>

> [@jdrninja](#):
>
> My extension is publicly installable, but its functionality requires an active paid subscription on my website. The subscription status is verified by my backend/EBS.
> 
> I actually received a rejection from Twitch QA today specifically telling me that, because the extension requires a paid subscription, I need to use the Streamer Allowlist.

Sounds like QA applied the policy hows it’s written

> [@BarryCarlyon](#):
>
> 5.1 Extensions may provide differentiated experiences or functionality to broadcasters, in exchange for compensation from broadcasters. Examples: tiered access to features or purchasable plugins to add functionality.

Flat out disable compared to “it does this but streamer pays to get it to do more”

is how I read the policy _to the letter_

> [@Xemdo](#):
>
> This should be fine, as per Guideline 5.1.

Suggests otherwise, so the policy/and QA might need a tweak?

> [@Xemdo](#):
>
> - Remember to grant access to _/qa\_moderation_ at the very least, and preferably also _/qa\_moderation3_. These are our primary review channels.
> - Note in your review notes that the access is granted for these channels. This helps us test functionality on non-allowed channels.

Or just pass the query parameter of the state of the extension to the EBS and if it’s not “released” allow _as if paid_

---

<div class="post-metadata">

**Author:** ![Xemdo](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/xemdo/32/29273_2.png) [@Xemdo](https://discuss.dev.twitch.com/u/Xemdo)\
**Post date:** [September 18, 2026, 4:23pm UTC](https://discuss.dev.twitch.com/t/selling-per-channel-access-to-an-extension-outside-twitch-one-time-purchase/65043/6 "2026-09-18T16:23:11Z")

</div>

> I actually received a rejection from Twitch QA today specifically telling me that, because the extension requires a paid subscription, I need to use the Streamer Allowlist.

Can you email [developers@twitch.tv](mailto:developers@twitch.tv) about this situation and include your Extension name + Client ID?
