Skip to content

Feature: Merchant API Migration#3595

Draft
joemcgill wants to merge 244 commits into
developfrom
feature/mapi-migration
Draft

Feature: Merchant API Migration#3595
joemcgill wants to merge 244 commits into
developfrom
feature/mapi-migration

Conversation

@joemcgill

@joemcgill joemcgill commented Jul 15, 2026

Copy link
Copy Markdown
Collaborator

Changes proposed in this Pull Request:

See: Merchant API Migration.

This replaces the Shopping Content API with the Merchant API. The Content API for Shopping will be sunset on August 18, 2026. See: https://developers.google.com/shopping-content/guides/rel-notes

Changelog entry

Break - Migrate to the Merchant API from the Content Shopping API.

alaca added 30 commits May 18, 2026 10:07
alaca and others added 28 commits July 7, 2026 11:08
…ns-mapi

GOOWOO-776: Migrate content.promotions.create to MAPI promotions.insert
…thout products; add unit tests for new logic
… status definitions, and add unit tests for issue rendering and action triggering
…ort for `reviewAction` flow, and remove region-based review logic.
…tatus derivation logic, and integrate `reviewAction` support.
…or dependency management and service sharing.
… statistics load, clarify onboarding logic for accounts without products
…tion flow ID and input values, update related test cases to align with new method signature, and add support for `UNDER_REVIEW_LIFETIME` constant and filter.
…ut action rendering, update `trigger_action` to use explicit arguments
…, improve caching logic with `under_review` support, and enhance error signaling for redirect actions.
Adopt develop's removal of the API Pull / notifications infrastructure (deleted in 87f6697): drop the per-datatype is_enabled_for_datatype sync gating from Settings, CouponSyncer and ProductSyncer so syncing relies on the existing should_push()/is_ready_for_syncing() guards, and remove the now-obsolete gating tests. Keep the MAPI service wiring (MapiPromotionsService, MapiDataSourcesService).
…solution

GOOWOO-760: Migrate content.freelistingsprogram.get to MAPI accounts.programs.get
…g Merchant API ID mapping and valid IDs are retained
…eduling on MAPI upgrade and guard against unnecessary resyncs
…sh-legacy-ids

GOOWOO-793: Product status refresh rejects legacy-format product IDs
@joemcgill joemcgill added the changelog: breaking A change breaking previous API or functionality. label Jul 15, 2026
@codecov

codecov Bot commented Jul 15, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 83.26468% with 325 lines in your changes missing coverage. Please review.
✅ Project coverage is 67.9%. Comparing base (46d2cf6) to head (c8de747).

Files with missing lines Patch % Lines
src/ConnectionTest.php 0.0% 234 Missing ⚠️
src/Product/WCProductInputAdapter.php 89.8% 30 Missing ⚠️
src/Coupon/WCCouponAdapter.php 84.5% 15 Missing ⚠️
src/MerchantCenter/MerchantStatuses.php 87.7% 8 Missing ⚠️
src/API/Google/Mapi/MerchantApiClient.php 87.2% 5 Missing ⚠️
src/API/Google/Settings.php 75.0% 5 Missing ⚠️
...ernal/DependencyManagement/CoreServiceProvider.php 0.0% 5 Missing ⚠️
src/API/Google/MerchantReport.php 92.5% 3 Missing ⚠️
src/API/Google/Query/MapiReportQuery.php 88.9% 2 Missing ⚠️
src/Jobs/CleanupProductsJob.php 0.0% 2 Missing ⚠️
... and 13 more
Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##             develop   #3595     +/-   ##
===========================================
+ Coverage       66.8%   67.9%   +1.1%     
- Complexity      5342    5710    +368     
===========================================
  Files            914     934     +20     
  Lines          28280   29368   +1088     
  Branches        1720    1721      +1     
===========================================
+ Hits           18883   19937   +1054     
- Misses          9136    9170     +34     
  Partials         261     261             
Flag Coverage Δ
js-unit-tests 64.1% <94.7%> (+<0.1%) ⬆️
php-unit-tests 69.0% <83.2%> (+1.4%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
js/src/data/actions.js 12.8% <ø> (ø)
js/src/data/reducer.js 68.7% <ø> (ø)
js/src/pages/product-feed/constants.js 100.0% <ø> (ø)
js/src/pages/product-feed/review-request/index.js 100.0% <ø> (+5.0%) ⬆️
...oduct-feed/review-request/review-request-issues.js 94.4% <100.0%> (-5.6%) ⬇️
...oduct-feed/review-request/review-request-notice.js 92.3% <100.0%> (+6.6%) ⬆️
src/API/Google/Mapi/MapiPaths.php 100.0% <100.0%> (ø)
src/API/Google/Mapi/MerchantApiException.php 100.0% <100.0%> (ø)
src/API/Google/Mapi/Models/ItemLevelIssue.php 100.0% <100.0%> (ø)
src/API/Google/Mapi/Models/Product.php 100.0% <100.0%> (ø)
... and 58 more

... and 7 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog: breaking A change breaking previous API or functionality.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants