Skip to main content

526 posts tagged with "API"

View All Tags

: Staging

: Production

✨ New

Webhooks

New webhooks​

Added the following webhook event types:

  • category_deleted
  • category_updated
  • collection_created
  • collection_deleted
  • collection_updated
  • price_book_created
  • price_book_updated
  • product_deleted
  • refund_created
  • refund_deleted
  • refund_updated
  • stock_deleted
  • variant_deleted
  • warehouse_created
  • warehouse_deleted
  • warehouse_updated

Learn more ->

Integrations

Sync prices with Shopify​

Added a new setting to the Shopify app, is_product_price_sync_enabled, that updates Nautical product prices when they are updated in Shopify. Note that this is a one-way sync, with Shopify serving as the source of truth for pricing.

Settings

Marketplace timezone​

Added the timezone field to the MarketplaceConfiguration model, which accepts the IANA timezone name. This field is now honored in queries for the insights APIs. We will be honoring it in other timezone fields in a future release.

💎 Changed

Order Lines

We are now storing the total price for each line item as returned from the tax-engine, eliminating several tax-related rounding errors.

Nautical Orders

The marketplace order can now be accessed as part of payment queries through a new nautical_order field on the Payment type

Draft Orders

We made several performance improvements around draft order APIs when the order contains a high number of line items.

Orders

The orders and nauticalOrders queries have a new filter to query by company name.

Orders
Breaking change in decline fulfillments API​

The orderDeclineFulfillment mutation now requires the quantity to be listed with the associated warehouse via a new stocks field. This allows the declined items to be deallocated back to the correct warehouse.

