DGFT Veritrans4G開発ガイド

お問い合わせ
  • TOP
  • MDK(SDK)導入ガイド
  • MDK(SDK)インターフェースガイド

BankPay

本ガイドの内容

本ガイドの内容

本ガイドは、株式会社DGフィナンシャルテクノロジーが提供するVeriTrans4GのBankPayサービス(※1)をインターネット店舗等に導入するための、開発者向けのガイドです。

※1) Pay-easy(ペイジー)とは別の決済サービスとなりますので、間違えのないようご注意ください。

BankPayサービス概要

BankPayサービスの概要

BankPayサービスは、事前に銀行の口座情報を登録し、登録した口座情報を用いて決済を行うサービスです。

  • 口座情報の登録は、銀行毎のページにリダイレクトして実施します。
  • 口座情報を登録することで、決済の度に口座情報を入力する必要がなくなります。
  • 口座登録なしで決済のみの実施はできません。
図 2.1 口座登録の画面遷移のイメージ
図 2.1 口座登録の画面遷移のイメージ
図 2.2 決済時の画面遷移のイメージ
図 2.2 決済時の画面遷移のイメージ

課金種別(都度決済、随時決済、チャージ)

BankPayサービスにおいて、課金種別は「都度決済」・「随時決済」・「チャージ」で区別されます。

【共通】

  1. 事前に会員登録, 口座登録を実施しておき、決済は加盟店からリクエストする必要があります

    ※随時決済の場合でも自動で決済は行われず、加盟店からリクエストする必要があります。

  2. 登録した会員・口座情報はすべての課金種別で利用可能です。
  3. 一度登録した会員・口座情報は、基本的に削除するまでは繰り返し決済にご利用いただけます。

【都度決済機能】

加盟店が提供する商品もしくはサービスを購入する毎に、口座引落を行う決済が該当します。

【随時決済機能】

加盟店と消費者が事前に取り決めた条件(金額や日時等)にのっとり、利用者による購入手続きなく口座引き落としを行う決済が該当します。

【チャージ】

BankPayでは、チャージの類型を前払式支払手段(ハウス)/前払式支払手段(オープン)/資金移動の3つとし、定義は以下の通りとなっています。
(前払式支払手段と資金移動の区分は資金決済に関する法律の例によります)

  1. チャージ(ハウス):
    1. バリュー提供者自身またはバリュー提供者自身と資本関係のあるグループ会社のサービス対価としてのみ利用可能なバリューチャージ
    2. バリュー提供者と提携する特定一社または当該特定一社と資本関係のあるグループ会社のサービス対価としてのみ利用可能なバリューチャージ

    (例:電子マネーの発行者=バリュー提供者)

  2. チャージ(オープン):
    チャージ(ハウス)に該当しない前払式支払手段の取引
    (例:バリュー提供者と提携する複数の提携先のサービス対価として利用可能なバリューへのチャージ取引)
  3. チャージ(資金移動):
    資金移動者へのチャージであり、チャージしたバリューは提携先のすべての加盟店で利用可能かつ現金として引き出したり、別のサービスの会員に送金することが可能。

MDKの処理概要

機能一覧(決済要求コマンド)

使用可能な決済要求コマンドを下記表に示します。

表 3.1使用可能なコマンド一覧
決済要求種類
/コマンド
概要
決済申込 (与信+売上)
/Authorize
決済の申し込みと売上を同時に要求します。
事前に会員および銀行口座情報の登録が必要になります。
返金
/Refund
売上済の取引に対し、返金を要求します。

※全額返金のみ可能

会員登録
/MemberAdd
会員の登録を要求します。
会員情報更新
/MemberUpdate
会員情報の更新を要求します。
会員削除
 /MemberDelete
会員の削除を要求します。
口座入力情報取得
/PrepareAccountAdd
口座情報入力画面を表示するために必要な情報を取得します。
口座登録の遷移については「3-2 決済処理シーケンス」の【口座登録処理】および
6-2会員登録での遷移について」を参照してください。
口座登録
/AccountAdd
口座の登録を行うための画面に遷移するために必要な情報を取得します。
口座削除
 /AccountDelete
口座の削除を要求します。
口座照会
 /AccountGet
口座情報の照会を要求します。
表 3.2 各コマンドの実施可能タイミング
表 3.2 各コマンドの実施可能タイミング

決済処理シーケンス

【決済申込処理】

図 3.1 MDK利用時システム処理概要図(BankPay 決済申込要求)
図 3.1 MDK利用時システム処理概要図(BankPay 決済申込要求)
No.基本機能処理説明
1決済申込要求決済申込の対象となる取引情報を電文化し、決済サーバーに送信します。
2決済申込応答決済サーバーより結果応答を受信します。

【返金処理】

図 3.2 MDK利用時システム処理概要図(BankPay 返金要求)
図 3.2 MDK利用時システム処理概要図(BankPay 返金要求)
No.基本機能処理説明
1返金要求返金の対象となる取引情報を電文化し、決済サーバーに送信します。
2返金応答決済サーバーより結果応答を受信します。

【会員登録処理】

図 3.3 MDK利用時システム処理概要図(BankPay 会員登録要求)
図 3.3 MDK利用時システム処理概要図(BankPay 会員登録要求)
No.基本機能処理説明
1会員登録要求会員登録に必要な情報を電文化し、決済サーバーに送信します。
2会員登録応答決済サーバーより結果応答を受信します。

【会員情報更新処理】

図 3.4 MDK利用時システム処理概要図(BankPay 会員情報更新要求)
図 3.4 MDK利用時システム処理概要図(BankPay 会員情報更新要求)
No.基本機能処理説明
1会員情報更新要求会員情報更新に必要な情報を電文化し、決済サーバーに送信します。
2会員情報更新応答決済サーバーより結果応答を受信します。

【会員削除処理】

図 3.5 MDK利用時システム処理概要図(BankPay 会員削除要求)
図 3.5 MDK利用時システム処理概要図(BankPay 会員削除要求)
No.基本機能処理説明
1会員削除要求会員削除に必要な情報を電文化し、決済サーバーに送信します。
2会員削除応答決済サーバーより結果応答を受信します。

【口座登録処理】

図 3.6 MDK利用時システム処理概要図(BankPay口座登録)
図 3.6 MDK利用時システム処理概要図(BankPay口座登録)
No.基本機能処理説明
1 銀行選択画面の表示 口座登録を行う銀行を選択する画面を加盟店が作成します。
2 口座入力情報取得要求 口座情報入力取得に必要な情報を電文化し、決済サーバーに送信します。
3 結果応答 決済サーバーからの応答から口座情報入力画面に必要な項目を確認し、口座情報入力画面を作成します。
4 口座情報入力画面の表示 口座登録に必要な情報を入力するための画面を表示します。
5 口座登録要求 口座登録に必要な情報を電文化し、決済サーバーに送信します。
6 結果応答 口座情報以外の口座登録に必要な情報を受信します。
7 リダイレクト指示 入力された口座情報と、口座登録に必要な情報を用いて、BankPayへ口座登録処理を開始するための要求を行います。
詳細は「6.1.3 BankPayへの遷移処理」を参照してください。
8 口座登録処理結果通知 口座登録結果を受け取り、加盟店システムに反映します。

※結果応答と完了画面要求のリダイレクト結果が加盟店に届く順番は保証されていません。どちらが先に届いても問題とならないようにご対応ください。

9 完了画面要求 決済サーバーから応答されたBankPayの口座登録結果を加盟店の画面などに表示し、消費者に結果をお伝えください。

