Royal Mail Shipping (Beta)

Royal Mail Click & Drop for Shipping Connect: send Magento orders to Click & Drop, get the label and tracking number back, offer Tracked 24 and 48 with live prices and create return labels.

  • Magento 2.4.7 – 2.4.9
  • PHP 8.2 – 8.5
  • Version 1.0.2
$149

One-off payment, with 12 months of updates.

What is included

  • 12 months of new versions and fixes; the versions released in that time stay yours
  • Install with Composer, or download a zip from your account
  • Licence for one production domain, staging and development copies included
  • 30-day money-back guarantee, refund policy

No subscription or automatic renewal. Keep using the versions included in your update period. Update and licence details

Key features

  • Orders sent to Royal Mail Click & Drop
  • PDF labels in the response (Online Business Account)
  • Tracked 24/48, Royal Mail 24/48, Special Delivery
See all features

Composer package softaware/module-shipping-royalmail

Royal Mail Shipping (Beta) $149
  • No copying of addresses

    The order, the recipient and the parcels go to Click & Drop from the Magento order view or for up to 50 orders at once.

  • Label and tracking number back

    With an Online Business Account the PDF label comes back straight away and the tracking number is added to the Magento shipment.

  • Royal Mail services at checkout

    Offer Tracked 24, Tracked 48 or Special Delivery as checkout methods with flat, table or live Click & Drop prices.

All features

What is included

Royal Mail services

  • Royal Mail Tracked 24 and Tracked 48
  • Royal Mail 24 and Royal Mail 48
  • Special Delivery Guaranteed by 1pm
  • Parcelforce Express 24
  • International Standard and International Tracked

Labels and returns

  • PDF label in the API response (Online Business Account)
  • Pay as you go: order created in Click & Drop, printed there
  • Customs form requested for non-UK addresses (OBA)
  • Tracked Returns 24 or 48 return labels (OBA)
  • Cancel deletes the Click & Drop order

Checkout and customers

  • Royal Mail checkout methods with flat or table prices
  • Live Click & Drop prices for GBP base currency
  • Tracking number on the Magento shipment and in the shipment e-mail
  • Tracking link to the Royal Mail tracking page
  • Royal Mail delivery notifications to the recipient's e-mail

Admin and developers

  • Credentials stored encrypted; disabled connections are never called
  • No double labels: order lock and no repeated requests
  • API log with the API key masked
  • CLI: test connection, create labels
  • Separate ACL permissions

Feature tour

Everything your shoppers and your team see

01 / 05

One API key from Click & Drop

Paste the API key from Click & Drop > Settings > Integrations > Click & Drop API and check it with "Test Connection". The form explains what each account type can do.

02 / 05

Package format, account type, returns

Choose the package format sent with each parcel, whether labels come back through the API (Online Business Account) or are printed in Click & Drop (pay as you go), and the return service.

03 / 05

Tracked 24 and Tracked 48 at checkout

Each method uses a Royal Mail service with a flat price, a weight or subtotal table, or the live Click & Drop price with your flat price as fallback.

04 / 05

Labels next to the order

The Shipping Connect section of the order lists the Royal Mail labels with tracking number and status, with download, details, cancel and "Create Return Label".

05 / 05

Tracking number, service and parcels

Every label keeps its Click & Drop order, tracking number, Royal Mail service and parcel sizes. Download it again or cancel it here.

Live demo

Try it before you install it

A full Magento store with the module installed, on Luma and on Hyvä. The admin demo signs you in with one click.

Compatibility

Requirements and compatibility

Compatibility of Royal Mail Shipping (Beta)
Magento2.4.7 – 2.4.9
PHP8.2 – 8.5
Latest version 1.0.2
composer.json requires php ~8.2.0||~8.3.0||~8.4.0||~8.5.0 magento/framework ~103.0.7 softaware/module-shipping-core ^1.1

Installation

Up and running in minutes

After you buy, create a Composer key in your account. Then, in the root of your Magento project:

  1. 01Add the repository and your key (once per project)

    composer config repositories.softaware composer https://repo.softawarecommerce.com
    composer config --auth http-basic.repo.softawarecommerce.com PUBLIC_KEY PRIVATE_KEY
  2. 02Install the module

    composer require softaware/module-shipping-royalmail
  3. 03Enable it

    bin/magento setup:upgrade
    bin/magento setup:di:compile
    bin/magento setup:static-content:deploy
    bin/magento cache:flush

    The last three are only needed in production mode.

Prefer a zip? Every version you are entitled to can be downloaded from My modules. More about Composer access

