loading

ファーモ 発注APIガイド v0.9

はじめに

 青果を扱う流通、小売、飲食などさまざまな事業者さまの多くは発注を円滑に実行するためにそれぞれ販売管理のシステムを導入していることと思います。それらは、会計や販売管理、商品管理など他のサービスと連携しているところもありますが、なかには Excel などで工夫していたり、手動で連携させているところもあります。少量多品目多品度の取引になりがちな青果について円滑に受発注しデータを蓄積する機能を持ったファーモは、これらのシステムと連携していくことで利用する生産者や各事業者の負担を減らし、データの利活用できる環境をつくっていきたいと考えています。

 今回、ファーモでは外部のシステムと連携していき、利用者の業務負荷を下げてデータを蓄積していくために API(Application Programming Interface)を用意いたしました。

 これは、買い手さまの利用している各システムとファーモをつなぐための仕組みです。大きく分けて以下の 2 つの機能があります。

(1)ファーモをつかっている仕入れ先生産者の出荷可能商品の情報を出力する

(2)出力された出荷可能商品の情報をもとに発注データをファーモに送信する

 現在、ファーモを使っている企業と連携して開発し、現在、バージョン0.9として提供していますが、ご利用者さまの声を受けてより改善していきます。コメントや改善のご提案などお気軽にお知らせください。

ご利用方法

1.ファーモお問い合わせフォームからご利用申し込みをしてください。

2.承認されると、APIキーとサンドボックス環境の利用方法をお知らせします。
ここでファーモ発注APIに適合するよう開発していただきましたのちに本番環境でご利用ください。
※ サンドボックス環境は予告なく停止・仕様変更する場合がありますことご了承ください。

1.出荷可能商品取得API

目的

ファーモで取引先生産者が設定した商品の情報と、その出荷可能量を取得する

仕組み

ファーモのエンドポイント(URL)にAPIキーを含めてリクエストをするとCSVファイルを取得できます。エンドポイントは申し込み後に連絡いたします。また、このCSVはファーモのグループページからも手動で出力可能なものと同じ形式です。

仕様

取得できるCSVの仕様は次の通りです。

番号カラム名制約説明
1商品ID数字 0~9999999商品のIDが数字で入力されます
2商品名文字列 1~50
3カテゴリー名文字列 1~50ファーモで管理しているカテゴリー名です
4数字 0~99999商品の内容量
5規格文字列 g,kg,ml,l 商品の内容量の単位です
6価格数字 0~999999商品の価格です
7荷姿文字列 1~10
8規格文字列 1~50商品の規格を説明する文字列が入ります
9入数数字 1~99999ロット商品の場合、2以上の入り数が設定されます
10品種補足文字列 1~200
11説明文字列 1~200
12生産者ID数字 1~99999
13生産者名文字列 1~50
14超過注文可否文字列 空欄or不可不可の場合、設定した上限を超えて発注できません
15 取引先指定状況 not limited
limited
only me
not limited → 購入者の指定がない商品です
limited → 一部の買い手のみが購入できるよう設定された商品です
only me → あなただけが購入できるよう設定された商品です
16軽減税率対象8%,10%消費税率です
17在庫数量
18メモ
19基準日(第1週始まり日)YYYY/MM/DD3週間分の出荷可能量が出力されますが、その第1週1日目の日付です
20第1週(日)出荷可能量数字 1~99999対象日の出荷可能数量です
21第1週(月)出荷可能量数字 1~99999
22第1週(火)出荷可能量数字 1~99999
23第1週(水)出荷可能量数字 1~99999
24第1週(木)出荷可能量数字 1~99999
25第1週(金)出荷可能量数字 1~99999
26第1週(土)出荷可能量数字 1~99999
27第2週(日)出荷可能量数字 1~99999
28第2週(月)出荷可能量数字 1~99999
29第2週(火)出荷可能量数字 1~99999
30第2週(水)出荷可能量数字 1~99999
31第2週(木)出荷可能量数字 1~99999
32第2週(金)出荷可能量数字 1~99999
33第2週(土)出荷可能量数字 1~99999
34第3週(日)出荷可能量数字 1~99999
35第3週(月)出荷可能量数字 1~99999
36第3週(火)出荷可能量数字 1~99999
37第3週(水)出荷可能量数字 1~99999
38第3週(木)出荷可能量数字 1~99999
39第3週(金)出荷可能量数字 1~99999
40第3週(土)出荷可能量数字 1~99999
41第1週(日)既注量数字 1~99999すでに発注していた場合、その数量が入っています
42第1週(月)既注量数字 1~99999
43第1週(火)既注量数字 1~99999
44第1週(水)既注量数字 1~99999
45第1週(木)既注量数字 1~99999
46第1週(金)既注量数字 1~99999
47第1週(土)既注量数字 1~99999
48第2週(日)既注量数字 1~99999
49第2週(月)既注量数字 1~99999
50第2週(火)既注量数字 1~99999
51第2週(水)既注量数字 1~99999
52第2週(木)既注量数字 1~99999
53第2週(金)既注量数字 1~99999
54第2週(土)既注量数字 1~99999
55第3週(日)既注量数字 1~99999
56第3週(月)既注量数字 1~99999
57第3週(火)既注量数字 1~99999
58第3週(水)既注量数字 1~99999
59第3週(木)既注量数字 1~99999
60第3週(金)既注量数字 1~99999
61第3週(土)既注量数字 1~99999