【口座削除処理】

図 3.7 MDK利用時システム処理概要図(BankPay 口座削除要求)
図 3.7 MDK利用時システム処理概要図(BankPay 口座削除要求)
No.基本機能処理説明
1口座削除要求口座削除に必要な情報を電文化し、決済サーバーに送信します。
2口座削除応答決済サーバーより結果応答を受信します。

【口座照会処理】

図 3.8 MDK利用時システム処理概要図(BankPay 口座照会要求)
図 3.8 MDK利用時システム処理概要図(BankPay 口座照会要求)
No.基本機能処理説明
1口座照会要求口座照会に必要な情報を電文化し、決済サーバーに送信します。
2口座照会応答決済サーバーより結果応答を受信します。

結果通知受信処理

結果通知受信処理の対象

BankPayの結果通知受信処理の対象は以下の機能です。

表 4.1 通知対象一覧
コマンド名送信有無
決済申込
返金
会員登録
会員情報更新
会員削除
口座登録
口座削除
口座照会 - (※1)

※1) 口座照会の対象の会員IDにおいて、登録中の口座が存在していた場合は登録結果を確認し、登録結果が確定した場合は口座登録と同様に結果通知を送信します。

通信電文仕様(共通部)および店舗様受信後応答仕様は、『開発ガイド』をご参照ください。
BankPay固有の通知電文インターフェイスにつきましては、「5-3 結果通知電文」の「5.3.2 BankPayの結果通知電文」をご参照ください。

インターフェイス詳細

ここではBankPayサービスで利用するMDKインターフェイス項目を説明します。

  • 「設定」欄の内容は以下の通りです。

    要求電文 ...
    必須項目:○  任意項目:△  設定不可:×  その他条件付:※、※n(条件は説明欄、または欄外に記入)
    応答電文 ...
    必ず返戻:○  返戻しないケースあり:△  返戻なし:×  その他条件付:※
  • orderId(取引ID)について

    店舗様で任意に採番してください。申込、再与信処理毎に付ける必要があります。他の取引IDと重複しないよう採番してください。他決済サービスとも重複できません。
    また、テスト取引で使用した取引IDを、本番取引で再度使用することはできません。
    取引IDには、半角英数字以外に"-"(ハイフン)、"_"(アンダースコア)も使用可能です。

  • 応答電文について

    応答電文には、本書に記載されていないフィールド(パラメータ)も存在しますが、通常は、記載されているフィールド以外は加盟店の方で意識する必要はございません。

BankPay

決済申込

要求電文 : BankPayAuthorizeRequestDto
フィールド名 項目名 書式・制限 説明 設定
orderId 取引ID 半角英数字
100桁以内
店舗側で採番した取引IDを指定
上記「orderId(取引ID)について」参照
amount 決済金額 半角数字
7桁以内
決済金額を指定
- 1 以上かつ 9999999(7桁) 以下
memberId 会員ID 半角英数字
100桁以内
会員登録を行った店舗側で会員を一意に表す会員IDを指定します。
accountId 口座ID 半角英数字
100桁以内
会員IDに紐づく口座IDを指定します。
accountingType 課金種別 右記参照 "0":都度決済
"1":随時決済
"2":チャージ(オープン)
"3":チャージ(ハウス)
"4":チャージ(資金移動)
terminalId 端末機識別番号 半角数字
13桁
店舗POSなどの決済端末を識別する値を指定
チャージのみの利用の場合は、一意な値を設定して問題ございません。
流通決済事業者コードを設定可能な場合は先頭5桁に設定することをお勧めします。
流通事業者コード:
https://www.dsri.jp/code/credit/
storeId 店舗ID 半角英数字
5桁
任意の店舗IDを指定
storeName 店舗名 文字列
50桁以内
利用者アプリ表示用の店舗名
使用可能文字については「7-2 使用可能文字」を参照してください。
応答電文 : BankPayAuthorizeResponseDto
フィールド名 項目名 書式・制限 説明 設定
serviceType 決済サービスタイプ 半角英数字
10桁以内
要求電文を送信した決済サービスタイプ
mstatus 処理結果コード 半角英数字
32文字以内
"success":正常終了
"failure":異常終了
"pending":保留
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
merrMsg エラーメッセージ 文字列
1024 byte以内
処理結果を日本語で表示
marchTxn 電文ID 文字列
100桁以内
決済サーバーにて決済処理電文(内部処理も含む)毎に付与するID
1つの取引IDに対して、複数のIDが付与されます。
orderId 取引ID 半角英数字
100 桁以内
決済要求時に店舗様にて任意に採番し送信された取引ID
custTxn 取引毎に付くID 文字列
100桁以内
決済サーバーがオーダー(取引ID)と紐付ける為に採番するID
txnVersion MDK バージョン 半角英数字
5桁
電文のバージョン
問題発生時などに用いますが、通常ご利用になることはありません。
merchantTransactionId 加盟店処理通番 半角英数字
100 桁以内
BankPayで取引を一意に識別するID
centerTransactionId 決済センター側の処理通番 半角英数字
36桁
BankPayにて採番する処理通番
bankApprovalNum 承認番号 半角英数字
7 桁以内
金融機関にて採番する承認番号
bankProcessingId 決済処理通番 半角英数字
7桁
金融機関にて採番する決済処理通番
centerProcessingDatetime 決済センター処理日時 半角数字
14桁
BankPay側で処理された日時を返却します。
(YYYYMMDDhhmmss形式)

返金

要求電文 : BankPayRefundRequestDto
フィールド名 項目名 書式・制限 説明 設定
orderId 取引ID 半角英数字
100桁以内
決済申込で指定した値を設定します。
amount 返金金額 半角数字
7桁以内
返金金額を指定。

※全額返金のみ可能。
※未指定時は、返金可能金額全額。

terminalId 端末機識別番号 半角数字
13桁
店舗POSなどの決済端末を識別する値を指定
チャージのみの利用の場合は、一意な値を設定して問題ございません。
流通決済事業者コードを設定可能な場合は先頭5桁に設定することをお勧めします。
流通事業者コード:
https://www.dsri.jp/code/credit/

※未指定時は決済申込で指定した値を使用

storeId 店舗ID 半角英数字
5桁
任意の店舗IDを指定
storeName 店舗名 文字列
50桁以内
利用者アプリ表示用の店舗名
使用可能文字については「7-2 使用可能文字」を参照してください。
応答電文 : BankPayRefundResponseDto
フィールド名 項目名 書式・制限 説明 設定
serviceType 決済サービスタイプ 半角英数字
10桁以内
要求電文を送信した決済サービスタイプ
mstatus 処理結果コード 半角英数字
32文字以内
"success":正常終了
"failure":異常終了
"pending":保留
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
merrMsg エラーメッセージ 文字列
1024 byte以内
処理結果を日本語で表示
marchTxn 電文ID 文字列
100桁以内
決済サーバーにて決済処理電文(内部処理も含む)毎に付与するID
1つの取引IDに対して、複数のIDが付与されます。
orderId 取引ID 半角英数字
100桁以内
決済要求時に店舗様にて任意に採番し送信された取引ID
custTxn 取引毎に付くID 文字列
100桁以内
決済サーバーがオーダー(取引ID)と紐付ける為に採番するID
txnVersion MDK バージョン 半角英数字
5桁
電文のバージョン
問題発生時などに用いますが、通常ご利用になることはありません。
memberId 会員ID 半角英数字
100桁以内
決済申込時に指定した会員ID
accountId 口座ID 半角英数字
100桁以内
決済申込時に指定した口座ID
accountingType 課金種別 右記参照 決済申込時に指定した課金種別
terminalId 端末機識別番号 半角数字
13桁
要求電文で指定した端末識別番号
merchantTransactionId 加盟店処理通番 半角英数字
100 桁以内
BankPayで取引を一意に識別するID
centerTransactionId 決済センター側の処理通番 半角英数字
36桁
BankPayにて採番する処理通番
bankApprovalNum 承認番号 半角英数字
7 桁以内
金融機関にて採番する承認番号
bankProcessingId 決済処理通番 半角英数字
7桁
金融機関にて採番する決済処理通番
centerProcessingDatetime 決済センター処理日時 半角数字
14桁
BankPay側で処理された日時を返却します。
(YYYYMMDDhhmmss形式)

