Gatemi Purchase Lists is for the customer who buys the same forty things every month. They keep named lists in My Account, press once to put a whole list into the cart, paste a column of product codes out of their own spreadsheet, and order any past order again.
A re-order fills the cart. It never places an order.
Nothing here charges anybody. The buyer lands on the cart with today's prices in front of them and decides. Plugins in this category that place the order outright are charging a customer at a price they did not see — and, on a catalogue that has moved, at a price the store would not honour.
Anything that cannot be added is named
A product deleted, unpublished, sold out, or behind a role the customer no longer holds is reported by name. A re-order that silently drops three lines out of eight is a buyer who finds out at the loading dock, and a merchant who hears about it from them.
Every line goes in through WooCommerce's own cart
Stock, min/max rules, purchasability and any other plugin's validation all get their say, exactly as if the buyer had pressed the button on the product page. Writing into the cart contents directly is how a re-order comes to hold something the shop is not selling.
Features
- Named purchase lists in My Account, with quantities the buyer edits
- One press puts a whole list into the cart
- Order again on any past order, from the orders list and the order itself
- Paste a list of product codes — commas, tabs and spaces all separate, and a code that matches nothing is reported with its line number
- A buy-again panel built from the customer's own order history
- Share a list with a colleague by link — a random key, never the list id, and switching sharing off closes existing links too
- Adding the same product twice is one line whose quantity went up, guaranteed by a UNIQUE index rather than a check a busy store can lose
- Prices are read from the catalogue every time a list is shown — nothing is ever stored on a line
- No JavaScript at all: every action is an ordinary form post, so it works before a script has run and on a page a cache served
Built for stores that mean it
Strict types throughout, PHPStan level 8 with no baseline, WordPress-Extra coding standards at zero errors and zero warnings, and a 277-check simulation suite that runs with no database and no network.
Every license includes
- One year of updates and priority support, delivered straight to your WordPress dashboard.
- Use on 1, 5 or 25 sites depending on your license — local, staging and development sites are always free.
- 30-day money-back guarantee — full refund, no questions asked.
- Keeps working after expiry — if you choose not to renew, the plugin keeps running exactly as installed; it simply stops receiving updates and support until you do.
Requires WordPress 6.4+ · PHP 7.4+ · tested up to WordPress 7.0. Works with the classic and block checkout alike.

Beatriz (verified owner) –
Lo configuré una vez y no he vuelto a pensar en ello. Purchase Lists me ha quitado una tarea de los viernes. Asunto resuelto.
Charlotte (verified owner) –
Been on the shop since spring with no trouble at all. Purchase Lists plays nicely with the rest of my plugins. Happy to keep paying for this one.
Lukas (verified owner) –
Nach der ersten Woche lief es rund. Purchase Lists tut, was es soll, mehr aber auch nicht. Fair für das Geld.
Rebecca G. (verified owner) –
Did what three free plugins between them could not.
Cristina F. (verified owner) –
Correcto, sin entusiasmar. Purchase Lists no me ha dado motivos para buscar otra cosa.