In App Purchase in Roku

Hi, I am integrating In App purchase and want to get all registered product list from my Roku channel app. I am using ChannelStore node for it and set its fakeServer property to false so it will show me real product instead of fake product and set an observer catalog on ChannelStore for getting product list of my channel app but instead of showing my registered products list, it’s showing me three product list from its roku default channel with name “Product 1”, “Product 2” and “Select this to simulate a failed purchase error”. I also changed my channel title with the registered roku channel name but still not get it. So, can anyone suggest me how can I fetch my products list from my roku channel app? Below are my code snippet which i am using:

in .xml file:

in .brs file:

sub init()
    m.store.ObserveField(“catalog”, “onGetCatalog”)
End sub

function onGetCatalog() as void

print m.store.catalog

count = m.store.catalog.GetChildCount()

for i = 0 to count - 1

item = m.store.catalog.getChild(i)

print "item is "; item

end for

end function

That is a bu…feature of Roku’s ChannelStore api - you get made-up stuff in the app if side-loaded (the way we normally do debug/testing). See also viewtopic.php?f=34&t=95551

To test with the real catalog, you’ll have to “publish” as a private channel and you’ll “magically” get the real deal. That’s unfinished design, per my gut feeling - never “got to it” to doing it right

has anyone found any solution, because i am still facing the same issue. I have published the private channel as well with few of my in app products, but still i am getting those 3 default products only.

“harshvikrams” wrote:
has anyone found any solution, because i am still facing the same issue. I have published the private channel as well with few of my in app products, but still i am getting those 3 default products only.
I am also facing the same issue. Have you found the solution?

I am facing the same issue as well.

Hello, as you link or get the catalog list, I perform the command but I don’t get anything, This is the answer I get

{
change: <Component: roAssociativeArray>
focusable: false
focusedChild: <Component: roInvalid>
id: “”
status: -3
statusMessage: “Order Failed”
}

Have you solved this? I faced with the same issue

@ARGO , do you have all the products set up in your developer account for the channel? Do you have the channel set for “Use for billing testing”?

I have enabled billing testing, but still it shows those 3 default options in getCatalog(), the first is Product1 the second is product2 and the third is “select this to simulate a failed purchase error”, here is the demonstration - https://drive.google.com/file/d/12XHcuFT4Pfq7FWME317FIERXtsIw0rRT/view?usp=sharing