クレジットカードの登録・変更をするAPIです。
| メソッド | URI | Headers |
|---|---|---|
/api/payment/credit |
Default |
| パラメーター名 | 型 | 内容 | 特記 |
|---|---|---|---|
| credit_card_type | tinyint | カード種類 | クレジットカードのブランド 1 : VISA 2 : MASTER 3 : JCB 4 : AMEX 5 : DINERS |
| credit_card_number | string | カード番号 | GMO JSのgetTokenメソッドにて取得した、間に*でマスク入っているカード番号 |
| credit_card_nominee | string | カード名義人 | |
| credit_card_effective_month | string | 有効期限 月 | 2桁で送る |
| credit_card_effective_year | string | 有効期限 年 | 2桁で送る |
| credit_card_token | string | カードトークン | GMO JSのgetTokenメソッドにて取得したトークン |
{
'credit_card_number' : '41111********111',
'credit_card_nominee' : 'MASATOSHI KUMAGAI',
'credit_card_effective_month' : '10',
'credit_card_effective_year' : '25',
'credit_card_token' : 'fa98erqp98hj23qja4op9348ytup498hjliwohjf98w3ayu4toiyu34to9yw39g8'
}
成功時
| パラメーター名 | 型 | 内容 | 特記 |
|---|---|---|---|
| result | boolean | リクエスト結果 |
{
"result" : true,
"errors" : "",
"data" : {},
}
GMOのクレジットカードチェックAPIでエラーが返却された時に、ブラウザに返却するエラー
ステータスコード:200
| パラメーター名 | 型 | 内容 | 特記 |
|---|---|---|---|
| result | boolean | リクエスト結果 | |
| errors | array | エラーメッセージ |
{
"result" : false,
"errors" : {
'カード会社略称が最大バイト数を超えています。',
'カード番号が指定されていません。'
},
"data" : "",
}
{danger} 上記のエラー以外の場合は200以外のエラーコードが返却されます。共通ルールのレスポンスをチェック。
{primary} 本機能で取得するデータに対してのvalidationを明記します
| 画面項目名 | フィールド名 | チェック内容 | 備考 |
|---|---|---|---|
| カード番号 | credit_card_number | required | |
| numeric | |||
| digits:16 | |||
| セキュリティーコード | credit_card_secure_number | required | |
| numeric | |||
| カード名義人 | credit_card_nominee | required | |
| string | |||
| カード有効期限 月 | credit_card_effective_month | required | |
| digits:2 | |||
| カード有効期限 年 | credit_card_effective_year | required | |
| digits:2 |
{primary} GMOのAPIを使い、利用可能なクレジットカードかどうかの確認をします。
| パラメーター名 | 型 | 内容 | 特記 |
|---|---|---|---|
| SiteID | char | サイトID | GMO APIのサイトIDです。 実装時は config/gmo_payment.phpに設定しているgmo_payment.site.SiteIDの値を使用します。 |
| SitePass | char | サイトパスワード | GMO APIのサイトパスワードです。 実装時は config/gmo_payment.phpに設定している |
| MemberID | varchar | セキュリティコード | DBに保存はしない。GMOのAPIで必要の可能性あり。 |
| credit_card_nominee | string | カード名義人 | |
| credit_card_effective | int | 有効期限 | @todo型の確認が必要 |
{
'gmo_id' : 1,
'credit_card_number' : 1111222233334444,
'credit_card_secure_number' : 123,
'credit_card_nominee' :'カード名義人',
'credit_card_effective' :'2022/10',
}
成功時
| パラメーター名 | 型 | 内容 | 特記 |
|---|---|---|---|
| result | boolean | リクエスト結果 |
{
"result" : true,
"errors" : "",
"data" : {},
}
| パラメーター名 | 型 | 内容 | 特記 |
|---|---|---|---|
| result | boolean | リクエスト結果 | |
| credit_card_number | string | not null / ~16 / integer | @todo バリデーション変更の可能性あり |
| credit_card_secure_number | string | not null / 3~ / integer | @todo バリデーション変更の可能性あり |
| credit_card_nominee | string | not null | @todo 桁数の確認が必要 |
| credit_card_effective | string | not null / integer |
{
"result" : false,
"errors" : {
'credit_card_number' : '必須項目です|桁数が足りません|有効な数字ではありません',
'credit_card_secure_number': '必須項目です|桁数が足りません|有効な数字ではありません'
'credit_card_nominee' : '必須項目です',
'credit_card_effective' : '必須項目です|有効な数字ではありません',
},
"data" : "",
}
{danger} 上記のエラー以外の場合は200以外のエラーコードが返却されます。共通ルールのレスポンスをチェック。
| 項目 | 注意点 |
|---|---|
| credit_card_number | numberからカード種類判別すること |
| gmoへの登録 | GMOクレジット登録実行が必要となる。 |
| gmo_id | 一応本当に新規か判定すること |
※ gmoAPIが不明(2021.09.08)
{primary} GMOのクレジットカードチェックAPIで、バリデーションチェック通過時にデータストアを行います。
organization_payment_settingsテーブルのレコードが存在する時のみ更新します。
該当レコードが存在しない場合この更新処理は行いません。
| 物理名 | フィールド名 | 型 | 備考 |
|---|---|---|---|
| GMOの管理ID | gmo_id | int | 新規の場合はnullが入る |
| カード番号 | credit_card_number | varchar | |
| カード名義人 | credit_card_nominee | string | |
| 有効期限 | credit_card_effective | int | @todo変更の可能性あり |