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.
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.
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.
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.
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).
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.
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.
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.
This plugin communicates with one host per environment:
api.sameday.bg — productionsameday-api-bg.demo.zitec.com — demoPOST /api/authenticate — Exchanges the username and password for a token, cached until shortly before it expires.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.POST /api/awb/estimate-cost — Price for a shipment, used at cart and checkout.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.