Yes, the only way you can pass data between pages is via global variables. (Although RP10 is supposed to support external databases which sounds promising. I just haven’t had time to test out the beta yet.)
So, to get repeaters to share data across pages, it needs to be done with global variables. You could create a variable for every column, for instance. To “pass” changes, like objects in a cart you can set/update global variable(s) on a “shopping page” and then on a cart or checkout page, use the Page Loaded event to update/add rows using the global variable(s) values.
For repeaters, you can use a hash method to build one global variable with values from multiple rows, then parse it on the second page. See this thread for an example: