- Início
- Apps
- SaaS Tools
- Magento 2 Store Pickup / Click & Collect (BOPIS)
Pré-visualização ilustrativaA build-to-order Magento 2 / Adobe Commerce extension that adds buy-online-pickup-in-store (BOPIS) and curbside
collection to checkout, with per-store availability, pickup time-slot scheduling, and collection PINs. Built, installed, and supported on your store by ECOSIRE.
O que é Magento 2 Store Pickup / Click & Collect (BOPIS)?
A build-to-order Magento 2 / Adobe Commerce extension that adds buy-online-pickup-in-store (BOPIS) and curbside collection to checkout, with per-store availability, pickup time-slot scheduling, and collection PINs. Built, installed, and supported on your store by ECOSIRE. Built to order by ECOSIRE for Magento 2 / Adobe Commerce (build-to-order) — indicative price from $999.00 USD; request a quote for a scoped proposal.
Recursos Principais
Feito sob encomenda, pronto para você
Sem configuração por conta própria — um app funcional criado, instalado e com suporte da ECOSIRE.
- 1
Você faz o pedido
Comece com um preço único de desenvolvimento. Definimos o escopo com você no início.
- 2
Nós criamos e instalamos
A ECOSIRE cria, configura e instala no seu Magento 2.
- 3
No ar + suporte
Você entra no ar em cerca de uma semana útil, com duas semanas de suporte após a entrada em produção. Defeitos no código que entregamos são corrigidos gratuitamente.
Sobre este Produto
Most omnichannel retailers want click-and-collect but Magento 2 ships nothing native for it — the only built-in nod to in-store pickup is the Inventory In-Store Pickup (MSI) scaffolding, which exposes a pickup_location_code on the cart but gives shoppers no real store-pickup shipping method, no scheduling, and no staff-side collection workflow. This extension closes that gap.
ECOSIRE designs and builds this as a proper Magento module under app/code/Ecosire/StorePickup, registered through registration.php and a versioned module.xml. The Store Pickup shipping method is implemented as a real carrier model (Magento\Shipping\Model\Carrier\AbstractCarrier + CarrierInterface) wired via config.xml and system.xml, so it appears in checkout exactly like flat-rate or table-rate and respects shipping ACL, multi-website scope, and tax rules.
Per-store and per-product availability is sourced from MSI sources and stocks (SourceItemsSaveInterface, GetProductSalableQtyInterface) so the pickup options a shopper sees reflect real on-hand quantity at each location. Time-slot scheduling with capacity control is enforced by a custom service contract and a slot_capacity table, blocking overbooked windows. On order placement an observer on sales_order_place_after generates a collection PIN and triggers ready-for-pickup email/SMS notifications; staff verify the PIN from an admin grid gated by a dedicated ACL resource. A store locator with Google Maps ships as a frontend component, and everything is exposed over REST and GraphQL so headless/PWA Studio storefronts can consume it.
This is honest build-to-order: not an instant Adobe Commerce Marketplace download. ECOSIRE builds it against your Magento version (Open Source or Adobe Commerce), installs it on your environment, and supports it after launch.
O que você ganha
- Custom Magento 2 module (Ecosire_StorePickup) delivered as installable source under app/code with registration.php, module.xml, and Composer metadata
- Installation and configuration on your Magento environment (staging first, then production) by an ECOSIRE engineer
- Database schema via declarative schema (db_schema.xml) plus a data patch for default slot/store configuration
- Admin configuration walkthrough and a short runbook covering store setup, slot capacity, and PIN handover
- REST/GraphQL API reference for the pickup endpoints for your headless or integration team
- Source-controlled handover (Git repository or zipped module) with a CHANGELOG and semantic version
- Two weeks of go-live support covering defects and configuration questions
- Compatibility build targeted to your exact Magento Open Source or Adobe Commerce version and PHP version
Para quem é isso
Omnichannel Retail Operations Manager
Runs multiple physical stores and wants online orders fulfilled as in-store pickups, with reliable per-store stock visibility and a slot system so stores are not overwhelmed at peak hours.
Magento Store Owner / eCommerce Lead
Wants a click-and-collect option at checkout to lift conversion and save on shipping, but needs it built correctly so it survives Magento upgrades instead of being a fragile theme hack.
Solution Architect / Lead Developer
Evaluates whether to build BOPIS in-house or commission it. Cares about MSI integration, service contracts, di.xml-based customization, ACL, and clean REST/GraphQL coverage for a PWA Studio frontend.
Como Magento 2 Store Pickup / Click & Collect (BOPIS) se compara
| Critério | ECOSIRE | Construção personalizada | Concorrente | Nativo do Magento 2 |
|---|---|---|---|---|
| Native store-pickup shipping method at checkout | Incluído | Suporte parcial | Incluído | Não incluído |
| Per-store availability built on MSI sources/stocks | Incluído | Suporte parcial | Suporte parcial | Suporte parcial |
| Pickup time-slot scheduling with capacity control | Incluído | Suporte parcial | Suporte parcial | Não incluído |
| Collection PIN + ready-for-pickup notifications | Incluído | Suporte parcial | Suporte parcial | Não incluído |
| Store locator with Google Maps | Incluído | Suporte parcial | Incluído | Não incluído |
| REST + GraphQL coverage for headless / PWA Studio | Incluído | Suporte parcial | Suporte parcial | Não incluído |
| Built, installed & supported on your store (done-for-you) | Incluído | Não incluído | Não incluído | Não incluído |
| Tailored to your exact stores, slots & workflow | Incluído | Incluído | Não incluído | Não incluído |
| Instant self-service download from a marketplace | Não incluído | Não incluído | Incluído | Suporte parcial |
Perguntas frequentes sobre Magento 2 Store Pickup / Click & Collect
How long does delivery take, since this is build-to-order?
This is a custom build, not an instant Marketplace download. A typical implementation is scoped, built against your exact Magento version, and installed on staging within roughly one working week depending on customizations such as curbside mode, SMS provider, or headless GraphQL needs. After you sign off on staging, we schedule the production install. You get a firm timeline in writing before work starts.
What ongoing support and updates do I get after launch?
The $999 build includes two weeks of go-live support for defects and configuration questions. Because the module is built with di.xml plugins, observers, and service contracts rather than core overrides, it is upgrade-resilient — but Magento minor/major upgrades can still shift APIs. We offer optional retainer or per-incident maintenance to recompile and re-test the module against new Magento or Adobe Commerce releases. You own the source code and can maintain it yourself or with any developer.
Does this work with Magento's native MSI (Multi-Source Inventory) in-store pickup?
Yes. We build on top of MSI rather than replacing it. Pickup locations map to MSI sources, and availability uses salable-quantity service contracts (GetProductSalableQtyInterface) so the pickup options shoppers see reflect real on-hand stock per store. Magento's bundled Inventory In-Store Pickup only exposes a pickup location on the quote with no shipping method, scheduling, or staff workflow — this extension adds all of those.
Will it work with Adobe Commerce and with a headless / PWA Studio storefront?
Yes to both. The module runs on Magento Open Source and Adobe Commerce (we target your exact edition and version at build time). All pickup data — locations, slot availability, and order pickup status — is exposed over REST and GraphQL, so a PWA Studio or other headless storefront can drive the full click-and-collect flow. We confirm your edition and frontend stack during scoping.
Can it handle multiple websites and store views with different store sets?
Yes. Configuration is scoped through system.xml and read via ScopeConfigInterface, so each website or store view can have its own pickup-eligible locations, slot capacities, and notification templates. This suits retailers running several brands or regions on one Magento instance, where pickup availability and store sets differ per storefront.
Módulos Relacionados

