The Home for Magento 2 Excellence

Quality-tested Magento 2 modules. Explore. Evaluate. Elevate. #magento2

1090 Modules
617 Ready
473 Need Help
🏆 Leaderboard
Actively Maintained v0.0.4

NowPost Click & Collect

nowpost/module-click-collect

Integrates NowPost PUDO (pick-up/drop-off) pickup points into Magento 2 checkout as a shipping method, with an interactive map of nearby points, dynamic pickup-based shipping fees, automatic order sync to the NowPost API, admin visibility, and pickup details in confirmation emails.

10
Downloads
Below average
0
GitHub Stars
2mo ago
Last Release
0
Open Issues
Build Passing
Ready to install

Build Tests

Composer Install
DI Compile
Templates

Code Quality

CS Coding Standard
12 errors , 112 warnings
PHPStan Failed

Tested on Magento 2.4.9

Recent Test History

Each release is tested against the latest Magento version at that time.

v0.0.4 on Magento 2.4.9
Jun 1, 2026

Share This Module's Status

NowPost Click & Collect Magento compatibility status badge

README

Loaded from GitHub

NowPost Click & Collect for Magento 2

A Magento 2 shipping method module that integrates NowPost's PUDO (Pick-Up/Drop-Off) network into your store's checkout. Customers select a convenient pickup point on an interactive map instead of providing a delivery address — reducing failed deliveries and improving customer satisfaction.

Features

  • Pickup Point Selection: Customers choose a NowPost pickup point directly in the checkout shipping step
  • Interactive Map Widget: Powered by NowPost Maps — shows nearby pickup points with live availability
  • Dynamic Shipping Fee: Fee is automatically calculated and applied based on the selected pickup point
  • Order Synchronization: Orders are automatically sent to the NowPost API on completion
  • Admin Visibility: Pickup point details and sync status displayed in the order admin view
  • Email Integration: Pickup location included in order confirmation emails
  • Validation: Enforces pickup point selection before payment (configurable)

Requirements

  • Magento: 2.4.6 or higher
  • PHP: 8.1 or higher
  • NowPost Account: API token required (obtain from the NowPost partner portal)

Installation

⚠️ IMPORTANT: The two installation methods below are MUTUALLY EXCLUSIVE. Use one method only. Installing via both Composer AND manual copy will cause class conflicts and crash your Magento store.

See INSTALL.md for full installation instructions.

Quick start (Composer):

composer require nowpost/module-click-collect
bin/magento setup:upgrade && bin/magento cache:flush

Manual Installation:

For stores without Composer, use the build script to create a distributable package:

cd apps/magento-plugin
./build-plugin.sh

This generates a .tar.gz archive in the dist/ directory. Extract it into your Magento app/code/ directory and run the setup commands above.

Configuration

  1. Go to Stores > Configuration > Sales > Shipping Methods > NowPost Click & Collect
  2. Configure the following settings:
Setting Description Default
Enabled Enable/disable the shipping method No
Widget Token Your NowPost API token (required)
Title Display name shown to customers at checkout Pickup via NowPost
Production Mode Toggle between staging and production API No (staging)
Require Selection Force customers to select a pickup point before payment Yes
Accent Color Brand color for the widget UI (hex, e.g. #8b5cf6)
Logo URL URL to your logo for the widget header
Map Marker URL URL to a custom map marker icon
Initial Zoom Default map zoom level (1–20) 11

Shipping Zones

The NowPost shipping method must be added to your Magento shipping zones:

  1. Go to Stores > Configuration > Sales > Shipping Methods
  2. Enable NowPost Click & Collect and configure your token
  3. The method will appear at checkout for applicable zones

Local E2E Debug Scripts

Use these local helpers to place a test order and inspect sync state quickly.

Place a NowPost checkout order (Playwright):

cd apps/magento-plugin
node scripts/place-nowpost-order.playwright.mjs --headless=false --baseUrl=http://localhost:8080

This prints a single machine-parseable line:

NOWPOST_E2E_RESULT:{"success":true,"increment":"000000004","orderSuccessUrl":"http://localhost:8080/checkout/onepage/success/","error":null}

Check order sync details by increment:

cd apps/magento-plugin
./scripts/check-nowpost-sync.sh 000000004

This queries the sales_order NowPost fields from Docker container nowpost-magento and prints recent NowPost lines from Magento system.log and debug.log.

Support

For issues with the NowPost API or widget, contact support@nowpost.com.

For module issues, refer to the INSTALL.md troubleshooting section.


Part of the NowPost platform. Proprietary license.

This content is fetched directly from the module's GitHub repository. We are not the authors of this content and take no responsibility for its accuracy, completeness, or any consequences arising from its use.