Q:

Are IAP always returned in the same ordered list?

I am writing a custom UIView for my store front in my app. Most of the tutorials show a UITableView of some sort to display results from Apples In-App purchases.
I'm not using tables to display my purchase buttons, rather than laying out a view I would like the buttons displayed in.
My questions is: Will Product X always be nth in the return list? For example, a 5 pack of fish food will always be 6th in place and a 10 pack will always be 7th in the returned list? This way I can have a button sitting in a layout on the scree, and I know that if the user presses that button, the correct in-app will be purchased.
I have been using this tutorial as a reference. But I can't seem to find tutorial on customized store fronts.
I wrote these helper methods to pull data out of the array.
- (NSString* ) getProductNameForObjectAtIndex:(int)index {
    SKProduct * product = (SKProduct *) _products[index];
    return product.localizedTitle;
}

- (NSDecimalNumber* ) getPriceForObjectAtIndex:(int)index {
    SKProduct * product = (SKProduct *) _products[index];
    return product.price;
}

Then my buttons get their title (price) from 
[button setTitle:[self getPriceForObjectAtIndex:5]];

With the index HARDCODED into the button.
Thoughts?

A:

No. Do not count on the products being in any specific order. Base your decision on the productIdentifier, not its location in the array.
Besides the products coming back in any order when you get the list from Apple, the position could change over time as you add, remove, or change products.