User guide

How to set up and use Royal Mail Shipping (Beta)

For version 1.0.2. The same guide comes with the module, in docs/user-guide.md.

Send Magento orders to Royal Mail Click & Drop, get the PDF label and the tracking number back, offer Royal Mail services at checkout with flat, table or live prices, cancel labels and create Tracked Returns labels. This package is a carrier for Shipping Connect (softaware/module-shipping-core, free), which provides the checkout methods, label printing, returns and the API log.

The demo connections have no credentials and are switched off, so the demo shows the admin screens and example labels but does not contact Royal Mail.

Status: Beta. Written from the public Click & Drop API specification and tested with recorded responses, as Royal Mail offers no test system. Test with your own account before going live.

Royal Mail connection and credentials
Royal Mail connection and credentials

1. Requirements

MagentoOpen Source or Adobe Commerce 2.4.7 to 2.4.9
PHP8.2 to 8.5
ThemesAny (Royal Mail adds no storefront templates; methods appear in the standard checkout)
Othersoftaware/module-shipping-core ^1.1 and softaware/module-core (both installed automatically)
Royal MailClick & Drop account with an API key; an Online Business Account (OBA) for labels and return labels through the API

A Royal Mail business account is required. The module talks to the Click & Drop API (api.parcel.royalmail.com, version 1) with the API key from your Click & Drop account. It does not use the Royal Mail Shipping API v2 or the Royal Mail Tracking API.

AccountWhat you get
Online Business Account (OBA)The order is created in Click & Drop and the PDF label comes back in the response; return labels are available.
Pay as you go (OLP)The order is created in Click & Drop; you print the label in Click & Drop. Magento shows a note instead of a label.

2. Installation