会員登録

要求電文 : BankPayMemberAddRequestDto
フィールド名 項目名 書式・制限 説明 設定
memberId 会員ID 半角英数字
100桁以内
加盟店側で会員を一意に表す顧客IDを指定します。
"-"(ハイフン)、"_"(アンダースコア)も使用可能です。
userTerminalId 利用者端末識別ID 半角英数字
32桁
利用者の端末を識別するIDを指定します。
スマホなどのデバイスを識別するためのUUIDなどの情報を指定してください。EC利用などの場合は一意なランダムな値を指定してください。
userName 氏名 文字列
20桁以内
会員の氏名を入力します。
使用可能文字については「7-2 使用可能文字」を参照してください。
userNameKana カナ氏名 文字列
40桁以内
会員のカナ名を入力します。
使用可能文字については「7-2 使用可能文字」を参照してください。
birthDate 生年月日 半角数字
8桁
会員の生年月日を入力します。
書式はYYYYMMDD。
例)20220531
gender 性別 半角英字
1桁
会員の性別を入力します。
-"M":男
-"F":女
zipcode 郵便番号 半角数字記号
8桁以内
会員の郵便番号を入力します。
"-"(ハイフン)有でも無でも指定可能です。
address 住所 文字列
60桁以内
会員の住所を入力します。
使用可能文字については「7-2 使用可能文字」を参照してください。
telNumber 電話番号 半角数字記号
16桁以内
会員の電話番号を入力します。
"-"(ハイフン)有でも無でも指定可能です。
mobileNumber 携帯番号 半角数字記号
16桁以内
会員の携帯番号を入力します。
"-"(ハイフン)有でも無でも指定可能です。
emailAddress メールアドレス 半角英数字記号
300桁以内
会員のメールアドレスを入力します。
emailAddress2 メールアドレス2 半角英数字記号
300桁以内
会員のメールアドレスが2つある場合2つ目を入力します。
remarks 摘要 文字列
100桁以内
会員についての備考項目を入力します。
使用可能文字については「7-2 使用可能文字」を参照してください。
応答電文 : BankPayMemberAddResponseDto
フィールド名 項目名 書式・制限 説明 設定
serviceType 決済サービスタイプ 半角英数字
10桁以内
要求電文を送信した決済サービスタイプ
mstatus 処理結果コード 半角英数字
32文字以内
"success":正常終了
"failure":異常終了
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
merrMsg エラーメッセージ 文字列
1024 byte以内
処理結果を日本語で表示
txnVersion MDK バージョン 半角英数字
5桁
電文のバージョン
問題発生時などに用いますが、通常ご利用になることはありません。
processId 処理通番 半角英数字
100桁以内
決済サーバーにて採番する処理通番。
memberId 会員ID 半角英数字
100桁以内
リクエストされた値
merchantUserId 顧客ID 半角英数字
60桁以内
BankPayで会員を一意に識別するID
centerTransactionId 決済センター側の処理通番 半角英数字
36桁
BankPayにて採番する処理通番
centerProcessingDatetime 決済センター処理日時 半角数字
14桁
BankPay側で処理された日時を返却します。
(YYYYMMDDhhmmss形式)

会員情報更新

要求電文 : BankPayMemberUpdateRequestDto
フィールド名 項目名 書式・制限 説明 設定
memberId 会員ID 半角英数字
100桁以内
会員登録で指定した値を設定します。
userTerminalId 利用者端末識別ID 半角英数字
32桁
利用者の端末を識別するIDを指定します。
スマホなどのデバイスを識別するためのUUIDなどの情報を指定してください。EC利用などの場合は一意なランダムな値を指定してください。
userName 氏名 文字列
20桁以内
会員の氏名を入力します。
使用可能文字については「7-2 使用可能文字」を参照してください。
userNameKana カナ氏名 文字列
40桁以内
会員のカナ名を入力します。
使用可能文字については「7-2 使用可能文字」を参照してください。
birthDate 生年月日 半角数字
8桁
会員の生年月日を入力します。
書式はYYYYMMDD。
例)20220531
gender 性別 半角英字
1桁
会員の性別を入力します。
"M" :男
"F" :女
zipcode 郵便番号 半角数字記号
8桁以内
会員の郵便番号を入力します。
"-"(ハイフン)有でも無でも指定可能です。
address 住所 文字列
60桁以内
会員の住所を入力します。
使用可能文字については「7-2 使用可能文字」を参照してください。
telNumber 電話番号 半角数字記号
16桁以内
会員の電話番号を入力します。
"-"(ハイフン)有でも無でも指定可能です。
mobileNumber 携帯番号 半角数字記号
16桁以内
会員の携帯番号を入力します。
"-"(ハイフン)有でも無でも指定可能です。
emailAddress メールアドレス 半角英数字記号
300桁以内
会員のメールアドレスを入力します。
emailAddress2 メールアドレス2 半角英数字記号
300桁以内
会員のメールアドレスが2つある場合2つ目を入力します。
remarks 摘要 文字列
100桁以内
会員についての備考項目を入力します。
使用可能文字については「7-2 使用可能文字」を参照してください。
応答電文 : BankPayMemberUpdateResponseDto
フィールド名 項目名 書式・制限 説明 設定
serviceType 決済サービスタイプ 半角英数字
10桁以内
要求電文を送信した決済サービスタイプ
mstatus 処理結果コード 半角英数字
32文字以内
"success":正常終了
"failure":異常終了
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
merrMsg エラーメッセージ 文字列
1024 byte以内
処理結果を日本語で表示
txnVersion MDK バージョン 半角英数字
5桁
電文のバージョン
問題発生時などに用いますが、通常ご利用になることはありません。
processId 処理通番 半角英数字
100桁以内
決済サーバーにて採番する処理通番。
memberId 会員ID 半角英数字
100桁以内
リクエストされた値
centerTransactionId 決済センター側の処理通番 半角英数字
36桁
BankPayにて採番する処理通番
centerProcessingDatetime 決済センター処理日時 半角数字
14桁
BankPay側で処理された日時を返却します。
(YYYYMMDDhhmmss形式)

会員削除

