予約を受け付けると予約期間は予約済みとなり、システムは重複して予約を受け付けないようになります。予約カレンダーでは予約済みマークが表示され、その期間を含む予約はできません。
この貸出期間において、次の予約を受け付ける場合に「なか1日」のマージンを設けたい場合、各種設定の予約条件で「貸与休止日数」を設定します。
この「貸与休止日数」を「1日」に設定すると、予約カレンダーは予約期間の前後に1日のマージンを設定、予約済み状態を表示するようになり、貸し出しされなくなります。
予約を受け付けると予約期間は予約済みとなり、システムは重複して予約を受け付けないようになります。予約カレンダーでは予約済みマークが表示され、その期間を含む予約はできません。
この貸出期間において、次の予約を受け付ける場合に「なか1日」のマージンを設けたい場合、各種設定の予約条件で「貸与休止日数」を設定します。
この「貸与休止日数」を「1日」に設定すると、予約カレンダーは予約期間の前後に1日のマージンを設定、予約済み状態を表示するようになり、貸し出しされなくなります。
シーズン料金は、スケジュール管理のカレンダーの日付に「High / Low」を設定し、レンタル期間によりレンタル料金を割り増ししたり、あるいは値引する機能として、Ver.1.1で機能追加しました。
ところで料金計算の元になるレンタル期間ですが、それまでレンタル期間を時間総数で計算し、料金計算はレンタル時間で求めておりました。
例えばレンタル料金を1日10,000円、2日20,000とした場合、レンタル期間が11時〜翌日10時であれば、料金は時間総数で計算すると23時間10,000円となります。
このようなレンタルを2日の料金とするため、Ver.1.3で料金計算方式として「時間」か「日付」で計算する選択機能を追加しました。これにより計算方式が「日付」で設定されていれば、上の例は2日20,000円となります。
レンタル期間中のシーズン設定により、料金を割り増したり、割引したりすることができます。
例えば週末の土曜日と日曜日に割増料金を設定するため、スケジュールカレンダーで「High」を設定し、料金データのHighシーズンに5,000円を設定したとします。
この場合上記の例では2日間を土曜日、日曜日とすると、2日で30,000円となります。しかし、もし計算方式が時間なら20,000円です。
このように金額が大きく跳ね上がる例があるため、シーズン料金の計算は計算方式が「日付」の場合、返却日のシーズン料金を加算しないようにしました。
しかしながら、0時を過ぎて日付が変わる場合は常に割増し(または割引き)したい場合もあります。
そこでVer.1.5において、シーズン料金の計算で当日に返却する場合を除き、最終日のシーズン料金を計算するか、それとも最終日のシーズン料金は除くか、「料金加算日」の設定で選択できるようにしました。
料金計算がより柔軟に計算できるようになりましたので、レンタル業務にご活用ください。
予約フォームや予約の確認表示で、車両データの登録で画像が選択されている場合その画像が表示されます。
一方、オプションデータに画像の設定項目がありますが、これまではデータ登録のみで画像の表示機能はありませんでした。
Ver.1.5から予約フォームや予約の確認において、オプションデータに設定された画像が表示されるようになりました。
なお画像の登録は2つ設定できますが、表示は1つめの項目に登録された画像が表示されます。
Ver.1.7.3より前のバージョンにおいてシーズ料金の計算は、特別料金期間中は別途料金を定めるため除外していました。
Ver.1.7.3以降は、料金表管理の設定で、シーズン料金を合計計算に含める設定を用意しました(下図参照)。
(210722)
このシステムの予約操作の流れは次の通りです。
この画面表示のとき、予約操作は終了した状態となります。この後別のページへ移動しても、他のサイトへ移動しても支障はありません。
予約操作の終了画面は、予約内容を保存したいときプリントアウトするか、Windows 10やMac OS Xでは印刷データをPDFファイルに保存することができるように、「印刷」ボタンが用意されています。
またクレジットカード決済の機能を組み込んでいる場合、「支払」ボタンが用意され、カード決済処理へ遷移することができます。
ところで、現地で支払いをする人や銀行振込で支払いをする人は、この画面では予約操作が終了したことを明確に認識できないことがあります。
そこで新たに「終了」ボタンを用意しました。「終了」ボタンを押すと上図の画面から下図の画面に表示が切り替わります。
別途予約完了ページを表示したい場合、以下のスラッグ名を設定した固定ページを用意することで、「終了」ボタンによりリダイレクトして表示することができます。
booking-thanks
予約後、予約者にお知らせしたい情報、例えば振込先の銀行口座、あるいは窓口で車両を貸し渡す際の免許証提示などの注意事項を掲載するなど、業務に合わせて用意いただけます。
レンタル料金計算に、新しい計算方法を追加しました。
料金表管理の料金計算の設定に関して、新しい選択項目「計算方式」が追加されました。
計算方式は、「時間」か「日付」のどちらかを選択します。これまでの計算は「時間」でした。「日付」による計算が新しく追加された計算方式となります。
この項目による計算の違いは、レンタル期間の算定において「時間」を単位とするか、「日数」を単位とするか、の違いとなります。
具体例として「10:00」に借り、翌日「16:00」に返却する場合を計算します。
方式 | レンタル期間 |
時間 | 30時間 |
日付 | 2日間 |
計算方法の「単価計算」や「表引き」は、このレンタル期間を基にして料金を決定します。
「単価計算」は、「単価料金」の設定で「単位」を「時間」または「日」で設定しますが、例えば「6時間3,000円」とした場合
30÷6=5、5×3000=15000
で、料金は15,000円となります。
「表引き」の場合、表に設定された30時間を含む最小の「時間」を選択します。料金表が下図のように設定されている場合
「2日」が30時間を含む最小の時間になりますので、料金は15,000円になります。
「日付方式」の計算は、例えばキャンピングカーのレンタル料金設定において、「1泊20,000円」のような設定方法に適しています。
例えば料金表を次のように設定した場合
日帰りのデイキャンプであれば17,000円、1泊2日で22,000円となります。
単価料金設定で「1日22,000円」を設定すれば、2泊以降1日増加するごと「22,000円」が追加されます。
本システムの料金計算は、料金計算管理によって複数の計算方法を設定、用意することができます。
ですのでレンタルする車両が、軽自動車、乗用車、スポーツカー、トラック、特殊車両、キャンピングカーなど様々ありますので、そのレンタルの性質に合わせて、料金計算データを設定してください。
予約確認画面で「支払い」ボタンを押すと「決済」ページへ移動します。この決済ページは、スラッグ名に「mtspayjp-payment」と名付けた固定ページを利用します。
決済ページの機能は、支払金額の明示とトークンを取得するための表示処理の機能を受け持ちます。また決済の終了メッセージの表示もこのページ上で表示します。
下の図は「支払い」ボタンが表示された予約確認画面です。
「お支払い」ボタンを押すと、下の図の決済ページへ移動します。
ここで「お支払い」ボタンを押すとチェックアウト機能が実行され、カード情報を入力して、トークン取得が実行され、決済が実行されます。
カード情報入力は「チェックアウト」機能を利用してダイアログを表示しますが、ダイアログが正常に表示処理できない場合、決済プラグインの設定画面(下図参照)でカード入力フォームを「ページ」に設定してください。
カード情報の入力フォームが、下の図のように決済ページに表示され、トークンの取得と決済の処理がじっこうされるようになります。
決済ページの支払内容の項目名は、「レンタカー予約 xxxxxxxxxx 料金」と表示されています。「xxxxxxxxxx」には予約IDが挿入されます。
この表示内容は、レンタカー予約システムのメッセージファイル「lang/Translation.php」のデータを書き換えることで、変更することができます。
当該ファイルの下部に「決済のレンタル料金品名」とコメントされた、「$payChargeArticle」という配列変数が定義されています。この設定を変更することで出力内容が変更されます。
また定義する文字列中に予約IDを含める場合、「%RESERVE_ID%」というリプレースメントを利用することで、その箇所に予約データの情報が埋め込まれます。
利用可能なリプレースメントは、スタートガイドの導入編「2.予約メールの設定」ページに一覧が掲載されています。
ここでは弊社のPAYJP用決済プラグイン「MTS Pay Payjp」について説明します。
決済プラグインの動作は「決済の仕組みとセキュリティ」で説明したように、トークンを利用して決済代行会社のサーバーに決済を依頼します。
トークンの取得と決済は、どちらも決済代行会社が提供する機能をプラグインに取り込んで利用しています。
ですので不具合が発生するかどうか、決済の専門会社の機能を利用するため安心感がありますが、発生した場合はプラグイン側か決済代行会社側か機能を切り分けて確認することになります。
次の図は弊社のPAYJP用決済プラグインの設定画面です。
設定項目は多くありません。決済代行会社から提供されたキーと、テスト運用か本番か、決済処理は与信か確定か、の3つです。
設定項目「決済処理」が「与信」の場合、「与信認証期間」で設定した期間(日数)を指定できるように追加しました。Pay.JPの場合、最大60日まで設定可能です。
与信で決済された売上データは、Pay.JPの管理画面で支払い情報が「認証済み」と表示されます。
この売上は、支払い日時から与信認証期間の日数以内に売上を「確定」しないと、カードから引き落としされず、入金もされなくなります。
ここではトークンを取得する「チェックアウト」機能を利用し、支払金額を入力して決済を実行する、テスト操作ができます。
「チェックアウト」は、JavaScriptによるカード情報の入力ダイアログ表示、トークンを取得する機能で、PAYJPから提供される機能全般を指します。
トークンを「取得する」ボタンをクリックすると、次のカード情報入力ダイアログが表示されます。
ここで入力されたデータが実際の支払に利用されることはありません。
カード情報を入力後トークンを取得すると、次のように表示されます。ここで金額を入力して、決済をテスト実行します。
決済を実行すると、プラグイン側の「決済リスト」にその結果が登録されます。
決済処理リストは、決済が実行された予約データのID(=請求ID)と、決済代行会社で処理されたデータのID(=決済ID)の関係を、一覧表示して確認するためのデータになります。
実行された決済の詳細は、決済代行会社が提供する管理画面で確認、キャンセルなどの操作をすることになります。
予約システムから支払い処理へ遷移すると、決済データが新しく登録されます。この決済データがどの予約データのものかのリンク先が「予約ID」で示されます。
このタイトル項目名は、以前の「請求ID」から「予約ID」に名称が変更されました。
次に決済データの「状態」についてですが、以下の3つの状態があります。
状態が「開始」のとき、決済を実行していないためPay.JPの売上データは登録されず、当該データの「課金ID」は「0」の状態となります。
決済ページの組込ついて、動作の設定も含め次のページで詳細を説明します。
» 決済ページの準備
カード決済された売上の入金やお客様への返金など、どのような機能があるかは決済代行会社により異なります。管理画面で操作可能な機能や詳細は、サービス提供先の決済代行会社に確認をお願いします。
ここではPAYJP社用の弊社プラグインを導入する場合、実行可能な機能について運用面からの設定や用語の説明をします。
弊社の決済プラグインは、決済が実行された予約に対して返金したり、追加決済をする機能は現在ありません。
ですので予約がキャンセルされた場合の返金や、キャンセル料の徴収を本システムで実行することはできません。
それぞれの対応について、与信と確定のどちらで決済を実行するか、で変わります。以下に与信と確定の説明をします。実情に合った運用を検討してください。
売上の入金は、「確定」で実行された決済が対象となります。「与信」で実行された決済は、確定されないと一定期間(PAYJPでは最大60日)が過ぎたところで解放されます。
「与信」で実行する決済は、与信枠の上限まで登録することができ、確定する際、減額して確定したり、あるいはそのままであれば支払いは実行されません。
ですので「確定」で決済された場合は、予約のキャンセルにより返金処理が発生する可能性があります。この場合「与信」で決済を実行し、レンタル日に「確定」処理をするようにすれば、返金処理が必要なくなります。
どちらの方法で運用するか、実情に合わせて決めてください。
次の図は、レンタカー予約システムの各種設定「料金決済」画面です。
入力項目について説明します。
「通貨」は、「円」がデフォルトでそれ以外の通貨は現在利用できません。
「消費税」の税率は変更することができます。この値は料金計算するときプログラムが参照します。税率変更による切り替わり期日の設定などはありません。
消費税の「計算方法」は、外税・内税・なしの3種類です。
「決済機能を利用」する場合、どの決済代行会社対応のプラグインを利用するか、ここで選択します。現在提供の決済プラグインは、PAYJPのみとなります。
決済を実行するための「支払いボタン」は、「予約の確認」画面上に表示されますが、表示期間は決済を受け付ける期間と同じで、期間外は表示されません。
決済を受け付ける期間は、予約日から貸渡日の間、「決済受付開始」、「決済受付期間」、「決済受付期限」の3つの設定で決まります。
「決済受付開始」は0とそれ以外の日数で、受付開始日を指定します。「0」の場合は予約実行直後から、0以外の日数は貸渡日の設定日数前から、の受け付けとなります。
「決済受付期間」は、決済を受付開始してからの支払いボタンが表示される日数となります。
「決済受付期限」の日数は、貸渡日の設定日数前まで、支払いボタンが表示されます。
例えばレンタル受付を60日前からとした場合で、決済を予約受付直後から貸渡日前日まで受け付けるときは次のように設定します。
予約受付開始:0、予約受付期間:60、予約受付期限:1
なお予約確認画面に表示する「支払い」ボタンは、与信・確定にかかわらず決済が実行されると表示されなくなります。
決済が正常に完了すると、予約システムで管理する予約データの決済項目が更新されます。そして「決済受付メール」にメールテンプレートが設定されている場合、そのメールテンプレートを予約者のメールアドレスに送信します。
メールテンプレートの設定は、スタートガイドの導入編にある「2.予約メールの設定」にありますので、そちらを参照ください。
料金の支払いを前もって受けたい場合、クレジットカードの利用がお客様と店舗の両者に便利な決済方法となります。
スマフォを利用したQRコード決済は、店頭での利用が一般的で決済額も少額です。Webサイトでの利用は、現状広まっておりません。
クレジットカードの決済は、お客様がカード情報をフォーム画面に入力しボタンを押すだけで支払いが終了する、簡単な操作になります。
以下本ページの説明は、決済代行会社であるPAYJP社と契約してクレジットカード決済する場合に利用する、弊社制作のプラグイン導入について関連する内容となります。
Webサイトでクレジットカード決済を利用する場合、店舗はクレジットカード会社と契約せず、決済代行会社と契約することになります。
決済代行会社では、インターネットを利用したWeb決済機能の提供からはじまって、クレジットカード会社からの代金の回収、店舗への入金、利用者への返金など、手数料は発生しますがそれらの業務を請け負ってくれます。
なお決済代行会社と取引する場合、信用調査が事前にありますのでご留意ください。
お客様がクレジットカードを利用する場合、一番注意する事は、お客様のクレジットカード番号が漏洩する心配がないかどうかです。
弊社が提供する決済機能は、クレジットカードの情報を予約システムに一切取り込みません。ですので予約システムからカード情報が漏洩することはありません。
その仕組みを簡単に説明します。下の図をご覧ください。
図は決済に関係する情報の流れを表しています。
Web上で決済する操作は
という流れになります。
情報漏洩の危険性は、管理者に悪意が無ければ主に「通信」と「サーバーアクセス」に注意を払うことになります。
決済代行会社からのトークン取得の通信は暗号化されていますが、支払い画面の表示は、通常予約システムを利用するサーバーの設定に依存します。
ですので予約システムを利用する場合は通信データを暗号化するため、サイトを必ずSSL通信となるように設定してください。
サーバーアクセスに関して予約システムでは、XSS、CSRF、SQLインジェクションの基本的な攻撃に対応しております。また本システムは個人情報を暗号化してデータベースに保存しております。
EUでは、GDPR(一般データ保護規則)など個人情報保護の規則が大変厳しくなっております。予約サイトを構築する場合、状況を確認して運営されることをお勧めします。
クレジットカード決済を利用する場合、決済代行会社との間で交わされる契約書の内容を確認してください。
例えば、他人のクレジットカードで支払いが実行された場合、カード保有者から不正利用の申し立てがあると、店舗側が利用者本人の確認を証明できないときは利用額を負担しなければならない、旨の記載があります。
レンタカーは店頭で車両の受け渡しがありますので、本人確認するなど悪用を想定して事前に対策を立てておくと安心です。
希望する車両が予約済みかどうか、あるいは借りられる車両があるかどうかは、予約カレンダーを見て確認します。
予約状況を表示するカレンダーは、これまで(Ver.1.1まで)は車両を選択して予約フォームページへ移動しないと確認できませんでした。
Ver.1.2では、ショートコード「rental_calendar」に車両IDを設定して、投稿や固定ページに予約カレンダーを表示する機能を追加しました。
[rental_calendar vid="xx"]
車両IDはカンマ区切りで複数指定できます。
ショートコードが指定されると、次のHTMLをセグメント単位で出力します。
上記の項目の中で、ショードコードにパラメータを指定をすることで非表示と(出力しないように)することができます。次のパラメータの設定で紹介します。
パラメータを設定することで、出力する内容を変更することができます。予約状況の見せ方に合わせ利用してください。
ショートコードを利用したカレンダーの表示は、プラグインディレクトリにある「css/rental_calendar.css」が読み込まれます。
CSSを修正して表示を変更したい場合はこのファイルを直接修正せず、新たに「css/rental_caldar_user.css」ファイルを登録すれば、この名称のcssファイルが優先して読み込まれるようになっています(Ver.1.2はcss/rental_calendar_users.cssです)。
上記表示は、元のcssファイルをコピーして次のような変更をしました。
.vehicle-calendar-box { display: table; width: 100%; } .vehicle-image { display: table-cell; vertical-align: middle; width: 49%; } .rental-calendar { display: table-cell; padding-left: 2px; vertical-align: middle; width: 49%; } .rental-calendar th, .rental-calendar td { border: 1px solid #cccccc; padding: 0.3em; text-align: center; width: 14%; font-size: 0.8em; }
CSSの設定は参考です、設定に誤りがあればご容赦ください。
Ver.1.1では料金計算機能に新しく、割増・値引料金機能が追加されました。
使い方は営業カレンダーにハイ、またはロウシーズンを設定、料金はレンタル期間中に設定されたシーズン料金が1日単位で割り増し、または値引きされます。
以下システムの料金計算に関して概要を説明、その後シーズン料金の詳細を説明します。
システムのレンタカー料金の計算は、次の3つの方法から1つを選択して利用します。
このシステムのレンタカーの料金計算は、料金表からの表引き計算を主要な計算方法としています。
セールス期間を設定し、期間中にレンタカーを予約した場合はレンタル料を特別料金とすることができます。
年末年始やゴールデンウィークなど、繁忙期に料金を割増設定したい場合に利用できます。
営業カレンダーにシーズンを設定する機能を追加しました。シーズンは上部メニューのセレクトボックスで選択します。
選択メニューは「—-」、「High」、「Low」の3つあります。
「—-」は、日付上をクリックすることで当該日のダイアログボックス編集となります。
「High」、「Low」を選択すると、カレンダー日付上をクリックしてON、OFFをトグルスイッチのように、シーズンの設定、解除の切り替えができます。
シーズンが設定されると、日付は色分け表示されます。(上記画面上部の凡例は説明のため画像を貼り付けたもので、実際の管理画面では表示されません。)
シーズンの設定データは、クラス属性として登録されます。ダイアログボックスで直接シーズンを指定できますが、複数のクラスを設定する場合は半角1文字空白を開けて、分かち書きしてください。
また文字列「-season」を含む別の文字列、あるいは複数のシーズンを設定すると正常に動作しないことがありますので、注意してください。
営業カレンダー編集後は、下部にある「保存する」ボタンを押してください。データベースのデータが更新されます。
シーズンの金額の設定は、料金表管理の料金データに新しく用意された「シーズン料金」で、ハイシーズン、ロウシーズンそれぞれを設定します。
フロントエンド画面のカレンダー表示で、シーズン設定が容易に分かるように日付項目の背景に、カラーを設定しています。
この背景色を設定する項目は、管理画面には用意されておりません。ご利用のサイトに合わせて、CSSファイルを利用して変更して下さい。