Cart with large qty of items

dgreenhousedgreenhouse Member
in General edited July 2009
I'm starting to evaluate FoxyCart and would like to ask a (maybe) basic question.

I'm working on a site that has over 250k items for sale and would like to get feedback from any aficionados before investing too much time researching FoxyCarts.

I'd like to load the cart from a session on the server and redirect the user to the checkout page.

I don't want links on the page - I think you understand.

There can be any number of items for purchase, so the cart could be quite full.

Quantity should be pre-filled, item id, price, etc.

Main question:
Would FoxyCart be amenable to this kind of functionality?

Thanks...
Comments
  • brettbrett FoxyCart Team
    Hi dgreenhouse.

    I think we'll need a little clarification. Can you describe exactly how the user would interact with the site, cart, and checkout?

    You are definitely able to do things (like add items to the cart) in the background (or foreground) using JSONP. The problem with that is that IE limits GET requests (which is what's used with JSONP) to relatively small limits.

    That said, I think we'll need more info before we can really give you a solid answer. There are many FoxyCart stores selling 1000s of products without issue, but is sounds like perhaps you're looking for something different.

    Also, as far as large carts: How large are you looking for? How many products and options? And are we talking about distinct products, or just quantities of single products?

    Sounds fun, whatever it is you'd doing.
  • dgreenhousedgreenhouse Member
    edited July 2009
    The site is for a fine arts distributor.

    The site allows visitors to search for artwork by a number of criteria,
    create galleries of artwork, save searches, send galleries to others for review,
    add individual items to a shopping cart or send an entire gallery to the shopping cart.

    What I meant when I said I didn't want links on the page is this...

    I want the cart interaction to be between the server and the checkout mechanism (FoxyCarts?).

    After the cart has been forwarded for checkout, the user's browser is redirected to the checkout page.

    In other words, there should be no adding of items to the cart from the browser - only between the server and FoxyCarts.

    All adding of items from the user's perspective is between the user's browser and the server since there is
    some very complex business logic residing on the server and it makes no sense to duplicate this logic in JavaScript.

    I can easily send JSON request from the server which I've done in other eCommerce solutions.

    I hope that explains what I'm trying to do a little better.

    Thanks,

    Darrell
  • lukeluke FoxyCart Team
    I actually know of an integration that is doing something similar. It's not on the current site yet, but modernash.com has got some really slick stuff under development where they scrape product prices, images and options from IKEA's website, store it in their own database and then use the JSON functionality to populate the cart (and calculate their own custom shipping and delivery charges based on what's in the cart, passed along as line items). Once that gets up we'll probably feature it for everyone to see.
  • brettbrett FoxyCart Team
    Hi Darrell.
    Thanks for that clarification. You can definitely work that way, using the FoxyCart JSON interface (which is almost identical to the "normal" HTML methods, but it's returning JSON for you to handle).

    The issues you're going to want to be aware of are:
    - Sessions. There's some info on the JSONP doc page. http://wiki.foxycart.com/docs:jsonp
    - SSO. If you require more strict validation you could conceivably validate the cart (as JSON) using SSO prior to allowing the customer to load the checkout. This would be an added security measure, but might not be necessary. http://wiki.foxycart.com/docs:single_sign_on

    We'd love to see what you do though. What you're describing would be a lot of fun and we'd love to feature the integration once you get things going.
  • It has been a longstanding concern that FC is very slow when many items are in the cart at once. Adding many items (more than 50) to the cart at once can also be problematic, as mentioned above,due to the GET method of posting the form. Workarounds to this problem have proven impossibly slow and cumbersome. Solutions have not been forthcoming over the course of the last year when the problems were identified by myself, and therefore I do not think they will be resolved with Foxycart in the near future.
  • brettbrett FoxyCart Team
    Hi drwagner13. Nice to see you're still around. I don't believe my last response (oh so long ago on that other discussion) ever got a response (I could be wrong), but I'm happy to see you on the forums.

    While we haven't specifically addressed the slowness with adding lots (50+) of distinct items to a single cart, we have been making improvements to our code and our servers. We'll be moving to a much much beefier server stack in the coming weeks (more on that soon, via forum, email, and Twitter) which should help at least slightly. We've also been doing stress and process testing to identify slower pieces of what we're doing. If the speed issue is still a problem, please resurrect that old thread and we'll take another look. No promises on a timeline for speeding things up (as we're busy working on the super high priority requests from our request board), but we are better equipped at this point to diagnose specific use scenarios.

    (As far as the GET limitations, there's really nothing we can do there. There's simply no good way around it for cross-domain requests with callbacks other than the hidden iframe hack we worked out for you way back when, which is still pretty cool IMO. But that's legitimately the only client-side solution to the GET problem that we know of.)

    That said, from the sound of this particular thread it sounds like dgreenhouse has a ton of products, but might not need a ton in the cart at any given time. I'm definitely interested to find out more though.
Sign In or Register to comment.