

Syntopia Pay settings: merchant number, secret word and test mode.
Syntopia Pay adds three payment methods to WooCommerce checkout, all processed by ePay.bg:
It is for shops in Bulgaria that have a merchant account with ePay.bg and sell in euro.
What it does:
Syntopia Pay for ePay.bg is an independent plugin by Syntopia LTD. It is not made, endorsed or supported by ePay.bg. ePay.bg and EasyPay are trademarks of their owners.
Syntopia, the company behind the plugin, builds and maintains WooCommerce shops in Bulgaria; see syntopia.bg.
Syntopia Pay is new. Card payments already run in a live shop. The ePay.bg account and EasyPay code methods were tested on the ePay.bg demo system and by automated tests, not yet with real money. If you switch them on, make one small real payment first. The plugin grows with the shops that use it: ask questions and report anything odd in the support forum and we answer there.
This plugin connects to ePay.bg, the payment service it is built for. No other outbound calls are made: no update checks, no telemetry.
When a customer pays by card or ePay.bg account, their browser posts a payment form to https://www.epay.bg. While test mode is on, the same form goes to https://demo.epay.bg. The form carries the merchant number (MIN), the order’s invoice number (INVOICE), the amount (AMOUNT), the currency (CURRENCY), the payment deadline (EXP_TIME), a short description (DESCR) and the return links, signed with the shop’s secret. The customer’s name, email, phone and address are not sent. ePay.bg answers by showing its payment page and later reports the result to the shop (payment status and reference numbers, which are stored with the order). Terms and privacy declaration.
When an EasyPay code is created, the shop’s server sends a signed request to /ezp/reg_bill.cgi on www.epay.bg (demo.epay.bg in test mode) with MIN, INVOICE, AMOUNT, CURRENCY, EXP_TIME and DESCR. ePay.bg returns the 10-digit code that the plugin shows to the customer. Terms and privacy declaration.
ePay.bg also calls the shop to report payment status. Those are incoming requests, checked against the shop’s secret.
Removing the plugin deletes its settings (including the secret) and temporary data. Order meta is kept, because it is the record of each payment.
WooCommerce reserves stock for an unpaid order only for the time set in woocommerce_hold_stock_minutes. A card payment window can be longer, so the last unit of a product may be sold to someone else while a customer is still paying. This is an accepted risk. This applies to card and ePay.bg account payments; raise WooCommerce’s hold time or shorten the payment window if the window is longer. If the payment then arrives and there is not enough stock, the order is still completed as paid, stock may go below zero, and the shop owner gets an order note and an email to check stock before shipping.
Refunds are manual. Create a refund on the order in WooCommerce (Refund manually), then refund the payment in the ePay panel. If you use Bulgarisation, check the credit note.