目的と概要
このドキュメントは、加盟店様においてAPIを統合する技術スタッフ向けです。
決済APIは同期式(3Dセキュア決済を除く)であり、HTTP POST、JSON形式のデータを受け入れ、JSONデータを返します。
接続はステージング環境と本番環境の両方で常にSSL経由で保護されます。
用語集
| 用語 | 説明 |
|---|---|
| 管理コンソール | 管理コンソールは、Albatal Payの加盟店様向けWeb/APIインターフェースです。 決済設定、取引履歴の確認、レポートの生成などが行えます。 |
| Merchant | Merchantは、ご契約いただく加盟店のことを指します。また、同一の契約主体(法人様単位)であっても、決済を導入する先のサイトが異なる(ドメインが異なる)場合は、それぞれにMerchantが作成されます。 |
| コンシューマー | コンシューマーは、決済を行う顧客のことを指します。 |
| Web Payment Form (WPF) | WPF(Web Payment Form)は、決済ゲートウェイ上でホストされるセキュアなWebフォームです。顧客の支払いを簡単に処理できる直感的なUIを提供します。 加盟店様システムがカード情報を所有することなく決済を実現することが可能です。 |
| Managed Recurring | Managed Recurringとは、定期的に実行される繰り返し型の決済です。 毎月課金・サブスクリプション型の決済はこの機能を利用します。 |
| Reconcile | このセクションでは、取引の照合、取引履歴の取得に関連するAPIを提供します。 |
| 加盟店グループ | 加盟店グループとは、同一の契約主体(法人様単位)で複数のMerchantをもつ場合に利用する機能です。 複数のサイトにおける決済を横断で確認するためのものです。 |
管理コンソール
Albatal Payを利用するにあたり、Web上でアクセス可能な統合コンソールが提供されております。 コンソールは2種類あり、ステージング環境・本番環境に別れます。
| ステージング | 本番 | |
|---|---|---|
| URL | https://staging.console.albatal.ltd | https://console.albatal.ltd |
認証
決済APIと連携するには、(認証情報は管理画面で確認できます。)
認証は Bearer トークン方式です。HTTP リクエストの Authorization ヘッダーに以下の形式でトークンを渡してください。
Authorization: Bearer <YOUR_BEARER_TOKEN>
# 環境変数 YOUR_BEARER_TOKEN にトークンを設定している想定
curl -X POST "https://staging.console.albatal.ltd/api/gateway/route-path" \
-H "Authorization: Bearer $YOUR_BEARER_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"consumer_id":"123456"
}'
// Node 18+ の組み込み fetch を想定
const token = process.env.YOUR_BEARER_TOKEN;
async function callGateway() {
const res = await fetch('https://staging.console.albatal.ltd/api/form/ja/wpf', {
method: 'POST',
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
consumer_id: '123456'
})
});
if (!res.ok) {
const text = await res.text();
throw new Error(`HTTP ${res.status}: ${text}`);
}
return await res.json();
}
callGateway().then(console.log).catch(console.error);
補足:
- トークンは管理コンソールから確認・発行します(トークンの保管にご注意ください)。
- リクエスト/レスポンスのペイロードは JSON形式を使用します。Content-Type ヘッダーで明示してください。
APIエンドポイント
WPF系API
WPFに関連する処理の呼び出し
接続先URL/api/wpf
https://staging.console.albatal.ltd/api/gateway/process/TERMINAL_TOKEN/
WPF
WPF(Web Payment Form)は、ペイメントゲートウェイが提供するコンポーネントです。マーチャントが顧客の決済を簡単に処理できる直感的なユーザーインターフェースを提供し、PCI-DSSに準拠する形式となっています。
WPFワークフロー
顧客がマーチャントのサイトで購入手続きを行う流れを示します。
- マーチャントはWPF APIにリクエストを送信して決済を開始します。成功時の応答にはリダイレクト用のURLが含まれており、マーチャントはそれを顧客に渡します。
- 顧客がそのリダイレクトURLにアクセスすると、ペイメントゲートウェイが提供する実際の決済フォーム(WPF)が表示されます。マーチャントが事前に送信した情報(商品情報,金額,その他詳細など)でフォームは既に入力されており、顧客は決済情報および個人情報を入力することでフォーム入力を完了させます。
- 入力が完了し、フォームを送信すると決済が処理されます。3Dセキュア形式での決済では、そのプラットフォームのページにリダイレクトされることがあります。完了後、顧客はマーチャント側のリターンURLにリダイレクトされます¹。
- 決済が処理されて最終状態に達した後、ゲートウェイは最初の作成リクエストで指定された通知URLに対して通知を送信します。
- マーチャントは通知を受信し最終的な決済ステータスを確認する必要があります。
¹ 通常はマーチャントが最初に指定した return_success_url にリダイレクトされます。
補足:
- 3Dセキュア(3DS)対応のWPF決済は常に非同期で行われます。WPF送信後、顧客は認証のためにプロバイダーへリダイレクトされ、認証結果に応じて成功・失敗のURLへ戻されます(未登録の場合は失敗URLへ)。
- return/success/cancel の各URLは、顧客に表示するためのページを提供する目的であり、これらのURLへのリダイレクトだけで決済結果が確定するわけではありません。決済の確定状況はサイトで受信した通知をご確認ください。
- 通知およびユーザのreturn/success/cancelで指定したURLへのリダイレクトの順序は保証されていません(通知が先に届く場合もあります)。つまり、顧客は決済の成功ページを閲覧した時点では、まだ通知がマーチャントに届いていない可能性があることに注意してください。
URL
作成:
WPF API作成メソッドのURLは次のとおりです。
https://console.albatal.ltd/api/wpf/create
テストシステムのURLは次のとおりです。
https://staging.console.albatal.ltd/api/wpf/create
作成
Web Payment Form APIは、次のトランザクションタイプに対して3DSv2認証プロトコルをサポートしています: Sale3d。 詳細については、以下のリクエストパラメータと右側のリクエスト例を確認してください。
リクエストの例
curl https://staging.console.albatal.ltd/api/wpf/create \
-X POST \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"transaction_id": "bf7e2c27-318e-46f6-b98a-9c317bb4dab9",
"usage": "コンサートチケット",
"description": "コンサートチケットの購入代金です",
"notification_url": "https://www.example.com/notify",
"return_success_url": "https://www.example.com/success",
"return_failure_url": "https://www.example.com/failure",
"return_cancel_url": "https://www.example.com/cancel.html",
"return_pending_url": "https://www.example.com/payment-pending.html",
"amount": 1980,
"currency": "JPY",
"consumer_id": "417155",
"consumer_email": "enteric_bezels9c@icloud.com",
"billing_address": {
"first_name": "太郎",
"last_name": "山田",
"address1": "東京都千代田区丸の内1-1-1",
"zip_code": "100-0005",
"city": "千代田区",
"neighborhood": "丸の内",
"state": "Tokyo",
"country": "JP"
},
"transaction_type_name": "sale3d"
}'
const response = await fetch("https://staging.console.albatal.ltd/api/wpf/create", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${process.env.ALBATAL_PAY_API_KEY}`,
},
body: JSON.stringify({
transaction_id: transactionId,
usage: internalTransactionDescription,
amount,
currency,
consumer_id: consumerId,
description,
consumer_email: consumerEmail,
notification_url: notificationUrl,
return_success_url: returnSuccessUrl,
return_failure_url: returnFailureUrl,
return_cancel_url: returnCancelUrl,
return_pending_url: returnPendingUrl,
remember_card: true,
transaction_type_name: "sale3d",
}),
});
継続決済(Managed Recurring)のWPF作成
継続決済(Managed Recurring)をWPFで開始する場合も、最初に「WPF作成」を1回だけ行います。
このWPF(初回決済)が完了(approved)すると、以降の継続課金は指定したスケジュールに従ってシステム側で自動実行され、結果は notification_url に通知されます(通知フォーマットは「継続決済通知(2回目以降)」を参照)。
実装上は、WPF作成リクエストで次のパラメータを指定してください。
transaction_type_nameにrecurring_sale3dを指定recurring_typeにmanagedを指定managed_recurringに継続条件を指定mode:automatic(自動実行)interval: 課金間隔の単位(daysまたはmonths)period: 課金間隔(必須、integer)。interval=daysの場合は「日数」(最大:30)、interval=monthsの場合は「月数」(最大:12)を指定します。first_date: 初回の継続課金を実行する日付(任意、YYYY-MM-DD)。未指定時は「作成日 + period」がデフォルトです。amount: 2回目以降の継続課金額(※ リクエスト直下のamountは初回決済の金額です)max_count: 最大実行回数(初回決済を除く)
first_date を指定することで、例えば「初回は割引価格で提供し、2回目以降は毎月通常価格で課金する」といった運用において、初回決済(WPF)と次回以降の課金タイミングを意図した日付に揃えることができます。
また、継続決済(2回目以降)の実行時に決済が処理できなかった場合(ユーザのカードが無効になった、与信枠が不足する等)は、Managed Recurring自体がキャンセルされ、次回以降は自動的に決済が行われません。
リクエスト例(Managed Recurring)
const payload = {
transaction_id: transactionId,
usage: "40208 concert tickets",
description: "You are about to buy 3 shoes at www.shoes.com!",
notification_url: notificationUrl,
return_success_url: returnSuccessUrl,
return_failure_url: returnFailureUrl,
return_cancel_url: returnCancelUrl,
return_pending_url: returnPendingUrl,
amount: 1280,
currency: "JPY",
consumer_id: consumerId,
consumer_email: email,
transaction_type_name: "recurring_sale3d",
recurring_type: "managed",
remember_card: true,
managed_recurring: {
mode: "automatic",
interval: "days",
period: 30,
amount: 980,
max_count: 2,
},
billing_address: {
first_name: "田中",
last_name: "太郎",
address1: "丸の内1-1-1",
zip_code: "100-0005",
city: "千代田区",
neighborhood: "丸の内",
state: "東京都",
country: "JP",
},
};
リクエストパラメータ
| パラメータ | 必須 | 形式 | 説明 |
|---|---|---|---|
| transaction_id | ◯ | string(255) | マーチャントが定義する一意の取引IDで、CUID形式またはUUID形式である必要があります。一度処理を実行したIDを再利用することはできません。 |
| usage | ◯ | string(255) | 取引の説明。 |
| description | ◯ | string | 決済理由の顧客向け表示用テキストです。 |
| amount | ◯ | integer (>100) | 決済取引額を整数で指定します。 最低金額は設定によって変更できる場合があります。 |
| currency | ◯ | string(3) | ISO 4217通貨コード "JPY"のみ |
| consumer_id | ◯ | string(255) | 加盟店側が所有している顧客を識別するIDです。 consumer_emailと組で一意である必要があります。 |
| consumer_email | ◯ | 顧客の有効なメールアドレス。 メールアドレスが変更された場合、consumer_idも別のものにして送信する必要があります。 | |
| notification_url | ◯ | url | この取引の結果通知を受け取るマーチャントURL |
| return_success_url | ◯ | url | 決済成功時のユーザのリダイレクトURL |
| return_failure_url | ◯ | url | 決済失敗時のユーザのリダイレクトURL |
| return_cancel_url | ◯ | url | ユーザーがキャンセルした場合のリダイレクトURL |
| return_pending_url | ◯ | url | 非同期決済の保留時のURL |
| remember_card | - | boolean | カード情報を保存するかどうかを指定します。true の場合、顧客はカード情報を保存するかどうかを決定することができます。 ユーザが保存を希望された場合、決済完了後にカード情報保存され、以降の決済で再利用可能になります。指定が無い場合、trueになります。 |
| billing_address | ◯* | object | 請求先住所(下のサブフィールド参照) |
| first_name | ◯* | string(255) | 名 |
| last_name | ◯* | string(255) | 姓 |
| address1 | ◯* | string(255) | 主要住所 |
| zip_code | ◯* | string | 郵便番号 |
| city | ◯* | string(255) | 市区町村 |
| neighborhood | ◯* | string(255) | 地区 |
| state | ◯* | string(2) | 州コード(米国/カナダで必須) |
| country | ◯* | string(2) | ISO 3166国コード |
| transaction_types | ◯ | array | 受け入れる取引タイプ(例: Sale3d) |
Notification URLについて
notification_url パラメータは、WPF決済が最終状態に達したときにゲートウェイがHTTP POSTリクエストを送信するURLを指定します。
通知先に指定したURLが、BASICやその他の認証を必要とすることのないパブリックにアクセス可能なURLであることを確認してください。
また、http、localhost、プライベートIPアドレス等を指定した場合はエラーとなります。
ローカルで動作確認を行う際は、ngrokやnginxのリバースプロキシ等を使用してパブリックにアクセス可能なURLを用意してください。
注:
* 「必須 ◯*」は、送信する取引タイプやビジネス要件によって必須となる場合がある条件付き必須フィールドです。 説明部分を参照してください。
* billing_addressは任意です。指定しない場合、自動的にダミーの値でゲートウェイに送信します。 本番利用であっても、この挙動は問題ありません。 加盟店側で情報として所有している場合は、承認率の関係上指定することを推奨します。 また、サブフィールドのパラメータの一部が提供されていない場合は、ユーザの決済情報入力時に当該項目を入力する欄が表示されます。
カード情報保存に関する注意事項
WPF作成時に加盟店でカード保存を有効化(remember_card:trueを指定)した場合、顧客はWPF上でカード情報を保存するかどうかを選択できます。
一度保存されますと、継続決済、単品決済の両方で同じカードを選択することが可能です。 この時、保存されていてもCVVの入力は毎度必須となります。
送信するconsumer_idとconsumer_emailパラメータの組が一致する場合に同一ユーザとして判定され、保存カードの選択が表示されます。
カード情報の保存は原則無期限ですが、加盟店様の接続先ゲートウェイのポリシーにより、予告なく一定期間後に自動的に削除される場合があります。
レスポンス例
{
status: 'new',
unique_id: '8d9c6acd0df466d96d2ca7a64d3bf1bc',
transaction_id: 'n3hln4f7a01taiyzppp4u0v5',
consumer_id: '417155',
timestamp: '2025-11-21T08:12:56Z',
amount: '1980',
currency: 'JPY',
redirect_url: 'https://staging.wpf.emerchantpay.net/ja/v2/payment/8d9c6acd0df466d96d2ca7a64d3bf1bc'
}
| パラメータ | タイプ | 説明 |
|---|---|---|
| status | string(255) | WPF取引のステータス、状態を参照 |
| unique_id | string(32) | ゲートによって定義された一意のID(後で取引を無効化、または返金する場合に使用する必要があります) |
| transaction_id | string(255) | マーチャントが定義した一意の取引ID |
| redirect_url | url | ユーザーが決済プロセスを完了するためにリダイレクトされる必要があるURL |
| timestamp | string(255) | 取引が処理された時刻(ISO 8601結合日時形式、例:2007-08-30T17:46:11Z) |
| amount | integer | 通貨の最小単位での取引金額、詳細は通貨と金額の処理を参照 |
| currency | string(255) | ISO 4217の通貨コード |
| code | integer | エラーの場合に含まれます。エラーコード表によるエラーコード |
| technical_message | string(255) | エラーの場合に含まれます。技術的なエラーメッセージ(内部使用のみ、ユーザーに表示しないでください) |
| message | string(255) | エラーの場合に含まれます。ユーザーに表示できる人間が読める形式のエラーメッセージ |
Managed Recurring
Console API(Managed Recurring アイテム操作)
コンソール側で保持している定期決済情報であるManaged Recurringの「単体取得」「キャンセル」を提供します。
重要:
- パスパラメータ
{transaction_id}は、WPF取引を作成した際に加盟店側が最初に指定した取引IDです。
Managed Recurring アイテムを取得(単体)
Managed Recurring アイテムを取得します。
GET /api/wpf/managed_recurring/items/{transaction_id}
リクエスト例
curl https://staging.albatal.ltd/api/wpf/managed_recurring/items/{transaction_id} \
-X GET \
-H "Authorization: Bearer $YOUR_BEARER_TOKEN"
成功レスポンス例
{
"managed_recurring_item": {
"unique_id": "527b78f60234b8a92103faa45515cdb1",
"interval": "months",
"period": 1,
"amount": "5000.0",
"max_count": 0,
"current_count": 0,
"first_date": "2025-04-15",
"next_date": "2025-04-20",
"time_of_day": 0
}
}
成功レスポンスパラメータ
managed_recurring_item の各フィールドは以下の通りです。
| パラメータ | 型 | 説明 |
|---|---|---|
| unique_id | string(255) | Managed Recurring アイテムの一意ID |
| interval | string(6) | 課金周期の単位。days または months(デフォルトは days) |
| period | integer | 課金間隔。interval=days の場合は日数(例: 30)、interval=months の場合は月数(例: 12) |
| amount | float | 定期課金の金額(通貨の主要単位) |
| max_count | integer | 課金が行われる最大回数(0 の場合は停止するまで無制限になります) |
| current_count | integer | すでに実行された課金回数 |
| first_date | YYYY-MM-DD | 初回の課金日 |
| next_date | YYYY-MM-DD | 次回の課金日 |
| time_of_day | integer | 定期課金を実行するUTC時刻 原則固定で0 |
Managed Recurring アイテムをキャンセル
Managed Recurring アイテムをキャンセルし、以降の決済を停止します。
DELETE /api/wpf/managed_recurring/items/{transaction_id}
リクエスト例
curl https://staging.albatal.ltd/api/wpf/managed_recurring/items/{transaction_id} \
-X DELETE \
-H "Authorization: Bearer $YOUR_BEARER_TOKEN"
成功レスポンス
空のJSONオブジェクトを返します。
{}
エラー/ステータスコード
このAPIが返す主なステータスは以下です。
| HTTP | 条件 |
|---|---|
| 200 | 取得/キャンセル成功 空のJSONオブジェクト {} を返す |
| 404 | 指定した transaction_id に紐づく Managed Recurring が存在しない |
| 401 | 認証エラー |
通知
WPF通知は、WPF決済が最終状態に達したとき、および継続決済(Managed Recurring)が自動実行されたときに送信されます。 HTTP POST(application/x-www-form-urlencoded)を介してパラメータが送信されます。
通常決済(WPF完了通知)
WPF経由での初回決済(単発決済、または継続決済の初回登録)が完了した際に送信される通知です。
パラメータ例:
wpf_transaction_id=a0695fc8-31f7-45a8-b74d-5a0d5ed26e79&wpf_status=approved
&wpf_unique_id=04edd5bf9dcb30f9b6ee4c01123a8cfd¬ification_type=wpf&signature=...
&payment_transaction_unique_id=c534328a155e57cf18908e778a5548c3
&payment_transaction_transaction_type=sale3d&payment_transaction_amount=1002&apc_card_brand=visa
&apc_card_last_four_digits=1111&apc_card_expiration_year=2025&apc_card_expiration_month=9
| 名前 | 説明 |
|---|---|
| signature | 通知の署名。通知が正当なものであるか検証するために使用します。 |
| wpf_transaction_id | 加盟店が指定した一意の取引ID。 |
| wpf_unique_id | ペイメントゲートウェイによって生成されたWPFセッションID。 |
| wpf_status | WPFセッションのステータス(approved, declined など)。 |
| notification_type | 定数値 "wpf"。 |
| payment_transaction_unique_id | ペイメントゲートウェイによって生成されたひとつの決済トランザクションの一意なID。 |
| payment_transaction_amount | 決済金額。 |
| consumer_id | Albatal Pay内部で発行された顧客ID。 |
| apc_card_brand | カードブランド("visa"または"master")。ブランドに対応する識別子は予告なく変更される可能性があります。 |
| apc_card_last_four_digits | カード番号の下4桁。(string) |
| apc_card_expiration_year | 有効期限の年(yyyy形式)。(string) |
| apc_card_expiration_month | 有効期限の月(m形式、1-9月は一桁)。(string) |
継続決済通知(2回目以降)
Managed Recurring機能により、スケジュールされた継続決済がシステム側で自動実行された際に送信される通知です。初回決済とはパラメータ名が異なりますのでご注意ください。
パラメータ例:
transaction_id=37bbfe0f25f083a979af8e8e83c5182b&unique_id=dd2c56e2fa47d91e7b564348066c8c9e
&merchant_transaction_id=3af71fa5faf24051e75f7f99659d71ac
&status=approved&signature=...&amount=980&transaction_type=sale
| 名前 | 説明 |
|---|---|
| signature | 通知の署名。 |
| transaction_id | 発行された決済トランザクションID |
| unique_id | 今回の決済トランザクションの一意なID。 |
| merchant_transaction_id | 加盟店が初回に指定した取引のID。初回決済時の transaction_id と一致します。 |
| status | 取引のステータス。 |
| amount | 決済金額。 |
| transaction_type | トランザクションの種類(例:sale)。 |
| error_code | エラーコード。決済が失敗した場合に含まれます。(string) 詳細はエラーの項目を参照してください。 |
apc_card_ で始まるパラメータは、顧客カード情報が取得できた場合にのみ含まれます。 取得できなかった場合は、パラメータ自体が含まれないか、値がnullになります。
署名の検証
署名は、通知の正当性を保証するためのセキュリティ手段です。 通知の種類(通常決済/継続決済)によって、署名の生成に使用されるIDが異なります。
通常決済(WPF完了通知):
<wpf_unique_id><加盟店シークレット>のハッシュ値継続決済(2回目以降):
<unique_id><加盟店シークレット>のハッシュ値 ※unique_idは今回の通知に含まれる決済IDです。
※ ハッシュアルゴリズムは SHA-512となりますが、ゲートウェイの仕様により取引によってSHA-1が利用される場合もあります。両方での検証し、いずれかが一致すれば有効と判断してください。
加盟店シークレットの値は、管理コンソールからご自身の加盟店情報画面より確認することができます。(加盟店シークレットにもステージング環境と本番環境で異なる値が設定されていますので、ご注意ください。)
通知を受信したら、ゲートウェイが通知を受け入れたことを認識できるように、ステータス200のレスポンスを返信してください。 レスポンスを送信しない場合、標準では1分に1回、最大3回まで再送信を試みます。
WPFの状態
WPFトランザクションには、次のいずれかの状態があります。
| ステータス | 説明 |
|---|---|
| new | wpfトランザクションの初期ステータス。 |
| requested | Albatal PayがWPFを作成し、マーチャントへURLを送信した直後で、ユーザへリダイレクトURLを提供する必要がある状態です。 |
| user | ユーザーがWPFフォームに入力して送信するのを待っています。 |
| timeout | トランザクションが長時間保留され、タイムアウト期間に達しました。 ユーザが決済情報を入力せずに一定時間が経過した場合などを指します。 |
| in_progress | トランザクションは現在処理中です。 |
| pending | トランザクションが処理中です。 (ユーザの決済情報入力待ちなど) |
| pending_hold | 非同期トランザクションはユーザーによって確定されましたが、プロバイダーからの最終更新を待っています。 |
| approved | トランザクションはスキームによって承認され、成功しました。 |
| declined | トランザクションはスキームまたはリスク管理によって拒否されました。 |
| error | 処理中にエラーが発生しました。 |
| refunded | 承認されたトランザクションが返金されると、状態は refunded に変わります。 |
| voided | トランザクションは承認されましたが、後でマーチャントによってキャンセルされたものです。 |
| chargebacked | 承認されたトランザクションがチャージバックされると、状態は chargebacked に変わります。チャージバックは、カード所有者または発行者が、資金がすでに送金された承認済みトランザクションを拒否した場合に発生します。 |
| chargeback_reversal | チャージバックされたトランザクションが課金されると、状態は chargeback_reversal に変わります。 |
| represented | マーチャントがチャージバックが不正であることを証明する証拠を提出すると、チャージバックされたトランザクションの状態は represented に変わります。 |
| representment_reversed | マーチャントによって開始された再提示が、エラーまたは無効な再提示理由のために取得者(マーチャントの銀行)によってキャンセルまたは拒否された場合。再提示の結果として最初にマーチャントに返金された資金は、発行者口座(カード所有者の銀行)に差し戻されます。 |
| second_chargebacked | chargeback_reversed/represented トランザクションがチャージバックされると、状態は second chargebacked に変わります。 |
| pending_review | トランザクションは保留中です。手動レビューを実行する必要があります。 |
| submitted | WPFフォームはユーザーによって送信されました。 |
クレジットカード番号
ゲートウェイのテストには、実在するカード番号を用いて決済を実行します。 または、オンラインクレジットカードジェネレーターを使用したカード番号を使用することもできますが、一部処理においては番号が無効と判断される場合もあります。
いずれの場合も、テスト時は、メッセージに以下のような内容が含まれ、請求が行われることはありません。
エラー
レスポンスに含まれる error_codeをもとに、以下の表で原因と対処の目安を確認してください。
エラーグループ一覧
エラーコードは範囲(100番台、200番台…)ごとにグループ化されています。
| Code | Name | Description |
|---|---|---|
| (100..199) | システムエラー | トランザクションを処理できず、イシュア(発行会社)へは送信されていません。 |
| (200..299) | 通信エラー | トランザクションを正常に処理できませんでした。イシュアへ到達できない、または不正なデータが返却された可能性があります。特に 230〜250 は、イシュア側では処理されている可能性があるため、照合(reconcile)を実施してください。 |
| (300..399) | 入力データエラー | リクエストに含まれる入力データが不正なため、トランザクションを処理できません。 |
| (400..499) | ワークフローエラー | ワークフロー上、その時点では実行できないトランザクションを要求した場合に発生します(例:拒否された取引に対する返金)。 |
| (500..599) | 処理エラー | イシュアによって取引が拒否された場合に発生します。 |
| (600..699) | リスクエラー | リスク管理システムが取引の通過を許可しない場合に発生します。 |
| (900..999) | イシュアエラー | イシュアに到達できない、またはイシュア側の技術的問題により発生します。この種のエラーが継続する場合はサポートへお問い合わせください。 |
エラーコード一覧
システムエラー
| Code | Name | Description |
|---|---|---|
| 100 | SystemError | 一般的なシステムエラーが発生しました。 |
| 101 | MaintenanceError | メンテナンス中のため、リクエストを処理できませんでした。 |
| 110 | AuthenticationError | 認証に失敗しました。サポートへお問い合わせください。 |
| 120 | ConfigurationError | 設定エラーが発生しました。サポートへお問い合わせください。 |
通信エラー
| Code | Name | Description |
|---|---|---|
| 200 | CommunicationError | イシュアとの通信に失敗しました。サポートへお問い合わせください。 |
| 210 | ConnectionError | イシュアへの接続を確立できませんでした。サポートへお問い合わせください。 |
| 220 | AccountError | イシュア側のアカウント情報が不正です。サポートへお問い合わせください。 |
| 230 | TimeoutError | 規定時間内にイシュアから応答がありませんでした。 |
| 240 | ResponseError | イシュアから不正な応答が返却されました。 |
| 250 | ParsingError | イシュアからの応答を解析できませんでした。 |
入力データエラー
| Code | Name | Description |
|---|---|---|
| 300 | InputDataError | APIへ送信されたデータが不正です。 |
| 320 | InputDataMissingError | 必須パラメータが不足しています。パラメータをご確認ください。 |
| 330 | InputDataFormatError | パラメータの形式が不正です。パラメータをご確認ください。 |
| 340 | InputDataInvalidError | 形式は正しいものの値が不正です(例:国コードや通貨コードが誤っている)。パラメータをご確認ください。 |
ワークフローエラー
| Code | Name | Description |
|---|---|---|
| 400 | WorkflowError | ワークフロー上、現時点では実行できないトランザクションが要求されました。 |
| 430 | ReferenceInvalidatedError | 参照元トランザクションは既に無効化されています。 |
| 440 | ReferenceMismatchError | 参照元とのデータ不整合がありました(例:金額が参照元を超えている)。 |
| 450 | DoubletTransactionError | 重複トランザクションが検出されブロックされました。5分以内に同一金額・同一カード名義・同一カード番号・同一CVV・同一有効期限の取引が複数送信された場合に発生します。 |
| 460 | TransactionNotFoundError | 参照されているトランザクションが見つかりませんでした。 |
処理エラー
| Code | Name | Description |
|---|---|---|
| 500 | ProcessingError | イシュアにより取引が拒否されました。 |
| 501 | BankRejectError | 銀行の拒否により取引が拒否されました。 |
| 510 | InvalidCardError | 取引が拒否されました。クレジットカード番号が不正です。 |
| 511 | IssuerOctNotEnabledError | OCT が有効化されていません。 |
| 520 | ExpiredCardError | 取引が拒否されました。有効期限が未来日でない、または日付が不正です。 |
| 530 | TransactionPendingError | トランザクションは保留中です。 |
| 540 | CreditExceededError | 金額がクレジットカードの利用可能枠を超えています。 |
| 550 | IssuingError | バウチャーを発行できませんでした。 |
| 551 | ScaRequiredError | SCA(強固な顧客認証)が必要です。 |
リスクエラー
| Code | Name | Description |
|---|---|---|
| 600 | RiskError | リスク管理により取引が拒否されました。 |
| 601 | InterchangeRejectError | 取引に対して Interchange reject が返却されました。 |
| 609 | BinCountryCheckError | カードBINが請求先国と一致しません。 |
| 610 | CardBlacklistError | カードがブラックリストに登録されています。 |
| 611 | BinBlacklistError | BIN がブラックリストに登録されています。 |
| 612 | CountryBlacklistError | 国がブラックリストに登録されています。 |
| 613 | IpBlacklistError | IPアドレスがブラックリストに登録されています。 |
| 614 | BlacklistError | 取引情報またはリスクパラメータに、ブラックリスト該当の値が含まれています。 |
| 615 | CardWhitelistError | PANホワイトリストフィルタによりブロックされました。このフィルタは、上記と同様にPANのブラックリスト(BL)を参照しますが、ホワイトリストに登録されていないカード番号は拒否します。 |
| 620 | CardLimitExceededError | カードの上限が設定値を超えました。 |
| 621 | TerminalLimitExceededError | 端末の上限が設定値を超えました。 |
| 622 | ContractLimitExceededError | MID の上限が設定値を超えました。 |
| 623 | CardVelocityExceededError | 未知のカードに対する速度制限(Velocity)を超えました。 |
| 624 | CardTicketSizeExceededError | 未知のカードに対するチケットサイズ制限を超えました。 |
| 625 | UserLimitExceededError | ユーザーの上限が設定値を超えました。 |
| 626 | MultipleFailureDetectionError | イシュア拒否の取引が検出されました。時間をおいて再試行してください。 |
| 628 | RecurringLimitExceededError | 継続課金(サブスクリプション)の金額または回数が上限を超えました。 |
| 629 | IrisFilterDeclinedError | リスク管理(Irisフィルタ)により取引が拒否されました。 |
| 630 | IrisFilterOnHoldError | 取引は保留中です。手動レビューが行われます。 |
| 691 | MaxMindRiskError | MaxMind minFraud により高リスクと判定されました。 |
| 692 | ThreatMetrixRiskError | ThreatMetrix リスクモジュールにより取引が拒否されました。 |
| 693 | IpNotWhitelistedError | リスク管理により取引が拒否されました。IPアドレスがホワイトリストに登録されていません。 |
| 694 | DomainBlacklistedError | リスク管理により取引が拒否されました。ドメインがブラックリストに登録されています。 |
| 695 | FraudError | リスクエラー:サポートへお問い合わせください。 |
| 696 | IbanBlacklistError | リスク管理により取引が拒否されました。IBAN がブラックリストに登録されています。 |
イシュアエラー(リモートエラー)
| Code | Name | Description |
|---|---|---|
| 900 | RemoteError | イシュア側で何らかのエラーが発生しました。サポートへお問い合わせください。 |
| 910 | RemoteSystemError | イシュア側でシステムエラーが発生しました。 |
| 920 | RemoteConfigurationError | イシュア側の設定エラーです。 |
| 930 | RemoteDataError | 送信データが原因でイシュア側でエラーが発生しました。 |
| 940 | RemoteWorkflowError | イシュア側のワークフローエラーです。 |
| 950 | RemoteTimeoutError | クリアリングネットワーク経由でイシュアがタイムアウトしました。 |