🛍️
Shopify DraftOrder API で注文情報作成、在庫受注引当の検証結果
概要
本記事では Shopify DraftOrder API を利用して、注文情報作成、在庫受注引当を実現できるか検証した結果をご紹介します。
前提条件
- Shopify プライベートアプリ有効化、作成済み
- DraftOrder API version: 2020-10 Latest を利用
Shopify DraftOrder API 検証結果
Request
正しいURLは {apikey}:{password}
の部分はプライベートアプリのページをご確認ください 🔑
curl -X POST \
https://{apikey}:{password}@YOUR_SITE.myshopify.com/admin/api/2020-10/draft_orders.json \
-H "Content-Type: application/json" \
-d '{ "draft_order": { "line_items": [ { "variant_id": 37465014632634, "quantity": 1 } ] } }'
Response
{"draft_order":{"id":719714615482,"note":null,"email":null,"taxes_included":false,"currency":"JPY","invoice_sent_at":null,"created_at":"2020-11-17T20:42:05-05:00","updated_at":"2020-11-17T20:42:05-05:00","tax_exempt":false,"completed_at":null,"name":"#D1","status":"open","line_items":[{"variant_id":37465014632634,"product_id":6051979952314,"title":"Tシャツ","variant_title":"S","sku":"t-shirt-s","vendor":"YOUR_SITE","quantity":1,"requires_shipping":true,"taxable":true,"gift_card":false,"fulfillment_service":"manual","grams":200,"tax_lines":[{"rate":0.1,"title":"CT","price":"100"}],"applied_discount":null,"name":"Tシャツ - S","properties":[],"custom":false,"price":"1000","admin_graphql_api_id":"gid:\/\/shopify\/DraftOrderLineItem\/56113007984826"}],"shipping_address":null,"billing_address":null,"invoice_url":"https:\/\/YOUR_SITE.myshopify.com\/50868256954\/invoices\/f257a7af88d35eef74281fd830fb202d","applied_discount":null,"order_id":null,"shipping_line":null,"tax_lines":[{"rate":0.1,"title":"CT","price":"100"}],"tags":"","note_attributes":[],"total_price":"1100","subtotal_price":"1000","total_tax":"100","admin_graphql_api_id":"gid:\/\/shopify\/DraftOrder\/719714615482","customer":null}}
結論 Order 作成時に、在庫確保する
POST /admin/api/2020-10/draft_orders.json
後、Shopify管理画面で DraftOrder を確認しました。
- DraftOrder 作成時は、在庫確保しない
- Order 作成時に、在庫確保する
注文管理 - 下書き(一覧)
https://YOUR_SITE.myshopify.com/admin/draft_orders
注文管理 - 下書き(詳細)
https://YOUR_SITE.myshopify.com/admin/draft_orders/:id
在庫の状態 - 「支払い済としてマークする」実行前
「支払い済としてマークする」前だと、在庫数は減っていませんでした。
つまり、DraftOrder を作成しただけでは在庫確保はされないようでした。
https://YOUR_SITE.myshopify.com/admin/products/inventory
在庫の状態 - 「支払い済としてマークする」実行後
「支払い済としてマークする」ボタンクリック
https://YOUR_SITE.myshopify.com/admin/draft_orders/719714615482
Order 作成されて、Tシャツ S
在庫数が 100
から 99
に減り、在庫が受注引当されていることを確認しました。
https://YOUR_SITE.myshopify.com/admin/orders/3068560834746
以上、Shopify DraftOrder API を利用して、注文情報作成、在庫受注引当を実現できるか検証した、現場からお送りしました。
Discussion