Magento 2 Self-Checkout Kiosk
A customer-facing self-service kiosk mode for Magento 2 POS — shoppers scan, bag and pay themselves while stock decrements against the same Magento inventory source. Custom-built, installed and supported by ECOSIRE.

Magento 2 Shopee Marketplace Integration
A build-to-order Magento 2 module that bridges your catalog to Shopee Open Platform — bulk listing, two-way inventory and price sync, and automated order import across SEA regions. Engineered, installed and supported by ECOSIRE.

Magento 2 Table Reservation & Booking
A custom-built Magento 2 / Adobe Commerce extension that lets guests reserve restaurant tables online with real-time availability, deposits and automated reminders — designed, installed and supported by ECOSIRE on your own store.

Magento 2 Talabat / Q-Commerce Integration
A custom Magento 2 module that bridges your catalog/menu with Talabat-style q-commerce marketplaces — pushing items, prices and modifiers out, toggling live availability, and importing delivery orders straight into Magento. Built to your menu structure, partner credentials and store locations, then installed and supported by ECOSIRE.
Magento 2 Store Pickup / Click & Collect
A build-to-order Magento 2 / Adobe Commerce extension that adds buy-online-pickup-in-store (BOPIS) and curbside collection to checkout, with per-store availability, pickup time-slot scheduling, and collection PINs. Built, installed, and supported on your store by ECOSIRE.
- Store Pickup shipping method implemented as a real Magento carrier model (CarrierInterface) so it renders natively in checkout alongside flat-rate and table-rate
- Per-store and per-product availability driven by MSI sources, stocks, and salable-quantity service contracts (GetProductSalableQtyInterface)
- Pickup time-slot scheduling with per-store, per-slot capacity control backed by a custom slot_capacity table and service contract
- Collection PIN generated on order placement via a sales_order_place_after observer, validated by staff at handover