Liquid、JavaScriptなどに関する質問
他プラットフォーム(自社カスタムEC)からOrder APIを利用して顧客の注文履歴を移行しています。APIドキュメントには発送日を指定する項目が見当たらず、顧客のアカウント画面から確認できる発送日が、すべて移行した日になってしまいます。APIで登録した過去注文の発送日はどうすれば指定可能でしょうか。
解決済! ベストソリューションを見る。
成功
発送日はそもそも Shopify Adminからも指定できないので、(発送した日が自動設定)APIでもできないと思います。APIで移行する時はRESTであれば、発送済みの状態で登録、GraphQLであれば、APIでfullfilmentを作成、というようになりますが、いずれにせよその発送状態がつくられた日時が発送日時になるので、個別指定はできないと思います。
個人的には発送日は移行という目的では割り切っていい項目だと思います。
成功
発送日はそもそも Shopify Adminからも指定できないので、(発送した日が自動設定)APIでもできないと思います。APIで移行する時はRESTであれば、発送済みの状態で登録、GraphQLであれば、APIでfullfilmentを作成、というようになりますが、いずれにせよその発送状態がつくられた日時が発送日時になるので、個別指定はできないと思います。
個人的には発送日は移行という目的では割り切っていい項目だと思います。
関連して1点ご質問させていただけますでしょうか。
APIを利用してフルフィルメントしていますが、
注文データの発送日が、フルフィルメントの実施日(API実行日)ではなく、
注文データの作成日(注文日)になっています。
手動でのフルフィルメントやアプリを利用したcsvフルフィルメント時には、
フルフィルメントの実施日が発送日になりますが、
APIを利用したフルフィルメント時には、注文作成日が発送日になります。
APIを利用したフルフィルメント時に、
フルフィルメント実施日を発送日にする方法があればご教授いただけますでしょうか。
アプリも内部で使っているものは、同じAPIですので、原則的にはアプリでできていることはAPIでもでできる、ということなります。
APIでの注文とフルフィルメントは作り方にいくつか方法があるのですが、こちらのAPIなどは参考になりますでしょうか?
https://shopify.dev/apps/fulfillment/fulfillment-service-apps
https://www.shopify.com/jp/blog/partner-shopify-fulfillment-orders-api
> APIを利用してフルフィルメントしていますが、
もしよろしければ、お使いのAPIとその使い方を教えていただけますか?
ご回答いただき、ありがとうございます。
>お使いのAPIとその使い方を教えていただけますか?
のAPIを利用しています。
注文が作成されたら注文データをShopifyから基幹システムにAPI連携し、
Shopify側のフルフィルメントステータスを「未発送」から「進行中」に更新しています。
出荷完了後、「fulfillment」の「created_at」を基幹システムに注文データが登録された日時として、「updated_at」を出荷完了日時(フルフィルメントAPIの実行日時)として、フルフィルメントAPIを実行しております。
恐れ入りますが、ご確認いただけますでしょうか。
ありがとうございます。
Orderをまず作って、そのあとでCreateFullfilment をよんだ場合いかがでしょうか?
https://shopify.dev/api/admin-rest/2022-04/resources/fulfillment#post-orders-order-id-fulfillments
こちらの方が管理画面からの操作に近いかと思います。
また、可能であれば、GraphQLの利用を推奨いたします。
ご返信ありがとうございます。
>Orderをまず作って、そのあとでCreateFullfilment をよんだ場合いかがでしょうか?
APIを利用したフルフィルメント処理を、「Complete a fulfillment」ではなく「Create a new Fulfillment」で実施すると、解決できる可能性あるとの理解で合ってますでしょうか?
その場合、「Complete a fulfillment」と「Create a new Fulfillment」はどういう違いがありますでしゅおか?
ちなみに、「fulfillment」の「created_at」は「発送日」ではないでしょうか?
恐れ入りますが、ご確認いただければ幸いです。
Completeは元々ある保留中のFulfilmentを完了させるものですが、お使いのAPIバージョンがすでにサポート外になっていますので、以下の情報を参考にバージョンをあげて再度実行してみるのはいかがでしょうか?
https://shopify.dev/apps/fulfillment/order-management-apps/manage-fulfillments#create-a-fulfillment
https://shopify.dev/api/admin-rest/2023-01/resources/fulfillment#post-fulfillments
ありがとうございます!「Create a new Fulfillment」で試してみます。
ちなみに、「Create a new Fulfillment」にも「created_at」項目がありますが、こちらの値が管理画面に表示される「発送日」になることではないでしょうか?
おそらくそうだと思いますが、実際にAPIで作成して後で管理画面で確認いただければと思います。
度々申し訳ございませんが、「Create a new Fulfillment」をお試しする前に1点だけご質問させていただけますでしょうか。
現在、注文データを弊社基幹システムに連携する際に、注文のフルフィルメント状況を未発送から準備中に変更しており、「Complete a fulfillment」を利用して1件のfulfillment情報を作成しています。
その後、出荷完了連携時に「Create a new Fulfillment」を利用すると、結果的に1件の注文に対してfulfillment情報が2件できてしまうことではないかと思いますが、問題ないでしょうか?
>おそらくそうだと思いますが、実際にAPIで作成して後で管理画面で確認いただければと思います。
ありがとうございます!承知致しました。
Shopify アカデミーの学習パスと認定スキルバッジExpanding Your Shopify Business Internationallyを活用して、国際的にビジネ...
By Shopify Feb 7, 2025Shopify アカデミーの学習パスB2B on Shopify:立ち上げとカスタマイズで卸売販売に進出しましょう。これら3つの無料コースは、ShopifyストアでB2B機能...
By Shopify Jan 31, 2025サポートの選択肢が増えていく中、最適となる選択の判断が難しくなっているかと存じます。今回は問題の解決に最適となるサポートの選択方法を、紹介させて頂きます。 選択肢のご紹介...
By Mirai Oct 6, 2024