Skip to main content
The Vendor API is the seller’s surface. Every route is scoped to one seller through the member authentication and x-seller-id mechanism described in API conventions — a seller can never read or mutate another seller’s data.

Account and team

MethodPathPurpose
GET POST/vendor/sellersRegistration lookup / create a seller account (public)
POST/vendor/sellers/selectSelect the active seller for the session
GET POST/vendor/sellers/meRetrieve / update the current seller
POST/vendor/sellers/:id/addressUpsert the seller address
POST/vendor/sellers/:id/payment-detailsUpsert payment details
POST DELETE/vendor/sellers/:id/professional-detailsUpsert / remove professional details
GET POST/vendor/sellers/:id/membersList / manage members
POST DELETE/vendor/sellers/:id/members/:member_idUpdate role / remove a member
GET/vendor/sellers/:id/members/meThe current member within this seller
GET/vendor/sellers/:id/members/invitesList pending invites
GET POST/vendor/members/meRetrieve / update the current member profile
POST/vendor/members/invites/acceptAccept an invite (public)

Products and offers

Products are shared master records: updates stage a change request rather than writing directly, and the list shows products the seller created plus published, unrestricted products.
MethodPathPurpose
GET POST/vendor/productsList / create a product (created as proposed)
GET POST DELETE/vendor/products/:idRetrieve / request an update / request deletion
GET/vendor/products/:id/previewPreview with pending changes applied
POST/vendor/products/:id/cancelWithdraw the pending change request
POST/vendor/products/:id/attributes/batchBatch add / update / remove attributes
GET POST/vendor/products/:id/variantsList / create variants
GET POST DELETE/vendor/products/:id/variants/:variant_idRetrieve / update / delete a variant
GET/vendor/product-variantsList variants across products
GET POST/vendor/offersList / create offers
GET POST DELETE/vendor/offers/:idRetrieve / update / delete an offer
POST/vendor/offers/batchBatch create offers
POST/vendor/offers/:id/inventory-items/batchLink inventory items to an offer

Catalog taxonomy (read-only)

GET /vendor/product-categories[/:id], /vendor/product-tags[/:id], /vendor/product-types[/:id], /vendor/product-attributes[/:id], /vendor/collections[/:id] — plus POST /vendor/product-categories/:id/products and POST /vendor/collections/:id/products to place own products.

Orders and fulfillment

MethodPathPurpose
GET/vendor/ordersList the seller’s orders
GET/vendor/orders/:idRetrieve an order
GET/vendor/orders/:id/previewPreview with pending edits
GET/vendor/orders/:id/changesList order changes
GET/vendor/orders/:id/commission-linesCommission charged on the order
POST/vendor/orders/:id/completeComplete the order
POST/vendor/orders/:id/cancelCancel the order
POST/vendor/orders/:id/fulfillmentsCreate a fulfillment
POST/vendor/orders/:id/fulfillments/:fulfillment_id/cancelCancel a fulfillment
POST/vendor/orders/:id/fulfillments/:fulfillment_id/mark-as-deliveredMark delivered
POST/vendor/orders/:id/fulfillments/:fulfillment_id/shipmentsCreate a shipment

Order edits, returns, claims, exchanges

Full RMA suites exist per domain, following the same action pattern Medusa uses (begin → stage item/shipping actions → request → confirm):
  • POST /vendor/order-edits + /:id/request|confirm|items|shipping-method sub-routes
  • GET/POST /vendor/returns + /:id/request-items|dismiss-items|receive-items|receive|shipping-method sub-routes
  • GET/POST /vendor/claims + /:id/claim-items|inbound|outbound sub-routes
  • GET/POST /vendor/exchanges + /:id/inbound|outbound sub-routes
  • GET /vendor/return-reasons[/:id], GET /vendor/refund-reasons[/:id]

Payments

MethodPathPurpose
GET/vendor/payments[/:id]List / retrieve payments
POST/vendor/payments/:id/captureCapture a payment
POST/vendor/payments/:id/refundRefund a payment
GET/vendor/payments/payment-providersList payment providers

Payouts

MethodPathPurpose
GET/vendor/payouts[/:id]Payout history
GET POST/vendor/payout-accountsRetrieve / create the payout account
POST/vendor/payout-accounts/:id/onboardingStart or refresh provider onboarding

Inventory and stock locations

MethodPathPurpose
GET POST/vendor/inventory-itemsList / create inventory items
GET POST DELETE/vendor/inventory-items/:idRetrieve / update / delete an item
GET POST/vendor/inventory-items/:id/location-levelsList / create location levels
POST DELETE/vendor/inventory-items/:id/location-levels/:location_idUpdate / delete a level
POST/vendor/inventory-items/location-levels/batchBatch update levels
GET POST/vendor/reservations[/:id]Manage reservations
GET POST/vendor/stock-locationsList / create stock locations
GET POST DELETE/vendor/stock-locations/:idRetrieve / update / delete a location
POST/vendor/stock-locations/:id/fulfillment-setsCreate a fulfillment set
POST/vendor/stock-locations/:id/fulfillment-providersLink fulfillment providers
POST/vendor/stock-locations/:id/sales-channelsLink sales channels

Shipping

MethodPathPurpose
GET POST/vendor/shipping-optionsList / create shipping options
GET POST DELETE/vendor/shipping-options/:idRetrieve / update / delete an option
POST/vendor/shipping-options/:id/rules/batchBatch manage option rules
GET/vendor/shipping-option-types[/:id]List option types
GET POST/vendor/shipping-profilesList / create profiles
GET POST DELETE/vendor/shipping-profiles/:idRetrieve / update / delete a profile
DELETE/vendor/fulfillment-sets/:idDelete a fulfillment set
POST/vendor/fulfillment-sets/:id/service-zonesCreate a service zone
GET POST DELETE/vendor/fulfillment-sets/:id/service-zones/:zone_idManage a service zone
GET/vendor/fulfillment-providersList fulfillment providers

Pricing, promotions, customers

MethodPathPurpose
GET POST/vendor/price-lists[/:id]Manage price lists (+ /:id/prices, /:id/prices/batch, /:id/products)
GET/vendor/price-preferences[/:id]Read price preferences
GET POST/vendor/promotions[/:id]Manage promotions (+ rule batch sub-routes and rule option lookups)
GET POST/vendor/campaigns[/:id]Manage campaigns (+ /:id/promotions)
GET/vendor/customers[/:id]The seller’s customers
POST/vendor/customers/:id/customer-groupsManage a customer’s groups
GET POST/vendor/customer-groups[/:id]Manage customer groups (+ /:id/customers)

Configuration and misc

MethodPathPurpose
GET POST/vendor/sales-channels[/:id]Manage sales channels (+ /:id/products)
GET/vendor/regions[/:id]Read regions
GET/vendor/currencies[/:code]Read currencies
GET/vendor/storesList stores (public)
GET/vendor/feature-flagsFeature flags (public)
POST/vendor/uploadsUpload files

Next steps

Store API

API Client