Example mutation
mutation {
orderDeclineFulfillment(
order: "T3JkZXI6MTMzMDk="
input: {
notifyCustomer: true
lines: {
orderLineId: "T3JkZXJMaW5lOjMwMzIy",
stocks: [
{
quantityDeclined: 1,
warehouse: "V2FyZWhvd...mUyYWYxZQ=="
}
]
}
}
) {
fulfillments {
id
status
totalLinesQuantity
lines {
id
quantity
}
}
}
Show more ↓

🪲 Fixed

Refunds

Fixed an issue where refunds were not including taxes in the refundPayment total. A new total_gross field is introduced to process the refundPayment with taxes included.

Permissions

Fixed an issue where seller staff members could view products owned by other sellers when working with categories.

Webhooks

Fixed an issue where the stock_allocated, stock_deallocated, and stock_updated webhooks were not being triggered by order events.

Webhooks

Fixed an issue where the payout_updated and vendor_payout_updated webhooks were not being triggered by certain payout events.

Webhooks

Fixed an issue where the seller_updated webhook was not being triggered when metadata updates.

Products

Fixed an issue filtering categories when the seller is a member of a master marketplace.

Orders

Fixed an issue where the quantity field on order types should be required. Note: This field has been deprecated. We will eventually prefer the quantityOrdered field.

Orders

Fixed an issue where line quantity updates were not always triggering updates in tax calculation plugins.

Multi-Currency

Fixed an issue where multi-currency environments would crash if a discount was applied.

: Staging

: Production

API v1.11.2​

✨ New

Orders

Add vouchers to quote and draft orders​

Added the ability to add and remove vouchers on a draft or quote order. Vouchers can be managed on draft or quote orders through the following new mutations:

  • NauticalOrderUpdateApplyVoucherCode
  • NauticalOrderUpdateDeleteDiscount
  • OrderUpdateApplyVoucherCode
  • OrderUpdateDeleteDiscount
Example mutation
mutation {
NauticalOrderUpdateApplyVoucherCode(
id: "TmF1dGljYWxPcmRlcjo1"
voucherCode: "SEPT10OFF"
) {
nauticalOrder {
id
discount {
amount
}
voucher {
id
name
code
}
}
orderErrors {
field
message
code
}
}
}
Show more ↓
Invoices

Display marketplace tax ID on invoices​

Added the display of VAT Business Identification No to invoices generated from a marketplace order. The value is pulled from the taxId field on the seller account reserved for the marketplace (seller #1).

Learn more ->

💎 Changed

Orders

Date search filters now respect the marketplace timezone.

🪲 Fixed

Orders

Fixed an issue with seller order filtering when searching by both first and last name in the search filter.

Orders

Fixed an issue where shipping taxes for seller orders were not being saved when manually creating a payment against a draft order.

Vendor mgmt

Fixed an issue where the updateSeller mutation would fail if the seller did not have an attached agreement.

: Staging

: Production

✨ New

Webhooks

Expanded webhook coverage​

Added webhooks for many platform events, giving integrations more visibility into marketplace activities:

  • Warehouse creation, updates, and deletion
  • Price book creation and updates
  • Category creation, updates, and deletion
  • Product and variant deletion
  • Collection creation, updates, and deletion
  • Refund events
  • Stock deletion
  • Seller profile updates (including metadata changes)
Webhooks

Webhook permissions improvements​

Webhooks now support plural permissions, making it easier to configure which apps can receive specific events.

✨ New

Products

Backorder support​

Added the ability to enable backorders at both the marketplace and product variant level:

  • New marketplace-wide configuration to enable backorders
  • Per-variant backorder settings
  • Out-of-stock threshold configuration
  • Negative available quantity support for tracking backorders

✨ New

API

Marketplace timezone configuration​

Added timezone support to marketplace configuration, allowing you to:

  • Set a specific timezone for your marketplace
  • View insights data automatically adjusted to your marketplace timezone
  • Filter and group analytics data by your local time

✨ New

Orders

Enhanced order line data​

Order line totals are now stored directly on order line models, improving query performance and data consistency.

💎 Changed

Performance

Performance improvements​

Made several performance improvements across the platform:

  • Draft order line creation is now significantly faster
  • Adding multiple lines to draft orders is more efficient
  • Order recalculation operations are optimized
  • Seller order line creation and updates are more performant
  • Nautical order finalization and validation queries are faster

💎 Changed

Shopify

Shopify price synchronization​

Marketplace product prices now automatically sync with Shopify product prices, keeping pricing consistent across platforms.

🪲 Fixed

Payments

Fixed an issue where refund totals were calculated incorrectly when processing payment refunds.

Products

Fixed an issue where sellers could see products from other sellers within category views.

Products

Fixed product visibility handling for master marketplace categories.

Webhooks

Fixed an issue where stock webhooks were not firing correctly when orders were placed and fulfilled.

Tax

Fixed an issue where the Avalara tax plugin was returning incorrect values in certain scenarios.

Orders

Fixed an issue where items were not properly deallocated when fulfillments were declined.

Orders

Fixed an issue where searching orders by company name was not working correctly.

Discounts

Fixed an issue where checkout discounts were not being recalculated correctly in certain contexts.

: Staging

: Production

✨ New

Webhooks

Warehouse webhooks​

Added webhook events for warehouse operations, enabling integrations to receive real-time notifications about warehouse changes.

Webhooks

Price book webhooks​

Added price_book_created and price_book_updated webhook events to notify integrations when price books are created or modified.

Webhooks

Category webhooks​

Added webhook events for category operations, including category_deleted and category_updated, allowing integrations to track category lifecycle changes.

Webhooks

Product and variant deletion webhooks​

Added product_deleted and variant_deleted webhook events to notify integrations when products or variants are removed from the marketplace.

Webhooks

Collection webhooks​

Added webhook events for collection operations, including collection_created and collection_deleted, enabling integrations to track collection changes.

✨ New

Seller mgmt

Marketplace timezone configuration​

Added the ability to configure a timezone for the marketplace, improving accuracy of date and time displays across the platform.

✨ New

Shopify

Shopify price synchronization​

Marketplace product prices now automatically sync with Shopify product prices, ensuring price consistency across both platforms.

🪲 Fixed

Payments

Fixed an issue where refund totals could be calculated incorrectly, now properly using the gross amount from refund lines.

🪲 Fixed

Products

Fixed an issue where sellers could see products from other sellers within a category. Sellers now only see their own products when viewing category listings.

🪲 Fixed

Webhooks

Fixed an issue where stock-related webhooks were not firing properly when orders were placed and fulfilled.

🪲 Fixed

Payouts

Fixed issues with the payout_updated and vendor_payout_updated mutations to ensure they work correctly.

: Staging

: Production

💎 Changed

General

This release contains internal improvements and maintenance updates.

: Staging

: Production

✨ New

Webhooks

Agreement webhooks​

Added webhook events for agreement lifecycle management:

  • agreement_created — triggered when a new agreement is created
  • agreement_updated — triggered when an agreement is modified
  • agreement_deleted — triggered when an agreement is removed

These webhooks allow integration partners to stay synchronized with agreement changes in real-time.

Webhooks

Category creation webhook​

Added the category_created webhook event, enabling integrations to respond when new product categories are added to the marketplace.

🚫 Deprecated

API

Removed deprecated metadata mutations​

Removed previously deprecated metadata-related mutations. Applications should use the current metadata API methods going forward.

🪲 Fixed

Orders

Fixed an issue where refund calculations were incorrect for orders that did not have taxes applied.

: Staging

: Production

💎 Changed

Performance

Reduced database calls to improve speeds of various queries, including product and currency queries.

: Staging

: Production

✨ New

Webhooks

Added the following webhook events:

  • agreement_created
  • agreement_updated
  • agreement_deleted
  • category_created

Learn more ->

🪲 Fixed

Refunds

Fixed an issue with inaccurate tax calculations for refunds when the initial order was not subject to tax.

: Staging

: Production

🪲 Fixed

Refunds

Fixed an issue with where checkoutLinesUpdate could encounter an error applying discounts in multi-currency environments.

: Staging

: Production

✨ New

Orders
Decline fulfillments API​

Added the orderDeclineFulfillment mutation and object to remove order lines that cannot be fulfilled. A new field, quantityDeclined, has been added to the OrderLine object to track declined quantities.

When this mutation is called, the order total and taxes are recalculated, omitting the unfulfillable line items. However, shipping costs remain unchanged. This mutation must be used before payment has been captured.

The existing ORDER_FULFILLED webhook is triggered by the orderDeclineFulfillment mutation. You may need to update your webhook consumption to check the fulfillment status.

The DECLINED status is added to the FulfillmentStatus enum. Both order.fulfillments and nauticalOrder.fulfillments will now include declined fulfillments. Please note that the quantity value for these declined fulfillments is a positive integer. You may need to adjust your calculations involving fulfillment quantities accordingly.

Example mutation
mutation {
orderDeclineFulfillment(
order: "T3JkZXI6MTMzMDk="
input: {
notifyCustomer: true
lines: {
orderLineId: "T3JkZXJMaW5lOjMwMzIy",
quantityDeclined: 1
}
}
) {
order {
id
status
}
fulfillments {
id
status
totalLinesQuantity
lines {
id
quantity
}
}
orderErrors {
field
code
message
orderLine
}
}
}
Show more ↓

Learn more ->

💎 Changed

Performance
Checkout performance improvements​

Introduced significant optimizations to checkout API calls, with the following changes:

  • Leveraging cached shipping rates for quicker calculations
  • Utilizing cached foreign exchange rates for multi-currency support
  • Elimination of multiple N+1 queries for checkout line items, reducing database load
  • Improvements to checkoutComplete execution time.
Payments
Braintree upgrade​

Upgraded Braintree integration to use Braintree version 4.21.0.

Performance
Asynchronous webhooks​

The following webhooks are now asynchronous: SELLER_AGREEMENT_ACKNOWLEDGED, PAYOUT_UPDATED, VENDOR_PAYOUT_UPDATED, PRODUCT_CREATED, and PRODUCT_UPDATED.

🚫 Deprecated

Inventory

quantity​

The quantity field has been deprecated on the following types, and replaced with a more explicit name quantityOrdered:

  • OrderLine
  • SecondaryOrderLine
  • NauticalOrderLine
  • NauticalSecondaryOrderLine
Inventory

quantityFulfilled​

The quantityFulfilled field has been deprecated on the following types:

  • NauticalOrder
  • NauticalOrderLine

Instead, retrieve quantityFulfilled from the underlying seller orderLine. To make this easier, nauticalOrder.lines now returns sellerOrderline with the underlying seller order lines.

🪲 Fixed

Inventory

Fixed an issue where stock could be deallocated from a warehouse different from the one it was originally allocated to.

Catalog

Fixed an issue that prevented editing prices for product variants.

: Staging

: Production

💎 Changed

API

This release contains internal improvements and maintenance updates.

: Staging

: Production

🪲 Fixed

Tax

Fixed an issue where taxes were not properly calculated on offers when shipping was added before the offer was accepted.

Orders

Fixed an issue that could allow multiple marketplace orders to be created for a single seller order, ensuring proper order tracking and preventing data inconsistencies.

: Staging

: Production

✨ New

Orders

Fulfillment decline workflow​

Introduced the ability to decline fulfillments, allowing sellers to reject fulfillment requests when they cannot complete them. Declined quantities are tracked separately and reflected in order totals and history.

Orders

Partial payment support​

Added support for partial payments on orders, enabling customers to make multiple payments toward a single order. This includes the ability to specify payment IDs when capturing or voiding payments.

Payouts

Automatic payout status updates​

Payout statuses now update automatically after orders are fulfilled, improving accuracy and reducing manual intervention.

Products

Sort order for microsite products​

Added support for custom sort ordering of products within microsites, giving marketplace operators more control over product display.

Webhooks

Additional webhook triggers​

Webhooks now fire for customer deletions, payout updates, and account confirmations, providing better integration capabilities.

Orders

Stock allocation events​

Stock allocation and deallocation events are now tracked and can be queried, improving inventory visibility and audit capabilities.

💎 Changed

Performance

Performance improvements​

Made several performance improvements across the platform:

  • Default currency lookups are now cached, reducing database queries.
  • Order queries use data loaders to eliminate redundant database calls.
  • Product availability and variant pricing calculations are more efficient.
  • Dashboard top category queries are significantly faster.

💎 Changed

Orders

Payment status resolution​

Payment status for orders is now resolved from the marketplace order level, providing a more accurate view of order payment state.

🪲 Fixed

Products

Fixed an issue where product variant pricing could be calculated incorrectly when seller agreements were involved.

Orders

Fixed several issues with refund handling:

  • Improved validation when approving refunds.
  • Corrected error messages for refund line updates.
  • Fixed issues preventing refund line updates in certain cases.
  • Auto-refund events now display correctly in order history.
Orders

Fixed cases where orders without marketplace order data could cause errors in order queries and resolvers.

Products

Fixed issues where product creation and updates didn't properly account for agreement commission types.

Tax

Fixed an issue where tax calculations were attempted even when taxes weren't applicable to an order.

Orders

Fixed currency handling when creating seller orders from marketplace orders in multi-currency environments.

Shipping

Updated ShipStation integration to use modern order status calculation methods.

Payments

Fixed an issue where payment plugins weren't always querying the correct seller-level credentials.

Checkout

Fixed the data type for Checkout.discount_type to correctly use VoucherTypeEnum instead of VoucherDiscountType.

Orders

Fixed stock recalculation issues that could occur when canceling orders.

Orders

Fixed an issue where invoice addresses weren't returned correctly.

🚫 Deprecated

Orders

Deprecated order mutations and fields​

Several legacy order mutations and fields have been deprecated in favor of new marketplace-aware alternatives. These deprecated mutations now perform no operations and will be removed in a future release.

Orders

Deprecated quantity_fulfilled field​

The quantity_fulfilled field on NauticalOrderLine has been deprecated. Use the fulfillment-related fields instead.

Was this page helpful?