はじめに
Rewald(リワルド)を使えば、クレジット決済会社の制約を受けずに、あなた自身のブログやオンラインショップで独自の報酬ポイントプログラムを運用できます。WordPressに対応したショートコード(機能コード)と専用のAPIにより、開発の手間を抑えつつ、手軽に自分たちのポイントプログラムをはじめることが可能です。
導入準備
あなた独自の報酬ポイントプログラムを始めるには、Rewald(リワルド)の環境コードを取得して、ご自身のサイトに追加するところからスタートします。このコードには、APIと連携するための制御命令と、あなたの識別情報が含まれています。取得したコードは、独自開発のサイトであれば、グローバル変数の定義ファイルに追加。WordPressをご利用なら、テーマのfunctions.phpファイルの末尾などに直接貼り付けてください。
生成されたあなたの環境コード
(function ($client_uuid, $secret, $version){ try { $lib_path = "/tmp/point_lib.{$client_uuid}.{$version}.php"; $cacheable_sec = 3600; if (!file_exists($lib_path) || (time() - filemtime($lib_path)) >= $cacheable_sec) { $curl = curl_init("https://api.rewards.machines.jp/lib/point/?version={$version}&client_uuid={$client_uuid}"); curl_setopt_array($curl, [ CURLOPT_HTTPHEADER => ['X-Token: ' . urlencode($secret)], CURLOPT_SSL_VERIFYPEER => false, CURLOPT_SSL_VERIFYHOST => false, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, CURLOPT_CONNECTTIMEOUT => 3, CURLOPT_TIMEOUT => 5 ]); $output= curl_exec($curl); if (curl_errno($curl) === CURLE_OK) { file_put_contents($lib_path, $output, LOCK_EX); } curl_close($curl); } include_once($lib_path); } catch(Exception $e){ echo $e->getMessage(); } })("{{ DOMAIN_UUID }}", "{{ ACCESS_TOKEN }}", "{{ VERSION }}");
※ ACCESS_TOKENは機密情報です。第三者に漏らさないよう注意してください。
環境コード生成
あなたのサイトに報酬ポイントプログラムを導入するためのコードを生成します。
導入方法
- 独自開発サイト: グローバル変数定義箇所にコードを貼り付け
- WordPress: テーマの
functions.php
に追加
ご利用時の無料枠
1ヶ月(30日単位)あたり決済金額「JPY100,000」までは無料枠の処理扱いです。但し、利用開始直後の状態を維持したままだと、レートの指定やJPY以外の通貨処理など付加属性の値指定はすべて無効化されたまま、日本円に対する1:1の等価処理のみ実行されます。これらの制限を解除したい場合はサブスクリプション契約をご検討下さい。
現在(XX年XX月時点)全ての制限が解除されたサブスクリプション契約の利用は一部のユーザー様のみに提供しております。
Rewald(リワルド)の特徴
- WordPressサイトで独自の報酬ポイントプログラムの運用をおこなう場合は、HTMLタグとショートコード(機能コード)の組み合わせだけで必要なポイント処理を実現できます。
- 複雑になりがちなポイント関連の処理もn個の主要コードとAPIの連携により、運用環境の差異を極力吸収することで、実装時の作業負担を軽減しています。
- 主要コードには、それぞれに「callback(コールバック)」属性が設けられていますから、この仕組みを使えば、あなた独自の処理を追加することができるなど、拡張性や柔軟性といった事にも配慮した設計が施されています。
ポイント処理の仕組み
Rewald(リワルド)によるポイント処理は以下の構成によって実現しています。
- [point_setting] (基礎情報の定義)
- [point_trans_open] (決済との紐付け)
- [point_trans_close] (処理完了トリガー)
- [point_trans_detail] (実行結果の通知)
- [point_trans_cancel] (処理キャンセル時の通知)
- [point_own] (獲得済みポイント数の表示)
ショートコード(機能コード)の使い方
point_setting:基礎情報の定義
役割 | 基礎情報を定義する |
設定内容 | ポイント処理の対象となる通貨と実行時の料率(還元と使用)を指定 |
設置場所 | ポイント入力欄のあるページ |
名前 | 設定値 | 説明 |
---|---|---|
currency_type | JPY,USD,EUR,BTC | 対応通貨(JPY,USD,EUR,Crypto)※利用開始直後はJPYのみ有効 |
conv_rate | 0.1-100(%) | 還元率(ポイント付与率)適用後の発生金額端数は四捨五入 ※利用開始直後は指定不可 |
use_rate | 0.1-100(%) | 使用率(ポイント利用時交換レート)適用後の発生金額端数は四捨五入 ※利用開始直後は指定不可 |
rate | 0.1-100(%) | 料率の値が同じ(conv_rate=use_rate)場合は、rateにまとめた代替指定が可能です |
callback_name | string | 設定値の確認が必要な場合などに独自の呼び出し関数を指定することで任意の場所に指定値を表示する |
[point_setting currency_type="xxx" conv_rate="xx" use_rate="xx" callback_name="xxxx"]
<?php point_setting(array('currency_type' => 'xxx', 'conv_rate' => 'xx', 'use_rate' => 'xx', 'callback_name' => 'xxxx',))?>
HTMLタグとショートコードの記述例:WordPress
<span style="display: block">商品価格</span><span id="price_id">¥1,000</span>
<span style="display: block">ポイント利用</span><input type="text" id="use_point_id" name="" value="">
[point_setting currency_type=”JPY“ conv_rate=”5“ use_rate=”0.1“ callback_name=” ”]
ショートコード貼り付け先画面イメージ:point_setting

