飲食店用POSレジ(軽減税率対応)

いろいろなPOSシステムがある中で、飲食店用として、

  • Airレジ
  • Squareレジ

の2つに絞り、
どこまで使えるのかを、検証してみました。

 

何より、大事なこととして、

軽減税率対策・補助金対応か?

今回、10月に消費税が10%に増税になる予定ですが、
9月末までに、支払いを済ませ、
2019年12月16日までに、申請をすれば、
その3/4(1台20万円・1事業者200万円まで)が、対象となるようです。

※レシート印刷が必須

軽減税率対策補助金については、

共に、対応しているようですので、
それを踏まえ、

必要な機能

  1. クレジット決済手数料
  2. ハンディー対応(できれば、Androidにも対応)
  3. オーダーレシートの同時印刷(厨房にて)
    ドリンク・フードの注文を、
  4. API対応

を、検証していきたいと思います。

 

1. クレジット決済手数料

  • Airレジ
    • Visa、Master、Amex 3.24%
    • JCB、Diners、Discover 3.74%
    • 交通系IC(Suica、Pasmo)3.24%
    • 電子マネー(iD、Quickpay) 3.74%
  • Squareレジ
    • Visa、Master、American、Diners、Discover 3.25%
    • JCB、Dina 3.95%

共に、月額固定費は不要

Airレジは、国産(リクルート)が故に、電子マネーが使える点が有利です。

 

2. ハンディー対応

  • Airレジ(iPhone)
  • Squareレジ(iPhone / Android)

共に対応していますが、端末単価の安いAndroidが使えるのは、利点ですが、
iPod Touchを使えば、21800円~と、コストを抑えることが出来ます。

 

3. オーダーレシートの同時印刷

スタッフが、注文を聞いて、厨房まで戻って、
また運んでは、また戻って、なんて、
動線が多くて、大変です。。。

なので、入力した注文は、厨房やカウンター内に置いたプリンターに、
即時印刷できるようにして、移動を減らしたいと考えるわけです。

Squareレジは、ハンディーはあるものの、
現時点では、対応していないようです。

別端末でのオーダー機能はないので、何を注文したかは会計時に入力する形となります。

引用 >> https://rejichoice.jp/square_02/

 

4. API対応

さて、これが一番大事な機能だと考えるわけですが、
何をしたいか?、というと、

  • オーダーしたいのに、スタッフがなかなか来ない

という経験もあり、
店側としては、

  • 注文を配膳しないといけないし、注文聞き回るのは大変!

そのため、ピークは限られているのに、
フロアスタッフがたくさん必要となります。

はい。そこで、お客さん自ら、注文を発信してくれればよいのです。

近年では、テーブルにタブレットが置いてあって、
そこから注文ができるようになっていますが、

それがそれぞれのスマホから、
注文できるようにできれば?

費用対効果が、とても高いと思いませんか?

https://developer.squareup.com/docs/orders-api/manage-orders#add-fields

注文と、その支払い、管理ができるようなんですが、

  • どのテーブルからの注文か?
  • 追加注文をどうやってまとめられるか?

という点が、

WooCommerceと標準対応しているので、
プレオーダーには使えそうですが、
テーブルからの注文には、使えそうにありません。

 

ということで、まとめ。

Airレジのメリット

  • 国産(リクルート)
  • ビックカメラで体験できる
  • 電子マネーの支払いに対応。
  • ハンディー対応

Squareレジのメリット

  • API対応(ただ、期待するようなWEBからの注文が取れるかは、まだ不明)

ということで、2つのシステムを比較した結果
圧倒的に、Airレジに軍配が上がりました!

Squareは、海外で多数使用されているようですが、
日本独自のマーケットの対応は、まだまだという感じで、
この1ヶ月でどちらかを選ぶとなれば、断然Airレジですね。

上記動画を見る限り、フロアスタッフの仕事量が
大幅に軽減されますが、
各テーブルで、自分のスマホで注文できるようになれば、言うことなしですね。

***

軽減税率対策・補助金申請

他社さんも検討したいところですが、
イニシャルが安い=専用端末でないということで、
今回は、Airレジをと思うので、このタイプの申請になりますね。

軽減税率対策・補助金

9月末までに、支払いを済ませないといけないので、
ビックカメラに行って、デモを見てくることにします。

ただ、クレジットカードでの購入の場合、
9月末までに引き落とし
がなされないと、申請ができない
という、おぞましいシステムとなっており、

今からだと、現金払いしかないようです。

 

-

TParametersにNULL値でエラー @Delphi XE2

3421 adErrDataConversion
アプリケーションが、現在の操作に対して間違った型の値を使用しています。たとえば、ストリームを使用する操作に文字列を指定した可能性があります。

という、エラーが発生。

今回、備考で使用していたftMemoFieldも同様のエラーが発生し、
ftWideMemoに変更してみたり、
SQLServerの型も、text >> nvarchar(MAX)に置き換えたりしたが、
だめだった・・・

ひとまずコメントアウトしてみたが、別の項目でもエラーが発生する。

大昔に悪銭苦闘し、

   Param.Size := Field.Size;
        if (Field is TBlobField) then begin
          with Field do
DebugPrint(FieldName + ': ' + Value + '/' + NewValue + '/' + OldValue);
          // blob #274 
          Param.Size := (Field as TBlobField).BlobSize;
        end;
        if Param.Size <= 0 then
          Param.Size := 1;
        if VarIsNull(Value) then
          if not (Param.DataType in [ftCurrency]) then
            Param.DataType := ftString;

こんなコードを記述して、TParameterを使用して、NULL値を、
Insert/Update文で、SQLServerに値を挿入していたが、
時が経過し、このコードが通用しなくなったようだ。

***

ParamByName('ID_TEST_2').DataType := ftInteger;
ParamByName('ID_TEST_2').Clear;
ParamByName('ID_TEST_2').Bound := True;

※https://stackoverflow.com/questions/23269537/delphi-xe2-how-to-pass-a-field-with-null-value

というコードで、NULLが代入できるようだが、
Clearも、Boundも定義されていない。。。@Delphi XE2


今回発生したのは、Int型。
上記、コードを見直してみると、文字列に対しての処理は問題ないが、
Int型、text型に対しては、処理出来ていない・・・

 

ということで、

 if VarIsNull(Value) then
  Param.DataType := Field.DataType;

と、NULLのときは、元の型を渡してやるだけでよかった。

if Param.Size <= 0 then 
  Param.Size := 1;

は、意味のある1つの解決方法だったと思われるが、
今は通用しないようだ。

-