: Staging
: Production
💎 Changed
This release contains internal improvements and maintenance updates.
: Staging
: Production
This release contains internal improvements and maintenance updates.
: Staging
: Production
Added support for storing metadata on product variants, allowing you to attach custom data to individual product variations.
Fixed an issue where the dashboard orders summary query could incorrectly include marketplace order vendor data in certain scenarios.
: Staging
: Production
Added support for bulk operations when associating attributes with products and product types, making it faster to manage attributes across multiple items.
Fixed an issue where vouchers were not properly restricted to their specified product variants, potentially allowing discounts on unintended items.
Fixed an issue where collection data was not properly formatted when passed to plugin integrations.
Fixed missing permission checks on insights queries that could allow unauthorized access to analytics data.
Fixed an issue where the payout status field was not displaying correctly in the user interface.
Fixed a performance regression in user queries that was causing slow page loads and incorrect order counts.
Fixed an issue where sellers could incorrectly access data from other sellers in certain scenarios.
Fixed an issue where setting a tax code override to null in product updates was not being properly handled.
Fixed an issue where date filters were not being applied correctly when connecting orders to payouts through ledger entries.
Fixed an issue where updating seller agreements incorrectly required all fields to be provided, even when only updating specific fields.
Fixed an issue where certain order event fields were incorrectly marked as nullable in the API schema.
Fixed an issue where large monetary amounts could cause precision errors by improving how base amounts are handled in the API.
Improved handling of allowed country areas in shipping configurations, providing more detailed validation and error messages.
: Staging
: Production
Updated the ProductVariantFilter input to support filtering variants by metadata or privateMetadata.
Fixed an issue with the productUpdate mutation, where passing a null taxCode value did not clear the existing value.
Fixed an issue where orders outside the payout end date were incorrectly attributed to payouts with the ledger accounting system.
Fixed an issue where the agreementUpdate mutation required all the same inputs as agreementCreate.
: Staging
: Production
Fixed issues with country area restrictions that could prevent valid shipping configurations from being saved or applied correctly.
: Staging
: Production
Added support for exposing detailed country area information through the CountryDisplay type, providing more granular geographic data for shipping and tax calculations.
Fixed an issue where the min_checkout_items_quantity discount rule would incorrectly count non-qualifying products, potentially preventing valid discounts from being applied.
Fixed an authentication error that could occur when certain app tokens were used to access the API.
Updated the Shopify integration plugin to the latest beta version, improving compatibility and performance.
: Staging
: Production
Added the detailedAllowedCountryAreas field to the CountryDisplay model for displaying area codes in address forms. This field replaces the deprecated CountryDisplay.allowedCountryAreas field.
Fixed an issue where non-qualifying items were incorrectly counted towards the minimum quantity requirement for voucher eligibility.
Fixed an issue where using app authentication to query productVariants sometimes triggered an 'App' object has no attribute 'is_anonymous' error.
Deprecated the CountryDisplay.allowedCountryAreas field. This field will be removed after 2024-12-31.
: Staging
: Production
Product and variant publishing dates now respect the marketplace's configured timezone, ensuring products go live at the correct local time for your customers.
Added tracking for when user accounts are activated or deactivated, making it easier to monitor account status changes and audit user management activities.
Fixed an issue where pagination in microsite product queries could get stuck in a loop due to identical cursor values.
Fixed errors that could occur when querying products that don't have an associated product type.
Fixed authentication app category assignment for Firebase and WorkOS integrations, ensuring proper categorization in the authentication system.
: Staging
: Production
Added a lastStatusChangedAt field to the User model. This field updates with the current datetime whenever there's a change in the isActive status for any user (customer or staff).
Fixed a pagination loop issue caused by identical endCursor and startCursor values when querying microsite.products.
: Staging
: Production
Added support to connect to WorkOS authentication, an SSO tool that supports various identity providers.
The existing createCustomerToken mutation has been extended to accept WorkOS as an oauthProviderSource. You can use this mutation to exchange a WorkOS access token for a nauticalToken after activating the plugin.
mutation {
createCustomerToken(
oauthProviderSource: WORKOS
oauthProviderToken: "[ACCESS_TOKEN]"
) {
nauticalToken
refreshToken
authErrors {
field
message
}
}
}
NOT_PAID payout statusUpdated the OrderPayoutStatusEnum to include the NOT_PAID payout status for orders in the new financial ledgers system.
When using the new ledger system for payouts, only the states NOT_PAID, PAID_OUT, PARTIALLY_PAID_OUT, and ERROR will be used.
Migrated Shopify plugin instances to use the latest Shopify API version.
Fixed an issue where the product_updated webhook was not being triggered when an image was added to a product or variant.
Fixed an issue where successful capture of ACH payments with Stripe were not updating as paid in Nautical.
Fixed an issue where the "Partial Order Cancel" and "Pending Quote" buyer emails were stored with the Admin Email Templates.
Fixed an issue where the productUpdate mutation required the category input even when a category was previously assigned.