無料で使えるGoogleフォームって便利ですよね。
このGoogleフォームで自動返信メールを組み合わせることができれば、
無料で自動販売システムが構築できてしまいますよ。
ちなみに私は、
Webサイトで商品を販売する際に、
クレジットカード決済はStripeを使い、
銀行振込決済にGoogleフォームと自動返信メールを使っています。
(詳しイメージは下記の解説で使用している事例をご参照ください)
まずは前提となるGoogleフォームと自動返信メールの知識から!
以下の(外部サイト)記事がわかりやすいので一読されてください。
【画像で解説】Googleフォームの自動返信メールを設定する3つの方法を紹介
この記事で紹介されている3つの方法のうち、
3つめの「スクリプトを利用して設定する」だけは詳細が書かれていません。
「やや難易度が高いため、社内にコードがわかる方がいる際に検討しましょう。」
なぁんて遠回りに省略されていますが、
この部分を解説していきます。
この「スクリプトを利用して設定する」は、
記事で紹介されている1つめの「Googleフォームから設定する」や
2つめの「アドオンを使って設定する」より、
多少煩雑になりますが、
途中にGoogleスプレッドシートを経由することもあり、
より現場向きで、自由度も高いものになります。
それでは解説していきます。
今回は、
私が使用している方法を例にご紹介します。
Webページで商品を決済してもらう際に、
「クレジットカード決済」の他に
「銀行振込決済」をこの方法を使って個別に案内しています。
まずは、
Googleフォームを作成します。
今回の例では、
商品の購入申し込みをしてもらう内容になっています。
ご購入商品・個数・ご購入者情報などを入力してもらえるよう作成します。
「メールアドレスを収集」することを忘れないようにしましょう。
そしてフォームが完成したら、
このGoogleフォームのURL(※)は、
販売ページのボタンにリンクさせるなどして活用します。
※GoogleフォームのURLは、
画面右上の「送信」ボタンから、「送信方法」のうちリンクを選んで、
表示されるURLをコピーして使用してください。
流れとしては、
販売ページに作成した決済ボタンなどから、
このGoogleフォームに飛んでもらい、
具体的な購入申し込みをしてもらうということです。
次に必要となってくるのが、
①これらお申込み情報の確認・管理と
②個別お申込みに(振込先口座などを記載した)自動返信メールを送ることです。
①お申込み情報の確認・管理
こちらは簡単です。
該当するGoogleフォームの「回答」タブを開いて、
右上の「+スプレッドシートで表示」を押すだけです。
すると自動的にフォームとリンクしたスプレッドシートが作成されページ遷移します。
こうすることでお申込みがある度に、
このGoogleスプレッドシートに自動的に情報が蓄積されていきます。
複数端末などで申込内容がいつでも詳細確認できるようになります。
同時に、
申込にリアルタイムで気づきたい場合は、
同じGoogleフォームの右上の「+スプレッドシートで表示」の右横にある「︙」を押して、
「新しい回答についてのメール通知を受け取る」にチェックを入れておきましょう。
このメールが現在ログイン中のGoogleアカウントのGmailに届きます。
②個別お申込みに(振込先口座などを記載した)自動返信メール
さて、
ここからが今回の山場です。
上記のようにフォームを作成しスプレッドシートに遷移した状態から始めます。
(1) スプレッドシートの左上のメニュー欄から「拡張機能」を開きます。
(2) 「Apps Script」を開きます
(3) 開いたコード入力画面に以下のコードを書き加えます。
一旦テキストアプリ(テキストドキュメント)などにコピペして、赤字部分を書き換えた上でコード入力画面に貼りつけることをおススメします。コード表示部分の右上「HTML」の横のボードマークからコードを一括コピーできます。
function auto_reply() {
//自動返信メールの件名
var title = "【ご購入お申込みありがとうございます(自動返信)】";
//自動返信メールの本文1(\nは改行)
var body
= "この度は●●(商品名)をお申し込みいただきまして、誠にありがとうございます。\n"
+ "ご購入代金を以下にお振込お願い申し上げます。\n"
+ "◆◆銀行(4桁銀行コード)\n"
+ "△△支店(3桁支店コード)\n"
+ "普通預金\n"
+ "口座№ 1234567\n"
+ "口座名義人 ■■■■(あなたの屋号など) \n"
+ "お振込金額 1個あたりの商品代金(税込)★★円 × ご購入個数 の合計金額 \n"
+ "なお、お振込手数料はご負担ください\n"
+ "------------------------------------------------------------\n\n"
//自動返信メールの本文2(\nは改行)
var body2
= "------------------------------------------------------------\n\n"
+ "お振込を確認でき次第、\n"
+ "納品メール(納品に使用するメールアドレス)より\n"
+ "お客様のメールアドレスに納品させていただきます。\n"
+ " \n"
+ "●●(商品名)の納品を今しばらくお待ちくださいませ。\n";
+ "本メールに心当たりが無い場合は、その旨を記載の上ご返信下さいますようお願い申し上げます。\n\n";
//本文作成用の変数
var sheet = SpreadsheetApp.getActiveSheet();
var row = sheet.getLastRow();
var column = sheet.getLastColumn();
var range = sheet.getDataRange();
//メールアドレス保存用の変数(最後のメール送信時に使用。)
var mail = "";
for (var i = 1; i <= column; i++ ) {
//スプレッドシートの入力項目名を取得
var header = range.getCell(1, i).getValue();
//スプレッドシートの入力値を取得
var value = range.getCell(row, i).getValue();
//本文1(body)にスプレッドシートの入力項目を追加
body += "■"+header+"\n";
//本文1(body)にフォームの入力内容を追加
body += value + "\n\n";
//スプレッドシートの入力項目が「お名前」の場合は、「様」を付け本文の前に追加
if ( header === 'お名前' ) {
body = value+" 様\n\n"+body;
}
//フォームの入力項目が「メールアドレス」の場合は、変数mailに代入
if ( header === 'メールアドレス' ) {
mail = value;
}
}
//本文1に本文2を追加
body += body2;
//宛名=mail、件名=title、本文=bodyで、メールを送る
GmailApp.sendEmail(mail,title,body);
}
(4) コードが書きこめたら、
「プロジェクトの保存」(フロッピーディスクのような絵柄の)ボタンを押してから、
「▷実行」ボタンを押して、ここまでの作業が正常に動作するかを確認します。
画面下部に以下のように表示されれば問題ありません。
これらの作業に「権限の承認」を求められる場合があります。
表示される指示に従って「本人確認」を完了し、
「このアプリはGoogleで確認されていません」表示が出たら「詳細」を押し、
「フォーム名(安全ではないページ)に移動」を押します。
次のページで「許可」を押して完了です。
あなたのGmailにもメールが届いているので内容を確認しておきましょう。
ただし、
このままでは自動返信メールは動作しません。
次で「いつ動作するのか」という「トリガー」を設定します。
(5) 「トリガー」を設定する。
コード入力した画面の左側にある「トリガー」(目覚まし時計のような)ボタンを押し、
画面右下の「+トリガーを追加」を押します。
表示されるウィンドウの「イベントの種類を選択」をプルダウンし「フォーム送信時」を選択肢「保存します。
(6) 全行程が問題なく動作するかを、元のGoogleフォームから回答を入力し確認する
お疲れ様でした。
以上で完了です。
少し煩雑に感じると思いますが慣れれば大丈夫になります。
それより、
自由な文面で送れる自動返信メールや
一連の動作があった都度Gmailで知らせてくれて、
いつでもどこでもGoogleスプレッドシートで確認できるのが最高です。
今回の例は、
銀行振込決済を案内する内容でしたが、
内容は自由に作ってください。