要求電文 : BankPayMemberDeleteRequestDto
フィールド名 項目名 書式・制限 説明 設定
memberId 会員ID 半角英数字
100桁以内
会員登録で指定した値を設定します。
応答電文 : BankPayMemberDeleteResponseDto
フィールド名 項目名 書式・制限 説明 設定
serviceType 決済サービスタイプ 半角英数字
10桁以内
要求電文を送信した決済サービスタイプ
mstatus 処理結果コード 半角英数字
32文字以内
"success":正常終了
"failure":異常終了
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
merrMsg エラーメッセージ 文字列
1024 byte以内
処理結果を日本語で表示
txnVersion MDK バージョン 半角英数字
5桁
電文のバージョン
問題発生時などに用いますが、通常ご利用になることはありません。
processId 処理通番 半角英数字
100桁以内
決済サーバーにて採番する処理通番。
memberId 会員ID 半角英数字
100桁以内
リクエストされた値
centerTransactionId 決済センター側の処理通番 半角英数字
36桁
BankPayにて採番する処理通番
centerProcessingDatetime 決済センター処理日時 半角数字
14桁
BankPay側で処理された日時を返却します。
(YYYYMMDDhhmmss形式)

口座入力情報取得

要求電文 : BankPayPrepareAccountAddRequestDto
フィールド名 項目名 書式・制限 説明 設定
memberId 会員ID 半角英数字
100桁以内
会員登録で指定した値を設定します。
accountId 口座ID 半角英数字
100桁以内
会員IDに対して口座を一意に表す口座IDを指定します。
"-"(ハイフン)、"_"(アンダースコア)も使用可能です。
bankCode 銀行コード 半角数字
4桁
登録口座の銀行コードを入力します。
successUrl 決済完了時URL URLに使用可能な半角文字
256桁以内
口座登録完了後に、店舗側サイトに画面遷移を戻すためのURLを指定します。

※未指定の場合は、MAP(Merchant Administrator Portal)から登録申請した値を使用。
※MAPで未登録かつ本パラメータ未設定の場合はエラーを返戻します。

errorUrl 決済エラー時URL URLに使用可能な半角文字
256桁以内
口座登録エラー時に、店舗側サイトに画面遷移を戻すためのURLを指定します。

※未指定の場合は、MAP(Merchant Administrator Portal)から登録申請した値を使用。
※MAPで未登録かつ本パラメータ未設定の場合はエラーを返戻します。

pushUrl プッシュ先URL URLに使用可能な半角文字
256桁以内
プッシュURLを指定します。

※未指定の場合は、MAP(Merchant Administrator Portal)から登録申請した値を使用。

応答電文 : BankPayPrepareAccountAddResponseDto
フィールド名 項目名 書式・制限 説明 設定
serviceType 決済サービスタイプ 半角英数字
10桁以内
要求電文を送信した決済サービスタイプ
mstatus 処理結果コード 半角英数字
32文字以内
"success":正常終了
"failure":異常終了
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
merrMsg エラーメッセージ 文字列
1024 byte以内
処理結果を日本語で表示
txnVersion MDK バージョン 半角英数字
5桁
電文のバージョン
問題発生時などに用いますが、通常ご利用になることはありません。
processId 処理通番 半角英数字
100桁以内
決済サーバーにて採番する処理通番。
memberId 会員ID 半角英数字
100桁以内
要求電文に設定した値
accountId 口座ID 半角英数字
100桁以内
要求電文に設定した値
branchCodeFlag 支店コード入力要否 半角英字
5桁以内
口座の支店コード入力要否を返却します。
"true":入力が必要
"false":入力が不要
depositTypeFlag 預金種目入力要否 半角英字
5桁以内
口座の預金種目入力要否を返却します。
"true":入力が必要
"false":入力が不要
accountNumFlag 口座番号入力要否 半角英字
5桁以内
口座の口座番号入力要否を返却します。
"true":入力が必要
"false":入力が不要
accountNameFlag 口座名義人名入力要否 半角英字
5桁以内
口座の口座名義人名入力要否を返却します。
"true":入力が必要
"false":入力が不要
centerTransactionId 決済センター側の処理通番 半角英数字
36桁
BankPayにて採番する処理通番
centerProcessingDatetime 決済センター処理日時 半角数字
14桁
BankPay側で処理された日時を返却します。
(YYYYMMDDhhmmss形式)

口座登録

口座登録処理を完了させるためには、口座登録コマンド実施後にBankPayへの遷移が必要になります。
詳細については、「6.1.3 BankPayへの遷移処理」を参照してください。

要求電文 : BankPayAccountAddRequestDto
フィールド名 項目名 書式・制限 説明 設定
memberId 会員ID 半角英数字
100桁以内
口座入力情報取得で指定した値を設定します。
accountId 口座ID 半角英数字
100桁以内
口座入力情報取得で指定した値を設定します。
応答電文 : BankPayAccountAddResponseDto
フィールド名 項目名 書式・制限 説明 設定
serviceType 決済サービスタイプ 半角英数字
10桁以内
要求電文を送信した決済サービスタイプ
mstatus 処理結果コード 半角英数字
32文字以内
"success":正常終了
"failure":異常終了
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
merrMsg エラーメッセージ 文字列
1024 byte以内
処理結果を日本語で表示
txnVersion MDK バージョン 半角英数字
5桁
電文のバージョン
問題発生時などに用いますが、通常ご利用になることはありません。
processId 処理通番 半角英数字
100桁以内
決済サーバーにて採番する処理通番。
preparedProcessId 口座入力情報取得の処理通番 半角英数字
100桁以内
口座入力情報取得時に決済サーバーにて採番されたprocessId。
memberId 会員ID 半角英数字
100桁以内
要求電文に設定した値
accountId 口座ID 半角英数字
100桁以内
要求電文に設定した値
bankpayAccountsRegisterUrl BankPay口座登録URL URLに使用可能な半角文字
256桁以内
BankPayへの遷移に必要な項目。
BankPayに遷移するために使用してください。
accountLabel 口座ラベル 文字列
50桁以内
BankPayへの遷移に必要な項目。
backUrl 戻り先URL URLに使用可能な半角文字
256桁以内
BankPayへの遷移に必要な項目。
customerAccessToken 会員用アクセストークン 半角英数字
32桁
BankPayへの遷移に必要な項目。
processorAuthenticationKeyIndex Pay事業者認証鍵世代番号 半角数字
2桁
BankPayへの遷移に必要な項目。
mac メッセージ認証コード 半角英数字
44桁
BankPayへの遷移に必要な項目。

消費者ブラウザから店舗側の確認画面へリダイレクトする時のクエリパラメータ

リダイレクト受信内容:決済サーバーから消費者ブラウザ経由で店舗側へリダイレクト(POST)される内容
フィールド名 項目名 書式・制限 説明 設定
mstatus 処理結果コード 半角英数字
32文字以内
"success" :正常終了
"failure" :異常終了
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
processId 処理通番 半角英数字
100桁以内
決済サーバーにて採番する処理通番。
memberId 会員ID 半角英数字
100桁以内
要求電文に設定した値
accountId 口座ID 半角英数字
100桁以内
要求電文に設定した値
bankCode 銀行コード 半角数字
4桁
登録された銀行コードを返却します。
branchCode 支店コード 半角数字
3桁
登録された支店コードを返却します。
depositType 預金種目 半角数字
1桁
登録された預金種目を返却します。
maskedAccountNum マスクされた
口座番号
半角数字記号
7桁
登録された口座番号(マスクした値)を返却します。
maskedAccountName マスクされた
口座名義人名
文字列
30文字以内
登録された口座名義人名(マスクした値)を返却します。
txnType トランザクションタイプ 文字列
32文字以内
実行したコマンド名。
"AccountAdd":口座登録結果通知
centerTransactionId 決済センター側の処理通番 半角英数字
36桁
BankPayにて採番する処理通番
centerProcessingDatetime 決済センター処理日時 半角数字
14桁
BankPay側で処理された日時を返却します。
(YYYYMMDDhhmmss形式)
vAuthInfo 改ざんチェック用
ハッシュ値
文字列
右記参照
下記文字列を連結し、SHA-256によって算出したハッシュ値
・マーチャントCCID
・パラメータ値の連結文字列(authParams が示す順序で連結)
・パスワード
尚、パラメータ値を連結する際は、パラメータ名や区切り文字は含めず、パラメータ値のみを連結しています。連結した文字列をバイナリに変換する際の文字エンコーディングは、UTF-8を使用しています。
authParams ハッシュ値算出パラメータ順序 文字列
右記参照
vAuthInfo のハッシュ値を算出する元とした文字列の、パラメータの連結順序を示す値
パラメータ名のカンマ区切り文字列をBase64エンコードしています。デコードを行うと文字列が復元されます。
例)
  "orderId,vResultCode,mstatus"
  "mstatus,orderId,vResultCode"
