[Shopify] Remove B2B Plus-only plan restriction#7605
Conversation
Shopify expanded B2B features (companies, catalogs, orders) to all plans, not just Plus. Remove the plan-based gating on B2B features and obsolete the "B2B Enabled" field. Staff member queries still require Plus, Plus Trial, Development, or Advanced plans, so introduce a new "Staff Members Enabled" field (207) with the appropriate plan check. Fixes AB#630316 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add missing Shop Code filter when checking for existing company by External Id during export, preventing cross-shop false positives. Fixes AB#630316 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rename "Staff Members Enabled" to "Has Advanced Shopify Plan" so the field can gate any plan-dependent features, not just staff members. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
AL Documentation Audit
Documentation gaps were detected in the following apps:
- Shopify-Connector-Test: 67% documentation coverage
To generate documentation, run /al-docs init or /al-docs update using GitHub Copilot CLI or Claude Code.
This review is for awareness to help keep documentation in sync with code changes. It is okay to dismiss this request.
Refresh docs across 15 files to reflect B2B Enabled obsolescence, Advanced Shopify Plan field, contact lookup, UoM price validation, HttpClientHandler migration, and other changes since 2026-03-24. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
B2B catalog creation remains a Plus/Advanced feature. Hide the B2B Catalogs action and skip CatalogPricesSync for shops on lower plans. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
No B2B catalogs exist on basic plans, so the sync iterates zero records. No need to gate the call. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
There was a problem hiding this comment.
AL Documentation Audit
Documentation gaps were detected in the following apps:
- Shopify-Connector-Test: 80% documentation coverage
- Shopify-Connector: 5% documentation coverage
To generate documentation, run /al-docs init or /al-docs update using GitHub Copilot CLI or Claude Code.
This review is for awareness to help keep documentation in sync with code changes. It is okay to dismiss this request.
Summary
Shopify expanded B2B features to all plans (Basic, Grow, Advanced, Plus), not just Plus. The connector currently restricts B2B to Plus plans only via the
B2B Enabledfield on the Shop table.This PR:
B2B Enabledfield (117) withCLEAN29/CLEANSCHEMA32guards — B2B features (companies, catalogs, company sync, B2B orders) are now unconditionally available on all plansStaff Members Enabledfield (207) — staff member GraphQL queries still require Plus, Plus Trial, Development, or Advanced plans, so this new field gates only staff-member-specific functionalityDataTransferto migrate existingB2B Enabled = trueshops toStaff Members Enabled = trueB2B Enabledfor B2B features (ShopCard page visibility, Activities page filter, ImportOrder/StaffMemberAPI guards)B2B Enabledassignments and update staff visibility testFixes AB#630316
Changes by file
ShpfyShop.Table.alGetShopSettings()plan check (addsAdvanced)ShpfyShopCard.Page.alVisible = Rec."B2B Enabled", unconditional company/catalog sync, gate StaffMembers on new fieldShpfyActivities.Page.alB2BEnabledvariable and B2B shop filterShpfyImportOrder.Codeunit.alStaffMemberquery parameter onStaff Members Enabledinstead ofB2B EnabledShpfyStaffMemberAPI.Codeunit.alStaff Members Enabledinstead ofB2B EnabledShpfyUpgradeMgt.Codeunit.alStaffMembersEnabledUpgrade()withDataTransfer(source filter + constant value)B2B Enabled := truesetup, update staff visibility testHow to review
CLEAN29/CLEANSCHEMA32dual-state pattern (compare with field 206). VerifyGetShopSettings()now setsStaff Members Enabledfor Plus, Plus Trial, Development, and Advanced plans.StaffMembersaction is now gated on the newStaff Members Enabledfield. Verify the "Sync All" action now always syncs companies and catalog prices.AddSourceFilteronB2B Enabled = true+AddConstantValue(true)toStaff Members Enabled. Verify tag is registered inRegisterPerCompanyTags.Staff Members Enabledinstead ofB2B Enabled.B2B Enabledassignments are removed and staff test usesStaff Members Enabled.Testing scenarios
B2B Enabled = trueshould now haveStaff Members Enabled = true🤖 Generated with Claude Code