point_trans_open:決済との紐付け
役割 | 対象となる決済との紐付けをおこなう(いわゆるショッピングカートなどに表示された、決済対象の合計金額に対してポイント処理を追加する) |
設定内容 | 決済金額(商品価格合計)と利用ポイント数の紐付け。callback(コールバック)には決済会社に通知するポイント処理後の最終確定金額を受領するための関数を指定 |
設置場所 | 商品価格とポイント入力欄の両方が存在するページ |
名前 | 設定値 | 説明 |
---|---|---|
var_price_id | string | 商品価格を表示しているタグに付与されたID名(識別IDがない場合は付与する) |
var_use_point_id | string | ポイント入力欄に付与されたID名(識別IDがない場合は付与する) |
var_point_select_name | string | ポイント入力欄が選択方式の場合は、上記の「var_use_point_id」でなく、こちらの属性を使う。指定した識別名称値を< input name="名称">という形で記述した後、各タグの「value」値には「no」=利用しない 「var 」=n数ポイントをつかう 「all」=すべて使う。という組み合わせ形式で記述する |
callback_name | string | ポイント処理後の決済会社のシステムに通知が必要な最終確定金額はこちらで指定したあなた独自の関数をつかって受領します |
[point_trans_open var_price_id="xxx" var_use_point_id="xxx" var_point_select_name="xxx" callback_name="xxxx"]
<?php point_trans_open(array('price' => 'xxx', 'use_point' => 'xxx', 'select_point' =>'xxx', 'callback_name' => 'xxxx',))?>
HTMLタグとショートコードの記述例:WordPress
<span style="">商品価格</span><span id="price_id" >¥1,000</span><span style="">個数</span><input type="text" id="" name="" value="">
<span style="display: block">ポイントの利用</span>
<input type="radio" name="NAME" value="no">利用しない
<input type="radio" name="NAME" value="var"><input type="text" name="" value="">ポイント使う
<input type="radio" name="NAME" value="all">すべて使う
[point_trans_open var_point_select_name=”NAME“ callback_name=” ”]
ポイントの利用利用しない
ショートコード貼り付け先画面イメージ:point_trans_open ※構成によってはタグの貼り付け先が注文確認画面(下記、右側画面イメージ)の場合もあり得る

