Draft Order Resource

Draft Order Resource

Create DraftOrder

POST /api/draft_orders.json
  1. POST /api/draft_orders.json will create a new Draft Order from the parameters passed.

Example:

Create DraftOrder with existing product

$ curl -s \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-u APP_API_KEY:APP_API_PASSWORD \
-X POST \
-d \
{
  "draft_order": {
    "items": [
      {
        "product_id": 1455064,
        "quantity": 1
      }
    ],
    "billing_address": {
       "firstname": "my firstname",
       "lastname": "my lastname",
       "street": "my street",
       "streetnumber": 1,
       "zipcode": 12345,
       "city": "Hannover"},
     "shipping_address": {
       "firstname": "my firstname",
       "lastname": "my lastname",
       "street": "mystreet",
       "streetnumber": 1,
       "zipcode": 12345,
       "city": "Hannover"
     }
  }
' \




Create DraftOrder with custom product

$ curl -s \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-u APP_API_KEY:APP_API_PASSWORD \
-X POST \
-d \
{
  "draft_order": {
    "items": [
      {
        "title": "Custom Tee",
        "price": "20.00",
        "quantity": 2
      }
    ],
    "billing_address": {
      "firstname": "my firstname",
      "lastname": "my lastname",
      "street": "my street",
      "streetnumber": 1,
      "zipcode": 12345,
      "city": "Hannover"},
    "shipping_address": {
      "firstname": "my firstname",
      "lastname": "my lastname",
      "street": "mystreet",
      "streetnumber": 1,
      "zipcode": 12345,
      "city": "Hannover"
    }
  }
' \


Create DraftOrder with existing customer and product

$ curl -s \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-u APP_API_KEY:APP_API_PASSWORD \
-X POST \
-d \
{
     "draft_order":  {
      "items": [
            {
               "product_id": 1455064,
               "quantity": 1
             }
        ],
       "customer": {
            "id": 1491033
          }
    }
' \

# A draft order must at least contain one item with the following attributes:

draft_order[items][][product_id]    = 12345 # Position: VersaCommerce Product ID
draft_order[items][][quantity]      = 3     # Position: Anzahl

# If you create a draft order with 'custom items', it should contain
draft_order[items][title]         = '...' # Position: Titel
draft_order[items][price]         = 10.99 # Position: Einzelpreis
draft_order[items][quantity]      = 1

# A draft order must contain a billing address with the following attributes:

draft_order[shipping_address][firstname]    = '...' # Lieferadresse: Vorname
draft_order[shipping_address][lastname]     = '...' # Lieferadresse: Nachname
draft_order[shipping_address][street]       = '...' # Lieferadresse: Straße
draft_order[shipping_address][streetnumber] = '...' # Lieferadresse: Hausnummer
draft_order[shipping_address][zipcode]      = '...' # Lieferadresse: PLZ
draft_order[shipping_address][city]         = '...' # Lieferadresse: Stadt

draft_order[billing_address][firstname]    = '...' # Rechnungsadresse: Vorname
draft_order[billing_address][lastname]     = '...' # Rechnungsadresse: Nachname
draft_order[billing_address][street]       = '...' # Rechnungsadresse: Straße
draft_order[billing_address][streetnumber] = '...' # Rechnungsadresse: Hausnummer
draft_order[billing_address][zipcode]      = '...' # Rechnungsadresse: PLZ
draft_order[billing_address][city]         = '...' # Rechnungsadresse: Stadt


Update Draft Order

PUT /api/draft_orders/:draft_order_id.json
  1. PUT /api/draft_orders/:draft_order_id.json will modify an existing error

Add a note to a draft order

Example:

$ curl -s \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-u APP_API_KEY:APP_API_PASSWORD \
-X PUT \
-d \
'{
   "draft_order": {
       "id": 123344,
       "note": "Customer contacted us about a custom iPod"
    }
}' \

Status: 202
{
"draft_order": {
"code": "xxx-xxx-xxx",
"completed_at": null,
"coupon_code": null,
"coupon_value": "0.0",
"created_at": "2021-08-18T08:38:01+02:00",
"customer_email": "support@versacommerce.de",
"customer_id": 1534767,
"discount_total": "0.0",
"id": 1184,
"item_total": "51.0",
"items_count": 0,
"name": null,
"note": "Customer contacted us about a custom iPod",
"order_id": null,
"payment_cost": null,
"payment_status": "not_paid",
"prices_include_tax": true,
"reduced_tax_amount": "1.596638655462184873949579831",
"reduced_tax_rate": 19.0,
"reduced_tax_total": "10.0",
"reservation_id": null,
"shipping_cost": null,
"shipping_type": null,
"shop_id": xxxx,
"standard_tax_amount": "6.54621848739495798319327731",
"standard_tax_rate": "19.0",
"standard_tax_total": "41.0",
"status": null,
"subtotal": "51.0",
"timestamps": null,
"total": "51.0",
"updated_at": "2021-08-18T11:28:52+02:00"
}
}


Get a list of Draft Orders

GET /api/draft_orders.json
  1. GET /api/draft_orders.json will return the first 150 (default limit) orders. You can increase the limit to a maximum of 250 orders. You can pass a limit filter like GET /api/draft_orders.json?limit=10

Example:
$ curl -s \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-u APP_API_KEY:APP_API_PASSWORD \
-X GET \
http://shop_subdomain.versacommerce.de/api/draft_orders.json



Get a single DraftOrder

GET /api/draft_orders/:draft_order_id.json
  1. GET /api/draft_orders/:draft_order_id.json will return the specified order.

Example:

$ curl -s \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-u APP_API_KEY:APP_API_PASSWORD \
-X GET \
http://shop_subdomain.versacommerce.de/api/draft_orders/:draft_order_id.json

Status: 200 OK
{
  "draft_order": {
    "code": "xxx-xxx-xxx",
    "completed_at": null,
    "coupon_code": null,
    "coupon_value": "0.0",
    "created_at": "2021-08-06T15:29:32+02:00",
    "customer_email": "support@versacommerce.de",
    "customer_id": 792525,
    "discount_total": "0.0",
    "id": 1146,
    "item_total": "10.0",
    "items_count": 0,
    "name": null,
    "note": "",
    "order_id": null,
    "payment_cost": "0.0",
    "payment_status": "not_paid",
    "prices_include_tax": true,
    "reduced_tax_amount": "1.6",
    "reduced_tax_rate": 19.0,
    "reduced_tax_total": "10.0",
    "reservation_id": null,
    "shipping_cost": "0.0",
    "shipping_type": null,
    "shop_id": 13885,
    "standard_tax_amount": "0.0",
    "standard_tax_rate": "19.0",
    "standard_tax_total": "0.0",
    "status": null,
    "subtotal": "10.0",
    "timestamps": null,
    "total": "10.0",
    "updated_at": "2021-08-10T16:38:00+02:00",
    "items": [{
      "asin": null,
      "carrier_id": null,
      "category": null,
      "code": null,
      "current_status_on": null,
      "discount": 0.0,
      "discount_amount": "0.0",
      "discount_price": null,
      "discount_type": "money",
      "draft_order_id": 1146,
      "editable_quantity": null,
      "editable_shipping_type": null,
      "extra_price": null,
      "height": 0.0,
      "id": 2788146,
      "length": 0.0,
      "line_height": 0.0,
      "line_length": 0.0,
      "line_price": "10.0",
      "line_tax": "1.596638655462184873949579831",
      "line_weight": 0.0,
      "line_width": 0.0,
      "option_01": null,
      "option_01_label": null,
      "option_02": null,
      "option_02_label": null,
      "option_03": null,
      "option_03_label": null,
      "options": null,
      "order_id": null,
      "origin_id": null,
      "original_price": null,
      "price": "10.0",
      "product_id": 1455064,
      "quantity": 1,
      "shipment_id": null,
      "shipping_address_id": null,
      "shipping_type": null,
      "status": "undelivered",
      "subtitle": null,
      "tax_rate": "19.0",
      "title": null,
      "vendor": null,
      "weight": 0.0,
      "width": 0.0
    }],
    "billing_address": {
      "category": "billing",
      "city": "2",
      "company": "",
      "country": "DE",
      "customer_id": 792525,
      "draft_order_id": 1146,
      "email": "support@versacommerce.de",
      "extension": null,
      "firstname": "George",
      "id": 6364355,
      "lastname": "Hill",
      "locked": false,
      "option_01": null,
      "option_02": null,
      "option_03": null,
      "order_id": null,
      "phone": null,
      "state": "unbekannt",
      "street": "Bodekestrasse",
      "streetnumber": "22",
      "title": "",
      "zipcode": "30161"
    },
    "shipping_address": {
      "category": "shipping",
      "city": "2",
      "company": "",
      "country": "DE",
      "customer_id": 792525,
      "draft_order_id": 1146,
      "email": "support@versacommerce.de",
      "extension": null,
      "firstname": "George",
      "id": 6364354,
      "lastname": "Hill",
      "locked": false,
      "option_01": null,
      "option_02": null,
      "option_03": null,
      "order_id": null,
      "phone": null,
      "state": "unbekannt",
      "street": "Bodekestrasse",
      "streetnumber": "22",
      "title": "",
      "zipcode": "30161"
    }
  }
}



Get DraftOrders Count

GET /api/orders/count.json
  • GET /api/orders/count.json will return the orders count.
Example:

$ curl -s \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-u APP_API_KEY:APP_API_PASSWORD \
-X GET \
http://shop_subdomain.versacommerce.de/api/draft_orders/count.json

Status: 200 OK
{
  "count": 117
}


Delete a DraftOrder

DELETE api/draft_orders/:draft_order_id.json
  1. DELETE api/draft_orders/:draft_order_id.json permanently delete a draft order

Example:

$ curl -s
\ -H 'Accept: application/json'
\ -H 'Content-Type: application/json'
\ -u APP_API_KEY:APP_API_PASSWORD
\ -X DELETE \

Status: 200 OK
{ }



Complete a DraftOrder


PUT /api/draft_orders/:draft_order_id/complete.json
  1. PUT /api/draft_orders/:draft_order_id/complete.json will complete a draft order, marking it as paid.
  payment_pending
  • true: Sets payment pending to true.
  • false: Sets payment pending to false. default value.


Example:

$ curl -s \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-u APP_API_KEY:APP_API_PASSWORD \
-X PUT \

Status: 200 OK
{
"draft_order": {
"code": "xxx-xxx-xxx",
"completed_at": "2021-08-10T15:48:42+02:00",
"coupon_code": null,
"coupon_value": "0.0",
"created_at": "2021-08-06T15:40:47+02:00",
"customer_email": "support@versacommerce.de",
"customer_id": "12345",
"discount_total": "0.0",
"id": 1148,
"item_total": "10.0",
"items_count": 1,
"name": null,
"note": "",
"order_id": 1747685,
"payment_cost": "0.0",
"payment_status": "paid",
"prices_include_tax": true,
"reduced_tax_amount": "1.6",
"reduced_tax_rate": 19.0,
"reduced_tax_total": "10.0",
"reservation_id": null,
"shipping_cost": "0.0",
"shipping_type": null,
"shop_id": 13885,
"standard_tax_amount": "0.0",
"standard_tax_rate": "19.0",
"standard_tax_total": "0.0",
"status": "completed",
"subtotal": "10.0",
"timestamps": null,
"total": "10.0",
"updated_at": "2021-08-10T15:48:44+02:00",
"items": [{
"asin": null,
"carrier_id": null,
"category": null,
"code": null,
"current_status_on": null,
"discount": 0.0,
"discount_amount": "0.0",
"discount_price": null,
"discount_type": "money",
"draft_order_id": 1148,
"editable_quantity": null,
"editable_shipping_type": null,
"extra_price": null,
"height": 0.0,
"id": 2788148,
"length": 0.0,
"line_height": 0.0,
"line_length": 0.0,
"line_price": "10.0",
"line_tax": "1.596638655462184873949579831",
"line_weight": 0.0,
"line_width": 0.0,
"option_01": null,
"option_01_label": null,
"option_02": null,
"option_02_label": null,
"option_03": null,
"option_03_label": null,
"options": null,
"order_id": 1747685,
"origin_id": null,
"original_price": null,
"price": "10.0",
"product_id": 1455064,
"quantity": 1,
"shipment_id": null,
"shipping_address_id": null,
"shipping_type": null,
"status": "undelivered",
"subtitle": null,
"tax_rate": "19.0",
"title": null,
"vendor": null,
"weight": 0.0,
"width": 0.0
}],
"billing_address": {
"category": "billing",
"city": "2",
"company": "",
"country": "DE",
"customer_id": 792525,
"draft_order_id": 1148,
"extension": null,
"firstname": "George",
"id": 6364343,
"lastname": "Hill",
"locked": false,
"option_01": null,
"option_02": null,
"option_03": null,
"order_id": null,
"phone": null,
"state": "unbekannt",
"street": "Example street",
"streetnumber": "12",
"title": "",
"zipcode": "30161"
},
"shipping_address": {
"category": "shipping",
"city": "2",
"company": "",
"country": "DE",
"customer_id": 792525,
"draft_order_id": 1148,
"extension": null,
"firstname": "George",
"id": 6364342,
"lastname": "Hill",
"locked": false,
"option_01": null,
"option_02": null,
"option_03": null,
"order_id": null,
"phone": null,
"state": "unbekannt",
"street": "Example street",
"streetnumber": "12",
"title": "",
"zipcode": "30161"
}
}
}

Complete a draft order, marking it as pending

PUT /admin/api/2021-07/draft_orders/:draft_order_id/complete.json?payment_pending=true


Example:

$ curl -s \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-u APP_API_KEY:APP_API_PASSWORD \
-X PUT \

Status: 200 OK
{
"draft_order": {
"code": "xxx-xxx-xxx",
"completed_at": "2021-08-10T16:09:30+02:00",
"coupon_code": null,
"coupon_value": "0.0",
"created_at": "2021-08-06T15:33:00+02:00",
"customer_email": "support@versacommerce.de",
"customer_id": 792525,
"discount_total": "0.0",
"id": 1147,
"item_total": "10.0",
"items_count": 1,
"name": null,
"note": "",
"order_id": 1747686,
"payment_cost": "0.0",
"payment_status": "not_paid",
"prices_include_tax": true,
"reduced_tax_amount": "1.6",
"reduced_tax_rate": 19.0,
"reduced_tax_total": "10.0",
"reservation_id": null,
"shipping_cost": "0.0",
"shipping_type": null,
"shop_id": 13885,
"standard_tax_amount": "0.0",
"standard_tax_rate": "19.0",
"standard_tax_total": "0.0",
"status": "open",
"subtotal": "10.0",
"timestamps": null,
"total": "10.0",
"updated_at": "2021-08-10T16:09:31+02:00",
"items": [{
"asin": null,
"carrier_id": null,
"category": null,
"code": null,
"current_status_on": null,
"discount": 0.0,
"discount_amount": "0.0",
"discount_price": null,
"discount_type": "money",
"draft_order_id": 1147,
"editable_quantity": null,
"editable_shipping_type": null,
"extra_price": null,
"height": 0.0,
"id": 2788147,
"length": 0.0,
"line_height": 0.0,
"line_length": 0.0,
"line_price": "10.0",
"line_tax": "1.596638655462184873949579831",
"line_weight": 0.0,
"line_width": 0.0,
"option_01": null,
"option_01_label": null,
"option_02": null,
"option_02_label": null,
"option_03": null,
"option_03_label": null,
"options": null,
"order_id": 1747686,
"origin_id": null,
"original_price": null,
"price": "10.0",
"product_id": 1455064,
"quantity": 1,
"shipment_id": null,
"shipping_address_id": null,
"shipping_type": null,
"status": "undelivered",
"subtitle": null,
"tax_rate": "19.0",
"title": null,
"vendor": null,
"weight": 0.0,
"width": 0.0
}],
"billing_address": {
"category": "billing",
"city": "2",
"company": "",
"country": "DE",
"customer_id": 792525,
"draft_order_id": 1147,
"extension": null,
"firstname": "George",
"id": 6364349,
"lastname": "Hill",
"locked": false,
"option_01": null,
"option_02": null,
"option_03": null,
"order_id": null,
"phone": null,
"state": "unbekannt",
"street": "Example street",
"streetnumber": "12",
"title": "",
"zipcode": "30161"
},
"shipping_address": {
"category": "shipping",
"city": "2",
"company": "",
"country": "DE",
"customer_id": 792525,
"draft_order_id": 1147,
"extension": null,
"firstname": "George",
"id": 6364348,
"lastname": "Hill",
"locked": false,
"option_01": null,
"option_02": null,
"option_03": null,
"order_id": null,
"phone": null,
"state": "unbekannt",
"street": "Example street",
"streetnumber": "12",
"title": "",
"zipcode": "30161"
}
}
}

    • Related Articles

    • Order Resource

      Attention Order resources are read-only by default. Please contact us for access. ​ Order Statuses Order Status English German open new order Neue Bestellung in_progress in progress, started processing Bearbeitung begonnen cancelled order was ...
    • Order

      order.bank_account_bank_bic BIC: {{ order.bank_account_bank_bic }} BIC: 123-456-789 order.bank_account_bank_code BLZ: {{ order.bank_account_bank_code }} BLZ: 123456789 order.bank_account_bank_iban IBAN: {{ order.bank_account_bank_iban }} IBAN: ...
    • Payment Resource

      Payment resources are read-only by default. Please contact us if you need write permissions. Payment Categories Payment category English German cod Cash on delivery Bezahlung bei Lieferung custom Custom Eigene Zahlart bank_deposit Bank deposit ...
    • Shipment Resource

      Attention Shipment resources are read-only by default. Please contact us at support@versacommerce.de if you need write permissions. Get Shipments GET /api/shipments.json GET /api/shipments.json will return the first 150 (default limit) items. You can ...
    • Item Resource

      Those resources are read-only by default. Please contact us if you need write permissions. Get Items GET /api/items.json GET /api/items.json will return the first 150 (default limit) items. You can increase the limit to a maximum of 250 items. GET ...