Skip to main content

Changelog

Traide Changelog

We regularly update our product and API while providing detailed notes on each release. We first release to staging, then to production about a week later. Learn more about our release process.

: Staging

: Production

✨ New

discounts

Added the following fields to the NauticalOrderLine object, to retrieve information about discounted pricing specific to an order line:

  • sale
  • saleDiscount
  • voucherDiscount
  • discountedUnitPrice
  • originalUnitPrice
discounts

Added the currency field to the sale query.

payouts

Added the following fields to the VendorPayout model:

  • subtotal
  • total

πŸͺ² Fixed

data entry

Fixed an issue where you could not set dropdown or multi-select attributes back to an empty value after they are set to a value.

Taxes

Fixed an issue where the nauticalOrderRefreshTaxes mutation was failing due to an error with the vat_code field.

🚫 Deprecated

The enable_edit_checkout_public_metadata_by_customer configuration in the NauticalConfiguration model has been deprecated.

: Staging

: Production

✨ New

Checkout

Sale tracking on checkout lines​

Checkout lines now track which sale (if any) applies to them, making it easier to understand pricing and discounts during the checkout process.

Payouts

Vendor payout creation​

Added the ability to create individual vendor payouts within a marketplace payout, giving operators more control over payout management.

API

Enhanced development tools​

Improved developer onboarding with updated documentation and a new populatedb command that simplifies database setup for local development and testing.

πŸ’Ž Changed

API

Simplified checkout configuration​

Removed legacy checkout settings for minimum/maximum quantities and minimum order amounts, streamlining the checkout configuration process.

API

Removed checkout line price override​

The checkoutLinePriceOverride mutation has been removed. Use sale-based pricing or other discount mechanisms instead.

Performance

Observability improvements​

Switched from DataDog to OpenTelemetry for tracing, improving monitoring capabilities and reducing overhead in production environments.

πŸͺ² Fixed

Orders

Fixed an issue where duplicate invoice numbers could be generated under certain conditions.

Payments

Fixed an issue where Stripe webhook events weren't correctly triggering the "fully paid" status for marketplace orders.

Payments

Fixed validation on Stripe payment amounts to ensure only positive values are accepted.

: Staging

: Production

✨ New

payouts

Add vendor payout to draft payout​

Added the vendorPayoutCreate mutation, to add a seller to a draft payout if they were not included when the payout was initially created.

checkout

Checkout line sale field​

Added the sale field to the checkoutLine model, which returns a matching sale for the checkout line, if applicable.

πŸͺ² Fixed

invoices

Fixed an issue where multiple invoices could be generated with the same invoice number.

webhooks

Fixed an issue where ACH payments were not triggering the Nautical Order Updated Webhook or the Nautical Order Fully Paid Webhooks when the ACH payment was captured.

🚫 Deprecated

checkout

The following MarketplaceConfiguration fields have been deprecated:

  • maxCheckoutLineQuantity
  • maxCheckoutQuantity
  • minCheckoutAmount
orders

Removed the subscription model

checkout

Removed checkoutLinePriceOverride mutation.

: Staging

: Production

✨ New

Discounts

Variant-level discount control​

Added the ability to apply sales and vouchers directly to specific product variants, giving you more granular control over promotional pricing. You can now:

  • Assign individual variants to sales and vouchers
  • Filter vouchers by variant ID
  • View which variants are included in each discount through the API

This enables more targeted promotions, such as offering discounts on specific sizes, colors, or configurations of a product.

Discounts

Minimum requirements for sales​

Sales can now specify minimum purchase requirements, allowing you to create promotions like "Buy 2, get 10% off" or set minimum order values for discount eligibility.

Seller mgmt

Seller owner access to payout details​

Seller owners can now access detailed payout information for their vendor accounts, providing better visibility into payment processing and settlement schedules.

πŸͺ² Fixed

Orders

Fixed an issue where declining a fulfillment would incorrectly remove an applied voucher from the order. Vouchers now remain properly applied when fulfillments are declined.

Webhooks

Fixed an issue where bulk publishing products did not trigger the product updated webhook. Product update webhooks now fire correctly during bulk publish operations.

: Staging

: Production

πŸͺ² Fixed

Webhooks

Fixed an issue where the product_update webhook was not being triggered when products were published in bulk using the productBulkPublish mutation.

Payouts

