nowpost/module-click-collect

NowPost Click & Collect shipping method for Magento 2 — PUDO pickup point selection at checkout

Maintainers

Package info

github.com/NowPost-NG/nowpost-plugin-magento-2

Type:magento2-module

pkg:composer/nowpost/module-click-collect

Statistics

Installs: 9

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

0.0.4 2026-04-30 11:30 UTC

This package is not auto-updated.

Last update: 2026-05-14 12:02:50 UTC


README

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.