プリンター設定
プリンター設定はPOSの設定 > プリンターにあります。各デバイスは独自のプリンター構成を管理しており、プリンターはローカルに保存され、デバイス間で同期されません。
プラットフォーム別の対応プリンター
プリンターを追加フォームは使用しているアプリに応じて表示が変わり、各プラットフォームで実際に使用できる接続方法とオプションのみが表示されます。
| プラットフォーム | 対応プリンター | 接続方法 |
|---|---|---|
| Webアプリ | Webサーバー内蔵のEpsonおよびStarプリンター | ネットワーク(HTTP) |
| デスクトップアプリ | ネットワーク対応レシートプリンター全般 | ネットワーク(raw TCP) |
| iOSアプリ | EpsonおよびStar | ネットワーク、Bluetooth |
| Androidアプリ | EpsonおよびStar | ネットワーク、Bluetooth、USB |
Webブラウザは生のTCP接続を開くことができません。EpsonおよびStarのレシートプリンターには、HTTP経由で印刷ジョブを受け付ける内蔵Webサーバーが搭載されており、ブラウザからESC/POSコマンドを送信する唯一の方法です。デスクトップアプリにはこの制限がなく、TCP経由で直接接続できます。
モバイルアプリでは、BluetoothおよびUSB印刷はEpsonとStarの公式SDKを経由するため、これらの接続にもEpsonまたはStarのプリンターが必要です。汎用プリンターはネットワーク経由でのみ使用できます。
プリンターの追加
プリンター設定を開く
POSの設定 > プリンターに移動します。プリンターがまだ設定されていない場合は、プリンターを追加ボタンのある空の状態が表示されます。各プリンターにはプリンター名があり、これは単なるラベルで「Receipt Printer」(以降「Receipt Printer 2」など)と自動入力されます。プリンターを区別しやすい任意の名前に変更できます。
プリンターの接続方法を選択
この手順はプラットフォームによって異なります:
- Webアプリ — ベンダーとして Epson または Star を選択します。ブラウザはこの2社の内蔵Webサーバーにしかアクセスできないため、Webではこれが最初の選択肢です。
- デスクトップアプリ — プリンターはネットワーク経由で接続されるため、ここで追加で選択する項目はありません。
- モバイルアプリ — 接続タイプとして ネットワーク、Bluetooth、または USB(USBはAndroidのみ)を選択します。下のフィールドは選択内容に合わせて変わります。
プリンターの識別
ネットワークプリンター — IPアドレスを入力します(例:192.168.1.100)。WCPOSがそのアドレスを検出し、EpsonかStarかを判別して、ポート、コマンド言語、ベンダーを自動入力します。検出が完了すると「Detected: Epson」または「Detected: Star」のラベルが表示されます。Webアプリでは、接続先の正確なエンドポイントURLも表示されます。
BluetoothまたはUSBプリンター(モバイル) — 検出されたデバイス一覧からプリンターを選択します。デバイスを選択すると、名前とベンダーが自動入力されます。プリンターが一覧に表示されない場合は、プリンターをスキャン(Bluetooth)または更新(USB)をタップしてください。
自動検出が正しく動作しない場合は、詳細設定ですべての項目を調整できます。
保存してテスト
保存をクリックします。WCPOSはまずテスト印刷を送信し、成功した場合のみプリンターを保存します。
テスト印刷は短い診断用の印刷で、番号付きの列ルーラー、中央揃えの通常サイズおよび倍角テキスト、左右揃えの行、用紙カットが含まれます。プリンターに到達できるかだけでなく、用紙幅、配置、サイズ、カットがすべて正しく設定されていることを確認できるように設計されています。
テストが失敗した場合、エラーとともにテストせずに保存オプションが表示され、そのままプロファイルを保存できます。
接続タイプ(モバイルアプリ)
iOSおよびAndroidアプリでは、プリンターは3つの方法で接続できます。プリンター追加フォームの上部で接続タイプを選択すると、接続フィールドがそれに応じて更新されます。
ネットワーク
プリンターがデバイスと同じWi-Fiネットワーク上にある場合の接続方式です。プリンターのIPアドレスを入力してください — プリンターのIPアドレスを確認するを参照してください。ネットワークプリンターはEpson、Star、またはGenericに対応しています。
Bluetooth
プリンターがBluetooth経由でデバイスとペアリングされている場合の接続方式です。プリンターをスキャンをタップし、一覧からプリンターを選択すると、名前とベンダーが自動的に入力されます。Bluetooth印刷はEpsonおよびStarのネイティブSDKを使用するため、EpsonまたはStarのプリンターが必要です。
USB(Androidのみ)
プリンターがUSBケーブルで接続されている場合の接続方式です。更新をタップし、接続済みデバイスの一覧からプリンターを選択してください。Bluetoothと同様に、USB印刷にはEpsonまたはStarのプリンターが必要です。iOSには汎用的なUSB周辺機器のサポートがないため、このオプションはAndroidでのみ表示されます。
ポート設定はネットワークプリンターにのみ適用されます。Bluetooth および USB 接続では表示されません。
詳細設定
詳細設定を展開すると、プリンター設定を細かく調整できます。これらの項目のほとんどは、ベンダーが認識されると自動的に入力されます。
| 設定 | オプション | 説明 |
|---|---|---|
| ベンダー | Epson、Star、Generic | プリンターの製造元です。Web アプリでは、ベンダーは詳細設定ではなくフォーム上部の主要な選択肢(Epson または Star のみ)として表示されます。Generic はデスクトップおよびモバイルアプリのネットワークプリンターで利用できますが、Bluetooth や USB 接続では利用できません。 |
| ポート | 自動入力 | プリンターのネットワークポートです。ネットワーク接続のみ — Bluetooth および USB では表示されません。 |
| 言語 | ESC/POS、StarPRNT、Star Line Mode | プリンターが使用するコマンドプロトコルです。検出されたベンダーに基づいて自動入力されます。 |
| 印字幅 | 58mm(32文字)、80mm 標準(42文字)、80mm ワイド(48文字) | 1行に収まる文字数です。用紙とプリンターに合わせて設定してください。80mm プリンターのほとんどは1行42文字ですが、48文字のものもあります。 |
| フルレシートラスター | オフ / オン | レシート全体をテキストではなく画像として印刷します。詳しくは下記のフルレシートラスターを参照してください。 |
プリンターオプション
これらのトグルは「プリンター追加」フォームの下部にあります:
| オプション | 説明 |
|---|---|
| 自動用紙カット | レシート印刷後に自動的に用紙をカットします |
| キャッシュドロワー自動オープン | 印刷後に接続されたキャッシュドロワーを開くキックコマンドを送信します |
| デフォルトに設定 | このプリンターをデフォルトプリンターに設定します — 特定のプリンターにルーティングされていないレシートに使用されます |
販売完了時にレシートを自動印刷する機能は、プリンター設定ではなくカート設定です。POSのカート設定でレシート自動印刷を有効にしてください。使用されるプリンターは、デフォルトプリンターとテンプレートごとのプリンタールーティング設定によって決まります。
印刷ルーティング
複数のテンプレートを使用している場合 — たとえばサーマルレシートと A4請求書など — 印刷ルーティングにより、各テンプレートがどのプリンターで印刷されるかが決まります。ルーティングには3つの階層があり、以下の順序で確認されます:
- ジョブごとのオーバーライド。 レシート画面では、テンプレート切り替えの横にプリンタードロップダウンがあります。ここでプリンターを選択すると、その印刷ジョブに限りすべての設定がオーバーライドされます。テンプレートを切り替えると自動にリセットされます。
- 設定オーバーライド。 設定 → 印刷ルーティングで、各テンプレートに特定のプリンターを割り当てられます。たとえば、サーマルレシートをEpsonネットワークプリンターに、HTML請求書をシステム印刷ダイアログにルーティングできます。テンプレートを自動に戻すとオーバーライドが解除されます。
- 自動マッチ。 オーバーライドが設定されていない場合、WCPOSは自動的にマッチングを行います:
- サーマルテンプレートは、文字幅が一致するサーマルプリンターにルーティングされます。58mmサーマルテンプレートは32カラムのプリンターを優先し、80mmテンプレートは42カラムまたは48カラムのプリンターを優先します。
- HTMLテンプレートはシステムの印刷ダイアログにルーティングされます。
- 複数のプリンターが一致する場合、デフォルトのプリンターが優先されます。
テンプレートを互換性のないプリンターに手動で送信した場合(たとえば、サーマルテンプレートをシステムダイアログに送信した場合)、レシート画面に黄色の不一致警告が表示されます。印刷は続行されますが、出力が正しくレンダリングされない場合があります。
ルーティングのオーバーライドはデバイスごとに保存されます。各iPad、スマートフォン、またはコンピューターがそれぞれのルーティングを管理し、サーバー側での同期はありません。
印刷ルーティング設定ページは、少なくとも1台のプリンターを追加した後にのみ表示されます。プリンターが設定されていない場合、すべてのテンプレートは暗黙的にシステムの印刷ダイアログを使用します。
フルレシートラスター
デフォルトでは、WCPOSはレシートをサーマルプリンターにテキストとして送信します。プリンター内蔵フォントを使用するため、高速でコンパクト、鮮明に印刷されます。ただし、サーマルプリンターのフォントは限られた文字セットしかカバーしていません。プリンターにフォントがない文字体系(多くの非ラテン文字、右から左に書く文字、一部の記号など)は、空白のボックスや文字化けとして出力されることがあります。
フルレシートラスターはこの問題を解決します。この機能を有効にすると、WCPOSはレシート全体を画像としてレンダリングし、その画像をプリンターに送信します。これにより、どの言語や文字体系でも、画面の表示と完全に一致した印刷結果が得られます。
各プリンターの詳細設定で有効にしてください。注意点:
- **印刷速度が低下します。**画像はテキスト1行よりもはるかにデータ量が大きいため、レシートの送信と印刷に時間がかかります。
- **必要な場合のみ使用してください。**テキストでレシートが正常に印刷される場合は、オフのままにしてください。
- この設定は、ネットワーク、Bluetooth、USB など、あらゆる接続方式のサーマルプリンターに適用されます。フルページレンダリングから印刷するシステム印刷ダイアログには適用されません。
プリンターの検出
モバイルアプリでは、プリンター追加フォームにBluetooth(iOS および Android)とUSB(Android のみ)接続で検出された近くのプリンターが一覧表示されます。プリンターをスキャンまたは更新をタップして、一覧からプリンターを選択してください。名前とベンダーは自動的に入力されます。
ネットワークプリンターの場合は、プラットフォームを問わず IP アドレスを直接入力します。詳しくは下記のプリンターの IP アドレスを確認するを参照してください。Web アプリにはネットワーク検出機能がないため(ブラウザからネットワークスキャンはできません)、常に手動で IP アドレスを入力します。
プリンターの IP アドレスを確認する
ほとんどのレシートプリンターでは、IP アドレスが記載されたセルフテストページを印刷できます:
- Epson:電源投入時にフィードボタンを押し続ける
- Star:電源が入った状態でフィードボタンを5秒間押し続ける
または、ルーターの接続デバイス一覧やプリンターの設定ユーティリティで確認することもできます。
固定IPアドレスを推奨
レシートプリンターには固定IPアドレスの使用を推奨します。プリンターの再起動時にアドレスが変更されるのを防ぐため、以下のいずれかの方法で設定してください:
- プリンター内蔵のWebインターフェース(通常は
http://<printer-ip>でアクセス可能) - ルーターのDHCP設定(プリンターのMACアドレスに予約IPを割り当て)
Epsonプリンター
ePOS対応のEpsonプリンターはHTTPで通信します。WCPOSはプリンター内蔵のWebサーバーにSOAP/XMLリクエストを送信します。
接続情報:
- ポート
8008(HTTP)または8043(HTTPS) - エンドポイント:
/cgi-bin/epos/service.cgi
動作確認済みモデル:
- Epson TM-T70-i 2(ネットワーク)
- Epson TM-m30iii(Printus ミドルウェア使用)
Epson プリンターの設定で ePOS が有効になっていることを確認してください。プリンターのウェブインターフェースに http://<printer-ip> からアクセスして、ePOS 設定を確認・有効化してください。
モバイルアプリでは、Epson プリンターは Epson のネイティブ SDK を通じて Bluetooth または USB 経由でも接続できます。IP アドレスや ePOS ウェブサーバーは不要です。
Star プリンター
WebPRNT に対応した Star プリンターは HTTP 経由で通信します。WCPOS は Star WebPRNT エンドポイントにコマンドを送信します。
接続情報:
- HTTPS または HTTP
- エンドポイント:
/StarWebPRNT/SendMessage
モバイルアプリでは、Star プリンターは Star のネイティブ SDK を通じて Bluetooth または USB 経由でも接続できます。
汎用プリンター
デスクトップアプリでは、RAW TCPを使用してあらゆるネットワークレシートプリンターに対応しています。プリンターのIPアドレスとポート番号(通常は 9100)を入力してください。ESC/POSコマンドを受け付けるサーマルプリンターであれば、メーカーを問わず使用できます。
モバイルアプリでも汎用プリンターに対応していますが、ネットワーク接続のみで、BluetoothやUSB経由では使用できません(BluetoothやUSBにはEpsonまたはStarプリンターが必要です)。Webアプリでは汎用プリンターには対応していません。
キャッシュドロワー
レシートプリンターに接続されたキャッシュドロワーは、販売ごとに自動で開くように設定できます。
- プリンターオプションでキャッシュドロワー自動オープンを有効にします
- POSは印刷後にESC/POSキックコマンドを送信します
キャッシュドロワーの制御にはサーマルプリンタープロファイルが必要です。ブラウザの印刷ダイアログではキャッシュドロワーを作動させることはできません。
トラブルシューティング
セットアップ中にプリンターが検出されない
- プリンターの電源が入っており、お使いのデバイスと同じネットワークに接続されていることを確認してください
- ネットワークプリンターの場合:IPアドレスが正しいことを確認してください(セルフテストページを印刷して確認できます)
- Webアプリの場合:プリンターがePOS/WebPRNTに対応したEpsonまたはStarモデルであることを確認してください
- デスクトップアプリの場合:Genericベンダーオプションでポート9100を試してください
- Bluetoothの場合:まずデバイスのBluetooth設定でプリンターをペアリングしてから、プリンターをスキャンをタップしてください
- USB(Android)の場合:ケーブルを確認し、USB権限のプロンプトが表示された場合は許可してください
- ファイアウォールが接続をブロックしていないことを確認してください
プリンターは検出されるが印刷されない
- 用紙ロールを確認してください — 用紙切れまたは紙詰まりの可能性があります
- 印字幅の設定が用紙サイズ(58mmまたは80mm)と一致していることを確認してください
- プリンター本体からセルフテストを印刷して、正常に動作することを確認してください
- コマンド言語がプリンターと一致していることを確認してください(EpsonはESC/POS、StarはStarPRNTまたはStar Line Mode)
レシートが文字化けする、または誤った文字が印刷される
- コマンド言語の設定が正しくない可能性があります。ESC/POS、StarPRNT、Star Line Mode を切り替えてお試しください
- プリンターのテキスト幅の設定が正しいことを確認してください
- レシートが非ラテン文字や右横書き言語の場合は、詳細設定でフルレシートラスターを有効にしてください。レシートを画像として印刷するため、どの言語でも正しく表示されます
キャッシュドロワーが開かない
- プリンターオプションでキャッシュドロワーの自動オープンが有効になっていることを確認してください
- ドロワーがプリンターの DK ポートに接続されていることを確認してください(別の電源ではなく)
- すべてのプリンターがドロワーキックコマンドに対応しているわけではありません。プリンターのドキュメントをご確認ください
Webアプリから接続できない
- Webアプリは、Webサーバーを内蔵した Epson および Star プリンターにのみ接続できます
- 汎用プリンターおよび USB プリンターはWebでは対応していません。デスクトップアプリまたはモバイルアプリをご利用ください
- サイトが HTTPS を使用しているのにプリンターが HTTP のみに対応している場合、ブラウザーが混合コンテンツとして接続をブロックすることがあります
Bluetoothプリンターが接続できない(モバイル)
- WCPOSにプリンターを追加する前に、デバイスのシステムBluetooth設定でプリンターをペアリングしてください
- Bluetooth印刷はEpsonおよびStarプリンターのみ対応しています — 汎用Bluetoothプリンターには対応していません
- プリンターが一覧に表示されない場合は、プリンターをスキャンをもう一度タップし、プリンターの電源が入っていて通信範囲内にあることを確認してください