Apply an explicitly confirmed company fallback-mode change
Default off; requires COMMERCE_MCP_OAUTH_CONNECTED_ENABLED, the exact fresh nine-scope v3 consent, current Microsoft purchase and membership, and signed supported-source eligibility. It never upgrades a legacy v1 or v2 grant. Also requires COMMERCE_MCP_BUSINESS_CENTRAL_NATIVE_ENABLED and a separately verified current company connection/native read grant within the purchaser tenant extracted by Accounts. No caller-supplied tenant, economics or source URL is accepted. Eight-second deadline and fixed bounded source reads apply. Requires erp:configure, current Accounts owner/admin, a separately verified native configure grant and provider-observed write permission. Only FAIL_OPEN/FAIL_CLOSED changes are supported. Exact old/new mode, settings ID, connection revision, nonwildcard ETag and idempotency must match the reviewed request. Adapter-proven non-writes are terminal NOT_APPLIED; uncertain outcomes stay reserved and never retry a PATCH. A read can reconcile only the same applied operation UUID. This settings change performs no financial ERP action.
Authorization
CommerceAccountsOAuth Opaque Accounts-issued Commerce OAuth access credential with resource-bound current purchase. Legacy base3, signed v2 ERP/history and fresh signed v3 nine-scope connected grants retain distinct route profiles. Refresh credentials never authenticate. Per-operation connection, current role, proof, quota and confirmation checks remain mandatory.
In: header
Path Parameters
uuidHeader Parameters
Must equal the confirmed body idempotency_key; retries cannot rebind the operation.
^[A-Za-z0-9._:-]+$1 <= length <= 200Exact nonwildcard settings ETag; must match expected_etag in the body.
3 <= length <= 256Request Body
application/json
uuiduuid-9007199254740991 <= value <= 9007199254740991^(?:W\/)?"[\x21\x23-\x7e]+"$3 <= length <= 256Value in
- "FAIL_OPEN"
- "FAIL_CLOSED"
Value in
- "FAIL_OPEN"
- "FAIL_CLOSED"
^[A-Za-z0-9._:-]+$1 <= length <= 200Response Body
application/json
curl -X PATCH "https://example.com/v1/protocol/commerce/connected/business-central/497f6eca-6276-4993-bfeb-53cbbbba6f08/safety-settings" \ -H "Idempotency-Key: string" \ -H "If-Match: string" \ -H "Content-Type: application/json" \ -d '{ "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b", "settings_id": "f248c86b-9d56-484c-9c53-12164c6189d6", "expected_connection_revision": -9007199254740991, "expected_etag": "string", "expected_fallback_mode": "FAIL_OPEN", "fallback_mode": "FAIL_OPEN", "idempotency_key": "string", "confirmation": true }'{ "version": "commerce-native-bc-configuration-v1", "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b", "connection_id": "d3547de1-d1f2-4344-b4c2-17169b7526f9", "connection_revision": -9007199254740991, "operation_id": "cb4ede3c-a5d1-45e3-a9d2-fe83accbce52", "outcome": "applied", "before": { "version": "decionis.business_central.guard.status.v1", "connection_id": "d3547de1-d1f2-4344-b4c2-17169b7526f9", "settings_id": "f248c86b-9d56-484c-9c53-12164c6189d6", "etag": "string", "observed_at": "2019-08-24T14:15:22Z", "enabled": true, "fallback_mode": "FAIL_OPEN", "default_fallback_mode": "FAIL_OPEN", "configured": true, "can_configure": true, "preflight_readiness": { "version": "bc_native_preflight_readiness_v1", "profile_configured": true, "missing": [ "evidence_profile" ], "document_evidence_required": true }, "consecutive_failures": -9007199254740991, "circuit_open_until": "2019-08-24T14:15:22Z", "last_configuration_operation_id": "51d4710e-b550-4e2d-af7c-a3c8f397272c", "timeout_ms": 150, "intercepts": [ "sales_release", "sales_post" ], "outage_scope": "fail_open_availability_only" }, "after": { "version": "decionis.business_central.guard.status.v1", "connection_id": "d3547de1-d1f2-4344-b4c2-17169b7526f9", "settings_id": "f248c86b-9d56-484c-9c53-12164c6189d6", "etag": "string", "observed_at": "2019-08-24T14:15:22Z", "enabled": true, "fallback_mode": "FAIL_OPEN", "default_fallback_mode": "FAIL_OPEN", "configured": true, "can_configure": true, "preflight_readiness": { "version": "bc_native_preflight_readiness_v1", "profile_configured": true, "missing": [ "evidence_profile" ], "document_evidence_required": true }, "consecutive_failures": -9007199254740991, "circuit_open_until": "2019-08-24T14:15:22Z", "last_configuration_operation_id": "51d4710e-b550-4e2d-af7c-a3c8f397272c", "timeout_ms": 150, "intercepts": [ "sales_release", "sales_post" ], "outage_scope": "fail_open_availability_only" }, "financial_action_executed": false}Read actual company fallback settings and recorded outages GET
Default off; requires COMMERCE_MCP_OAUTH_CONNECTED_ENABLED, the exact fresh nine-scope v3 consent, current Microsoft purchase and membership, and signed supported-source eligibility. It never upgrades a legacy v1 or v2 grant. Also requires COMMERCE_MCP_BUSINESS_CENTRAL_NATIVE_ENABLED and a separately verified current company connection/native read grant within the purchaser tenant extracted by Accounts. No caller-supplied tenant, economics or source URL is accepted. Eight-second deadline and fixed bounded source reads apply. Requires erp:read. Reads enabled status and provider-observed can_configure; enabled remains read-only.
Resolve the current payment workspace mapping POST
Default off. Current ordinary workspace API key with decision:read and decision:write; no runtime-key scope expansion. Metadata only: returns the exact SYNCED Accounts mapping after checking the current ordinary key. No provider read, key issuance or payment execution.

