加盟店様でユーザ情報登録または内容変更をされたい場合、都度決済にて作成した処理を一部変更することで決済を実施することができます。
オーダー情報送信先 CGI(https://beta.epsilon.jp/cgi-bin/order/receive_order3.cgi)へ設定しているパラメータについて、
以下項目を記載のように指定することでその機能をご利用いただけます。
また、ユーザの退会や退会取消についてもオーダ情報送信先CGIにて実施可能です。
data = { "version" => "2",
"contract_code" => contract_code,
"user_id" => user_id,
"user_name" => user_name,
"user_mail_add" => user_mail_add,
"st_code" => "10000-0000-00000-00000-00000-00000-00000",
"process_code" => process_code,
"memo1" => memo1,
"memo2" => memo2,
"xml" => "1",
"charset" => "UTF8" }
※オーダー情報送信先 CGIへPOST、応答内容の解析は、都度課金と同様。
# process_code 3 or 4 ( 登録のみ、登録内容変更)の場合のみ以下の項目を設定
$request->addPostParameter('version', '2' );
$request->addPostParameter('contract_code', $contract_code);
$request->addPostParameter('user_id', $user_id);
$request->addPostParameter('user_name', mb_convert_encoding($user_name, "UTF-8", "auto"));
$request->addPostParameter('user_mail_add', $user_mail_add);
$request->addPostParameter('st_code', "10000-0000-00000-00000-00000-00000-00000"); // 登録時は固定、変更時はこちらか以下
// $request->addPostParameter('st_code', "00000-0000-00000-00000-00000-00000-00000");
$request->addPostParameter('process_code', $process_code);
$request->addPostParameter('memo1', $memo1);
$request->addPostParameter('memo2', $memo2);
$request->addPostParameter('charset', 'UTF8' );
$request->addPostParameter('xml', '1');
※オーダー情報送信先 CGIへPOST、応答内容の解析は、都度課金と同様。
param.add( new BasicNameValuePair("version", si.getVersion().toString()));
param.add( new BasicNameValuePair("contract_code", this.getConfig().getContract_code() ));
param.add( new BasicNameValuePair("user_id", si.getUserId()));
param.add( new BasicNameValuePair("user_name", si.getUserName()));
param.add( new BasicNameValuePair("user_mail_add", si.getUserMailAdd()));
// ここでは設定からカード変更有無を読み取る
param.add( new BasicNameValuePair("st_code", getConfig().getSt_code()));
param.add( new BasicNameValuePair("process_code", si.getProcessCode().toString()));
param.add( new BasicNameValuePair("memo1", si.getMemo1()));
param.add( new BasicNameValuePair("memo2", si.getMemo2()));
param.add( new BasicNameValuePair("xml", si.getXml().toString()));
※オーダー情報送信先 CGIへPOST、応答内容の解析は、都度課金と同様。
my %data = ();
# process_code = 3(ユーザ登録のみ) の場合は以下固定
%data = (
version => "2", # バージョン
contract_code => $contract_code, # 契約コード
user_id => $user_id, # ユーザーID
user_name => $user_name, # ユーザー名
user_mail_add => $user_mail_add, # ユーザメールアドレス
st_code => '10000-0000-00000-00000-00000-00000-00000' # process_code == 3 の場合は固定
# st_code => '00000-0000-00000-00000-00000-00000-00000', # process_code == 4の場合はこちらも可
process_code => $process_code, # 処理区分
memo1 => $memo1, # 追加情報1
memo2 => $memo2, # 追加情報2
charset => "UTF8",
xml => '1', # 応答形式(0:HTML 1:XML)
);
※オーダー情報送信先 CGIへPOST、応答内容の解析は、都度課金と同様。
登録したいユーザ情報を以下パラメータに設定してください。
<種別説明>
◎:必須項目 イプシロンが提供している値を設定してください。
○ :必須項目 表中の説明に従い設定してください。
● :必須項目 注文単位でユニークな値を設定してください。
△:一部必須 コンビ二種別の場合必須項目となります。
- :任意項目 未設定の場合は説明に記載されている値が設定されます。
契約コード、ユーザIDにて既に登録済みのユーザであった場合にはエラーが返却されます。
登録済みユーザの情報を変更されたい場合は、ユーザ内容変更を実施お願いします。
| № | 項目名 | パラメータ名 | 種別 | 属性 | 例 | 説明 |
|---|---|---|---|---|---|---|
| 1 | 契約コード | contract_code | ◎ | 半角英数字 8byte(固定) | 99999999(固定) | イプシロンが加盟店様ごとに採番 申込時に弊社の申込完了画面及びメールにて通知 |
| 2 | ユーザーID | user_id | ○ | 半角英数字.-+/@ 64byte以下 | Epsilon0001 | 1度登録したuser_idは変更不可。 変更をする場合は、新規のuser_idを設定 |
| 3 | ユーザー氏名 | user_name | ○ | EUC or S-JIS 64byte | イプシロン 太郎 | 購入者様の名前 |
| 4 | メールアドレス | user_mail_add | ○ | 半角英数字.-_@ 128byte以下 | test@epsilon.jp | 購入者様のメールアドレス |
| 5 | 決済区分 | st_code | ○ | nnnnn-nnnn-nnnnn-nnnnn- nnnnn-nnnnn-nnnnn (n:0or1) |
10000-0000-00000-00000- 00000-00000-00000 |
10000-0000-00000-00000- 00000-00000-00000 固定で設定 |
| 6 | 処理区分 | process_code | ○ | 1~9 | 3 | 3:登録のみ |
| 7 | 予備1 | memo1 | - | EUC or S-JIS 128byte | これはテストです | 自由設定 |
| 8 | 予備2 | memo2 | - | EUC or S-JIS 128byte | これはテストです | 自由設定 |
| 9 | 応答形式 | xml | - | 0~1 | 1 | 応答の形式 1:XML形式を選択 |
応答結果が正常に受け取れた場合は、受け取ったパラメータに対応した各決済画面へリダイレクトさせる必要があります。
以下パラメータがXML形式で返却されます。
| № | 項目名 | パラメータ名 | 種別 | 属性 | 説明 |
|---|---|---|---|---|---|
| 1 | 実行結果 | result | ◎ | 半角数字 | 処理結果を記載 1:成功 0:失敗 |
| 2 | リダイレクト先 | redirect | ◎ | URLエンコード済み | 設定されたリダイレクト先にリダイレクトする設定 クレジットカード番号入力の画面が表示される |
登録したいユーザ情報を以下パラメータに設定してください。
契約コード、ユーザIDにてユーザが未登録、または退会など正常登録状態でなかった場合にはエラーが返却されます。
ユーザが存在しないことが確認された場合は、ユーザ登録を実施お願いします。
| № | 項目名 | パラメータ名 | 種別 | 属性 | 例 | 説明 |
|---|---|---|---|---|---|---|
| 1 | 契約コード | contract_code | ◎ | 半角英数字 8byte(固定) | 99999999(固定) | イプシロンが加盟店様ごとに採番 申込時に弊社の申込完了画面及びメールにて通知 |
| 2 | ユーザーID | user_id | ○ | 半角英数字.-+/@ 64byte以下 | Epsilon0001 | 既に登録済みのuser_idを設定 |
| 3 | ユーザー氏名 | user_name | ○ | EUC or S-JIS 64byte | イプシロン 太郎 | 購入者様の名前 |
| 4 | メールアドレス | user_mail_add | ○ | 半角英数字.-_@ 128byte以下 | test@epsilon.jp | 購入者様のメールアドレス |
| 5 | 決済区分 | st_code | ○ | nnnnn-nnnn-nnnnn-nnnnn- nnnnn-nnnnn-nnnnn (n:0or1) |
10000-0000-00000-00000- 00000-00000-00000 |
10000-0000-00000-00000-00000-00000-00000 :クレジットカード番号の変更有り 00000-0000-00000-00000-00000-00000-00000 :クレジットカード番号の変更無し |
| 6 | 処理区分 | process_code | ○ | 1~9 | 4 | 4:登録内容変更 |
| 7 | 予備1 | memo1 | - | EUC or S-JIS 128byte | これはテストです | 自由設定 |
| 8 | 予備2 | memo2 | - | EUC or S-JIS 128byte | これはテストです | 自由設定 |
| 9 | 応答形式 | xml | - | 0~1 | 1 | 応答の形式 1:XML形式を選択 |
受信パラメータは決済区分にてクレジットカード番号の変更有無の設定によって値が異なります。
カード情報を変更されたい場合は、カード情報の入力画面に遷移するため、リダイレクトさせる必要があります。
| № | 項目名 | パラメータ名 | 種別 | 属性 | 説明 |
|---|---|---|---|---|---|
| 1 | 実行結果 | result | ◎ | 半角数字 | 処理結果を記載 1:成功 0:失敗 |
| 2 | リダイレクト先 | redirect | ◎ | URLエンコード済み | リダイレクト先が設定されているので、設定されたリダイレクト先にリダイレクトする設定 クレジットカード番号入力の画面が表示 |
カード情報の変更が無い場合は、ユーザ情報の変更が実施されその結果が返却されます。
| № | 項目名 | パラメータ名 | 種別 | 属性 | 説明 |
|---|---|---|---|---|---|
| 1 | 実行結果 | result | ◎ | 半角数字 | 処理結果を記載 1:成功 0:失敗 |
| 2 | ユーザーID | user_id | ○ | URLエンコード済み | 設定した「user_id」と同様 |
| 3 | ユーザー氏名 | user_name | ○ | URLエンコード済み(S-JIS) | 設定した「user_name」と同様 |
| 4 | メールアドレス | user_mail_add | ○ | URLエンコード済み | 設定した「user_mail_add」と同様 |
| 5 | 予備1 | memo1 | ○ | URLエンコード済み(S-JIS) | 設定した「memo1」と同様 |
| 6 | 予備2 | memo2 | ○ | URLエンコード済み(S-JIS) | 設定した「memo2」と同様 |
# パラメータとして渡される(GET)トランザクションコードを取得します。 param = cgi.params trans_code = param["trans_code"][0] || "" user_id = param["user_id"][0] || "" order_number = param["order_number"][0] || "" result = param["result"][0] || "" print_html(trans_code, user_id, order_number, result )
$response = array(); $trans_code = $_REQUEST['trans_code']; $user_id = $_REQUEST['user_id']; $result = $_REQUEST['result']; $order_number = $_REQUEST['order_number'];
// 表示のみ
ServletContext context = this.getServletContext();
RequestDispatcher dispatcher
= context.getRequestDispatcher("/jsp/userComp.jsp");
dispatcher.forward(request, response);
# CGIのパラメータを取得
my $cgi = new CGI;
# パラメータとして渡される(GET)トランザクションコードを取得します。
my $trans_code = $cgi->param("trans_code");
my $user_id = $cgi->param("user_id");
my $result = $cgi->param("result");
my $order_number = $cgi->param("order_number");
ユーザーの登録・内容変更(カード変更有り)が完了した後に、その結果をリダイレクトします。
イプシロン管理画面のシステム情報>ユーザー登録完了後のリダイレクト先URLに設定いただく必要があります。
| № | 項目名 | パラメータ名 | 属性 | 説明 |
|---|---|---|---|---|
| 1 | トランザクションコード | trans_code | 半角数字 | 詳細な情報が必要な場合は、当パラメータをオーダ情報確認CGIに送信してXML形式により情報を取得する |
| 2 | ユーザーID | user_id | URLエンコード済み | 設定した「user_id」と同様 |
| 3 | 実行結果 | result | 半角数字 | 処理結果を記載 1:成功 0:失敗 |
| 4 | 注文番号 | order_number | URLエンコード済み | 設定した「order_number」と同様 加盟店様側での設定がない場合はイプシロンにて生成した値を返却します。 |