Skip to main content
POST
/
v1
/
orders
Create orders
curl --request POST \
  --url https://api.quickbutik.com/v1/orders \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
[
  {
    "order_id": "create",
    "customer": {
      "type": "consumer",
      "email": "[email protected]",
      "phone": "+46123456789",
      "login_create": true,
      "billing_details": {
        "company_name": "Bolaget AB",
        "firstname": "Kalle",
        "lastname": "Ankasson",
        "address": "Gladagatan 10",
        "address2": "<string>",
        "city": "Ankeborg",
        "zipcode": "12345",
        "country": "SE"
      },
      "shipping_details": {
        "company_name": "Bolaget AB",
        "firstname": "Kalle",
        "lastname": "Ankasson",
        "address": "Gladagatan 10",
        "address2": "<string>",
        "city": "Ankeborg",
        "zipcode": "12345",
        "country": "SE"
      },
      "newsletter_subscribe": true,
      "note": "<string>"
    },
    "payment": {
      "method": "MySaleChannel",
      "transaction_id": "<string>",
      "currency": "SEK",
      "log": "<string>"
    },
    "shipping": {
      "id": 1,
      "name": "Postnord Parcel",
      "price": 123
    },
    "products": [
      {
        "product_id": 123,
        "variant_id": 123,
        "sku": "<string>",
        "qty": 1,
        "price": 123
      }
    ],
    "products_add": [
      {
        "sku": "SHIRT-123",
        "product_id": "<string>",
        "variant_id": "NULL (no variant)"
      }
    ],
    "products_remove": [
      {
        "sku": "SHIRT-123",
        "product_id": "<string>",
        "variant_id": "NULL (no variant)"
      }
    ],
    "discount_add": {
      "amount": 1
    },
    "discount_remove": true,
    "metadata": {}
  }
]
'
{
  "results": {}
}

Authorizations

Authorization
string
header
required

Basic Authentication with API Keys

The Quickbutik API uses Basic Authentication where you use your API key as both the username and password.

How it works:

  1. Format your credentials as api_key:api_key (using the SAME API key for both username and password)
  2. Base64 encode the formatted string
  3. Include in the Authorization header as: Authorization: Basic ENCODED_STRING

Example:

  • API Key: sk_live_abc123
  • Formatted: sk_live_abc123:sk_live_abc123
  • Base64 Encoded: c2tfbGl2ZV9hYmMxMjM6c2tfbGl2ZV9hYmMxMjM=
  • Header: Authorization: Basic c2tfbGl2ZV9hYmMxMjM6c2tfbGl2ZV9hYmMxMjM=

cURL Example:

curl https://api.quickbutik.com/v1/orders -u your_api_key:your_api_key

All API requests must be made over HTTPS. Requests made over HTTP will be rejected.

API keys can be generated in the Quickbutik Control Panel under Settings → API.

Body

application/json
order_id
string

Must be of value create to create a new order

Example:

"create"

customer
object
payment
object
shipping
object
products
object[]

Products in the order

products_add
object[]

Additional products to add to the order

products_remove
object[]

Products to remove from the order

discount_add
object
discount_remove
boolean

Remove any existing discount

metadata
object

Custom metadata for the order

Response

Order created successfully

results
object

Results object containing response for each order creation attempt. Keys are dynamically generated as create_1, create_2, etc.