(順序は固定ではないため、リクエスト受信のたびに動的に処理する必要があります。)
vAuthInfoおよびauthParamsを利用した改ざんチェックについて

決済サーバーから消費者ブラウザを経由して店舗側の結果画面に遷移(リダイレクト)しますが、ここで店舗側システムが受け取ったクエリパラメータが改ざんされていないことを検証するためのパラメータが、vAuthInfoとauthParamsです。
店舗側システムで算出したハッシュ値が、クエリパラメータより取得したvAuthInfoと一致している場合は、パラメータは改ざんされていない、とみなすことができます。

この改ざんチェックは必須ではありませんが、悪意を持った第三者によって、不正なリダイレクト電文を受信する可能性がありますので、実装を強く推奨しています。 クエリパラメータは将来的に追加される可能性がございます。上記に定義されたフィールド名以外のフィールドが連携された場合でもエラーとならないようご注意ください。

口座削除

要求電文 : BankPayAccountDeleteRequestDto
フィールド名 項目名 書式・制限 説明 設定
memberId 会員ID 半角英数字
100桁以内
口座登録で指定した値を設定します。
accountId 口座ID 半角英数字
100桁以内
口座登録で指定した値を設定します。
応答電文 : BankPayAccountDeleteResponseDto
フィールド名 項目名 書式・制限 説明 設定
serviceType 決済サービスタイプ 半角英数字
10桁以内
要求電文を送信した決済サービスタイプ
mstatus 処理結果コード 半角英数字
32文字以内
"success":正常終了
"failure":異常終了
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
merrMsg エラーメッセージ 文字列
1024 byte以内
処理結果を日本語で表示
txnVersion MDK バージョン 半角英数字
5桁
電文のバージョン
問題発生時などに用いますが、通常ご利用になることはありません。
processId 処理通番 半角英数字
100桁以内
決済サーバーにて採番する処理通番。
memberId 会員ID 半角英数字
100桁以内
要求電文に設定した値
accountId 口座ID 半角英数字
100桁以内
要求電文に設定した値
centerTransactionId 決済センター側の処理通番 半角英数字
36桁
BankPayにて採番する処理通番
centerProcessingDatetime 決済センター処理日時 半角数字
14桁
BankPay側で処理された日時を返却します。
(YYYYMMDDhhmmss形式)

口座照会

要求電文 : BankPayAccountGetRequestDto
フィールド名 項目名 書式・制限 説明 設定
memberId 会員ID 半角英数字
100桁以内
照会対象の会員IDを指定します。
accountId 口座ID 半角英数字
100桁以内
照会対象の口座IDを指定します。
未指定の場合は、会員IDに紐づくすべての口座の情報を取得します。
応答電文 : BankPayAccountGetResponseDto
フィールド名 項目名 書式・制限 説明 設定
serviceType 決済サービスタイプ 半角英数字
10桁以内
要求電文を送信した決済サービスタイプ
mstatus 処理結果コード 半角英数字
32文字以内
"success":正常終了
"failure":異常終了
vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
merrMsg エラーメッセージ 文字列
1024 byte以内
処理結果を日本語で表示
processId 処理通番 半角英数字
100桁以内
決済サーバーにて採番する処理通番。
txnVersion MDK バージョン 半角英数字
5桁
電文のバージョン
問題発生時などに用いますが、通常ご利用になることはありません。
memberId 会員ID 半角英数字
100桁以内
要求電文に設定した値
accountId 口座ID 半角英数字
100桁以内
要求電文に設定した値
accounts 口座情報の配列 BankPayAccountの配列
accountId 口座ID 半角英数字
100桁以内
会員IDに紐づく口座ID
maskedAccountNum 口座番号(マスクした値) 半角数字記号
7桁
口座番号(マスクした値)
bankCode 銀行コード 半角数字
4桁
銀行コード
branchCode 支店コード 半角数字
3桁
支店コード
depositType 預金種目 半角数字
1桁
預金種目
isValid 有効区分 半角英字
5桁以内
"true":有効
"false":無効
本パラメータが"false"の場合は決済に利用できませんので、口座削除の実施を推奨します。
maskedAccountName 口座名義人名(マスクした値) 文字列
30文字以内
口座名義人名(マスクした値)

※現在の仕様では設定されることはありません。

共通

検索

  • 「設定」欄の内容は以下の通りとなります。

    要求電文 ...
    必須項目:○  任意項目:△  設定不可:×  その他条件付:※(条件は説明欄に記入)
    応答電文 ...
    必ず返戻:○  該当取引存在時に返戻:△  返戻なし:×  その他条件付:※
  • 複数指定は0~の添字を指定します。

    例)exparam.serviceTypeCd[0]=card&exparam.serviceTypeCd[1]=BankPay
  • ワイルドカードは値の一部と"*"を組み合わせて検索します。"*"のみの指定はできません。

    例)exparam.searchParameters.common.orderId=123*
要求電文 : SearchRequestDto
※ 以下は、共通の検索要求フィールドです。
検索フィールド名 検索項目名 書式・制限 複数
指定
ワイルド
カード
説明 設定
requestId リクエストID 半角英数字記号128文字以内 リクエストIDを指定します。指定した場合は、それ以外のパラメータは指定できなくなります。
serviceTypeCd 決済サービスタイプ 右記参照 検索対象の決済を指定します。未指定の場合は、全決済が検索対象となります。
"bankpay": BankPay
newerFlag 最新トランザクションフラグ 右記参照 成功、失敗に関係なく、最新トランザクションのみを検索する場合に使用します。
"true": 1取引内の最新トランザクションのみ検索
"false": 全てのトランザクションを検索

※指定しない場合は"false"になります。

containDummyFlag ダミー決済対象フラグ 右記参照 ダミー取引も検索する場合に使用します。
"true": ダミー取引も検索する
"false": ダミー取引は検索しない

※指定しない場合は"false"になります。

maxCount 検索最大件数 1~1000 取得したい検索結果の最大件数です。未指定の場合、最大値となります。

※短時間で大量の検索を繰り返すような処理は決済サーバーに負荷が掛かりますのでご遠慮頂けますようお願いします。

