---
title: "Update Order"
method: PUT
path: "/orders/{id}"
tags: ["Order"]
---

# Update Order

`PUT /orders/{id}`

Update a specific order in the current workspace. [External orders](https://developers.myclickfunnels.com/docs/orders#external-orders) have different updateable fields than orders that have a regular payment processor like Payments AI or Stripe.

## Path parameters

- `id` string, required

## Request body

- object
  - `order` OrderParametersUpdate — Update parameters for orders. All fields are optional. Most fields are only applicable to external orders (orders with `payment_processor: external`).
    - `notes` string, nullable — Your internal note about the order. This will be visible in ClickFunnels admin orders-related sections.
    - `billing_status` string — (External orders only) The billing status reflects the status of the invoice of an order. For external orders, the billing status can be one of: `pending`, `paid`, `unpaid`, `voided` and `refunded`.
    - `service_status` string — (External orders only) The service status reflects the activity state of the order. For external one-time orders possible service statuses are `pending` or `completed`. For external subscription orders possible statuses are `pending`, `active`, `churned`, `canceled`, `completed`, `paused`.
    - `external_id` string, nullable — (External orders only) An external ID, e.g., a payment provider's ID or an ID managed by the client internally.
    - `shipping_address_first_name` string, nullable — (External orders only) The first name of the recipient's shipping address.
    - `shipping_address_last_name` string, nullable — (External orders only) The last name of the recipient's shipping address.
    - `shipping_address_organization_name` string, nullable — (External orders only) The organization name of the recipient's shipping address.
    - `shipping_address_phone_number` string, nullable — (External orders only) The phone number of the recipient's shipping address.
    - `shipping_address_street_one` string, nullable — (External orders only) The main street information of the shipping address, including the street name and number.
    - `shipping_address_street_two` string, nullable — (External orders only) Additional street information for the shipping address, like entrance information and apartment numbers.
    - `shipping_address_city` string, nullable — (External orders only) The city of the shipping address.
    - `shipping_address_region` string, nullable — (External orders only) The region of the shipping address, like state or province.
    - `shipping_address_country` string, nullable — (External orders only) The country of the shipping address.
    - `shipping_address_postal_code` string, nullable — (External orders only) The postal code of the shipping address.
    - `billing_address_street_one` string, nullable — (External orders only) The main street information of the billing address, including the street name and number.
    - `billing_address_street_two` string, nullable — (External orders only) Additional street information of the billing address, like entrance information and apartment numbers.
    - `billing_address_city` string, nullable — (External orders only) The city of the billing address.
    - `billing_address_region` string, nullable — (External orders only) The region of the billing address, like state or province.
    - `billing_address_country` string, nullable — (External orders only) The billing address country.
    - `billing_address_postal_code` string, nullable — (External orders only) Billing address postal (ZIP) code.
    - `activated_at` string, date-time, nullable — (External subscription orders only) Date the subscription was activated.
    - `canceled_at` string, date-time, nullable — (External subscription orders only) Date the order was canceled.
    - `canceled_by` string, nullable — (External subscription orders only) Who canceled the order.
    - `cancel_reason` string, nullable — (External subscription orders only) The reason code for the cancelation. External orders accept the same cancelation reasons as Stripe: `customer_service`, `low_quality`, `missing_features`, `other`, `switched_service`, `too_complex`, `too_expensive`, `unused`
    - `cancel_description` string, nullable — (External subscription orders only) A free-text description of the cancellation reason.
    - `churned_at` string, date-time, nullable — (External subscription orders only) Date the subscription churned.
    - `next_charge_at` string, date-time, nullable — (External subscription orders only) Date of the next scheduled charge.

## Response `200`

OK

- OrderAttributes — Base order attributes used in nested responses (e.g., within invoice responses). This is a subset of the full OrderAttributes schema.
  - `id` integer — ClickFunnels Order ID
  - `public_id` string — ClickFunnels Order public ID
  - `order_number` string, nullable — A sequential number for bookkeeping purposes increased by 1 for each new order in a workspace starting from
  - `total_amount` string, nullable — The total amount of the order, considering taxes and discounts.
  - `origination_channel_id` integer — Origination Channel ID
  - `origination_channel_type` string, nullable — Origination Channel Type
  - `notes` string, nullable — Your internal note about the order. This will be visible in ClickFunnels admin orders-related sections.
  - `live_mode` boolean — Indicates if the Order will use a live payment gateway and process real credit cards.
  - `in_trial` boolean — In Trial
  - `billing_status` string — The billing status reflects the status of the invoice of an order. Billing status can be one of the following for Payments AI and Stripe orders: `pending`, `draft`, `paid`, `unpaid`, `partially-refunded`, `refunded`, `voided`, `disputed`, `past-due`. For external orders, the billing status can be one of: `pending`, `paid`, `unpaid`, `voided` and `refunded`.
  - `service_status` string — The service status reflects the activity state of the order. For external one-time orders possible service statuses are `pending` or `completed`. For external subscription orders possible statuses are `pending`, `active`, `churned`, `canceled`, `completed`, `paused`.
  - `order_type` string — Order Type
  - `next_charge_at` string, nullable — Next Charge At
  - `trial_end_at` string, nullable — Trial End At
  - `tag_ids` integer[] — Order Tags
  - `activated_at` string, nullable — Date Activated
  - `canceled_at` string, nullable — Order Canceled At
  - `canceled_by` string, nullable — Order Canceled By
  - `cancel_reason` string, nullable — The reason code for the cancelation. Possible codes for external orders are: `customer_service`, `low_quality`, `missing_features`, `other`, `switched_service`, `too_complex`, `too_expensive`, `unused`
  - `cancel_description` string, nullable — A free-text description of the cancellation reason.
  - `churned_at` string, nullable — Churned At
  - `shipping_address_first_name` string, nullable — The first name of the recipient's shipping address.
  - `shipping_address_last_name` string, nullable — The last name of the recipient's shipping address.
  - `shipping_address_organization_name` string, nullable — The organization name of the recipient's shipping address.
  - `shipping_address_phone_number` string, nullable — The phone number of the recipient's shipping address.
  - `shipping_address_street_one` string, nullable — The main street information of the shipping address, including the street name and number.
  - `shipping_address_street_two` string, nullable — Additional street information for the shipping address, like entrance information and apartment numbers.
  - `shipping_address_city` string, nullable — The city of the shipping address.
  - `shipping_address_region` string, nullable — The region of the shipping address, like state or province.
  - `shipping_address_country` string, nullable — The country of the shipping address.
  - `shipping_address_postal_code` string, nullable — Postal Code
  - `billing_address_street_one` string, nullable — The main street information of the billing address, including the street name and number.
  - `billing_address_street_two` string, nullable — Additional street information of the billing address, like entrance information and apartment numbers.
  - `billing_address_city` string, nullable — The city of the billing address.
  - `billing_address_region` string, nullable — The region of the billing address, like state or province.
  - `billing_address_country` string, nullable — The billing address country.
  - `billing_address_postal_code` string, nullable — Billing address postal (ZIP) code.
  - `recurring_invoices_paid_count` integer — The number of paid invoices with recurring charges for this order. Useful for detecting first or renewal payments based on the payload, if you can't use webhooks. E.g., in Zapier, filter by recurring_invoices_paid_count == 1 for first payments.
  - `origination_channel_name` string, nullable — Origination Channel Name
  - `origination_channel_public_id` string, nullable — The obfuscated public ID of the origination channel
  - `contact` ContactBaseAttributes — Contacts
    - `id` integer — Contact ID
    - `public_id` string — Contact public ID
    - `workspace_id` integer — Workspace ID
    - `anonymous` integer, nullable — Anonymous
    - `email_address` string, nullable — The contact's email address. It is currently not expected to be null and is the main identifier for a contact.
    - `first_name` string, nullable — First name
    - `last_name` string, nullable — Last name
    - `phone_number` string, nullable — Phone number
    - `time_zone` string, nullable — The human-readable time zone, usually set dynamically by the app for the contact, for example, during opt-in. Read more about time zones and how to map them back to the TZ standard in [our Time Zones guide.](https://dash.readme.com/project/cf2/v2/docs/timezones).
    - `uuid` string — UUID
    - `unsubscribed_at` string, nullable — Unsubscribed
    - `last_notification_email_sent_at` string, nullable — Last notification email sent
    - `email_suppression_reason` string, nullable — The reason the contact's email address is suppressed from receiving emails. Null when no suppression exists.
    - `is_active` boolean — Whether the contact is active. A contact is considered active when they have a valid email address, have not unsubscribed, have not been deleted, and have no email suppression reason.
    - `fb_url` string, nullable — Facebook URL
    - `twitter_url` string, nullable — Twitter URL
    - `instagram_url` string, nullable — Instagram URL
    - `linkedin_url` string, nullable — LinkedIn URL
    - `website_url` string, nullable — Website URL
    - `created_at` string, date-time — Date added
    - `updated_at` string, date-time — Last updated
    - `tags` object[], nullable — Contact Tags
      - `id` integer — Tag ID
      - `public_id` string — Tag public ID
      - `name` string — Name
      - `color` string — Color
      - `applied_at` string, nullable — The datetime the tag was applied by creating a Contacts::AppliedTag that maps the tag to the contact.
    - `custom_attributes` object — A dynamic key-value pair object where both the key and value are strings. Custom attributes are usually added to the contact when they submit forms that contain custom contact attributes. But you can also add them via the API using the modifying endpoints like Create/Update/Upsert Contact.
    - `visits` VisitsAttributes — Collection of visit tracking records for a contact, including first visit, last visit, and last visit with UTM parameters
      - `first_visit` VisitAttributes — Visit tracking information including UTM parameters and device data
        - `uuid` string — Unique identifier for the visit
        - `utm_source` string, nullable — UTM source parameter from the visit URL
        - `utm_medium` string, nullable — UTM medium parameter from the visit URL
        - `utm_campaign` string, nullable — UTM campaign parameter from the visit URL
        - `utm_term` string, nullable — UTM term parameter from the visit URL
        - `utm_content` string, nullable — UTM content parameter from the visit URL
        - `ip` string, nullable — IP address of the visitor
        - `user_agent` string, nullable — User agent string from the visitor's browser
        - `referrer` string, nullable — HTTP referrer URL
        - `referring_domain` string, nullable — Domain extracted from the referrer URL
        - `landing_page` string, nullable — The first page URL visited in this session
        - `browser` string, nullable — Browser name detected from user agent
        - `os` string, nullable — Operating system detected from user agent
        - `device_type` string, nullable — Device type (e.g., desktop, mobile, tablet)
        - `started_at` string, date-time, nullable — Timestamp when the visit session started
        - `created_at` string, date-time — Timestamp when the visit record was created
        - `updated_at` string, date-time — Timestamp when the visit record was last updated
      - `last_visit` VisitAttributes — Visit tracking information including UTM parameters and device data
        - `uuid` string — Unique identifier for the visit
        - `utm_source` string, nullable — UTM source parameter from the visit URL
        - `utm_medium` string, nullable — UTM medium parameter from the visit URL
        - `utm_campaign` string, nullable — UTM campaign parameter from the visit URL
        - `utm_term` string, nullable — UTM term parameter from the visit URL
        - `utm_content` string, nullable — UTM content parameter from the visit URL
        - `ip` string, nullable — IP address of the visitor
        - `user_agent` string, nullable — User agent string from the visitor's browser
        - `referrer` string, nullable — HTTP referrer URL
        - `referring_domain` string, nullable — Domain extracted from the referrer URL
        - `landing_page` string, nullable — The first page URL visited in this session
        - `browser` string, nullable — Browser name detected from user agent
        - `os` string, nullable — Operating system detected from user agent
        - `device_type` string, nullable — Device type (e.g., desktop, mobile, tablet)
        - `started_at` string, date-time, nullable — Timestamp when the visit session started
        - `created_at` string, date-time — Timestamp when the visit record was created
        - `updated_at` string, date-time — Timestamp when the visit record was last updated
      - `last_visit_with_utm` VisitAttributes — Visit tracking information including UTM parameters and device data
        - `uuid` string — Unique identifier for the visit
        - `utm_source` string, nullable — UTM source parameter from the visit URL
        - `utm_medium` string, nullable — UTM medium parameter from the visit URL
        - `utm_campaign` string, nullable — UTM campaign parameter from the visit URL
        - `utm_term` string, nullable — UTM term parameter from the visit URL
        - `utm_content` string, nullable — UTM content parameter from the visit URL
        - `ip` string, nullable — IP address of the visitor
        - `user_agent` string, nullable — User agent string from the visitor's browser
        - `referrer` string, nullable — HTTP referrer URL
        - `referring_domain` string, nullable — Domain extracted from the referrer URL
        - `landing_page` string, nullable — The first page URL visited in this session
        - `browser` string, nullable — Browser name detected from user agent
        - `os` string, nullable — Operating system detected from user agent
        - `device_type` string, nullable — Device type (e.g., desktop, mobile, tablet)
        - `started_at` string, date-time, nullable — Timestamp when the visit session started
        - `created_at` string, date-time — Timestamp when the visit record was created
        - `updated_at` string, date-time — Timestamp when the visit record was last updated
  - `affiliate` object, nullable — The affiliate who will receive a commission for the order
    - `name` string — The name of the affiliate. Can be a combination of first name, last name and the affiliate email.
    - `email` string, nullable — The email address of the affiliate.
  - `referral_code` object, nullable — The referral code used to associate an order with an affiliate.
    - `code` string — The referral code value visible by users. It must be unique and can contain only letters, numbers, hyphens, and underscores.
    - `default` boolean, nullable — Whether this code is the default code for the affiliate.
  - `order_page` object, nullable — Page
    - `id` integer — Page ID
    - `public_id` string — The public identifier of the page
    - `name` string — Page name
  - `workspace_id` integer — ClickFunnels Workspace ID
  - `contact_id` integer — The contact associated with the order.
  - `currency` string — The currency for the order. Automatically set to the workspace's configured currency when creating an order through the API. Defaults to USD if the workspace has no currency configured.
  - `page_id` integer, nullable — Page ID
  - `tax_amount` string, nullable — Tax Amount
  - `billing_payment_method_id` string, nullable — Payment Method
  - `funnel_name` string, nullable — Funnel Name
  - `discount_ids` integer[] — Discounts
  - `workspace_sharing_id` string, nullable — Workspace Sharing ID
  - `paid_until` string, date-time, nullable — The date until which the subscription order is paid.
  - `resource_install_intent` string, nullable — Resource install intent for the order.
  - `created_at` string, date-time, nullable — Date Ordered
  - `updated_at` string, date-time, nullable — Date Updated
  - `external_id` string, nullable — An external ID, e.g., a payment provider's ID or an ID managed by the client internally
  - `payment_processor` string, nullable — The payment processor of the order. Currently, it can be one of `payments_ai` and `external`.
  - `phone_number` string, nullable — Phone Number
  - `page_name` string, nullable — Page Name. Want to filter by it? See our <i><u><a href="https://developers.myclickfunnels.com/docs/filtering-by-page" target="_blank">help guide on that topic</a><u><i>.
  - `contact_groups` object[], nullable — Contact Groups
    - `id` integer — Group ID
    - `public_id` string — Group Public ID
    - `name` string — Name
  - `workspace` WorkspaceAttributes — Workspaces
    - `id` integer — Workspace ID
    - `public_id` string, nullable — Workspace public ID
    - `team_id` integer — Team ID
    - `name` string — Workspace Name
    - `subdomain` string — Subdomain
    - `created_at` string, date-time, nullable — Added
    - `updated_at` string, date-time, nullable — Updated
  - `segments` object[], nullable — Segments
    - `id` integer — Segment ID
    - `public_id` string — Segment public ID
    - `name` string — Name
  - `line_items` OrdersLineItemAttributes[], nullable — Order Line Items
    - `id` integer — Line item ID
    - `public_id` string, nullable — Line item public ID
    - `order_id` integer — Order ID
    - `quantity` integer, nullable — Quantity
    - `prorated` string, nullable — Prorate invoice
    - `created_at` string, nullable — Added
    - `updated_at` string, nullable — Updated
    - `original_product` object — Product
      - `id` integer — ID
      - `public_id` string, nullable — Product public ID
      - `name` string — Product name
    - `products_price` ProductsPriceMinimal — Minimal price representation used wherever a price appears as a nested attribute (line items, upgrade/downgrade discovery).
      - `id` integer
      - `public_id` string, nullable
      - `name` string, nullable
      - `key` string, nullable
      - `amount` string, nullable
      - `currency` string, nullable
      - `duration` integer, nullable
      - `interval` string, nullable
      - `interval_count` integer, nullable
    - `products_variant` object, nullable — Product Variant
      - `id` integer — ID
      - `public_id` string, nullable — Variant public ID
      - `name` string — Name
      - `description` string, nullable — The description of the variant. The description of the **default variant** is the user-facing description of the `Product`.
      - `sku` string, nullable — SKU
  - `previous_line_item` string, nullable — An additional field, only available in outgoing subscription.upgrade and subscription.downgrade webhooks. It enables you to identify the former line item which is otherwise removed from the regular subscription line items when an upgrade or downgrade happens. Thus you can see the data of the previously active subscription. This property will be null in regular API requests.
  - `visits` OrderVisitsAttributes — Visit tracking records for orders and invoices. Contains last_visit and last_visit_with_utm only (first_visit belongs to the contact).
    - `last_visit` VisitAttributes — Visit tracking information including UTM parameters and device data
      - `uuid` string — Unique identifier for the visit
      - `utm_source` string, nullable — UTM source parameter from the visit URL
      - `utm_medium` string, nullable — UTM medium parameter from the visit URL
      - `utm_campaign` string, nullable — UTM campaign parameter from the visit URL
      - `utm_term` string, nullable — UTM term parameter from the visit URL
      - `utm_content` string, nullable — UTM content parameter from the visit URL
      - `ip` string, nullable — IP address of the visitor
      - `user_agent` string, nullable — User agent string from the visitor's browser
      - `referrer` string, nullable — HTTP referrer URL
      - `referring_domain` string, nullable — Domain extracted from the referrer URL
      - `landing_page` string, nullable — The first page URL visited in this session
      - `browser` string, nullable — Browser name detected from user agent
      - `os` string, nullable — Operating system detected from user agent
      - `device_type` string, nullable — Device type (e.g., desktop, mobile, tablet)
      - `started_at` string, date-time, nullable — Timestamp when the visit session started
      - `created_at` string, date-time — Timestamp when the visit record was created
      - `updated_at` string, date-time — Timestamp when the visit record was last updated
    - `last_visit_with_utm` VisitAttributes — Visit tracking information including UTM parameters and device data
      - `uuid` string — Unique identifier for the visit
      - `utm_source` string, nullable — UTM source parameter from the visit URL
      - `utm_medium` string, nullable — UTM medium parameter from the visit URL
      - `utm_campaign` string, nullable — UTM campaign parameter from the visit URL
      - `utm_term` string, nullable — UTM term parameter from the visit URL
      - `utm_content` string, nullable — UTM content parameter from the visit URL
      - `ip` string, nullable — IP address of the visitor
      - `user_agent` string, nullable — User agent string from the visitor's browser
      - `referrer` string, nullable — HTTP referrer URL
      - `referring_domain` string, nullable — Domain extracted from the referrer URL
      - `landing_page` string, nullable — The first page URL visited in this session
      - `browser` string, nullable — Browser name detected from user agent
      - `os` string, nullable — Operating system detected from user agent
      - `device_type` string, nullable — Device type (e.g., desktop, mobile, tablet)
      - `started_at` string, date-time, nullable — Timestamp when the visit session started
      - `created_at` string, date-time — Timestamp when the visit record was created
      - `updated_at` string, date-time — Timestamp when the visit record was last updated

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found

---

[API](https://skmtc.net/myclickfunnels/apis/clickfunnels-api.md) · [All operations](https://skmtc.net/myclickfunnels/apis/clickfunnels-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/myclickfunnels/clickfunnels-api/revisions/ae6313eaa176/schema)