発注API

目的

発注内容をjson形式でファーモに登録することで発注できます。

仕組み

ファーモのエンドポイント(URL)にAPIキーを含めて定められた形式で発注データを送るとファーモ上で発注データが作成され、生産者にも発注メールが送信されます。
発注データのリクエスト形式はjson schemaで提供しているのでご参照ください。
json schema(yml)

レスポンスは下記内容が返却されます。

項番 ステータス メッセージ 説明
1 success 発注内容が出力されます 正常に発注できる場合。
2 success すでに発注済みのものと更新はありません。 同じ生産者、同じ出荷日にすでに同じ内容の発注がある場合は更新されません。
3 fail 発注できない商品があり発注していません。連携されていない商品を発注しようとしています。発注内容を見直すかファーモから直接発注してください。 発注データの商品IDがファーモに存在しない場合です。発注されません。
4 fail APIキーが不正です APIキーが正しくない場合。
5 fail 商品注文情報がありません 連携情報が空の場合。
6 fail 商品がファーモ連携ではない可能性があります。もしくは発注先不明です 発注データの商品IDがファーモに存在しない場合、もしくは発注先生産者が特定できない場合。
7 fail ひとつも発注できませんでした。上限越え発注不可のため発注できない商品と連携されていない商品があります。ファーモから直接発注してください。 以下の2つの理由によって発注が失敗しているとき。
① 上限越え発注不可商品への発注
② 規格変更によってアーカイブされた商品に発注しようとしている
レスポンスデータの明細行内に、「[商品名]は上限以上注文不可商品で上限を超えているため発注していません」とコメントが付与されます。
8 fail ひとつも発注できませんでした。上限越え発注不可のため発注できない商品があります。数量を調整し再度発注してください。 発注が失敗し、その原因が上限越え発注不可商品への発注のとき。
レスポンスデータの明細行内に、「[商品名]は上限以上注文不可商品で上限を超えているため発注していません」とコメントが付与されます。
9 fail ひとつも発注できませんでした。商品が規格変更されているため発注できません。 発注が失敗し、その原因が発注しようとした商品が規格変更によって廃止された商品のとき。
10 fail_send_mail 上限越え発注不可の商品・発注連携できていない商品があり発注できていない商品があります。ファーモから直接発注してください。 以下の2つの理由によって発注が失敗した商品があるとき。
① 上限越え発注不可商品への発注
② 規格変更によってアーカイブされた商品に発注しようとしている
レスポンスデータの明細行内に、「[商品名]は上限以上注文不可商品で上限を超えているため発注していません」とコメントが付与されます。
ほかに発注できている商品はあるため発注メールは発送されます。
11 fail_send_mail 上限越え発注不可のため発注できていない商品があります。発注数を見直して再発注ください。 生産者が出荷可能数量を指定し、上限越え発注を不可としていることで発注失敗した商品がある場合。ほかに発注できている商品はあるため発注メールは発送されます。
12 fail_send_mail 商品が規格変更されているため発注できていない商品があります。連携しなおしてご確認ください。 商品データが更新されて廃止になった商品に発注しようとした場合。ほかに発注できている商品はあるため発注メールは発送されます。
13 fail_send_mail
発注できていない商品があります。連携されていない商品を発注していない可能性があります。
想定していない原因で発注失敗した商品がある場合。発注メールは発送されます。

本件に関するお問い合わせは こちらより、お願いいたします。