Drusoft Shipping for Sameday

Drusoft Shipping for Sameday

Details
View on WordPress

Drusoft Shipping for Sameday connects a WooCommerce store in Bulgaria to the Sameday courier. Customers see live Sameday prices at checkout and choose delivery to their door, to an easybox locker or to a SAMEDAY point; the merchant creates, prints and cancels waybills from the order screen.

Important Compatibility Note

This plugin is currently not compatible with the WooCommerce Block Cart and Block Checkout pages. Please ensure your store uses the classic shortcode-based Cart ([woocommerce_cart]) and Checkout ([woocommerce_checkout]) pages.

For Your Customers

  • Three delivery options — to an address (24H), to an easybox locker, or to a SAMEDAY point.
  • Live prices — each option is priced by Sameday for the actual parcel, city and payment method.
  • City list — the customer picks a region, then a city from a searchable list (Latin or Cyrillic); the postcode fills itself.
  • Only what the city has — easybox and SAMEDAY point are offered only in cities that have one, with a searchable list of that city’s locations.
  • Map picker — a map of every easybox and SAMEDAY point in the country, opened on the customer’s city, with filters and search. Picking a location elsewhere sets the region, city and delivery type by itself.
  • Full lockers hidden — locations Sameday reports as over capacity are not offered.

For Merchants

  • HPOS Compatible — Fully supports WooCommerce High-Performance Order Storage.
  • Automated Data Sync — Uses Action Scheduler to refresh Bulgarian cities and Sameday pickup locations daily, so checkout never waits on the API.
  • Fallback prices — if Sameday cannot be reached, checkout still shows a price from a table you configure.
  • Waybill Management — Create, print (PDF) and cancel waybills from the order edit screen, or create them automatically when an order becomes Processing or On hold.
  • Cash on delivery collected correctly — the waybill always carries the order total, never a stale checkout estimate.
  • Declared value — off, above a threshold, or always.
  • Open before paying — optionally add Sameday’s „Отвори преди да платиш“ extra to every waybill for delivery to an address.
  • Demo and production — switch between Sameday’s demo and live environments in the settings.
  • Bulgarian (bg_BG) Translation Included.

Also Ship via Speedy or Econt?

This plugin has siblings for the other Bulgarian couriers: Drusoft Shipping for Speedy and Drusoft Shipping for Econt. All three share the same checkout experience, map picker and order screens, and are built to run side by side on one checkout.

External Services

This plugin relies on the Sameday API, a third-party service provided by Деливъри Солюшънс ЕООД (Delivery Solutions EOOD, operator of the Sameday brand in Bulgaria), to deliver its shipping functionality. The plugin cannot operate without a valid Sameday API account.

The checkout map also loads map tiles from OpenStreetMap.

What the service is

Sameday is a courier company operating in Bulgaria, Romania and Hungary. Its REST API lets merchants price shipments, create and cancel waybills, download labels, and retrieve cities and pickup locations (easybox lockers and SAMEDAY points).

What data is sent and when

Authentication: the API username and password are exchanged once for a token, which is cached and sent as an X-AUTH-TOKEN header on later requests.

  • Recipient data (name, phone, email, city, county, address, postcode, chosen pickup location) — sent when a shipping price is calculated at checkout and when a waybill is created.
  • Shipment details (pickup point id, weight, package count, service, cash-on-delivery amount, declared value, order number, item descriptions) — sent when a price is calculated and when a waybill is created.
  • Waybill numbers — sent when a label is downloaded or a waybill is cancelled.
  • No customer data is sent during the daily location sync, which only downloads cities and pickup locations.

Map tiles are requested from OpenStreetMap by the customer’s browser only when the customer opens the map picker; the request reveals the customer’s IP address and the map area viewed.

Service links

Bundled Libraries

The map picker uses Leaflet 1.9.4 (https://leafletjs.com/), bundled locally in
assets/vendor/leaflet/ rather than loaded from a CDN, so no request leaves the visitor’s
browser until they open the map. Leaflet is distributed under the BSD 2-Clause License; its
licence text ships alongside it at assets/vendor/leaflet/LICENSE.

Sameday API Endpoints

This plugin communicates with one host per environment:

  • api.sameday.bg — production
  • sameday-api-bg.demo.zitec.com — demo

Authentication

  • POST /api/authenticate — Exchanges the username and password for a token, cached until shortly before it expires.

Location Data

  • GET /api/geolocation/city — Bulgarian cities with their county, stored in wp_drushfs_cities.
  • GET /api/client/ooh-locations — easybox lockers and SAMEDAY points, stored in wp_drushfs_lockers.
  • GET /api/client/services — Services enabled for the account.
  • GET /api/client/pickup-points — The merchant’s pickup points, for the settings screen.

Pricing

  • POST /api/awb/estimate-cost — Price for a shipment, used at cart and checkout.

Shipment Management

  • POST /api/awb — Creates a waybill.
  • GET /api/awb/download/{awbNumber} — Downloads the label PDF.
  • DELETE /api/awb/{awbNumber} — Cancels a waybill.
  • GET /api/client/awb/{reference} — Looks a shipment up by order number.
  • GET /api/client/status-sync — Shipment status changes.

Rate Limiting & Caching

  • Local database tables — Cities and pickup locations are synced once per day and queried locally.
  • Token caching — One authentication per token lifetime rather than one per request.
  • Quote caching — Prices are cached for 15 minutes per shipment shape.
  • Map data — The pickup list is loaded per city; the map’s country-wide list is fetched only when the customer opens the map and is cached for an hour.

Details

Plugin code:
drusoft-shipping-for-sameday
Plugin version:
1.0.3
Author:
Outdated:
No
WP version:
6.0 or higher
PHP version:
8.0 or higher
Test up to WP version:
7.1.3
Total installations:
0
Last updated:
2026-10-09
Rating:
Times rated:
0
bulgaria
easybox
sameday
shipping
woocommerce