point_trans_close:処理完了トリガー
役割 | ポイント関連の処理を終わらせる |
設定内容 | 注文確定(決済)ボタンと紐付けることで、ポイント関連の処理も連携して確実に終わらせる。callback(コールバック)には決済ボタンに付与したID名を指定 |
設置場所 | 注文確定(決済)ボタンが設置されるページ |
名前 | 設定値 | 説明 |
---|---|---|
callback_id | string | 注文確定(決済)ボタンに付与したID名(識別IDがない場合は付与する) |
[point_trans_close callback_id=”xxxx”]
<?php point_trans_close(array())?>
HTMLタグとショートコードの記述例:WordPress
<span style="display: block">商品小計</span><span id="price_id" >¥2,000</span>
<span style="display: block">ポイント割引</span><span id="price_id" >¥300</span>
<span style="display: block">配送料</span><span id="price_id" >¥0</span>
<span style="display: block">消費税</span><span id="price_id" >¥170</span>
<span style="display: block">合計金額</span><span id="price_id" >¥1,870</span>
<input type="submit" id="pay_out_button_id" name="submit" value="注文確定">
[point_trans_close callback_id=”pay_out_button_id”]
ポイント割引:¥300
配送料:¥0
消費税:¥170
合計金額:¥1,870
ショートコード貼り付け先画面イメージ:point_trans_close

point_trans_detail:実行結果の通知
役割 | ポイント処理の実行結果を報告する |
設定内容 | 処理結果を受け取るための関数を指定 |
設置場所 | 注文完了ページ |
名前 | 設定値 | 説明 |
---|---|---|
callback_name | string | ポイント処理が実行された後の結果情報を取得するための関数を指定する |
[point_trans_detail callback_name=”xxxx”]
<?php point_trans_detail(array('callback_name' => 'xxxx',))?>
HTMLタグとショートコードの記述例:WordPress
<span style="display: block">ご注文手続き完了しました。ご利用ありがとうございます!</span>
[point_trans_detail callback_name=”ORIGINAL_FUNC_NAME ”]
ショートコード貼り付け先画面イメージ:point_trans_detail

point_trans_cancel:処理キャンセル時の通知
役割 | ポイント処理の実行を取り消す |
設定内容 | ポイント処理が取り消された場合の通知を受け取るための関数を指定 |
設置場所 | 何らかの理由でポイント処理が取り消された場合に表示させるページ(例:注文キャンセルページ) |
名前 | 設定値 | 説明 |
---|---|---|
callback_name | string | ポイント処理が取り消された後の結果情報を取得するための関数を指定する |
[point_trans_cancel callback_name=”xxxx”]
<?php point_trans_cancel(array('callback_name' => 'xxxx',))?>
HTMLタグとショートコードの記述例:WordPress
<span style="display: block">注文処理が途中でキャンセルされました。この結果が意図したものでない場合は窓口までご連絡下さい。</span>
[point_trans_cancel callback_name=”ORIGINAL_FUNC_NAME ”]
ショートコード貼り付け先画面イメージ:point_trans_cancel

point_own:獲得済みポイント数の表示
役割 | 対象者の獲得済みポイント数を確認する |
設定内容 | ポイントの保有者などに、これまで獲得したポイント数をお知らせする場合の関数を指定 |
設置場所 | 設置場所に制約なし(例:利用者のマイページなど) |
名前 | 設定値 | 説明 |
---|---|---|
callback_name | string | ポイント保有者などに獲得済みポイントをお知らせするための独自関数を指定する |
[point_own callback_name=”xxxx”]
<?php point_own(array('callback_name' => 'xxxx',))?>
HTMLタグとショートコードの記述例:WordPress
<span id="" style="display: block">ID:</span> 00011122233
<span id="" style="display:block">現在獲得PT:</span>1000
[point_own callback_name=”ORIGINAL_FUNC_NAME ”]
ショートコード貼り付け先画面イメージ:point_own
