Skip to main content

463 posts tagged with "API"

View All Tags

: 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.

: Staging

: Production

✨ New

Inventory

Stock allocation webhooks

Added new webhooks for stock events:

  • STOCK_ALLOCATED: Triggered by new order stock allocation.
  • STOCK_DEALLOCATED: Triggered by order stock fulfillment or removal/cancellation of order line items.

Learn more ->

Microsites

Sort products in microsite

Added support for SortOrder when querying products in a microsite.

Orders

Refresh order tax

Added the nauticalOrderRefreshTaxes mutation and object to force a recalculation of taxes on a non-finalized marketplace order, such as an order in the draft, offer, or quote stage.

Learn more ->

💎 Changed

Performance

Performance improvements

Enhanced performance for faster loading times across various product catalog queries, product availability in multi-currency environments, and the orderFulfill mutation.

🚫 Deprecated

Payments

Seller order payment fields and actions

Various fields and mutations around payments on the seller order have been deprecated in order to build a more flexible and stable solution. Payments were, and continue to be, captured against the marketplace-level NauticalOrder, not the seller-level Order. The following components have been deprecated:

  • Order.paymentStatus, Order.paymentStatusDisplay, and Order.is_paid will now return values based on the underlying NauticalOrder.
  • Order.payments and Order.actions are deprecated and will now return an empty list. After a deprecation period, these will be removed.
  • Order.total_authorized, Order.total_captured, and Order.total_balance are deprecated and will now return 0. After a deprecation period, these will be removed.
  • orderCapture, orderMarkAsPaid, orderRefund, and orderVoid mutations are now non-operational. These mutations are now deprecated and will be removed after the deprecation period.
info

If you have built any custom functionality using these components, you will need to update your workflows to use the corresponding NauticalOrder instead.

🪲 Fixed

Integrations

Fixed an issue where apps with seller-level configurations, such as Shopify or WooCommerce, could experience issues syncing data.

Webhooks

Fixed an issue where the accountConfirm mutation did not trigger the CUSTOMER_UPDATED webhook.

Webhooks

Fixed an issue where the customerBulkDelete mutation did not trigger the CUSTOMER_DELETED webhook.

Webhooks

Fixed an issue where the PAYOUT_UPDATED and VENDOR_PAYOUT_UPDATED webhooks were not being triggered by edits to payouts.

Orders

Fixed an issue where cancelling a quote or offer order deleted the order instead of moving the order to the cancelled state.

Orders

Fixed an issue where multiple nauticalOrder records could be created in certain scenarios when finalizing an offer order.

Sales

Fixed an issue with the user query, where querying the checkout.discountType field returned an error.

Inventory

Fixed an issue where quantityAllocated was not being decreased after cancelling an order.

Inventory

Fixed an issue where the STOCK_ALLOCATED event was not created when an item was added to an order or quote from the storefront.

: Staging

: Production

💎 Changed

This release contains internal improvements and maintenance updates.

: Staging

: Production

✨ New

Tax

Manual tax recalculation

Added the ability to manually trigger tax recalculation from the dashboard, giving marketplace operators more control over tax updates for orders.

🪲 Fixed

Orders

Fixed an issue where orders could not be completed when the cart contained zero taxable line items, including shipping lines.

Orders

Fixed an issue in refund calculations that could return incorrect totals for sellers in certain scenarios.

Orders

Fixed an issue where updating refund lines with fixed amounts or percentages could produce incorrect results.

Orders

Fixed an issue where attempting to charge a marketplace order to a seller during refund line updates could fail.

Was this page helpful?