---
title: "Update order state"
method: PUT
path: "/orders/{uuid}"
tags: ["Orders"]
---

# Update order state

`PUT /orders/{uuid}`

## Path parameters

- `uuid` string, required

## Headers

- `Sequra-Merchant-Id` string, required

## Request body

- OrderSolicitation
  - `order` object
    - `state` 'on_hold' | 'confirmed' | '' | 'null', nullable — String containing state of the order. Allowed values are null (indicating no change) and "confirmed"
    - `merchant` object, required — Fields describing the merchant and the store integration
      - `id` string, required — Merchant identifier. Also called merchant_ref. Example: "s1"
      - `notify_url` string — SeQura will make an IPN POST to this URL when the order is approved. The shop should use this signal to confirm the order. Example: "https://my.shop.tld/checkout/sequra-ipn/8765432"
      - `notification_parameters` object — Optional name/value pairs that will be included in the IPN POST. Example: {"cart":"1234", "signature":"K6hDNSwfcJjF+suAJqXAjA=="}
      - `return_url` string — The shopper will be redirected to this URL once the shop has confirmed the order after IPN notification. This field is recommended when using IPN. Example: "https://my.shop.tld/checkout/confirmed"
      - `abort_url` string — URL for a page where the shopper can pick another payment method. Used when part-payment fails to get credit card details. Example: "https://my.shop.tld/checkout/payment"
      - `options` object — Features activated by this merchant in this request
        - `has_jquery` boolean — Set to true if $ is jQuery 1.7 or above, false otherwise. Defaults to true
        - `uses_shipped_cart` boolean — True if the merchant wishes to use the API option that explicitly communicates if some items will be' ' shipped immediately after confirmation (see page Shipping items on checkout in the sidebar).Defaults to false
        - `addresses_may_be_missing` boolean — If true, the order may be missing delivery address and invoice address
        - `immutable_customer_data` boolean — True if the merchant wishes to lock the provided shopper's personal data. Shoppers will not be able' ' to edit this information if provided by the merchant. Defaults to false
      - `events_webhook` object — Fields describing how the merchant wants to receive webhook events.
        - `url` string — SeQura will make a POST to this URL when an event happens for that order after confirmation. Example: "https://my.shop.tld/checkout/sequra-events/8765432"
        - `parameters` object — Optional name/value pairs that will be included in the webhook event POST. Example: {"internal_identifier":"1234", "signature":"K6hDNSwfcJjF+suAJqXAjA=="}
      - `timeout` object — Timeout configuration. If this section is present, the identification form will display a count-down' ' (MM:SS) to this time. When it reaches 0:00, the form will be disabled
        - `timeout_url` string — If the identification form is still visible at the timeout time the shopper will be redirected to this URL after a short delay during which the form displays an error message. Example: "https://my.shop.tld/checkout/sequra-timeout/8765432"
        - `timeout_at` string — After this time, the merchant may not be willing or able to sell the cart contents to the shopper. Example: "2017-06-30T13:50:00+02:00". (ISO8601 formatted timestamp)
    - `merchant_reference` object — Order id(s) used by the merchant
      - `order_ref_1` string — Merchant reference 1. Example: "ZXCV1234"
      - `order_ref_2` string — Merchant reference 2. Example: "0080-1234-4343-5353"
    - `cart` object — Fields describing the shopping cart
      - `currency` string — Name of currency used on the purchase. Example: "EUR"
      - `gift` boolean — Set to true if shopper has indicated that this is a gift
      - `order_total_with_tax` integer — Total value with tax of the items listed below. Example: 5097
      - `cart_ref` string — Shop's unique id for this basket. Useful if shopper has trouble checking out. Example: "123"
      - `created_at` string, date_time — When shopper put the first item in the cart. Example: "2013-10-18T12:25:20+01:00"
      - `updated_at` string, date_time — When shopper put the last item in the cart. Example: "2013-10-18T12:25:20+01:00"
      - `items` union
        - ItemProduct
          - `type` 'product'
          - `reference` string, required — A public product id for this item. Example: "12-123-1234"
          - `name` string, required — A description to include in the payment instructions. Example: "Leather Case (iPod nano) - Negro / Chocolate"
          - `description` string — Product description. Will not be shown to shopper. Useful against fraud. Example: "Este estuche de cuero de última moda ..."
          - `category` string — Name of category. Will not be shown to shopper. Useful against fraud. Example: "ipod-accesorios"
          - `price_with_tax` integer, required — Price with tax for one item. Example: 3030
          - `quantity` integer, required — The number of items ordered by the shopper. Example: 2
          - `total_with_tax` integer, required — Price with tax for the amount in the order. Due to rounding, this might not be exactly quantity × price_with_tax. Example: 6060
          - `downloadable` boolean, required — Can the buyer access or consume the product without a physical delivery? PDFs, e-tickets, software, etc are downloadable. Example: false
        - ItemService
          - `type` 'service', required
          - `reference` string, required — A public id for this service. Example: "NETWORKS-ADMIN-101"
          - `name` string, required — A name to describe this service. Might be displayed in the payment instructions. Example: "Networks Administrator Course"
          - `description` string — Service description. Will not be shown to shopper. Useful against fraud
          - `category` string — Name of category. Will not be shown to shopper. Useful against fraud. Example: "ipod-accesorios"
          - `price_with_tax` integer, required — Price with tax for one item. Example: 3030
          - `quantity` integer, required — The number of items ordered by the shopper. Example: 1
          - `total_with_tax` integer, required — Price with tax for the amount in the order. Due to rounding, this might not be exactly quantity × price_with_tax. Example: 75020
          - `downloadable` boolean, required — True for services that can be fully (or sufficiently) enjoyed without a physical delivery. For instance, a course with only digital material
        - ItemHandling
          - `type` 'handling', required
          - `reference` string, required — A unique code that refers to this item. Does not have to exist in the shop catalogue. Example: "seur24"
          - `name` string, required — A name to describe this item. More specific is better, i.e. prefer "Correos" to "Envío". Example: "SEUR entrega en 24 horas"
          - `total_with_tax` integer, required — Price with tax for this handling service. Example: 242
        - ItemOtherPayment
          - `type` 'other_payment', required
          - `reference` string, required — A code that refers to this "other" payment. (An "other" payment means that the shopper has paid part of the cart using some other means of payment, like cash or credit card.) Example: "CASH"
          - `name` string, required — A name to describe this payment. Example: "Paid in cash"
          - `total_with_tax` integer, required — Amount that this payment changes the cart value with tax. Should use opposite sign of any item it pays for. Example: -750
        - ItemDiscount
          - `type` 'discount', required
          - `reference` string, required — A unique code that refers to this discount. Can be the discount code. Example: "HALFOFF"
          - `name` string, required — A name to describe this discount. Might be displayed in the payment instructions. Example: "50 % off the full basket!"
          - `total_with_tax` integer, required — Amount that this discount changes the cart value with tax. Should be negative. Example: -750
    - `customer` object — Fields describing the customer
      - `given_names` string — Customer given names. Example: "Maria José"
      - `surnames` string — Customer surnames. Example: "Barroso Rajoy"
      - `email` string, email — Customer email. Example: "nisse@example.com"
      - `logged_in` union — Is the customer logged in? Use 'unknown' if your platform cannot check whether the user is logged in or not
        - 'unknown'
        - boolean
      - `language_code` string — Customer language code. Example: "es-ES"
      - `ip_number` string — Customer ip number. Example: "12.23.34.45"
      - `user_agent` string — Customer browser. Example: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) AppleWebKit/537.36"
      - `date_of_birth` string, date — Customer date of birth in ISO-8601 format. Example: "1980-01-20"
      - `nin` string — Customer's national identity number. For Spanish DNI, please include final letter. Example: "13003009L"
      - `created_at` string, date_time — Date when this customer was added to the shop database, in ISO-8601 format. Example: "2013-08-15T21:07:37+01:00"
      - `updated_at` string, date_time — Date when this customer was updated in the shop database, in ISO-8601 format. Example: "2013-09-27T16:50:25+01:00"
      - `previous_orders` object[] — List of customer's previous orders in this shop
    - `delivery_method` object — Delivery method used on the purchase
      - `name` string — Name of the delivery method. Example: "SEUR24"
      - `days` string — Days it takes to deliver the goods. Example: "¡Entrega día siguiente!"
      - `provider` string — Company or agent that performs the delivery. Example: "Correos"
      - `home_delivery` boolean — If goods are delivered to the buyer's home or office and not to a pick-up place. Example: true
    - `delivery_address` object — Fields describing the delivery address
      - `given_names` string — Shopper's given names for delivery. Example: "Maria José"
      - `surnames` string — Shopper's surnames for delivery. Example: "Barroso Rajoy"
      - `company` string — Shopper company name
      - `address_line_1` string — Delivery address line 1. Example: "C/ Aragó 383"
      - `address_line_2` string — Delivery address line 2. Example: "5º"
      - `postal_code` string — Delivery address address postal code. Example: "08013"
      - `city` string — Delivery address city. Example: "Barcelona"
      - `country_code` 'AF' | 'AX' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BQ' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'CV' | 'KH' | 'CM' | 'CA' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CD' | 'CG' | 'CK' | 'CR' | 'CI' | 'HR' | 'CU' | 'CW' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'SZ' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KP' | 'KR' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'MK' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'BL' | 'SH' | 'KN' | 'LC' | 'MF' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SX' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SE' | 'CH' | 'SY' | 'TW' | 'TJ' | 'TZ' | 'TH' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'GB' | 'UM' | 'US' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'ZM' | 'ZW' — Delivery address country code
      - `phone` string — Shopper phone. Can be a mobile phone. Example: "933 033 033"
      - `mobile_phone` string — Shopper mobile phone. Only use this field if the shopper indicated that this number is a mobile phone. Example: "615 615 615"
      - `state` string — Shopper region or state. Example: "Barcelona"
      - `extra` string — Extra handling information that the shopper adds to the order. Example: "I'm home between 9 and 12."
      - `vat_number` string — Shopper VAT number. Example: "B12345"
    - `invoice_address` object — Fields describing the invoice address
      - `given_names` string — Shopper's given names for invoice. Example: "Maria José"
      - `surnames` string — Shopper's surnames for invoice. Example: "Barroso Rajoy"
      - `company` string — Shopper company name
      - `address_line_1` string — Invoice address line 1. Example: "C/ Aragó 383"
      - `address_line_2` string — Invoice address line 2. Example: "5º"
      - `postal_code` string — Invoice address address postal code. Example: "08013"
      - `city` string — Invoice address city. Example: "Barcelona"
      - `country_code` 'AF' | 'AX' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BQ' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'CV' | 'KH' | 'CM' | 'CA' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CD' | 'CG' | 'CK' | 'CR' | 'CI' | 'HR' | 'CU' | 'CW' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'SZ' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KP' | 'KR' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'MK' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'BL' | 'SH' | 'KN' | 'LC' | 'MF' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SX' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SE' | 'CH' | 'SY' | 'TW' | 'TJ' | 'TZ' | 'TH' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'GB' | 'UM' | 'US' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'ZM' | 'ZW' — Invoice address country code
      - `phone` string — Shopper phone. Can be a mobile phone. Example: "933 033 033"
      - `mobile_phone` string — Shopper mobile phone. Only use this field if the shopper indicated that this number is a mobile phone. Example: "615 615 615"
      - `state` string — Shopper region or state. Example: "Barcelona"
      - `extra` string — Extra handling information that the shopper adds to the order. Example: "I'm home between 9 and 12."
      - `vat_number` string — Shopper VAT number. Example: "B12345"
    - `gui` object — Fields describing the medium for which the response will be generated
      - `layout` 'desktop' | 'smartphone' — What kind of layout should the API optimise for? Accepted values are "desktop" and "smartphone", but more might come in the future
    - `platform` object — Fields describing the store platform
      - `name` string — Name of the platform. Use your shop name. Plugins for "standard" platforms will use that name. Example: "www.theshop.es"
      - `version` string — Version of the platform. If you don't use explicit versioning, use a release date instead. Example: "1.1"
      - `plugin_version` string — Version of the plugin or platform module. If you don't use explicit versioning, use a release date instead.' ' Example: "1.0.2"
      - `uname` string — uname of the shop server. In PHP, use php_uname(). Example: "Darwin roatan.local 13.0.0 Darwin Kernel Version 13.0... x86_64"
      - `db_name` string — DB used. Example: "mysql"
      - `db_version` string — Version of the DB. Example: "1.2.3"
      - `php_version` string — PHP interpreter version. Example: "5.4.1.7"
      - `partner_ref` string — Identifier of the integration partner.
    - `first_charge_date` string, date — When the first payment for the order should be charged. Example: "2001-01-01"

## Response `202`

Update order state

## Other responses

- `403` — Access forbidden
- `409` — Invalid state transition

---

[API](https://skmtc.dev/sequra/apis/checkout-api.md) · [All operations](https://skmtc.dev/sequra/apis/checkout-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/sequra/checkout-api/revisions/2b0b60c52d04/schema)