With Composer. Use the Composer keys from your account on softawarecommerce.com (see https://softawarecommerce.com/shop/composer-access/):

composer config repositories.softaware composer https://repo.softawarecommerce.com
composer config --auth http-basic.repo.softawarecommerce.com PUBLIC_KEY PRIVATE_KEY
composer require softaware/module-shipping-royalmail
bin/magento setup:upgrade
bin/magento setup:di:compile            # production mode only
bin/magento setup:static-content:deploy # production mode only
bin/magento cache:flush

Shipping Core is installed with it. To update later: composer update softaware/module-shipping-royalmail, then the same bin/magento commands.

3. Quick start

  1. In Click & Drop: Settings > Integrations > Click & Drop API, copy the API key.
  2. In Magento: Stores > Configuration > Softaware > Shipping Connect > General > Enabled = Yes.
  3. Softaware > Shipping Connect > Carrier Connections > Add Carrier Connection, choose Royal Mail Click & Drop.
  4. Enter a Name, switch Enabled on, choose the Website. Leave Sandbox / Test Mode off: Royal Mail has no test system.
  5. Paste the API Key and click Test Connection ("Royal Mail Click & Drop accepted the API key.").
  6. Under Carrier Settings choose the Account Type and Package Format.
  7. Add checkout methods, for example "Royal Mail Tracked 24" and "Royal Mail Tracked 48", fill in the Sender Address and Parcel Defaults and click Save.

4. The Royal Mail connection in detail

General

SettingWhat it does
NameShown to you in the admin and the labels list.
EnabledOnly enabled connections offer checkout methods and create labels. Disabled connections are never called.
Sandbox / Test ModeRoyal Mail Click & Drop has no test system: every label is real. Keep this switch off.
WebsiteWhere the checkout methods are offered and which orders may use this connection.
Carrier Title at CheckoutShown above the methods at checkout. Empty = "Royal Mail Click & Drop".

Credentials

FieldValue
API KeyClick & Drop > Settings > Integrations > Click & Drop API.

The key is stored encrypted and never shown again; leave ****** to keep the saved value. Test Connection reads one order from Click & Drop with the key in the form, without saving it.

Carrier Settings

Royal Mail carrier settings
Royal Mail carrier settings
SettingWhat it does
Package FormatSent with every package: Letter, Large letter, Small parcel (default), Medium parcel, Large parcel or Parcel. Also used for live prices.
Account TypeOnline Business Account (labels via API, default) or Pay as you go / OLP (print labels in Click & Drop).
Return Service CodeTSN = Tracked Returns 24 (default), TSS = Tracked Returns 48 (OBA only).
Default Carrier ProductUsed for labels of orders that were not placed with one of this connection's methods.
Label FormatPDF.

Checkout Methods

Royal Mail checkout methods
Royal Mail checkout methods

Each row is a home delivery method at checkout with a Title, a Carrier Product (Royal Mail service), a Price, Free From Subtotal, Countries (ISO codes) and Sort.

Royal Mail services in this package:

CodeService
TPN24Royal Mail Tracked 24
TPS48Royal Mail Tracked 48
CRL24Royal Mail 24
CRL48Royal Mail 48
SD1Special Delivery Guaranteed by 1pm
PFE24Parcelforce Express 24
OLAInternational Standard
OTAInternational Tracked

Which services Click & Drop accepts depends on your Royal Mail account.

Price options:

  • Flat, or by weight or subtotal with a price table such as 2:4.95, 5:6.95, 31.5:9.95 (above the last limit the method is not offered).
  • Live carrier price: the module asks Click & Drop for the price of the service for the destination country, postcode, weight and package format and adds VAT. Royal Mail quotes in pounds, so live prices are used only when the base currency is GBP; otherwise, or when no price comes back, the Flat / Fallback Price applies.

Cart rules with free shipping make every method free. Royal Mail methods are home delivery only; there are no pickup points for this carrier.

Sender Address and Parcel Defaults

The sender's trading name (company, or contact name), phone and e-mail are sent with the order; the sender address can also come from an MSI inventory source. Parcel defaults (weight in kg, length, width and height in cm) pre-fill the label form. Dimensions are sent in millimetres.

5. Creating labels

One order: open the order and click Create Shipment and Label. Several orders: select them in the order grid and choose Create Shipments and Labels (up to 50 orders at a time). Check the connection, the Royal Mail service, the number of parcels, the weight per parcel and the dimensions, then create the labels.

What happens:

  1. The order goes to Click & Drop with the recipient, the packages, the order total and the chosen service. Royal Mail sends its delivery notifications to the recipient's e-mail address when one is known.
  2. With an Online Business Account the PDF label comes back in the response. For addresses outside the UK the module asks for the customs form on the label.
  3. Click & Drop returns a tracking number per package; the module creates the Magento shipment with the tracking numbers (or adds the label to an existing shipment) and can send the shipment e-mail.
  4. With pay as you go, or when Click & Drop reports a label error, the order is still created and Magento shows "Order created in Click & Drop; print the label there." with Royal Mail's message.
Shipping Connect section in the order view
Shipping Connect section in the order view

Print All Labels gives one merged PDF; Print Shipping Connect Labels in the order grid prints the labels of the selected orders. A label is never created twice by accident: the order is locked while the label is created, and a request that may have reached Royal Mail is not repeated.

Cancelling

Cancel in the order view or on the label page (permission "Cancel Labels") deletes the order in Click & Drop. Do this before the parcel is handed over.

Label details
Label details

6. Tracking

The tracking number is stored on the Magento shipment, so it appears in the shipment e-mail, the customer's order view and Magento's tracking pop-up, which links to the Royal Mail tracking page. Tracking events and delivery dates are not fetched for Royal Mail: they need the separate Royal Mail Tracking API, which this package does not use, so the tracking cron skips Royal Mail labels.

7. Return labels

With an Online Business Account, Create Return Label in the order view books a Royal Mail Tracked Returns label (service from Return Service Code) from the customer's address back to your sender address. The PDF is stored like any label, and the label page has a signed download link (30 days) you can send to the customer. Softaware Returns can create the same return labels from its return page.

8. Command line

bin/magento softaware:shipping:adapters                       # installed carriers and what they support
bin/magento softaware:shipping:test-connection [connection id] # test the API key
bin/magento softaware:shipping:create-label <order number> [-c connection] [-s TPN24] [-p parcels] [-w kg] [--return] [--no-email]

9. Permissions (ACL)

Under Softaware > Shipping Connect: View Shipments and Labels, Create Shipments and Labels, Cancel Labels, Create Return Labels, Manage Carrier Connections, View API Log, Settings. Creating labels also needs Sales > Operations > Orders > Actions > Ship.

10. Data sent to Royal Mail

Recipient name, company, address, phone and e-mail (delivery notifications), sender trading name, phone and e-mail, parcel weights and sizes, the order number, the order subtotal and total. Price lookups send the destination country, postcode, weight and package format. Every request is written to Softaware > Shipping Connect > API Log with the API key masked.

11. Limits and troubleshooting

  • Click & Drop allows 5 requests per second; mass label creation of many orders takes a moment.
  • No test system: create a real order, check it in Click & Drop and cancel it.
ProblemWhat to check
Test Connection failsThe API key: copy it again from Click & Drop > Settings > Integrations > Click & Drop API.
"Royal Mail rejected the order: ..."Royal Mail's message is shown, for example a service your account does not include or a missing postcode.
"Order created in Click & Drop; print the label there."Account Type is pay as you go, or your account cannot return labels through the API. Print the label in Click & Drop, or ask Royal Mail about an Online Business Account.
Live price not shownThe base currency must be GBP; the service must be allowed by your account; check the API Log entry of the price lookup.
"Royal Mail did not return a return label."Return labels need an Online Business Account and a valid Return Service Code (TSN or TSS).

12. Uninstall

bin/magento module:disable Softaware_ShippingRoyalmail
composer remove softaware/module-shipping-royalmail
bin/magento setup:upgrade

Existing labels stay in Shipping Core's tables; Royal Mail connections can no longer be used until the package is installed again.

Changelog

Release notes

1.0.2

Latest
  • Product listing, FAQ and user guide (docs/)

1.0.1

  • Connection form: says where the Click & Drop API key comes from and that Royal Mail has no test system (new connections start in live mode; the sandbox switch explains this); field labels in title case.
  • Requires Shipping Core 1.1 (CredentialsHelpInterface).

1.0.0

  • Royal Mail Click & Drop adapter for Softaware Shipping Connect (moved from the former single module softaware/module-shipping-connect 1.0.0; adapter codes unchanged, so existing connections keep working).

FAQ

Questions, answered

Something else on your mind? The developers who wrote the module answer before and after you buy.

Ask a question →

Already installed it? Open a support ticket

Which Royal Mail API does it use?

The Royal Mail Click & Drop API (version 1). It does not use the Royal Mail Shipping API v2 or the separate Royal Mail Tracking API.

What do I need from Royal Mail?

A Royal Mail Click & Drop account and its API key: in Click & Drop go to Settings > Integrations > Click & Drop API. Labels and return labels through the API need an Online Business Account (OBA) with Royal Mail. With a pay as you go (OLP) account the module still creates the order in Click & Drop, and you print the label there.

Is there a test system?

No. Royal Mail has no sandbox for Click & Drop, so every label is real. Test with a real order and cancel the label before the parcel is handed over. New Royal Mail connections start in live mode.

What is Shipping Connect and why do I also need Shipping Core?

Shipping Connect is SoftAware's shipping framework for Magento. The free package softaware/module-shipping-core holds the checkout methods, labels, returns and the API log; this package adds the Royal Mail Click & Drop connection. Composer installs Shipping Core automatically.

Which services can I use?

Royal Mail Tracked 24, Royal Mail Tracked 48, Royal Mail 24, Royal Mail 48, Special Delivery Guaranteed by 1pm, Parcelforce Express 24, International Standard and International Tracked. Which ones Click & Drop accepts depends on your account.

Can customers see Royal Mail prices at checkout?

Yes. A checkout method can use Live carrier price: the module asks Click & Drop for the price of the service for the destination, weight and package format. This works only when your base currency is GBP; otherwise, or when the price cannot be fetched, the method's flat price is used. Flat prices and weight or subtotal tables work for any currency.

Does it show tracking events in Magento?

No. Click & Drop returns the tracking number, which the module adds to the Magento shipment; customers get the link to the Royal Mail tracking page. Tracking events and delivery dates would need the separate Royal Mail Tracking API, which this package does not use, so automatic tracking is not run for Royal Mail labels.

Does it offer pickup points or Post Office collection?

No. Royal Mail checkout methods are home delivery methods.

Can I cancel a label?

Yes. Cancelling a Royal Mail label in Magento deletes the order in Click & Drop.

Can I create return labels?

Yes, with an Online Business Account: Create Return Label in the order view books a Royal Mail Tracked Returns label (Tracked Returns 24 by default, Tracked Returns 48 if you set the return service code TSS). The label page has a signed download link for the customer.

Can I ship outside the UK?

Yes, with International Standard or International Tracked. For non-UK addresses the module asks Click & Drop to add the customs form to the label (OBA). Commodity details are not sent, so check customs data in Click & Drop for shipments that need it.

What happens with several parcels?

An order can be sent with several packages; Click & Drop returns a tracking number per package and all of them are added to the Magento shipment.

What data is sent to Royal Mail?

Recipient name, company, address, phone and e-mail (delivery notifications), sender trading name, phone and e-mail, parcel weights and sizes, the order number and the order total. The API key is stored encrypted and masked in the API log.

Support

Help from the developers who wrote it