Fixed an issue where seller admins could not query order.fees, resulting in a 404 page when opening a payout in the dashboard.

Discounts

Fixed an issue where voucher discounts, specifically those with the "Limit one per customer" setting enabled, were not calculated correctly after a fulfillment was declined.

: Staging

: Production

✨ New

Catalog

Custom fields​

Added the ability for marketplace operators to define custom fields for various object models. The following objects support custom fields: USER, PRODUCT, VARIANT, CATEGORY, and COLLECTION.

Add attributes to custom field templates to make those attributes available for data entry on the associated object.

This feature includes the following GraphQL changes:

  • Assign an attribute to an object model’s custom field template with the customAttributeAssign mutation.
  • Query custom field templates with the customFieldTemplates query.
  • Remove attributes from a custom field template with the customAttributeUnassign mutation.
  • The following inputs have been updated to support assigning customFields when creating and updating objects:
  • ProductInput, ProductCreateInput
  • ProductVariantInput, ProductVariantCreateInput
  • UserCreateInput, CustomerInput, StaffUpdateInput
  • CategoryInput
  • CollectionInput, CollectionCreateInput

Learn more ->

Catalog

Attribute template strategy field​

Added the attributeTemplateStrategy field to the MarketplaceConfiguration model, allowing operators to customize how attributes are assigned across product attributes, variant attributes, and custom fields.

Related to this change, added the templated field, which you can query under product attributes, variant attributes, and custom fields to see if the selected attribute came from a templated assignment.

Catalog

Product template strategy field​

Added the requireProductTypes field to the MarketplaceConfiguration model, allowing operators to make product template usage optional.

Catalog

New attribute input types​

Added several new supported input types to the AttributeInputTypeEnum.

Catalog

Update product template on product​

The productUpdate mutation now accepts the productType input field, allowing you to change the product template on an existing product.

Catalog

Update parent product on variant​

The productVariantUpdate mutation now accepts the product input field, allowing you to change the parent product of a variant.

πŸͺ² Fixed

Catalog

Fixed an issue with filtering the variants list based on the isPublished field.

: Staging

: Production

✨ New

API

Sandbox configuration​

Added new sandbox fields to the marketplace configuration, allowing for easier testing and development workflows.

πŸͺ² Fixed

Tax

Fixed an issue where tax calculations defaulted to gross pricing instead of net pricing, which could lead to unexpected tax amounts in certain configurations.

Products

Fixed an issue where product variant listings did not correctly respect the is_published flag, potentially showing unpublished variants in some queries.

Discounts

Improved performance when loading sale information for products, making discount-related queries faster.

: Staging

: Production

πŸ’Ž Changed

Maintenance

This release contains internal improvements and maintenance updates.

: Staging

: Production

✨ New

Products

Metadata on product variants​

Added support for storing metadata on product variants, allowing you to attach custom data to individual product variations.

πŸͺ² Fixed

Orders

Fixed an issue where the dashboard orders summary query could incorrectly include marketplace order vendor data in certain scenarios.

: Staging

: Production

✨ New

Attributes

Bulk attribute association​

Added support for bulk operations when associating attributes with products and product types, making it faster to manage attributes across multiple items.

πŸͺ² Fixed

Discounts

Fixed an issue where vouchers were not properly restricted to their specified product variants, potentially allowing discounts on unintended items.

Integrations

Fixed an issue where collection data was not properly formatted when passed to plugin integrations.

API

Fixed missing permission checks on insights queries that could allow unauthorized access to analytics data.

Payouts

Fixed an issue where the payout status field was not displaying correctly in the user interface.

Performance

Fixed a performance regression in user queries that was causing slow page loads and incorrect order counts.

Seller mgmt

Fixed an issue where sellers could incorrectly access data from other sellers in certain scenarios.

Tax

Fixed an issue where setting a tax code override to null in product updates was not being properly handled.

Payouts

Fixed an issue where date filters were not being applied correctly when connecting orders to payouts through ledger entries.

Seller mgmt

Fixed an issue where updating seller agreements incorrectly required all fields to be provided, even when only updating specific fields.

Orders

Fixed an issue where certain order event fields were incorrectly marked as nullable in the API schema.

API

Fixed an issue where large monetary amounts could cause precision errors by improving how base amounts are handled in the API.

Shipping

Improved handling of allowed country areas in shipping configurations, providing more detailed validation and error messages.

Was this page helpful?