Title: BulCommerce
Author: GDimitrov
Published: <strong>8 сар 30, 2026</strong>
Last modified: 10 сар 26, 2026

---

Search plugins

![](https://ps.w.org/bulcommerce/assets/banner-772x250.png?rev=3672836)

![](https://ps.w.org/bulcommerce/assets/icon-256x256.png?rev=3672836)

# BulCommerce

 By [GDimitrov](https://profiles.wordpress.org/wpsupporting/)

[Download](https://downloads.wordpress.org/plugin/bulcommerce.1.5.12.zip)

 * [Details](https://mn.wordpress.org/plugins/bulcommerce/#description)
 * [Reviews](https://mn.wordpress.org/plugins/bulcommerce/#reviews)
 * [Development](https://mn.wordpress.org/plugins/bulcommerce/#developers)

 [Support](https://wordpress.org/support/plugin/bulcommerce/)

## Description

 * Invoices, credit notes, proforma invoices, non-fiscal sales documents and order
   confirmations.
 * Gap-free sequential 10-digit numbering, safe under concurrent orders.
 * VAT breakdown by rate (20%, 9%, 0%), for both VAT-inclusive pricing and WooCommerce’s
   own tax engine. Document totals always equal what the customer was charged; if
   they cannot, the document is not issued and you are alerted.
 * Automatic credit notes for refunds and cancellations. When a refund cannot be
   attributed to a single VAT rate, no document is guessed: you get an alert and
   choose the rate yourself.
 * Company details at checkout (classic and block checkout): company name, EIK with
   check-digit validation, VAT number verified with EU VIES, MOL and registered 
   address.
 * Couriers: Econt, Speedy, Pigeon Express and BOX NOW. Delivery to office, parcel
   locker or address on the classic and the block checkout: locality search, office
   list and map, address in parts with the courier’s streets, price table or the
   courier’s live price with automatic fallback (capped at a maximum the buyer pays,
   if you set one), cash on delivery, waybills (create, change, print, cancel), 
   tracking and optional completion on delivery.
 * Checkout: compact layout without the address fields for a courier delivery, delivery
   options as cards, tiles, rows with courier logos or one row per courier, side
   cart, minimum order with a progress bar, cash on delivery hidden per courier,
   selling to other countries.
 * A checkout form of your own: reorder, rename, show or hide each field – for billing
   and for delivery – and choose which must be filled in, on the classic and the
   block checkout.
 * Pickup from your own shop, or deliver it yourself with no courier – one location
   free, several with BulCommerce Pro.
 * The expected delivery date, shown on the order-received page, in the account,
   in the order e-mails or on the admin order screen, per courier (where the courier’s
   own API gives one).
 * A shipment-tracking page and a right-of-withdrawal page of your own ([bulcommerce_tracking]
   and [bulcommerce_withdrawal]) – a buyer finds their order by its number and e-
   mail, no account needed, for either one.
 * An admin warning as your EU cross-border sales approach the €10,000 OSS VAT threshold;
   companies from other EU countries with a VAT number confirmed in VIES get services
   without Bulgarian VAT (reverse charge) or goods as an intra-Community supply 
   at 0%, each with its own legal basis on the invoice.
 * Fiscal receipts on a fiscal device through ErpNet.FP, the NRA audit file (Ordinance
   N-18), Microinvest export, a document archive and the accountant’s monthly e-
   mail.
 * Cash on delivery: payout report, the month’s deliveries at the shop’s expense
   and an optional risk check (НепоСтоп) – or BulCommerce Guard (free, beta), which
   checks against a shared risk network instead of your own key.
 * A restorable settings backup, free on the BulCommerce network: the plugin settings,
   every courier’s credentials and options, and the delivery methods in your shipping
   zones.
 * Card payments through Stripe (optional): the Payment Element with cards, Apple
   Pay, Google Pay and local methods, 3-D Secure, saved cards, refunds from the 
   order screen and a signed webhook. Works on the classic and the block checkout.

#### Fonts

PDF documents use the Inter typeface by The Inter Project Authors (https://github.
com/rsms/inter), licensed under the SIL Open Font License 1.1. A Latin, Cyrillic
and Greek subset is bundled in `assets/fonts/` together with the licence (`OFL.txt`);`
tools/build-font.php` rebuilds it.

### External services

The plugin works without any external service until you switch one on. What follows
is every service it can contact, what it sends and when.

#### Econt Express (courier)

Used when you enable Econt: to load its localities and offices, to ask for a delivery
price at the checkout, to create, cancel and track a waybill and to download the
label. Requests go to https://ee.econt.com/services (or https://demo.econt.com/ee/
services with the demo account) with the credentials you enter.

Sent when you use those features: your sender details, the recipient’s name, phone
and e-mail, the chosen office or address, the parcel’s weight, count and description,
the cash-on-delivery amount and the order number. Nothing is sent for orders delivered
by another method.

Service by “Econt Express” OOD: https://www.econt.com/ – terms: https://www.econt.
com/za-nas/obshti-uslovia – privacy: https://www.econt.com/politika-za-poveritelnost

#### Speedy (courier)

Used when you enable Speedy, for the same purposes and with the same kind of data
as above. Requests go to https://api.speedy.bg/v1 with the credentials you enter.

Service by “Speedy” AD: https://www.speedy.bg/ – terms: https://www.speedy.bg/bg/
terms-and-conditions – privacy: https://www.speedy.bg/bg/gdpr

#### Pigeon Express (courier)

Used when you enable Pigeon Express, for the same purposes and with the same kind
of data as above. Requests go to the API address of the account you enter (its sandbox
or its production address).

Service by “Pigeon Express”: https://pigeonexpress.com/ – terms: https://pigeonexpress.
com/terms – privacy: https://pigeonexpress.com/privacy

#### VIES (VAT number check, European Commission)

Used when a buyer asks for a company invoice and VAT checking is on (it can be switched
off in the settings, and then only the format is checked). The VAT number and its
country code are sent to https://ec.europa.eu/taxation_customs/vies/rest-api/check-
vat-number, which answers whether the number is registered and, when the country
publishes them, the company name and address.

Service by the European Commission: https://ec.europa.eu/taxation_customs/vies/ –
legal notice: https://ec.europa.eu/info/legal-notice_en – privacy: https://commission.
europa.eu/privacy-policy-websites-managed-european-commission_en

#### European Central Bank (exchange rates)

Used when “Invoices for orders in another currency” is on: the euro reference rates
are downloaded from https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist-90d.
xml (and the full file when an older rate is needed) to convert an order into euro.
No data about your shop, your orders or your buyers is sent.

Service by the European Central Bank: https://www.ecb.europa.eu/stats/policy_and_exchange_rates/
euro_reference_exchange_rates/html/index.en.html – disclaimer and copyright: https://
www.ecb.europa.eu/services/disclaimer/html/index.en.html – data protection: https://
www.ecb.europa.eu/services/data-protection/html/index.en.html

#### НепоСтоп (cash-on-delivery risk check, optional add-on)

Off by default. It works only after you switch the add-on on and enter your own 
API key. Before a cash-on-delivery order the buyer’s phone number is sent to https://
nepostop.com/api/v1 to ask how many of that phone’s parcels were not collected. 
If you also switch on reporting, the phone number and the waybill number of your
cash-on-delivery shipments are sent after they are created, so their outcome adds
to the shared history. Tell your buyers about this check in your privacy policy.

Service by НепоСтоп: https://nepostop.com/ – terms: https://nepostop.com/terms –
privacy: https://nepostop.com/gdpr

#### BulCommerce Guard (shared cash-on-delivery risk network, optional add-on, beta)

Off by default. It works only after you switch the “BulCommerce Guard” add-on on.
Before a cash-on-delivery order the buyer’s phone number is sent to https://wpsupporting.
com/api/wp to ask how many of that phone’s parcels were not collected; the phone
is hashed on the server. If auto-reporting is on, the phone, the waybill number 
and the outcome (delivered / returned) of your cash-on-delivery shipments are sent
after they are final, so the shared history stays useful, together with your licence
key and your site’s domain to identify the shop. The order screen can also report
a customer or erase them from the network on request. Tell your buyers about this
check in your privacy policy.

Service by wpsupporting (the makers of BulCommerce): https://wpsupporting.com/

#### euShipments, BOX NOW and Sameday

Three more couriers, used in the same way and with the same kind of data as the 
couriers above, each only after you switch it on and enter your account: euShipments(
https://eushipments.com/ – https://api1.inout.bg/api/v1, tests https://test-api.
inout.bg/api/v1), BOX NOW (https://boxnow.bg/ – the public locker list at https://
locationapi-production.boxnow.bg (tests https://locationapi-stage.boxnow.bg) and
the Partner API at https://api-production.boxnow.bg, tests https://api-stage.boxnow.
bg) and Sameday (https://sameday.bg/ – https://api.sameday.bg, tests https://sameday-
api-bg.demo.zitec.com).

This package contains no licence check and no update server of its own.

#### Stripe (card payments, optional)

Off by default. It works only after you enable the Stripe payment method and enter
your own Stripe API keys. When a buyer pays by card, their browser loads Stripe.
js from https://js.stripe.com and the payment is created and confirmed through https://
api.stripe.com with your secret key. Sent to Stripe for a payment: the amount and
currency, the order number and key, the buyer’s e-mail (for the receipt) and the
card details the buyer enters (the card data goes from the browser straight to Stripe–
it never reaches your site). Stripe notifies your site of the payment’s outcome 
through a signed webhook. Card and payment processing is subject to Stripe’s terms.

Service by Stripe: https://stripe.com/ – terms: https://stripe.com/legal – privacy:
https://stripe.com/privacy

#### OpenStreetMap (map tiles, optional)

Off by default. When you choose to show a courier’s offices on a map, the buyer’s
browser loads the map images from https://tile.openstreetmap.org when the map is
shown, which sends the buyer’s IP address and browser details to OpenStreetMap. 
Nothing about the order or the buyer is sent.

Service by the OpenStreetMap Foundation: https://www.openstreetmap.org/ – tile usage
policy: https://operations.osmfoundation.org/policies/tiles/ – privacy: https://
osmfoundation.org/wiki/Privacy_Policy

#### Fiscal printer through ErpNet.FP (optional, local)

Off by default. When it is on, the plugin talks to the ErpNet.FP service at the 
address you enter, which is normally a computer in your own shop (for example http://
localhost:8001). The sale’s items, amounts and payment type are sent so the device
can print the receipt. This is your own local network, not a service of ours. ErpNet.
FP is free software: https://github.com/erpnet/ErpNet.FP

The plugin makes no other external requests, and it collects no telemetry and no
usage data.

## Screenshots

[[

[[

[[

[[

[[

## FAQ

### Where do I get help?

BulCommerce is made by wpsupporting. Product page: https://wpsupporting.com/store/
bulcommerce – support: https://wpsupporting.com/contact or info@wpsupporting.com(
support policy: https://wpsupporting.com/support-policy). Attach the diagnostic 
report from BulCommerce  Help.

### Is the “sales document” a fiscal receipt?

No. A fiscal receipt must come from a registered fiscal device. The sales document
is informational.

### What happens to documents when I uninstall?

Deleting the plugin keeps your setup by default (company details, courier credentials,
add-on settings and the delivery methods with their prices), so an accidental delete
costs you nothing; caches and scheduled jobs are cleared. Issued invoices, credit
notes and their numbering always stay – they are accounting records you must keep.
If you want a completely clean removal, switch on “Also delete all settings when
the plugin is deleted” in Settings first.

### My site is behind Cloudflare or another CDN and the plugin’s logos/styles are blocked as “mixed content”.

This happens when the CDN terminates HTTPS and WordPress does not detect it, so 
it builds asset URLs as http:// on an https:// site. The plugin’s own assets follow
the site address you set in Settings  General, so they are served over https as 
soon as that address is https. For everything else on the site (uploaded images,
other plugins), tell WordPress it is behind an https proxy by adding this near the
top of wp-config.php:

    ```
    if ( isset( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) && 'https' === $_SERVER['HTTP_X_FORWARDED_PROTO'] ) { $_SERVER['HTTPS'] = 'on'; }
    ```

## Reviews

![](https://secure.gravatar.com/avatar/6fde1e89526a0952f24080becbc141da2b0715ba06bf41766921e5232837c493?
s=60&d=retro&r=g)

### 󠀁[Прекрасно решение с много възможности](https://wordpress.org/support/topic/%d0%bf%d1%80%d0%b5%d0%ba%d1%80%d0%b0%d1%81%d0%bd%d0%be-%d1%80%d0%b5%d1%88%d0%b5%d0%bd%d0%b8%d0%b5-%d1%81-%d0%bc%d0%bd%d0%be%d0%b3%d0%be-%d0%b2%d1%8a%d0%b7%d0%bc%d0%be%d0%b6%d0%bd%d0%be%d1%81%d1%82/)󠁿

 [sepg](https://profiles.wordpress.org/stoyanso/) 9 сар 26, 2026

Плъгинът е качествено написан, с много на брой удобни функционалности, добре организирани
и логични настройки и отзивчив автор.

![](https://secure.gravatar.com/avatar/03f6bb0c6fa20c951688ef13b830dedbd24facaea19507136689a4806887b456?
s=60&d=retro&r=g)

### 󠀁[Перфектен Плъгин за Доставка!](https://wordpress.org/support/topic/%d0%bf%d0%b5%d1%80%d1%84%d0%b5%d0%ba%d1%82%d0%b5%d0%bd-%d0%bf%d0%bb%d1%8a%d0%b3%d0%b8%d0%bd-%d0%b7%d0%b0-%d0%b4%d0%be%d1%81%d1%82%d0%b0%d0%b2%d0%ba%d0%b0/)󠁿

 [ronco168](https://profiles.wordpress.org/ronco168/) 9 сар 22, 2026

Този плъгин за доставка с български куриери е може би най-добрият. Тествах всички
плъгини включително Shipbg, единият ми магазин работи около 2 години с плъгина на
Мрежа, но нещо го развалиха последно със седмичните ъпдейти и фиксове. Bulcommerce
лесно и бързо се настройва без да се изискват специални умения, перфектно се синхронизира
с woocommerce. Подобен е на Bulgarization for woocommerce (също добър плъгин), но
от Септември разработчика прекрати поддържането му в wordpress. Поздравления!

![](https://secure.gravatar.com/avatar/184a886c3de71ab70c008b09f9432857a0cddf1e5532253ef3e60bfa6adfb9f3?
s=60&d=retro&r=g)

### 󠀁[Супер плъгин!](https://wordpress.org/support/topic/%d1%81%d1%83%d0%bf%d0%b5%d1%80-%d0%bf%d0%bb%d1%8a%d0%b3%d0%b8%d0%bd-8/)󠁿

 [Sn00z389](https://profiles.wordpress.org/webmakers2011/) 9 сар 20, 2026

Плъгина е супер добре направен. Функционалността му е много добра, притежава много
по-добър интерфейс от другите безплатни алтернативи в България. Човека е учтив и
отговаря бързо. Успех

![](https://secure.gravatar.com/avatar/be7919c1e225453c91dfeaa104155fd54a6b835268adc34c966e103fcdda86f0?
s=60&d=retro&r=g)

### 󠀁[Fork-нато копие на Bulgarisation](https://wordpress.org/support/topic/fork-%d0%bd%d0%b0%d1%82%d0%be-%d0%ba%d0%be%d0%bf%d0%b8%d0%b5-%d0%bd%d0%b0-bulgarisation/)󠁿

 [Тихомир Парушев](https://profiles.wordpress.org/autopolisbg/) 9 сар 7, 2026

Това е форкнато ( копирано ) копие на плъгина bulgarisation-for-woocommerce. Може
да се провери по файловете които използва като помощни класове, темплейти на документи
и т.н.Взел е и платената версия от клиент и е мигрирал всичко през AI. Сами си преценете
с какъв човек работите и при проблем дали ще може да ви помогне.

 [ Read all 4 reviews ](https://wordpress.org/support/plugin/bulcommerce/reviews/)

## Contributors & Developers

“BulCommerce” is open source software. The following people have contributed to 
this plugin.

Contributors

 *   [ GDimitrov ](https://profiles.wordpress.org/wpsupporting/)

[Translate “BulCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/bulcommerce)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/bulcommerce/), check
out the [SVN repository](https://plugins.svn.wordpress.org/bulcommerce/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/bulcommerce/) by
[RSS](https://plugins.trac.wordpress.org/log/bulcommerce/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.5.12

 * Fix: cash on delivery can be offered for an Econt or Pigeon parcel locker again.
   An Econtomat takes a card on its terminal, but the plugin had no switch for those
   two couriers, so cash on delivery disappeared at the checkout as soon as a locker
   was chosen and there was nothing anywhere to allow it. Each courier now has that
   switch in its settings, off until you turn it on.
 * Fix: BOX NOW’s “Allow cash on delivery to a parcel locker” showed as a text box
   asking you to type “no” or “yes”. It is a switch.
 * Fix: a cancellation that BOX NOW has taken but not yet carried out is no longer
   reported as one that may have failed. BOX NOW queues it and keeps showing the
   parcel as new until they process it; the waybill stays on the order until they
   confirm, and the status check records it then.
 * Fix: Econt now says on the settings screen, every time the setting is saved, 
   when “How we pay the courier” needs a credit agreement your account does not 
   have. Until now it said so only the first time that option was switched on, so
   an account that already had it found out from a refused waybill.
 * The “Checkout form” screen reads as one list again: the three marks are shown
   once with the icons themselves instead of being described in three paragraphs,
   every row is built the same way, and a field WooCommerce will not do without 
   keeps both marks, shown on and locked, instead of a line of text squeezed into
   their place and wrapped onto two lines.
 * Fix: the checkout could refuse the order with “Please enter an address to continue.”
   and nothing on the page to put right, because the country field it asks for was
   not drawn at all. Once a courier with the locality picker or a pickup is chosen,
   the delivery is in Bulgaria, so the country is now answered at the moment the
   order is placed – whether this plugin’s compact checkout hid the field or the
   shop took WooCommerce’s address fields out with a checkout field editor. An empty
   country also left the order itself without one, so the invoice and the waybill
   had none either. Selling to other countries the buyer still chooses the country.
   The compact checkout also fills in an empty payer country even when the delivery
   country is already set.
 * Fix: a courier setting could be lost when several of them were saved at once,
   for example a map setting changed together with a logo.
 * Fix: with four kinds of delivery offered, the buttons lay out two by two on a
   phone instead of three on one line and the fourth alone on the next.
 * Fix: the delivery block in the “Standard” style follows the width it is given
   on a phone, as the other styles already did.
 * New: the document archive screen shows what the chosen period holds, and names
   the paid orders in it that have no document, with a link to each. Until now that
   was only worked out while the NRA audit file was being built, so a shop with 
   that add-on off never learned.
 * The “Right of withdrawal” add-on is now called “Отказ от поръчка / продукт от
   поръчка”, which says what it does.

#### 1.5.11

 * Fix: an Econt waybill to a company now carries the authorised person Econt requires
   for a legal entity, so the waybill is no longer refused. This completes the company-
   recipient change from 1.5.10.
 * Fix: the delivery options now lay themselves out by the width they are actually
   given, not by the width of the screen, so they fit the same way in any theme,
   in a narrow column, in the pop-up and in the admin preview. This ends a family
   of problems where on a phone the block was pushed off the right edge or the courier
   name was squeezed away on one theme but not another, and where a courier logo
   could overlap the price beside it.
 * Fix: delivery methods set up before October now lose the long dash in their name(“
   Econt – to office”). The name was saved in the shipping zone, so earlier updates
   could not reach it, and it is the name that appears on the order, in the e-mail
   and on the documents.
 * Fix: “Hide the delivery choice in the cart” now takes the address calculator 
   with it, so the cart shows the goods and the total and nothing else.
 * New: the “Nearest to me” button can be switched off, in Checkout design.
 * The block checkout’s own messages to the buyer are no longer half-English on 
   a Bulgarian shop.

#### 1.5.10

 * Faster admin and checkout: the plugin loads its admin, courier and document code
   only on the requests that need it, and reads its settings once per request instead
   of rebuilding them each time.
 * Company orders with an invoice are now addressed to the company on Econt and 
   Speedy waybills, with the person as the contact, so the delivery can be booked
   as a company expense. Until now they went out under the person’s name.
 * Econt and Speedy can return the signed documents to you, and send a two-way shipment
   where a second parcel comes back.
 * BOX NOW: cash on delivery to a locker (paid by card on pickup), and a correct
   expected-delivery date at the checkout.
 * Speedy parcel machines are offered only when the order fits one compartment; 
   larger orders fall back to an office or an address.
 * Pigeon waybills now list the real items in the parcel.
 * Fixes: the numbering pause now also covers the first order placed after an update,
   so numbers cannot clash; no waybill is created for a cancelled or refunded order;
   and the cash-on-delivery report and the EU distance-sales threshold account for
   refunds.

#### 1.5.9

 * Fix: an order whose delivery is paid directly to the courier (a 0.00 shipping
   line) issues its invoice again, without needing a “legal basis for 0%” set. An
   empty delivery line was never a real zero-rated supply.
 * Fix: setting up “Pickup from the shop” no longer re-enables a WooCommerce “Local
   pickup” you had paused in another zone.
 * Fix (paid edition): on the custom checkout the payment method you chose no longer
   reverts to the first option (often cash on delivery) when the totals refresh.

#### 1.5.8

 * A town you search for at checkout now shows for a pickup method only when it 
   has that kind of point (an office, a locker, or either). Delivery to an address
   still reaches every town.
 * New: office and locker lists refresh on their own, on a schedule per courier (
   paid edition) or with a “Refresh now” button (free).
 * New (paid edition): a “By courier” checkout template; “Exact price at the checkout”,
   which quotes with the real parcel size; and “Split large orders into several 
   parcels” for Speedy, Econt, Pigeon and BOX NOW.
 * New: a compact delivery summary at the checkout, and a “BulCommerce Pro” screen
   comparing the editions.
 * Pickup from the shop now has its own screen instead of sitting twice among the
   couriers.
 * Fix: a courier timeout or server error is treated as a passing failure to retry,
   not a rejected address; Econt and Speedy error messages read more reliably.
 * Fix: the withdrawal period starts at the status you count as delivered, so shops
   that stop at “processing” get a working window.
 * Fix: the EU distance-sales (OSS) warning works without an object cache, and the
   setup wizard no longer skips a courier.
 * Fix (Stripe beta): a partial capture holds the order for review, a zero-total
   order releases its authorisation, and a saved card is not duplicated on a double
   submit.
 * Performance: the orders list reads its documents in one query, and the monthly
   accountant archive stops loading orders it does not need.

#### 1.5.7

 * New: a “Shipment tracking” page ([bulcommerce_tracking]) where buyers see where
   their parcel is, from the tracking link or by order number and e-mail. Lookups
   are rate-limited and refuse binned orders; the order e-mails and account page
   link to it.
 * New: a “right of withdrawal” page ([bulcommerce_withdrawal]) where a buyer withdraws
   within the legal period; the request is recorded on the order and e-mailed to
   both sides. The period and the “delivered” statuses are set in Add-ons.
 * New: a “by courier” delivery template for the checkout, and an admin warning 
   as EU cross-border sales approach the €10,000 OSS threshold.
 * Add-ons: three Pro features (custom checkout, external invoicing, advanced document
   access) now appear with a description and a link.
 * Courier settings: packagings are edited as a table, with a stepped setup wizard
   and a plain “who pays the delivery” helper.
 * Checkout: a delivery option can show its own line (a single pickup point shows
   its address and hours) with a “View on the map” link.
 * BOX NOW: compartment terminology throughout, expected delivery time shown, a 
   daily locker refresh, the booked compartment follows the parcel size, and lockers
   that cannot take parcels are hidden.
 * Fix: Speedy’s locality list could break on the Cyrillic “х” (towns such as “Елхово”);
   it now parses correctly.
 * Fix: several checkout-delivery bugs around “Pickup from the shop” and the shop’s
   own delivery.
 * Admin: “Issue documents” is one switch for the whole invoicing feature.

#### 1.5.6

 * New: cap a courier’s live price at a maximum the buyer pays; the shop covers 
   the difference and the courier is still paid in full on the waybill.
 * New: price tables edited as a table; an Econt cash-on-delivery agreement can 
   require a real postal money transfer (ППП); a “minimum order” progress bar; and“
   Expected delivery date” as its own add-on with per-place control.
 * The beta Sameday integration is removed and euShipments (cross-border) moves 
   to the paid edition; BOX NOW, Econt, Speedy and Pigeon stay free.
 * Fix: a proforma is no longer issued just by opening a link (a crawler or mail
   prefetcher could trigger one); it now needs a signed POST action.
 * Fix: the locality lookup no longer caches an empty result, so a network hiccup
   cannot lock a town out for an hour.
 * Fix: behind a reverse proxy or CDN, the plugin’s CSS, JS and logos are built 
   from the site’s own scheme instead of being blocked as mixed content.
 * Deleting the plugin keeps your setup by default, with an explicit opt-in to wipe
   everything.
 * Fix: a courier that refuses its credentials shows a clear “Not connected” status,
   and the courier fee paid on delivery shows on one summary line.
 * Admin: Import/Export moved to Help, and the EU VAT regime option moved to “Invoices
   and documents”.

#### 1.5.4

 * New (beta): card payments through Stripe. The Stripe Payment Element (cards, 
   Apple Pay, Google Pay and local methods) with 3-D Secure, on the classic and 
   block checkout. Saved cards are kept at Stripe, refunds come from the order screen,
   and a signed webhook confirms each payment. Test with Stripe test keys first.
 * Paid edition: a custom two-column checkout via the [bulcommerce_checkout] shortcode–
   WooCommerce’s own checkout in a modern layout with a sticky order summary.
 * The customer’s status now shows inside the orders list “Delivery” column instead
   of a separate column.
 * Fix: on the classic checkout the courier logo and the office/address picker no
   longer disappear after the totals refresh.
 * Fix: the EIK company lookup (VAT register / VIES) no longer returns 403 for logged-
   out buyers; it is a public, rate-limited read.
 * Fix (Stripe): saved cards survive a totals refresh; a larger total after authorisation
   holds the order instead of capturing less; and a second submit releases the earlier
   hold without duplicating the customer record.
 * Fix: several silent failures now report – the monthly archive warns when a PDF
   cannot be written, toggling a shipping method reports failure, and an invalid
   VAT rate is logged.

#### 1.5.3

 * The “≈” before a courier fee is shown only when the fee is an estimate from the
   price table; a price the courier gives itself is exact and shown plainly.
 * Courier delivery with live pricing and an empty price table is now offered on
   a compact checkout too, showing “calculated later” until the destination is known.
 * BulCommerce Guard: a “Test the key” button checks the licence key against the
   network and shows the result.
 * Settings: the company-invoice rules and the VIES check moved from Checkout to“
   Invoices and documents”. Behaviour is unchanged.

#### 1.5.2

 * Compact checkout: the address fields are hidden before the page draws, so there
   is no flicker.
 * Courier delivery methods now lead with the courier’s own live price; the price
   table is optional, as a fallback or for fixed prices.
 * New tool “Import / Export” (Add-ons): move the whole configuration to another
   site as a JSON file (credentials only when you ask).
 * New add-on “BulCommerce Guard” (beta): flags risky cash-on-delivery customers
   against a shared network, and can hide cash on delivery for a flagged one. Off
   by default.
 * New: a per-courier “Setup wizard” in the header, and delivery time edited in 
   one place (Checkout design  Texts).
 * Econt: a third “Courier fee paid by” option, where the receiver pays your fixed
   price and the courier bills you the difference, so the price the buyer sees never
   changes.
 * Order screen: the shown “Courier fee” follows the shipping total you set.

#### 1.5.1

 * Translations: the plugin ships a Bulgarian .po, a .pot template and a compiled.
   mo, so wording can be changed with Loco Translate and WordPress before 6.5 still
   shows the Bulgarian.
 * Add-on “Checkout form”: order, rename, show, hide or require the checkout fields
   for billing and delivery; switched off, WooCommerce’s own fields return untouched.
 * Add-on “Side cart”: the cart opens in a panel with a promo-code field and a product
   on offer; its look and the offered products are set in Add-ons.
 * Setup wizard opens on the first activation and stays in the menu.
 * Add-ons “Microinvest export” and “NRA audit file (Н-18)” each have their own 
   on/off switch.
 * Admin: cleaner icons, a “Questions” link to the community group, and the “≈” 
   mark can be switched off.
 * Support e-mail: info@wpsupporting.com.

## Meta

 *  Version **1.5.12**
 *  Last updated **48 минут ago**
 *  Active installations **10+**
 *  WordPress version ** 6.5 or higher **
 *  Tested up to **7.1.3**
 *  PHP version ** 8.1 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/bulcommerce/)
 * Tags
 * [bulgaria](https://mn.wordpress.org/plugins/tags/bulgaria/)[credit note](https://mn.wordpress.org/plugins/tags/credit-note/)
   [invoice](https://mn.wordpress.org/plugins/tags/invoice/)[vat](https://mn.wordpress.org/plugins/tags/vat/)
   [woocommerce](https://mn.wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://mn.wordpress.org/plugins/bulcommerce/advanced/)

## Ratings

 4 out of 5 stars.

 *  [  3 5-star reviews     ](https://wordpress.org/support/plugin/bulcommerce/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/bulcommerce/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/bulcommerce/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/bulcommerce/reviews/?filter=2)
 *  [  1 1-star review     ](https://wordpress.org/support/plugin/bulcommerce/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/bulcommerce/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/bulcommerce/reviews/)

## Contributors

 *   [ GDimitrov ](https://profiles.wordpress.org/wpsupporting/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/bulcommerce/)