Jump to content

Loyverse の売上データを会計freee と連携する方法


Recommended Posts

こんにちは!

このページではLoyverseの売上データを自動で会計freeeに送信する方法をご紹介します。
※本内容は動作保証対象外です。ご利用は自己責任でお願い致します。

Loyverse Appマーケットプレイスには会計freeeと直接連動するためのアプリはありませんが、「Integromat」と「Google Sheets」を利用することでLoyverse上のレシートを会計freeeに直接送信することができます。

511210861_.thumb.png.33415d6bafcb2a9d70c377a39e7f5bd4.png

手順 1:freeeとGoogle Sheetsの連携

freeeのサポートページから取引データ連携用シートを取得し、自分のGoogle Driveにコピーを作成します。

2021-04-22_21h16_09.png.f8f9d97a6c0e1d4f5f4eb95d82ee0377.png

 

はじめに「使い方」シートの指示にしたがって、連携用シートをfreeeアカウントに接続してください。

次に、Integromatからデータを出力するためのシートを新しく用意します。
今回は「Data」「Datevalue」と名付けます。

  • 「Data」シートは、Integromatからデータを書込むためのシートです。
  • 「Datevalue」シートは、Loyverseの日付データフォーマットを、freeeに互換性のあるデータフォーマットに直すためのシートです。

「Data」シートの一行目に「取引入力」シートの四行目をコピーします。
ここで、太字になっている項目が必須項目です。

2021-04-22_22h09_37.thumb.png.0ba0e25df770913fb43216bed1df146b.png

 

「Datevalue」シートでは、

  • 一列目に「Data」シートのC列(発生日)をコピーします。
    ただしここでは、Indirect関数を使用します。Indirect関数を利用する理由は、Integromatからデータを書込んださい、参照元がずれてしまうからです。
    2021-04-22_22h14_39.png.f3030a2a7255702448b326ef798278e8.png
    =indirect("Data!C"&row())

 

  • 二列目では、一列目の日付データをfreeeの形式に変換します。
    2021-04-22_22h18_01.png.3468cb47eefb880393cff1edb37de815.png
    =if(A2="","",datevalue(mid(A2,1,10)))

 

最後に「取引入力」シートに「Data」シートおよび「Datevalue」シートから情報をコピーします。

「収支区分」「勘定科目」「金額」列では、Indirect関数を使って情報をコピーします。
2021-04-22_22h25_38.thumb.png.0a375bf6b94a06d877498ad9c63a78e5.png

=indirect("Data!A"&ROW()-3)
=indirect("Data!F"&ROW()-3)
=indirect("Data!H"&ROW()-3)

「発生日」列では、「Datevalue」シートの日付をそのままコピーします。
2021-04-22_22h26_51.png.030c00f5af28bc52b7417a9098408f7a.png

=Datevalue!B2

これでGoogle Sheetsの準備は完了です。

手順 2:Integromatのアカウントを作成し、Loyverseと接続する。

https://www.integromat.com/にアクセスし、アカウントを作成します。
その後、ログインした状態で「Create a new Senario」をクリックします。
2021-04-22_18h57_14.thumb.png.212079a6d38dbe096a2ff1eb76d924a7.png

「Loyverse」をシナリオに追加したら、「Watch Receipts」を選択します。

2021-04-22_18h59_28.thumb.png.1d6f2c1ded9587d793c6506b00b2a6cb.png

次にIntegromatとLoyverseを接続するために、「Connection」→「Add」→「Loyverse OAuth2」を選択してください。
これによって、IntegromatがLoyverseのデータにアクセスする許可を求める画面が表示されますので、許可をしてください。

2021-04-22_19h01_20.thumb.png.b220afdcd82f4392ec44f70bdf81973f.png

LoyverseとIntegromatの接続が完了したら、Event Type「Create」を選択し、店舗名を選択してください。
販売量が多い店舗では、Limitに大きな数を入力してください。

2021-04-22_19h05_05.thumb.png.4f4f6f57ec45a1bb50e08f504e467e94.png

次にIntegromatにGoogle Sheets [Add a row]を追加して、下図のように設定してください。

2021-04-22_19h10_59.thumb.png.5f630acd79351681643347cb9873229d.png

Values欄に、必須項目の収支区分、発生日、売上高、金額を図のように設定します。

2021-04-22_19h12_30.png.375f967b944678d3290f6c57eb7840b1.png

自動更新のインターバルを入力して、保存ボタンを押すとIntegromatの設定は完了です。


2021-04-22_19h14_00.thumb.png.35869a167d90268f0c5f294b749025a6.png

 

 

 

手順 3:Google Apps Script で連携用シート→freeeの書き込みを自動化する。

取引連携用シートから「スクリプトエディタ」を開きます。
2021-04-22_22h33_13.png.6521fda04654f7e7f20a861682f1bc53.png

 

「トリガー」をクリックし、「freeeMenuDealsPost」をスプレッドシート「変更時」にトリガーが発動するようセットしてください。(時間ごとのトリガーでもかまいません。)

2021-04-22_22h34_30.thumb.png.94d62579b464481eaefbc1f1cde9c61f.png

次に「スクリプト」へ移動し、function freeeMenuDealsPost()の内容を変更します。
この変更は、スプレッドシート上のデータをfreeeに書込んだあと、取引データを削除することを意味しています。
(取引データの重複を避けるため。)

2021-04-22_22h37_02.thumb.png.22b47673ea62f606a61b9d923f8f37a4.png

元の部分

function freeeMenuDealsPost(){
dealsTranscription();
postDeals();  
}

変更後

function freeeMenuDealsPost(){
  dealsTranscription();
  postDeals();  
  var bk = SpreadsheetApp.getActiveSpreadsheet();
  var ss = bk.getSheetByName("Data");
  ss.getRange('A2:Q1000').clear();
}

 

以上で、Loyverseとfreeeを連携させる手順は終了です。
実際にLoyverse POSで取引を行い、freeeに記録されることを確認してください。
今回の方法では、各レシートごとの取引がfreeeに記録されていきますが、一日の売上合計のみの記録が良い場合は、Google Sheetsの取引連携用シートを任意に編集してください。

なお、税率が2種類ある場合は、Integromatの編集が必要になると思います。
これについては、余裕があれば更新します。

以上です。

 

筆者:磯部 宇彰
参考サイト:
新卒ビジネス職の人間が、IFTTTを使ってGoogle Homeとfreeeを連携した話
【freee API】GASを用いてGoogleスプレッドシートと連携する

Link to post
Share on other sites
Create an account or sign in to comment

You need to be a member in order to leave a comment

Sign in

Already have an account? Sign in here.

Sign In Now

Loyverse Point of Sale

 

 

 

 

×
×
  • Create New...