common  共通
orderId 取引ID 半角英数字100桁以内 検索したい取引IDを指定します。
orderStatus 取引決済状態 右記参照 以下のいずれかを指定します。
" initial ":初期状態
" end ":終了
" pending ":保留
" validation_error ":検証エラー
" expired ":期限切れ
" error ":エラー
command コマンド 右記参照 決済で使用するコマンドを指定します。
" Authorize ":申込(与信または与信+売上)
" Refund ":返金
mstatus ステータスコード
右記参照 決済結果として返戻されるステータスコードを指定します。
" success ":成功
" failure ":失敗
" pending ":保留
txnDatetime.from 取引日(From) 文字列12桁 取引日時の範囲(From)を指定します。
YYYYMMDDhhmm形式
txnDatetime.to 取引日(To) 文字列12桁 取引日時の範囲(To)を指定します。
YYYYMMDDhhmm形式
amount.from 金額(From) 数字12桁以内 決済金額の範囲(From)を指定します。
amount.to 金額(To) 数字12桁以内 決済金額の範囲(To)を指定します。
※ 以下は、BankPay固有の検索要求フィールドです。
BankPay BankPay
detailOrderType 詳細オーダー決済状態 右記参照

※「detailOrderType」の詳細は7-1検索(Search)に関する補足(詳細コマンドタイプ/詳細オーダー決済状態)を参照

detailCommandType 詳細コマンドタイプ 右記参照

※「detailCommandType」の詳細は7-1検索(Search)に関する補足(詳細コマンドタイプ/詳細オーダー決済状態)を参照

centerTransactionId 決済センターのトランザクション管理ID 半角英数字
36 桁以内
決済センターがトランザクション毎に発番するIDを指定します。
memberId 会員ID 半角英数字
100桁以内
会員IDを指定します。
accountId 口座ID 半角英数字
100桁以内
会員IDに紐づく口座IDを指定します。

※口座IDを設定する場合は、会員IDの指定が必須です。

応答電文 : SearchResponseDto
※ 以下は、共通の検索結果フィールドです。
検索フィールド名 検索項目名 書式・制限 説明 設定
result 処理結果
serviceType サービスタイプ 右記参照 "search"
mstatus 処理結果コード 半角英数字32文字以内 処理の結果ステータスが格納されます。
"success":正常終了
"failure":異常終了
vResultCode 詳細結果コード 半角英数字16文字 処理の結果を詳細に表すコードとなります。
詳細は『結果コード一覧』を参照下さい。
overMaxCountFlag 最大件数超えフラグ 右記参照 検索対象データが要求電文で指定した検索最大件数より多いかどうかを表します。
"true": 最大件数以上 "false": 最大件数未満
searchCount 検索結果件数 0~1000 検索結果件数(オーダー件数)が格納されます。
orderInfos オーダー情報リスト 複数のオーダー情報(orderInfo)が格納されます。
orderInfo オーダー情報 検索条件に該当した取引の情報が該当件数分繰り返されます。0~1000件(要求電文で指定した検索最大件数まで)となります。
index インデックス 0~999 検索された情報のインデックスが格納されます。
serviceTypeCd 決済サービスタイプ 右記参照 決済の種類が格納されます。
"bankpay": BankPay
orderId 取引ID 文字列 取引の取引IDが格納されます。
orderStatus 取引決済状態 右記参照 決済の状態が格納されます。
" initial ":初期状態
" end ":終了
" end_presentation ":画面遷移正常終了
" pending ":保留
" validation_error ":検証エラー
" expired ":期限切れ
" error ":エラー

※このフィールドは、取引IDに関連する注文データの状態を完全に表現するものではありません。サービスタイプによっては詳細な状態遷移を別のフィールドに保持している場合がありますので、店舗側システムの用途に合わせてsuccessDetailTxnTypeや、決済固有の状態フィールドをご参照ください。

lastSuccessTxnType 最終成功トランザクションタイプ 文字列 直近の成功したコマンド名が格納されます。
successDetailTxnType 詳細トランザクションタイプ 文字列 取引の詳細な状態が格納されます。
検索要求電文の各決済の detailOrderType参照。
properOrderInfo 固有オーダー情報 各決済サービスの固有オーダー情報が格納されます。後述の一覧参照。
transactionInfos 決済トランザクションリスト 複数の決済トランザクション情報(transactionInfo)が格納されます。
transactionInfo 決済トランザクション情報 検索条件に該当した取引の情報が該当件数分繰り返されます。
txnId トランザクション管理ID 文字列 決済サーバーが採番する管理IDとなります。
command コマンド 文字列 実行されたコマンド名が格納されます。

※MDKで要求したコマンドだけでなく、決済サーバーの内部処理コマンドも含まれます。

mstatus 処理結果コード 半角英数字32文字以内 処理の結果ステータスが格納されます。
"success":正常終了
"failure":異常終了
"pending":保留
vResultCode 詳細結果コード 文字列16桁 処理の結果を詳細に表すコードとなります。
詳細は『結果コード一覧』を参照下さい。
txnDatetime 取引日時 文字列23桁 取引日時が格納されます。
YYYY-MM-DD hh:mi:ss.mmm形式
amount 金額 半角数字12桁以内 決済した金額が格納されます。
properTransactionInfo 固有トランザクション情報 各決済サービスの固有トランザクション情報が格納されます。後述の一覧参照。

☆ 以下の情報は、上記 「固有オーダー情報」 「固有トランザクション情報」 内の階層にセットされます。

※ 以下は、BankPay固有の検索結果フィールドです。
properOrderInfo BankPay 固有オーダー情報
accountingType 課金種別 右記参照 決済申込時に指定した課金種別
"0":都度決済
"1":随時決済
"2":チャージ(オープン)
"3":チャージ(ハウス)
"4":チャージ(資金移動)
authorizeAmount 申込金額 半角数字
7桁以内
決済申込時に指定した金額
balance 残高 半角数字
7桁以内
現在の残高
memberId 会員ID 半角英数字
100桁以内
会員ID
accountId 口座ID 半角英数字
100桁以内
会員IDに紐づく口座ID
authorizeDatetime 決済申込日時 半角数字
14桁
決済申込日時
YYYYMMDDhhmmss形式
refundDatetime 返金日時 半角数字
14桁
返金日時
YYYYMMDDhhmmss形式
properTransactionInfo BankPay 固有トランザクション情報
bankpayErrorCode BankPayエラーコード 半角英数字
7 桁
BankPay側から返戻されたエラーコードが格納されます。
centerTransactionId 決済センターのトランザクション管理ID 半角英数字
36 桁以内
決済センタートランザクション単位に発番するID
detailCommandType 詳細コマンドタイプ 文字列

※「detailCommandType」の詳細は「7-1検索(Search)に関する補足(詳細コマンドタイプ/詳細オーダー決済状態)」を参照

storeId 店舗ID 半角英数字
5桁
決済申込もしくは返金時に指定した店舗ID
terminalId 端末機識別番号 半角数字
13桁
決済申込もしくは返金時に指定した端末機識別番号
bankpayRequestDatetime 決済センターへの要求日時 半角数字
14桁
決済センターへの要求日時が格納されます。
YYYYMMDDhhmmss形式
bankpayResponseDatetime 決済センターからの返戻日時 半角数字
14桁
決済センターからの返戻日時が格納されます。
YYYYMMDDhhmmss形式

結果通知電文

結果通知電文の概要

実装方法の詳細につきましては、弊社より提供しているサンプルプログラムをご参照ください。

  • 機能概要

    決済サーバーから店舗様システムへ決済の結果通知を行います。
    通知は、HTTPのPOSTを利用します。

    ※プロトコルはHTTP(Port:80)、HTTPS(Port:443)に対応しています。
    処理の概要については「第4章 結果通知受信処理」をご参照ください。

  • HMACについて

    POSTにてデータを通知するとき、リクエストヘッダーにHMACを設定します。
    また、HMAC値は、リクエストボディから算出します。
    アルゴリズムは「HmacSHA256」が設定されます。
    表 5.1 リクエストヘッダーに設定するHMACフィールド
    フィールド名設定値
    content-hmach={アルゴリズム名};s={CCID};v={HMAC値}
  • 結果通知受信処理結果について

    決済サーバーからの通知に対して店舗様システムがHTTPステータスコード"200"を返戻した場合、受信処理が正常に終了したものと判断します。"200"以外のコードを返した場合は、受信失敗と判断し、一定期間、通知を繰り返します。

    ※ 規定の回数失敗した場合は、通知処理が停止しますのでご注意ください。

