12.53
14.14
990
per site
- Checked by Modstore
- Free future updates
- Work on the test and public domain
- 12 months tech. support
Warning! This component requires PHP
8.2
or higher!
Warning! This package requires MODX 3 or higher.
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.0.2-pl] - 2026-07-09
Fixed
- Webhook: notifications for payments not created by this package (e.g. SMS invoices from the YooKassa cabinet) are acknowledged and skipped at debug level instead of writing
order not foundto the MODX error log.
[1.0.1-pl] - 2026-06-20
Fixed
- Webhook and two-stage capture: order status is updated via MiniShop3
OrderStatusServiceinstead of directsave(), somsOnChangeOrderStatusfires and notification center emails (e.g. manager alert on paid status) are sent. OrderStatusUpdater: status change runs before savingproperties, avoiding a paid payment ID in DB while the order status stayed unchanged.- Webhook/capture failures (status change, hash mismatch, missing order) are always written to the MODX error log; debug-only messages stay behind
msp3yookassa_debug. OrderStatusUpdatervalidates MiniShop3 bootstrap before changing status.
Changed
- README,
docs/readme.txt,_preview/DESCRIPTION.md: статус после оплаты, уведомления MS3, разделение error/debug логов.
[1.0.0-pl] - 2026-04-23
Added
- YooKassa API integration for MiniShop3.
- One-stage payment (immediate capture).
- Two-stage payment (hold; capture/cancel from manager via Capture processor).
- HTTP webhook endpoint to sync order status from YooKassa notifications.
- Optional 54-FZ receipts (fiscalization) via
ReceiptBuilder. - System settings:
shop_id,secret_key, receipt mode, VAT code, success/fail URLs, debug flag. - Bootstrap plugin (
OnMODXInit) for PSR-4 autoload of payment handlers. - Transport resolvers: settings,
msPaymentrecords (one-stage and two-stage classes), assets. - Payment
send()success payload includesorder_id,order_num, andmsorder(UUID) for storefront integrations and debugging. - Build: optional modstore.pro transport encryption (
EncryptedVehicle,resolve.encryption.php) — same pattern as ms3Favorites; enable withencrypt=> true in_build/config.inc.php. - Repository
_preview/: ModStore copy (DESCRIPTION.md,modstore-description.md), logoslogo-320.png/logo-320-v2.png/logo-320-v3.png, bannersbanner-1200x630.png/banner-1200x630-v2.png— not included in transport ZIP.
Changed
- Runtime MODX log lines from this extra (including webhook and receipt debug, YooKassa payment flow) are written only when system setting
msp3yookassa_debugis enabled. - Capture processor: log line on capture failure is also gated by
msp3yookassa_debug(failure message still returned to the manager action). - Debug log label:
YooKassa createPayment requestdistinguishes the API request body from the payment response.
Fixed
$modx->log(): context is no longer passed as the third argument (that parameter is the log target in MODX/xPDO). Passing an array there could corrupt HTTP output and break MiniShop3 JSON API (order/submit), causing frontend submission errors.- Order persistence after
createPayment: if saving the order withyookassa_payment_idinpropertiesfails, return a clear error instead of continuing silently.


