Celery Shipping adapts WooCommerce to the Colombian market and solves, through configuration fields and without writing any code, the most common shipping rule in the country:
a base cost that covers a certain weight, plus a surcharge for every kilo above it.
For example:
10,000 COP up to 20 kg, plus 500 COP for each additional kilo, for a selected group of cities.
The plugin ships
two independent modules that can be switched on or off separately, so you can use only the part you need.
Localization module (can be enabled or disabled)
Registers Colombia's 32 departments plus Bogota D.C. as WooCommerce states, using official ISO codes. It loads the 1,104 municipalities published by DANE (DIVIPOLA) and turns the checkout "City" field into a dependent dropdown: the customer picks a department and only its municipalities are listed.
- Renames the checkout labels for the Colombian context: the state field becomes Departamento.
- The city becomes required and is picked from a controlled list instead of typed by hand.
- The postcode is left optional.
- This module works on its own and is compatible with any other shipping plugin.
City Shipping module (can be enabled or disabled)
Adds its own shipping method,
"Celery — Envio por Ciudad", which is placed inside a shipping zone and configured through fields. Its fields are:
- Title shown at checkout
- Base cost
- Weight included in that base cost
- Price per additional kilo
- List of cities where the rate applies
- Maximum weight
- Tax status
The rate is
only offered when the customer's destination city is in the selected list. The calculation charges the base cost up to the included weight, and above that it adds the price per additional kilo for every extra kilo, rounded up.
The
maximum weight works as an optional hard cap: if the order exceeds it, the rate disappears. This is useful to force a manual quote on large orders.
The city picker
Picking from 1,104 municipalities with a plain list is unworkable, so the picker is a searchable checkbox list
grouped by department, with collapsible sections:
- Every department has a checkbox to select or deselect all of its cities at once.
- A counter of selected cities per department, and a total counter.
- The search filters live and expands only the departments that match.
Each city is identified internally by
department + city. Because of that, municipalities that share a name across departments — Rionegro in Antioquia and Rionegro in Santander, for example — are independent entries, and you can configure them separately with different prices in different methods.
Automatic migration
When updating from earlier versions, the cities already saved are converted to the new format across every method in every zone, so nothing has to be selected again. It runs only once.
Settings page
A
"Celery Shipping" tab under WooCommerce → Settings, with the switches to turn each module on or off independently.
Compatibility and data
The plugin declares compatibility with
HPOS (High-Performance Order Storage) and with the block-based checkout. It is designed for the
classic checkout.
Department and municipality data comes from the Political-Administrative Division (DIVIPOLA) published by
DANE, public information of the Colombian government.
- Install and activate the plugin. It requires WooCommerce to be active.
- Go to WooCommerce → Settings → Celery Shipping and check that the modules you want are switched on. Both are on by default.
- If you are going to use the shipping module, go to WooCommerce → Settings → Shipping and open a shipping zone.
- Click Add shipping method and choose Celery — Envio por Ciudad.
- Edit the method and fill in the fields: title, base cost, included weight, price per additional kilo, and the cities where it applies.
- Save.
Example: 10,000 COP up to 20 kg, +500 COP per additional kilo
In the shipping method, set:
- Base cost: 10000
- Included weight: 20
- Price per additional kilo: 500
- Cities: tick the ones that apply
- Maximum weight: 0 for no limit
An order of 23.2 kg to one of those cities is charged 10,000 + (4 × 500) = 12,000, because the extra 3.2 kg are rounded up to 4.