BankPayの結果通知電文

BankPayにおける結果通知電文の通知タイミングは、下記となります。

表 5.2 BankPayの結果通知機能
No.通知機能通知タイミング注意事項
1 口座登録結果通知
(AccountAdd)
口座登録が確定(成功、失敗)したタイミングで送信します。
口座登録が中断した場合は、成功、失敗が確定したタイミングで通知を行います。

以下に、BankPayの結果通知項目を示します。

表 5.3 BankPayの結果通知項目
項番 フィールド名 項目名 書式・制限 説明
1 numberOfNotify 通知件数 半角数字4桁以内 1度に通知可能な件数は100件、
101件以上は次回通知
2 pushTime 送信時刻 半角数字14桁 決済サーバーから通知した時刻
yyyyMMddHHmmss形式
3 pushId 識別ID 半角数字8桁 プッシュ処理を行うたびに採番されるID。

注) 他の決済サービスで使用されたIDと重複する場合があります。

通知件数分下記の項番(4~14)を繰り返す。尚、フィールド名の後ろに4ケタの連番(0000~0999)を付与する。
4 txnType トランザクションタイプ 文字列
32文字以内
実行したコマンド名。
"AccountAdd":口座登録結果通知
5 txnTime 処理日時 半角数字14桁 yyyyMMddHHmmss形式
6 vResultCode 詳細結果コード 半角英数字
16文字
処理の結果を詳細に表すコード
4桁ずつ4つのブロックで構成され、各ブロックでサービス毎の処理結果を表します。
詳細は『結果コード一覧』を参照下さい。
7 mstatus 処理ステータス 半角英数字8桁以内 "success":正常終了
"failure":異常終了
8 dummy ダミー決済フラグ 半角数字1桁 ダミー取引を示す場合は"1"を設定します。
9 processId 処理通番 半角英数字
100桁以内
決済サーバーにて採番する処理通番。
10 memberId 会員ID 半角英数字
100桁以内
リクエストされた値
11 accountId 口座ID 半角英数字
100桁
リクエストされた値
12 bankCode 銀行コード 半角数字
4桁
登録された銀行コードを返却します。
13 branchCode 支店コード 半角数字
3桁
登録された支店コードを返却します。
14 depositType 預金種目 半角数字
1桁
登録された預金種目を返却します。
15 maskedAccountNum 口座番号 半角数字記号
7桁
登録された口座番号(マスクした値)を返却します。
16 maskedAccountName 口座名義人名 文字列
30文字以内
登録された口座名義人名(マスクした値)を返却します。
17 centerTransactionId 決済センター側の処理通番 半角英数字
36桁
BankPayにて採番する処理通番
18 centerProcessingDatetime 決済センター処理日時 半角数字
14桁
BankPay側で処理された日時を返却します。YYYYMMDDhhmmss形式
  • pushId(識別ID)は、他の決済サービスで使用されたIdと重複する場合がありますので、ユニークキーとして処理しないようにしてください。
  • 項目の並び順は、必ずしも表の順序とは一致しません。
  • 結果通知は将来的にフィールドが追加される可能性がございます。上記に定義されたフィールド名以外のフィールドが連携された場合でもエラーとならないようご注意ください。
  • 口座登録失敗時や、途中離脱のリカバリ処理などにより口座登録結果が確定した場合は、パラメータの設定値が空になるケースが存在します。

ご利用上の注意事項

会員登録での遷移について

銀行選択画面

消費者が口座を登録する際、銀行毎に入力が必要な情報が異なります。
そのため、まずは銀行を選択する画面を表示して、銀行選択後は「5.1.6 口座入力情報取得」コマンドを実施して、入力が必要な項目を取得します。

口座情報入力画面

6.1.1 銀行選択画面」で取得した情報をもとに、口座登録に必要な情報を入力するための画面を表示します。
口座情報入力後、「5.1.7 口座登録」コマンドを実施して、BankPayへの登録に必要な情報を取得します。

BankPayへの遷移処理

6.1.2 口座情報入力画面」で取得した情報をもとに、BankPayへの遷移を実施します。

電文仕様

項目仕様
遷移先URL5.1.7 口座登録」コマンドのレスポンスパラメータの"bankpayAccountsRegisterUrl"の値
HTTP Version1.1
HTTP MetohdPOST
EncodeUTF-8
content-typeapplication/x-www-form-urlencoded

※その他のリクエストヘッダについてはRFCに準じて設定してください。

パラメータ

フィールド名 項目名 書式・制限 説明 設定
bankCode 銀行コード 半角数字
4桁
5.1.6 口座入力情報取得」コマンドで"bankCode"に指定した値
branchCode 支店コード 半角数字
3桁
口座情報入力画面で入力した値 △(※1)
depositType 預金種目 半角数字
1桁
口座情報入力画面で入力した値 △(※1)
accountNum 口座番号 半角数字
7桁
口座情報入力画面で入力した値 △(※1)
accountName 口座名義人名 全角英数カナ記号
30桁以内
口座情報入力画面で入力した値
使用可能文字については「7-2 使用可能文字」を参照してください。
△(※1)
accountLabel 口座ラベル 文字列
50桁以内
5.1.7 口座登録」コマンドのレスポンスパラメータの"accountLabel"の値
backURL 戻り先URL URLに使用可能な半角文字
256桁以内
5.1.7 口座登録」コマンドのレスポンスパラメータの"backUrl"の値
cAccessToken 会員用アクセストークン 半角英数字
32桁
5.1.7 口座登録」コマンドのレスポンスパラメータの"customerAccessToken "の値
processorAuthenticationKeyIndex Pay事業者認証鍵世代番号 文字列
2桁
5.1.7 口座登録」コマンドのレスポンスパラメータの"processorAuthenticationKeyIndex"の値
mac メッセージ認証 コード 文字列
44桁
5.1.7 口座登録」コマンドのレスポンスパラメータの"mac"の値

※1) 「5.1.6 口座入力情報取得」コマンドのレスポンスで"true"となっている項目は必須

リクエストサンプル

<form method="post" action="https://example.com/hogehoge">
    <input type="hidden" name="bankCode" value="0000">
    <input type="hidden" name="branchCode" value="001">
    <input type="hidden" name="depositType" value="1">
    <input type="hidden" name="accountNum" value="1234567">
    <input type="hidden" name="accountName" value="テストタロウ">
    <input type="hidden" name="accountLabel" value="test">
    <input type="hidden" name="backURL" value="https://example.com/fugafuga">
    <input type="hidden" name="cAccessToken" value="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx">
    <input type="hidden" name="processorAuthenticationKeyIndex" value="01">
    <input type="hidden" name="MAC" value="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx">
</form>

会員・口座の登録について

同一口座の登録について

複数の会員で同一の口座を登録した場合、新しく登録した方は利用可能となりますが、先に登録した方は利用不可となります。
利用不可となった口座は、口座照会コマンドのレスポンスパラメータの「isValid」が"false"となりますので、利用不可となった口座は口座削除コマンドを実施することを推奨します。

