# Terminal リーダーのアクションの失敗に API エラーの詳細を追加 ## 新機能 サーバー主導の実装向けに、Terminal リーダーの [action](https://docs.stripe.com/api/terminal/readers/object.md?api-version=2026-05-27.dahlia#terminal_reader_object-action) に [api_error](https://docs.stripe.com/api/terminal/readers/object.md?api-version=2026-05-27.dahlia#terminal_reader_object-action-api_error) ハッシュを追加します。カードの拒否といった Stripe API エラーが原因でリーダーのアクションが失敗した場合、`api_error` にはエラーの `type`、`code`、`message`、`decline_code`、`doc_url`、`request_log_url`、および `param` が含まれます。顧客によるキャンセルなど、失敗がリーダー自体に起因する場合、`api_error` は null になります。プログラムロジックで `api_error.message` を解析しないでください。代わりに `type` または `code` を使用してください。これには、リーダーソフトウェアのバージョン 2.42 以降が必要です。 古いリーダーでは、`api_error` は常に null になります。実装のガイダンスについては、[支払いの失敗を処理する](https://docs.stripe.com/terminal/payments/collect-card-payment.md?terminal-sdk-platform=server-driven#payment-failures)をご覧ください。 ## 影響 サーバー主導の [リーダーのアクションの失敗](https://docs.stripe.com/terminal/payments/collect-card-payment.md?terminal-sdk-platform=server-driven#payment-failures) が Stripe API とリーダーのどちらに起因するかを判断して、カード会員にどちらのエラーメッセージを表示するかを決められるようになりました。カード会員に表示する `card_error` の失敗を特定するには [api_error.type](https://docs.stripe.com/api/terminal/readers/object.md?api-version=2026-05-27.dahlia#terminal_reader_object-action-api_error-type) を使用します。特定の各エラーコードの処理に関するガイダンスについては、[api_error.doc_url](https://docs.stripe.com/api/terminal/readers/object.md?api-version=2026-05-27.dahlia#terminal_reader_object-action-api_error-doc_url) を使用します。 ## 変更点 #### REST API | Parameter | Change | Resources or endpoints | | --- | --- | --- | | `api_error` | Added | [Terminal.Reader.action](/api/terminal/readers/object?api-version=2026-05-27.dahlia#terminal_reader_object-action) | #### Ruby | Parameter | Change | Resources or methods | | --- | --- | --- | | `api_error` | Added | [Terminal::Reader::Action](/api/terminal/readers/object?api-version=2026-05-27.dahlia#terminal_reader_object-action) | #### Python | Parameter | Change | Resources or methods | | --- | --- | --- | | `api_error` | Added | [Terminal.Reader.Action](/api/terminal/readers/object?api-version=2026-05-27.dahlia#terminal_reader_object-action) | #### PHP | Parameter | Change | Resources or methods | | --- | --- | --- | | `api_error` | Added | [Terminal.Reader.action](/api/terminal/readers/object?api-version=2026-05-27.dahlia#terminal_reader_object-action) | #### Java | Parameter | Change | Resources or methods | | --- | --- | --- | | `apiError` | Added | [terminal.Reader.action](/api/terminal/readers/object?api-version=2026-05-27.dahlia#terminal_reader_object-action) | #### Node.js | Parameter | Change | Resources or methods | | --- | --- | --- | | `api_error` | Added | [Terminal.Reader.action](/api/terminal/readers/object?api-version=2026-05-27.dahlia#terminal_reader_object-action) | #### Go | Parameter | Change | Resources or methods | | --- | --- | --- | | `APIError` | Added | [TerminalReaderAction](/api/terminal/readers/object?api-version=2026-05-27.dahlia#terminal_reader_object-action) | #### .NET | Parameter | Change | Resources or methods | | --- | --- | --- | | `ApiError` | Added | [Terminal.Reader.Action](/api/terminal/readers/object?api-version=2026-05-27.dahlia#terminal_reader_object-action) | ## アップグレード #### REST API 1. Workbench で[現在の API バージョンを表示します](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench)。 2. SDK を使用している場合は、この API バージョンに対応する SDK バージョンにアップグレードします。 - SDK を使用していない場合は、`Stripe-Version: 2026-05-27.dahlia` を含めるように [API リクエスト](https://docs.stripe.com/api/versioning.md)を更新してください。 3. [Webhook エンドポイント](https://docs.stripe.com/webhooks/versioning.md)に使用する API バージョンをアップグレードします。 4. 新しいバージョンに対して、[実装内容をテスト](https://docs.stripe.com/testing.md)します。 5. Connect を使用する場合は、[Connect の実装内容をテスト](https://docs.stripe.com/connect/testing.md)します。 6. Workbench で[アップグレードを実行](https://docs.stripe.com/upgrades.md#perform-the-upgrade)します。[バージョンをロールバック](https://docs.stripe.com/upgrades.md#roll-back-your-api-version)できるのは 72 時間以内です。 [Stripe API のアップグレード](https://docs.stripe.com/upgrades.md)について、詳細をご確認ください。 #### Ruby 1. Workbench で[現在の API バージョンを表示します](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench)。 2. Ruby SDK を 最新バージョンにアップグレードします。 3. [Webhook エンドポイント](https://docs.stripe.com/webhooks/versioning.md)に使用する API バージョンをアップグレードします。 4. 新しいバージョンに対して、[実装内容をテスト](https://docs.stripe.com/testing.md)します。 5. Connect を使用する場合は、[Connect の実装内容をテスト](https://docs.stripe.com/connect/testing.md)します。 6. Workbench で[アップグレードを実行](https://docs.stripe.com/upgrades.md#perform-the-upgrade)します。[バージョンをロールバック](https://docs.stripe.com/upgrades.md#roll-back-your-api-version)できるのは 72 時間以内です。 [Stripe API のアップグレード](https://docs.stripe.com/upgrades.md)について、詳細をご確認ください。 #### Python 1. Workbench で[現在の API バージョンを表示します](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench)。 2. Python SDK を 最新バージョンにアップグレードします。 3. [Webhook エンドポイント](https://docs.stripe.com/webhooks/versioning.md)に使用する API バージョンをアップグレードします。 4. 新しいバージョンに対して、[実装内容をテスト](https://docs.stripe.com/testing.md)します。 5. Connect を使用する場合は、[Connect の実装内容をテスト](https://docs.stripe.com/connect/testing.md)します。 6. Workbench で[アップグレードを実行](https://docs.stripe.com/upgrades.md#perform-the-upgrade)します。[バージョンをロールバック](https://docs.stripe.com/upgrades.md#roll-back-your-api-version)できるのは 72 時間以内です。 [Stripe API のアップグレード](https://docs.stripe.com/upgrades.md)について、詳細をご確認ください。 #### PHP 1. Workbench で[現在の API バージョンを表示します](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench)。 2. PHP SDK を 最新バージョンにアップグレードします。 3. [Webhook エンドポイント](https://docs.stripe.com/webhooks/versioning.md)に使用する API バージョンをアップグレードします。 4. 新しいバージョンに対して、[実装内容をテスト](https://docs.stripe.com/testing.md)します。 5. Connect を使用する場合は、[Connect の実装内容をテスト](https://docs.stripe.com/connect/testing.md)します。 6. Workbench で[アップグレードを実行](https://docs.stripe.com/upgrades.md#perform-the-upgrade)します。[バージョンをロールバック](https://docs.stripe.com/upgrades.md#roll-back-your-api-version)できるのは 72 時間以内です。 [Stripe API のアップグレード](https://docs.stripe.com/upgrades.md)について、詳細をご確認ください。 #### Java 1. Workbench で[現在の API バージョンを表示します](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench)。 2. Java SDK を 最新バージョンにアップグレードします。 3. [Webhook エンドポイント](https://docs.stripe.com/webhooks/versioning.md)に使用する API バージョンをアップグレードします。 4. 新しいバージョンに対して、[実装内容をテスト](https://docs.stripe.com/testing.md)します。 5. Connect を使用する場合は、[Connect の実装内容をテスト](https://docs.stripe.com/connect/testing.md)します。 6. Workbench で[アップグレードを実行](https://docs.stripe.com/upgrades.md#perform-the-upgrade)します。[バージョンをロールバック](https://docs.stripe.com/upgrades.md#roll-back-your-api-version)できるのは 72 時間以内です。 [Stripe API のアップグレード](https://docs.stripe.com/upgrades.md)について、詳細をご確認ください。 #### Node.js 1. Workbench で[現在の API バージョンを表示します](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench)。 2. Node SDK を 最新バージョンにアップグレードします。 3. [Webhook エンドポイント](https://docs.stripe.com/webhooks/versioning.md)に使用する API バージョンをアップグレードします。 4. 新しいバージョンに対して、[実装内容をテスト](https://docs.stripe.com/testing.md)します。 5. Connect を使用する場合は、[Connect の実装内容をテスト](https://docs.stripe.com/connect/testing.md)します。 6. Workbench で[アップグレードを実行](https://docs.stripe.com/upgrades.md#perform-the-upgrade)します。[バージョンをロールバック](https://docs.stripe.com/upgrades.md#roll-back-your-api-version)できるのは 72 時間以内です。 [Stripe API のアップグレード](https://docs.stripe.com/upgrades.md)について、詳細をご確認ください。 #### Go 1. Workbench で[現在の API バージョンを表示します](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench)。 2. Go SDK を 最新バージョンにアップグレードします。 3. [Webhook エンドポイント](https://docs.stripe.com/webhooks/versioning.md)に使用する API バージョンをアップグレードします。 4. 新しいバージョンに対して、[実装内容をテスト](https://docs.stripe.com/testing.md)します。 5. Connect を使用する場合は、[Connect の実装内容をテスト](https://docs.stripe.com/connect/testing.md)します。 6. Workbench で[アップグレードを実行](https://docs.stripe.com/upgrades.md#perform-the-upgrade)します。[バージョンをロールバック](https://docs.stripe.com/upgrades.md#roll-back-your-api-version)できるのは 72 時間以内です。 [Stripe API のアップグレード](https://docs.stripe.com/upgrades.md)について、詳細をご確認ください。 #### .NET 1. Workbench で[現在の API バージョンを表示します](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench)。 2. .NET SDK を 最新バージョンにアップグレードします。 3. [Webhook エンドポイント](https://docs.stripe.com/webhooks/versioning.md)に使用する API バージョンをアップグレードします。 4. 新しいバージョンに対して、[実装内容をテスト](https://docs.stripe.com/testing.md)します。 5. Connect を使用する場合は、[Connect の実装内容をテスト](https://docs.stripe.com/connect/testing.md)します。 6. Workbench で[アップグレードを実行](https://docs.stripe.com/upgrades.md#perform-the-upgrade)します。[バージョンをロールバック](https://docs.stripe.com/upgrades.md#roll-back-your-api-version)できるのは 72 時間以内です。 [Stripe API のアップグレード](https://docs.stripe.com/upgrades.md)について、詳細をご確認ください。 ## 関連する変更 - [プリンター内蔵の Terminal リーダーでの画像印刷のサポートを追加](https://docs.stripe.com/changelog/dahlia/2026-05-27/terminal-reader-print-action.md) - [Terminal API に Verifone のサードパーティ製デバイスタイプのサポートを追加](https://docs.stripe.com/changelog/dahlia/2026-05-27/verifone-third-party-device-types.md)