New Features
JSON Feeds and Product Types System
- Added complete support for Amazon’s new Product Type system using JSON-format feeds
- New Product Types settings tab for managing Amazon Product Types
- Automatic installation of default “PRODUCT” product type for all supported marketplaces
- Profile Converter tool for migrating existing listing profiles to Product Types format
- Listing migration capability to transfer products to converted profiles
- JSON feed generation with proper schema validation
- Support for putListingsItem API for creating new listings
- Form generator for Product Type attribute fields with proper validation
VAT Invoice Data Report
- Added support for VAT Invoice Data Report to access billing VAT information for European merchants
Settings and Configuration
- New setting to disable stripping of HTTPS from image URLs
- New filter:
wpla_order_builder_skip_zero_priced_items
for controlling zero-priced item handling in orders
Bug Fixes
Order Fulfillment
- Fixed: Race condition where tracking numbers could be missed during order fulfillment feed submission. Feeds are now immediately marked as “processing” to prevent concurrent updates. (Ticket #65684)
Order Import and API Handling
- Fixed: Failed API calls during order import now properly trigger throttling behavior, stopping further processing until the next cron run instead of continuing with errors. (Ticket #70380)
- Fixed: Orders with missing OrderTotal property (replacement orders) no longer cause fatal errors during currency conversion. Added proper validation before accessing order currency. (Ticket #70483)
- Fixed: Buyer name and email fetching errors during order import process resolved
- Fixed: NextToken transients now properly cleared after use to prevent pagination issues
- Fixed: NextToken now correctly linked to the account ID that received it, preventing cross-account issues
- Fixed: GetOrders calls returning 400 errors now properly clear the NextToken transient
Reports
- Fixed: Report data downloads from Amazon’s Reports API now use GuzzleHTTP for proper content extraction. Resolves empty Merchant Listings Reports issue. (Ticket #70421)
Installation and Initialization
- Fixed: Fatal error when initAPI is called without an account configured. Added proper error handling for initial setup scenarios. (Ticket #70568)
- Fixed: Error during installation of default product types when no account exists. Installation process now gracefully handles missing account configuration. (Ticket #70736)
- Fixed: Database update version mix-up causing fatal error when creating the amazon_product_types table
- Fixed: Namespace error when installing default Products product type
JSON Feeds and Product Types
- Fixed: JSON feeds now properly submitted automatically according to update schedule
- Fixed: Product Type display names properly saved and displayed
- Fixed: Variable products now correctly load quantity values in feeds
- Fixed: Variables now have fixed variable support in Product Type feeds
- Fixed: Variation theme values properly included in feeds
- Fixed: Variation theme now properly converted to uppercase as required by Amazon
- Fixed: Variable listing relationship values correctly populated
- Fixed: Currency properly included in JSON feeds for all listings
- Fixed: JSON formatting for purchasable_offer field corrected
- Fixed: Feed item requirement property correctly set to LISTING_OFFER for PRODUCT product types
- Fixed: Prices now added to JSON requests as float instead of string type
- Fixed: ASIN properly included in feeds when required
- Fixed: Quantity values no longer overwritten by empty values
- Fixed: UpdateProduct now shows success status only when matching listings are found
Profile and Attribute Handling
- Fixed: Product attributes now display correctly after converting product-level feed template on Edit Product page
- Fixed: Profile cloning issue with non-serialized objects resolved
- Fixed: Handling Time now properly mapped to new profiles during conversion
- Fixed: Passing serialized profile fields no longer causes errors
- Fixed: Nested attributes now handled correctly by form generator
- Fixed: Enum and composite enum schema fields now render as select dropdowns
- Fixed: Valid values in select elements now render using correct keys
- Fixed: Type fields (e.g., Unit Count Type) now render properly in form generator
- Fixed: Invalid value rendering for first option in select boxes corrected
- Fixed: Multi-select dropdowns now render correctly
Listing Management
- Fixed: Imported listings now automatically assigned to correct marketplace and product type
- Fixed: Listings status properly updates to “online” after receiving ASIN
- Fixed: Only listings without ASIN and “Prepared” status are now enqueued for submission
- Fixed: ASIN fetching for new listings no longer throws fatal error
- Fixed: Loop now continues correctly instead of breaking when canSubmitListing returns false
- Fixed: Check for listing issues bulk action added and working properly
- Fixed: “No ASIN” view now includes listings with “Submitted” status
- Fixed: Matching products white screen error resolved
- Fixed: Error when matching listings corrected with proper string/array handling
- Fixed: Valid product check added before running parseProfileShortcode
Feed Processing
- Fixed: Max Feed Size setting now properly checked in JSONFeedBuilder
- Fixed: Undefined array key “job_name” error eliminated
- Fixed: Error when accessing string as array resolved
- Fixed: Fatal error when cancelling feeds corrected
- Fixed: JSON feed rendering issues resolved – items now display correctly
- Fixed: Profile migration no longer needs batching for better performance
API and Data Handling
- Fixed: South Africa marketplace ID added to marketplace list
- Fixed: Marketplace selection limited to only supported marketplaces
- Fixed: Product Type loading error when property groups are missing
- Fixed: Valid properties for parent variables updated to current Amazon requirements
- Fixed: Merchant ID now passed when loading JSON schema for proper shipping template access
- Fixed: Item Conditions dropdowns updated to use new Amazon values
User Interface
- Fixed: Sandbox flag now displays correctly
- Fixed: Product Types label no longer shows as “undefined”
- Fixed: Unmapped field link hidden when no unmapped fields available
- Fixed: Fields needing mapping now only show if they have actual values
- Fixed: Feed Details display tweaks for better readability
- Fixed: MessageId now displayed in block title of JSON Feed Details page
- Fixed: MessageId mapped to SKU and displayed in Errors table of JSON Feed page
- Fixed: SKU now shows in Errors table for better debugging
- Fixed: Results popup for JSON Feeds corrected
- Fixed: JSON feed details view error resolved
- Fixed: Announcements no longer display during ajax and cron runs
- Fixed: Order page warnings about accessing ID property incorrectly resolved
Code Quality and Technical Fixes
- Fixed: Translation-related warnings eliminated by moving handleSubmit to init event
- Fixed: Duplicate Product Types installation prevented
- Fixed: Various code warnings addressed
- Fixed: Blocking and unblocking of elements in Profile form corrected
- Fixed: Encoding issues resolved
- Fixed: Fatal error in method_exists() eliminated
- Fixed: Incorrect namespace when calling WP_Filesystem() corrected
- Fixed: WP_Filesystem() availability ensured by loading file.php
- Fixed: Unnecessary call to wp_enqueue_emoji_styles() removed
- Fixed: Code cleanup in FeedPage::updateFeedStatus method
- Fixed: Security fixes – missing capabilities check added in AjaxHandler methods
Improvements
- Improved: Report processing now uses faster fgets instead of fgetcsv for better performance
- Improved: ActionScheduler actions now grouped using ‘WPLA’ for better organization
- Improved: Field phrasing updated for better clarity on fields needing mapping
- Improved: Warning messages for Profile Converter tool improved
- Improved: Expert mode temporarily disregarded for product type attributes for better usability
- Improved: Persistent messaging support added to WPLA_AdminMessages
- Improved: Item Conditions dropdowns updated with new valid values from Amazon
- Improved: Clear existing issues prior to checking for new ones
Developer Notes
- Composer packages updated
- Removed unnecessary validation elements from schemas
- Added ProfileProductTypeConverter class for template field conversion
- Renamed JSON Feed Data Builder and Form Generator classes for consistency
- Removed unnecessary files from includes/amazon/vendor directory
- Removed unnecessary aws-sdk library
- Added back missing non-prefixed SP-API fields required by OrderBuilder class
- FBA Channel Code duplication addressed
- Feed Data Format setting removed as unnecessary
- .gitignore updated
Important Notes
- VAT Invoice Data Report temporarily disabled due to throttling issue – will be re-enabled in future update
- The new Product Type system is optional – existing listings continue to work with current feed system
- Profile migration is a one-way process – test on staging site first
- JSON feeds use different validation than XML feeds – some field mappings may need adjustment