![見出し画像](https://assets.st-note.com/production/uploads/images/92520826/rectangle_large_type_2_0ac268ed0a041520532d6bab8b7b713f.png?width=1200)
【GAS】注文情報をスプレッドシートに反映してみる#05 (ShopifyAPI + GoogleAppsScript)
こんにちは。Shopify専門エンジニアのまりん(@crowd37cord)です。
今日はショッピファイの注文情報をスプレッドシートに反映してみます♪
✔️今日のゴール
![](https://assets.st-note.com/img/1670062548178-3zKGGKxom2.png?width=1200)
✔️作成手順
まずは事前準備♪ Shopify APIを取得していない場合は先に発行しておいてくださいね。手順は下記に書いてます。
◆アクセススコープ
アクセススコープは
・注文
・read_orders
を使用します。
Step1 スプレッドシートに項目を追加
今日はShopify注文管理画面から
・注文番号
・Order ID
・販売日
・時間帯
・総売上高
・ディスカウント
・返金額
・小計
・消費税
・送料
を取得したいと思います。
上記の項目をスプレッドシートに入力。
![](https://assets.st-note.com/img/1670058106785-gZEor3xi3i.png?width=1200)
シート名は「Order」にしておきます。
![](https://assets.st-note.com/img/1670058104723-1gNHOvW79l.png)
Step2 スクリプトエディタを開く
スクリプトのファイル名はなんでもOKです。
私は分かりやすく「orderinfo.gs」という名前で作成してみました。
まずは、定番のAPIを紐付けるコードを書いておきます。
使い回しできるので関数の中に入れずに記載しています。
ここは定番なので毎度コピペでいいと思います。
シート名(getSheetByName())だけ変えるだけかな。
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Order");
var lastRow = ss.getLastRow();
var lastCol = ss.getLastColumn();
var lastID = ss.getRange(lastRow,2).getValue();
var l = ss.getLastRow()+1;
var myAPI = myAPI_(); //「api.gs」で定義した関数
var API_KEY = myAPI.apiKey;
var API_PASSWORD = myAPI.apiPass;
var SHOP_ID = myAPI.shopID;
var API_VERSION = myAPI.apiVer;
var encoded = Utilities.base64Encode(API_KEY + ':' + API_PASSWORD);
var headers = {
"Content-Type" : "application/json",
"Authorization": "Basic " + encoded
};
var options = {
'contentType' : 'application/json',
'method' : 'GET',
'headers' : headers,
'muteHttpExceptions' : true,
'followRedirects' : false,
};
次に注文情報を取得します。
orderのGetを使用します
/admin/api/2022-10/orders.json?status=any
このまま使用するとフルフィルメント完了した注文オーダーが取得できず、未発送の注文しか取得できないので、発送済み&未発送注文両方の値を取得するよる必要があります。
書き方は簡単で、
status=anyのところを
▼発送完了の場合
&status=closed
▼未発送の場合
&status=open
にすれば良いだけ。
【ご購入時のご注意】
解説はしておりません。
コピペ用コードのみの販売になります。
サポート&返金は致しません。
環境により使用できないことはあるかもしれません。
Step3 フルバージョンのコードをコピペ
◆コピペ用フルコード
ここから先は
3,362字
/
4画像
この記事のみ
¥
1,200
期間限定!Amazon Payで支払うと抽選で
Amazonギフトカード5,000円分が当たる
Amazonギフトカード5,000円分が当たる
この記事が気に入ったらチップで応援してみませんか?