例) memberId1に紐づくaccountId1と同じ口座情報をmemberId2に紐づけて口座登録を実施

会員ID 口座ID 銀行 口座番号 有効区分
memberId1 accountId1ABC銀行1111111true
accountId2DEF銀行2222222true
memberId2 accountId3ABC銀行3333333true

south

会員ID 口座ID 銀行 口座番号 有効区分
memberId1 accountId1ABC銀行1111111false
accountId2DEF銀行2222222true
memberId2 accountId3ABC銀行3333333true
accountId4ABC銀行1111111true

登録可能な口座数の上限について

会員毎に紐づけ可能な口座情報は最大8口座となります。

返金可能期間について

返金処理は決済申込を実施した当日中のみ可能です。
ただし、金融機関のサービス利用時間外などの理由により、当日中であってもエラーとなる可能性はございます。

その他 補足事項

検索(Search)に関する補足(詳細コマンドタイプ/詳細オーダー決済状態)

決済サーバーでは、システム内部データとして詳細コマンド(処理要求の種類)と詳細な決済状態(その取引がどのような状態にあるか)を管理しています。
通常の運用では、店舗様システムではこれらの内部情報を利用する必要はありませんが、店舗様システムにおいて取引の状態検索が必要なケースや、障害等のお問い合わせ時の参照情報として、これらの内部データをSearchコマンドで公開しています。
下表にSearchコマンドにて利用可能な内部データの一覧を示します。

表 7.1 詳細コマンドタイプと詳細オーダー決済状態
詳細コマンドタイプ詳細オーダー決済状態
論理名論理名
売上(与信売上)AuthCapture与信売上AuthCapture
取消(与信売上)VoidAuthCapture取消(与信売上)VoidAuthCapture

注) 一覧に記載していないコマンドタイプと状態も存在します。

使用可能文字

BankPayで使用可能な文字を以下の表の通りです。

氏名(userName)、カナ氏名(userNameKana)、住所(address)、摘要(remarks)

使用可能文字
半角数字0 1 2 3 4 5 6 7 8 9
半角英字A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
半角カナア イ ウ エ オ カ キ ク ケ コ サ シ ス セ ソ タ チ ツ テ ト ナ ニ ヌ ネ ノ ハ ヒ フ ヘ ホ マ ミ ム メ モ ヤ ユ ヨ ラ リ ル レ ロ ワ ヲ ン
ァ ィ ゥ ェ ォ ッ ャ ュ ョ
゙ ゚
半角記号! " # $ % & ' ( ) * + , - . / @ [ \ ] ^ _ ` { | } ~
半角スペース
全角文字Unicode3.0.0 までに収録されている文字

口座名義人(accountName)

使用可能文字
全角数字0 1 2 3 4 5 6 7 8 9
全角英字A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
全角カナア イ ウ エ オ カ キ ク ケ コ サ シ ス セ ソ タ チ ツ テ ト ナ ニ ヌ ネ ノ
ハ ヒ フ ヘ ホ マ ミ ム メ モ ヤ ユ ヨ ラ リ ル レ ロ ワ ヲ ン
ヴ ガ ギ グ ゲ ゴ ザ ジ ズ ゼ ゾ ダ ヂ ヅ デ ド バ ビ ブ ベ ボ パ ピ プペ ポ
ァ ィ ゥ ェ ォ ヵ ヶ ッ ャ ュ ョ ヮ
全角記号( ) ー 全角スペース

※金融機関によって、上記以外に使える記号も存在します。

※口座名義人について、銀行毎の使用不可の文字は以下の表の通りです(2022/12/16時点)
今後BankPayに対応した銀行については、上記の表に記載があっても使用不可の可能性がございますので、ご注意ください。

銀行 使用不可文字
三菱UFJ銀行

※先頭に使用不可

全角数字 すべて
全角カナ ヲ ァ ィ ゥ ェ ォ ャ ュ ョ ッ ヵ ヶ ヮ
全角記号 )全角スペース
住信SBIネット銀行 全角数字 すべて
全角英字 すべて
全角カナ ヵ ヶ ヮ

導入・テストに関する補足

決済サーバーに接続し、テストを実施するための各種手続き・手順の詳細につきましては、『導入テストガイド』を参照してください。

口座登録時の画面遷移をシミュレートする

弊社では、BankPayのテストのための疑似環境を提供しております。 ダミー取引で「6.1.3 BankPayへの遷移処理」を実施すると、口座登録の認証画面のイメージが表示されます。

図 8.1 疑似環境(ダミーBankPay-ログイン画面)
図 8.1 疑似環境(ダミーBankPay-ログイン画面)

口座登録の認証画面からの遷移先の対応表を以下に記載します。

認証画面決済結果画面からの遷移先
成功決済完了時URL
処理結果NGを引き渡す決済エラー時URL
不正なパラメータを引き渡す決済サーバーのエラー画面

Authorie, Refundコマンドのエラーをシミュレートする

Authorize、Refundコマンドの要求金額("amount")の一の位の値を調整することで、意図的にエラーを発生させることができます。
(Refundコマンドで金額を指定しない場合は、対象取引の返金可能金額が要求金額に相当します。)
要求金額の下一桁と、返戻されるvResultCodeの対応表を以下に記載します。

金額の
下1桁
Authorize
(決済申込)
Refund
(返金)
0 B001(成功) B001(成功)
1 BGD1(失敗)
2 BE50(ペンディング)
3 BGD1(失敗) B001(成功)
4 BE50(ペンディング)
5 B001(成功)
6
7
8
9

会員系コマンドのエラーをシミュレートする

MemberAdd、MemberUpdate、MemberDeleteコマンドの会員ID("memberId")の末尾1文字の値を調整することで、意図的にエラーを発生させることができます。
会員IDの末尾1文字と、返戻されるvResultCodeの対応表を以下に記載します。

会員IDの
末尾1文字
MemberAdd
(会員登録)
MemberUpdate
(会員情報更新)
MemberDelete
(会員削除)
0 B001(成功) B001(成功) B001(成功)
1 BGD2(失敗)
2 B001(成功)
3 BGD2(失敗)
4 B001(成功)
5 BGD2(失敗)
6 B001(成功)
7
8
9
その他の文字

口座系コマンドのエラーをシミュレートする

PrepareAccountAdd、AccountAdd、AccountDelete、AccountGetコマンドの口座ID("memberId")の末尾1文字の値を調整することで、意図的にエラーを発生させることができます。
口座IDの末尾1文字と、返戻されるvResultCodeの対応表を以下に記載します。

口座IDの
末尾1文字
PrepareAccountAdd
(口座入力情報取得)
AccountAdd
(口座登録)
AccountDelete
(口座削除)
AccountGet
(口座照会)
0 B001(成功) B001(成功)※1 B001(成功) B001(成功)※2
1 BGD3(失敗)
2 B001(成功)
3 BGD3(失敗)
4 B001(成功)※1
5 BGD3(失敗)
6 B001(成功)
7 BGD3(失敗)
8 B001(成功)※2
9
その他の文字

※1 口座登録の認証画面への遷移については、「8-1 口座登録時の画面遷移をシミュレートする」を参照してください。

※2 口座照会コマンドで取得できる口座情報は、口座登録で入力した値ではなく固定値となります。

ダミー取引で登録した会員・口座情報のデータ保持期間について

ダミー取引にて登録した会員・口座情報のデータ保持期間は、取引データの保持期間と同様になります(会員登録をした日から算出)。