Upgrading a Roku Channel with the In-Channel Upgrade Feature


Roku has discontinued support for the In-Channel Upgrade feature. Please use the In-Channel Purchase feature instead. Older versions/updates of Instant TV Channel may still have buttons available for the In-Channel Upgrade feature which will no longer function as intended.

The In-Channel Upgrade feature allows a Custom SDK Roku channel to be upgraded from within the channel, without using the on-screen Roku Channel Store. During the upgrade process the subscriber is prompted for their Roku PIN number to authorize a one-time or recurring credit card charge. If the upgrade is successful, the new channel is installed onto the Roku device and the old channel is automatically deleted.

• In order to use the In-Channel Upgrade feature with your Roku channel, you must be enrolled in the Roku Billing Services Program. Visit the Roku Billing Services page at www.roku.com/billing for additional information.
• Your Instant TV Channel account Developer Mode must be set to Advanced in order to view or change In-Channel Upgrade related settings. You can change the Developer Mode from the Instant TV Channel Account page.
• Your channel must be a Commercial channel type. Free and Unlimited channel types do not support the In-Channel Upgrade feature.
• Your channel must either be newly created, or be at Update #283 or higher in order to use the In-Channel Upgrade feature for your Roku channel.

Before starting, you will need to have 2 separate published public or non-certified ("private") Roku channels. One channel will be referred to as the Free channel, and the other as the Paid channel. This simple walk-through will explain how to perform an In-Channel Upgrade from the Free channel to the Paid channel.

Part 1: Roku Developer Account

  1. Log into your Roku Developer Account by going to http://owner.roku.com.
  2. Click the "Developer Site" link in the upper right corner.
  3. Click "Manage My Channels".
  4. Click the large icon for the Free channel.
  5. Click the blue "Edit Channel" button.
  6. Click the grey "Channel Properties" button.
  7. From the "In-Channel Upgrade" drop-down list, select the title of the Paid channel.
  8. Click the blue "Save Changes" button.
  9. Click the "Developer Site" link in the upper right corner again.
  10. Click "Manage My Channels" again.
  11. Click the large icon for the Paid channel.
  12. Note the URL contained in the address bar of your browser. The URL will end in a number, usually 5 digits long.

    For example: https://owner.roku.com/Developer/Apps/Details/12345

    Copy the number at the end of the URL. This is the App Id for the Paid channel and it will be needed at a later step.

  13. Log out of your Roku Developer Account by clicking "SIGN OUT" at the upper right corner of the page.

Part 2: Instant TV Channel

  1. Log into your Instant TV Channel account and navigate to the Content Editor page for the Free channel.
  2. Right-click on the yellow folder icon for the List or Grid where you would like to insert the button to perform the In-Channel Upgrade, and select "New Programmable Button"
  3. In lower half of the Content Editor page, locate the Function parameter and change it to "in-channel upgrade".
  4. Locate the ChannelAppId parameter and enter the App Id for the Paid channel.
  5. The PurchaseError parameter specifies what to do if the upgrade fails. By default the parameter is set to "continue" which causes the player to stay at the current level. You may wish to change this to "exit level" in order to cause the player to exit to the parent level containing the Programmable Button if the upgrade fails.
  6. The HDChannelSetupUrl and SDChannelSetupUrl parameters contain URLs for JPG, GIF, or PNG images that contain a description of the upgraded channel. The SD image size should be 720x480 or smaller, and the HD size should be 1280 x 720 or smaller. The default URLs point at sample Instant TV Channel artwork that is suitable for testing but which must be replaced for a Roku-approved public channel.
  7. The ChannelSetupColor parameter is used to set the background color if the images pointed to by SDChannelSetupUrl and HDChannelSetupUrl are not full-screen.
  8. The ChannelSetupTimer is a time value in seconds which determines how long to display the images pointed to by the SDChannelSetupUrl and HDChannelSetupUrl parameters.

    If the Programmable Button is located in an AutomaticPlay list, then the ChannelSetupTimer should usually be set to a value between 10 and 30 seconds.

    If the Programmable Button is not located in an AutomaticPlay list, then the ChannelSetupTimer should usually be set to zero so that the Setup image is dismissed only when the subscriber is ready.

  9. Change the ShortDescriptionLine1 and ShortDescriptionLine2 parameters to the text that you would like to appear beneath the poster images pointed to by HDListPoster and SDListPoster.
  10. The HDListPosterUrl and SDListPosterUrl parameters contain URLs for JPG posters that appear in the parent List or Grid of the Programmable Button. As with other List Posters, the optimal image size will vary depending upon the setting of the parent's ListStyle parameter. The default URLs point at sample Instant TV Channel artwork that is suitable for testing but which must be replaced for a Roku-approved public channel.

That's it, your In-Channel Upgrade Programmable Button is ready to try out!

- o -


Please see Programmable Buttons for Roku Channel Automation for more information about using In-Channel Upgrade Programmable Buttons with your Roku Channel.

Questions and comments about this Roku developer walk-through can be forwarded to .

Instant TV Channel is a cloud-based tool for Roku developers and content providers that shortens development time and eases maintenance after deployment.



Access Code: ID1
Check out Instant TV Channel by adding our latest demonstration channel to your Roku player, or watch the YouTube video.

Need help with your Roku?

We are unable to provide technical support for your Roku device.

Please visit www.roku.com for assistance.



Instant TV Channel is not affiliated with nor endorsed by Roku Inc.