- Fixed bug in
GET /ordersandGET /orders/{id}where fetching very old orders with no currency information attached would cause an error. Now fetching very old orders that do not have currency information simply won't fetch formatted prices and totals.
- Minor fixes to /files (/media) resource
- Internal optimization of a core middleware greatly reducing average response time across the whole API! Yay!
- Improved escaping of
qparameter inGET /productsendpoint for full text search. Now mixed types are automatically cast to string.
- Fixed
DELETE /invoices/{id}, now correctly removinginvoice_idfrom related order.
- Fixed
PUT /filesendpoint, now correctly validating the update.
- Improved escaping of
qparameter inGET /productsendpoint for full text search
- Fixed model for Invoices.LineItems in order to align it with other LineItems
- Orders now always have attached display_X properties to show totals as strings with currency code
- Fixed items_total calculations, now
price_discountcan be equal to zero to achieve "free" products. - Fixed internal method for calculating
payment_method_total
- Performance improvements for 2 core middlewares.
- Added support new notification type, emitted when a new invoice is created.
- Improved products model validation by enforcing consistency of
stock_typestock_levelandstock_status
- Enhanced behaviour of
categoryGET parameter inGET /v0/productsendpoint. Now allowing a comma separated list of paths as input and returning products matching at least one of those category paths.
- Fixed validation of
categoryGET parameter inGET /v0/productsendpoint. Now correctly validating it, requiring a string data type. - Fixed Model definition for Coupons resource: property
usages_leftis now required to be >= 0 - Fixed coupons validation, now correctly requiring a target_id for types
PRODUCT_COUPONandCATEGORY_COUPON - Fixed sub-resource validation now correctly returning the index of the invalid sub-resource