Webflow Orders API
The Webflow Orders API provides endpoints for listing, retrieving, and updating ecommerce orders, as well as fulfilling, unfulfilling, and refunding orders.
The Webflow Orders API provides endpoints for listing, retrieving, and updating ecommerce orders, as well as fulfilling, unfulfilling, and refunding orders.
openapi: 3.1.0
info:
title: Webflow Orders API
description: Webflow Data API v2 - Orders endpoints.
version: 2.0.0
contact:
name: Webflow Developer Relations
email: [email protected]
url: https://developers.webflow.com
termsOfService: https://webflow.com/legal/terms
license:
name: MIT
url: https://opensource.org/licenses/MIT
servers:
- url: https://api.webflow.com/v2
description: Webflow API v2
x-fern-server-name: Data API
security:
- OAuth2: []
- ApiKey: []
tags:
- name: Orders
description: Orders are the orders for your Webflow site.
paths:
/sites/{site_id}/orders:
get:
x-fern-sdk-group-name: orders
x-fern-sdk-method-name: list
security:
- OAuth2:
- ecommerce:read
operationId: list-orders
summary: Webflow List Orders
description: 'List all orders created for a given site.
Required scope | `ecommerce:read`
'
tags:
- Orders
parameters:
- name: site_id
in: path
description: Unique identifier for a Site
example: 580e63e98c9a982ac9b8b741
required: true
schema:
type: string
format: objectid
default:
- name: status
in: query
allowEmptyValue: true
description: Filter the orders by status
required: false
schema:
type: string
enum:
- pending
- refunded
- dispute-lost
- fulfilled
- disputed
- unfulfilled
- in: query
example: 0
allowEmptyValue: true
name: offset
description: Offset used for pagination if the results have more than limit records
required: false
schema:
type: integer
- in: query
allowEmptyValue: true
name: limit
example: 100
description: 'Maximum number of records to be returned (max limit: 100)'
required: false
schema:
type: integer
responses:
'200':
description: Request was successful
content:
application/json:
schema:
description: Results from order list
properties:
orders:
type: array
description: List of orders
items:
type: object
properties:
orderId:
type: string
readOnly: true
description: 'The order ID. Will usually be 6 hex characters, but can also be 9
hex characters if the site has a very large number of Orders.
Randomly assigned.
'
example: dfa-3f1
status:
type: string
example: unfulfilled
description: 'The status of the Order
'
enum:
- pending
- unfulfilled
- fulfilled
- disputed
- dispute-lost
- refunded
comment:
type: string
description: A comment string for this Order, which is editable by API user (not used by Webflow).
example: 'Customer requested gift wrapping and a personalized note saying: Happy Birthday, Ford! 🎉 Please ensure the item is packed with extra bubble wrap for safe transit.'
orderComment:
type: string
description: A comment that the customer left when making their Order
example: Please gift wrap with a personal note saying "Happy Birthday, Ford! 🎉
acceptedOn:
type: string
format: date-time
nullable: true
description: The ISO8601 timestamp that an Order was placed.
example: '2018-12-03T22:06:15.761Z'
fulfilledOn:
type: string
format: date-time
nullable: true
description: 'When an Order is marked as ''fulfilled'', this field represents the timestamp of the fulfillment in ISO8601 format. Otherwise, it is null.
'
example: '2018-12-03T22:06:15.761Z'
refundedOn:
type: string
format: date-time
nullable: true
description: When an Order is marked as 'refunded', this field represents the timestamp of the fulfillment in ISO8601 format. Otherwise, it is null.
example: '2018-12-03T22:06:15.761Z'
disputedOn:
type: string
format: date-time
nullable: true
description: 'When an Order is marked as ''disputed'', this field represents the timestamp of the fulfillment in ISO8601 format. Otherwise, it is null.
'
example: '2018-12-03T22:06:15.761Z'
disputeUpdatedOn:
type: string
format: date-time
nullable: true
description: 'If an Order has been disputed by the customer, this key will be set to the ISO8601 timestamp of the last update received. If the Order is not disputed, the key will be null.
'
example: '2018-12-03T22:06:15.761Z'
disputeLastStatus:
type: string
description: 'If an order was disputed by the customer, then this key will be set with the [dispute''s status](https://stripe.com/docs/api#dispute_object-status).
'
example:
enum:
- warning_needs_response
- warning_under_review
- warning_closed
- needs_response
- under_review
- charge_refunded
- won
- lost
nullable: true
customerPaid:
description: The total paid by the customer
properties:
unit:
description: The three-letter ISO currency code
type: string
example: USD
value:
description: The numeric value in the base unit of the currency
type: string
example: '5892'
string:
description: The user-facing string representation of the amount
type: string
example: $58.92
netAmount:
description: The net amount after application fees
properties:
unit:
description: The three-letter ISO currency code
type: string
example: USD
value:
description: The numeric value in the base unit of the currency
type: string
example: '5892'
string:
description: The user-facing string representation of the amount
type: string
example: $58.92
applicationFee:
description: The application fee assessed by the platform
properties:
unit:
description: The three-letter ISO currency code
type: string
example: USD
value:
description: The numeric value in the base unit of the currency
type: string
example: '5892'
string:
description: The user-facing string representation of the amount
type: string
example: $58.92
allAddresses:
description: All addresses provided by the customer during the ordering flow.
type: array
example:
- type: shipping
japanType: kanji
addressee: Custmerio Namen
line1: 123 Example Road
line2: Unit 3
city: Examplesville
state: CA
country: US
postalCode: 90012
- type: billing
japanType: kanji
addressee: Custmerio Namen
line1: 123 Example Road
line2: Unit 3
city: Examplesville
state: CA
country: US
postalCode: 90012
items:
description: A customer address
properties:
type:
description: The type of the order address (billing or shipping)
type: string
enum:
- shipping
- billing
example: shipping
japanType:
description: Represents a Japan-only address format. This field will only appear on orders placed from Japan.
type: string
enum:
- kana
- kanji
nullable: true
example: kanji
addressee:
description: Display name on the address
type: string
example: Customerio Namen
line1:
type: string
example: 123 Example Rd
description: The first line of the address
line2:
type: string
example: ''
description: The second line of the address
city:
type: string
example: Examplesville
description: The city of the address.
state:
type: string
example: CA
description: The state or province of the address
country:
type: string
example: US
description: The country of the address
postalCode:
type: string
example: 90012
description: The postal code of the address
shippingAddress:
description: The shipping address
properties:
type:
description: The type of the order address (billing or shipping)
type: string
enum:
- shipping
- billing
example: shipping
japanType:
description: Represents a Japan-only address format. This field will only appear on orders placed from Japan.
type: string
enum:
- kana
- kanji
nullable: true
example: kanji
addressee:
description: Display name on the address
type: string
example: Customerio Namen
line1:
type: string
example: 123 Example Rd
description: The first line of the address
line2:
type: string
example: ''
description: The second line of the address
city:
type: string
example: Examplesville
description: The city of the address.
state:
type: string
example: CA
description: The state or province of the address
country:
type: string
example: US
description: The country of the address
postalCode:
type: string
example: 90012
description: The postal code of the address
example:
type: shipping
japanType: kanji
addressee: Custmerio Namen
line1: 123 Example Road
line2: Unit 3
city: Examplesville
state: CA
country: US
postalCode: 90012
billingAddress:
description: The billing address
properties:
type:
description: The type of the order address (billing or shipping)
type: string
enum:
- shipping
- billing
example: shipping
japanType:
description: Represents a Japan-only address format. This field will only appear on orders placed from Japan.
type: string
enum:
- kana
- kanji
nullable: true
example: kanji
addressee:
description: Display name on the address
type: string
example: Customerio Namen
line1:
type: string
example: 123 Example Rd
description: The first line of the address
line2:
type: string
example: ''
description: The second line of the address
city:
type: string
example: Examplesville
description: The city of the address.
state:
type: string
example: CA
description: The state or province of the address
country:
type: string
example: US
description: The country of the address
postalCode:
type: string
example: 90012
description: The postal code of the address
example:
type: billing
japanType: kanji
addressee: Custmerio Namen
line1: 123 Example Road
line2: Unit 3
city: Examplesville
state: CA
country: US
postalCode: 90012
shippingProvider:
type: string
description: 'A string editable by the API user to note the shipping provider used (not used by Webflow).
'
example: USPS
nullable: true
shippingTracking:
type: string
description: 'A string editable by the API user to note the shipping tracking number for the order (not used by Webflow).
'
example: RA401558525US
nullable: true
shippingTrackingURL:
type: string
format: uri
example: shipping.test.com/RA401558525US
nullable: true
customerInfo:
description: An object with the keys `fullName` and `email`.
properties:
fullName:
description: The full name of the Customer
type: string
example: Customerio Namen
email:
description: The Customer's email address
type: string
format: email
example: [email protected]
purchasedItems:
type: array
description: An array of all things that the Customer purchased.
items:
description: An Item that was purchased
properties:
count:
type: number
example: 1
description: Number of Item purchased.
rowTotal:
description: The total for the row
properties:
unit:
description: The three-letter ISO currency code
type: string
example: USD
value:
description: The numeric value in the base unit of the currency
type: string
example: '5892'
string:
description: The user-facing string representation of the amount
type: string
example: $58.92
productId:
type: string
format: objectid
description: The unique identifier for the Product
readOnly: true
example: 5eb9fd05caef491eb9757183
productName:
type: string
description: User-facing name of the Product
example: White Cup
productSlug:
type: string
description: Slug for the Product
example: white-cup
variantId:
type: string
description: Identifier for the Product Variant (SKU)
example: 5eb9fcace279761d8199790c
variantName:
type: string
description: User-facing name of the Product Variant (SKU)
example: Red
variantSlug:
type: string
description: Slug for the Product Variant (SKU)
example: red
variantSKU:
description: The user-defined custom SKU of the Product Variant (SKU)
type: string
example: red-medium
variantImage:
properties:
url:
description: The hosted location for the Variant's image
type: string
format: uri
example: https://dev-assets.website-files.com/5bfedb42bab0ad90fa7dac03/5bfedb42bab0ad90fa7dad2e_5bb3d019b3465c6e8a324dd7_458036-unsplas.png
file:
type: object
properties:
size:
description: The image size in bytes
type: number
example: 21064
originalFileName:
description: the original name of the image
type: string
example: cup.jpg
createdOn:
description: The creation timestamp of the image
type: string
format: date-time
example: '2018-12-03T22:06:15.761Z'
contentType:
description: The MIME type of the image
format: mime-type
type: string
example: image/jpeg
width:
description: The image width in pixels
type: integer
example: 640
height:
description: The image height in pixels
type: integer
example: 480
variants:
description: Variants of the supplied image
type: array
items:
type: object
properties:
url:
description: The hosted location for the Variant's image
format: uri
type: string
example: https://dev-assets.website-files.com/5bfedb42bab0ad90fa7dac03/5bfedb42bab0ad90fa7dad2e_5bb3d019b3465c6e8a324dd7_458036-example.png
originalFileName:
type: string
example: cup.jpg
size:
description: The image size in bytes
type: number
example: 12040
width:
description: The image width in pixels
type: integer
example: 320
height:
description: The image height in pixels
type: integer
example: 240
variantPrice:
description: The price corresponding to the variant
properties:
unit:
description: The three-letter ISO currency code
type: string
example: USD
value:
description: The numeric value in the base unit of the currency
type: string
example: '5892'
string:
description: The user-facing string representation of the amount
type: string
example: $58.92
weight:
type: number
example: 5
default:
nullable: true
description: The physical weight of the variant if provided, or null
width:
type: number
example: 4
nullable: true
default:
description: The physical width of the variant if provided, or null
height:
type: number
example: 7
nullable: true
default:
description: The physical height of the variant if provided, or null
length:
type: number
example: 2
nullable: true
default:
description: The physical length of the variant if provided, or null
purchasedItemsCount:
type: number
description: The sum of all 'count' fields in 'purchasedItems'.
example: 1
stripeDetails:
description: An object with various Stripe IDs, useful for linking into the stripe dashboard.
properties:
subscriptionId:
type: string
format: objectid
example: sub_1J6xwG2eZvKYlo2CXu9Zt0Tn
nullable: true
description: Stripe-generated identifier for the Subscription
paymentMethod:
type: string
format: objectid
example: pm_1J6xwG2eZvKYlo2CXu9Zt0Tn
nullable: true
description: Stripe-generated identifier for the PaymentMethod used
paymentIntentId:
type: string
format: objectid
example: pi_1J6xwG2eZvKYlo2CXu9Zt0Tn
nullable: true
description: Stripe-generated identifier for the PaymentIntent, or null
customerId:
type: string
format: objectid
example: cus_E5ajeiWNHEtcAW
description: Stripe-generated customer identifier, or null
nullable: true
chargeId:
type: string
format: objectid
description: Stripe-generated charge identifier, or null
example: ch_1DdPYQKMjGA7k9mI2AKiBY6u
nullable: true
disputeId:
type: string
format: objectid
description: Stripe-generated dispute identifier, or null
example:
nullable: true
refundId:
type: string
format: objectid
description: Stripe-generated refund identifier, or null
example:
nullable: true
refundReason:
type: string
description: Stripe-generated refund reason, or null
example: requested_by_customer
nullable: true
stripeCard:
description: 'Details on the card used to fulfill this order, if this order was finalized with Stripe.
'
properties:
last4:
type: string
description: The last 4 digits on the card as a string
example: '4242'
brand:
type: string
description: The card's brand (ie. credit card network)
example: Visa
enum:
- Visa
- American Express
- MasterCard
- Disco
# --- truncated at 32 KB (407 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/webflow/refs/heads/main/openapi/webflow-orders-openapi.yml