Commerce

Prepare current company-native order evidence and exact policy

GET
/v1/protocol/commerce/connected/business-central/{connectionId}/snapshot/{documentId}

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 and erp:validate. Returns an immutable snapshot digest, explicit cost provenance and exact signed policy. Admitted v2 evidence binds complete source cost from the verified effective company profile; v1 retains its native current-estimate provenance and missing landed cost. Preparation does not reserve budget or authorize an ERP write.

Authorization

CommerceAccountsOAuth
AuthorizationBearer <token>

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

connectionId*string
Formatuuid
documentId*string
Formatuuid

Query Parameters

org_id*string
Formatuuid
policy_version*string
Length1 <= length <= 100

Response Body

application/json

curl -X GET "https://example.com/v1/protocol/commerce/connected/business-central/497f6eca-6276-4993-bfeb-53cbbbba6f08/snapshot/497f6eca-6276-4993-bfeb-53cbbbba6f08?org_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&policy_version=string"
{  "version": "commerce-native-bc-snapshot-v1",  "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b",  "connection_id": "d3547de1-d1f2-4344-b4c2-17169b7526f9",  "connection_revision": -9007199254740991,  "data": {    "version": "decionis.business_central.guard.snapshot.v1",    "connection_id": "d3547de1-d1f2-4344-b4c2-17169b7526f9",    "document_id": "b792e8ae-2cb4-4209-85b9-32be4c2fcdd6",    "document_etag": "string",    "configuration_etag": "string",    "source_revision": "string",    "snapshot_sha256": "string",    "observed_at": "2019-08-24T14:15:22Z",    "complete": true,    "cost_provenance": "native_sales_line_current_estimate",    "revenue_provenance": "sales_line_amount_excluding_vat_after_discounts",    "preflight_facts": {      "version": "commerce.business_central.native.preflight.v1",      "facts": {        "currency": "string",        "region": {          "country": "string"        },        "inventory": {          "requested_quantity": 1        },        "order_totals": {          "gross_amount": 0,          "discount_amount": 0,          "net_amount_excluding_tax": 0        }      },      "provenance": {        "currency": "Sales Header.Currency Code or General Ledger Setup.LCY Code",        "region": "string",        "inventory.requested_quantity": "Sales Line.Quantity (Base); one item line only",        "order_totals": "string"      },      "unavailable": [        "country_mapping"      ]    },    "request": {      "transaction_id": "string",      "erp_type": "D365_BC",      "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0",      "timestamp": "2019-08-24T14:15:22Z",      "agent_id": "string",      "currency": "string",      "lines": [        {          "line_id": -9007199254740991,          "sku": "string",          "quantity": 1,          "unit_price": 0,          "cost_base": 0        }      ]    }  },  "policy": {    "version": "commerce-native-policy-v1",    "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b",    "policy": {      "bundle_id": "fc6f5a67-caa1-4339-9c14-a67826143b60",      "version": "string",      "policy_digest": "string"    },    "snapshot": {      "policyVersion": "string",      "issuedAt": "2019-08-24T14:15:22Z",      "expiresAt": "2019-08-24T14:15:22Z",      "failClosed": true,      "degradationMode": "fail_closed",      "margin": {        "key": "net_margin_floor",        "enabled": true,        "floorPercent": 0      },      "inventory": {        "key": "inventory_floor",        "enabled": false,        "minimumAvailable": 0      },      "starterRules": [],      "metadataMappings": [],      "commerce_binding": {        "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b",        "purpose": "business_central_margin_guard",        "policy": {          "bundle_id": "fc6f5a67-caa1-4339-9c14-a67826143b60",          "version": "string",          "policy_digest": "string"        },        "evaluated_checks": [          "margin"        ],        "full_policy_evaluated": false      },      "signature": {        "algorithm": "Ed25519",        "keyId": "string",        "value": "string"      }    },    "snapshot_sha256": "string",    "evaluated_checks": [      "margin"    ],    "full_policy_evaluated": false  },  "execution_available": false}

Read minimized verified evidence for a named approval request POST

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. Requires approval:request and current Accounts owner/admin. Only exact saved ORDER_ACCEPTANCE or REFUND_REQUEST SHADOW evidence and its current selected policy are admitted. Returns facts, missing/violated checks and verified dossier/action commitments. It neither completes a human approval nor executes an action.

Record the confirmed current order's full SHADOW policy result POST

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 and erp:validate, explicit confirmation, snapshot digest, policy digest and matching idempotency header. Re-reads the exact source and executes the canonical sixteen-check Commerce SHADOW workflow with one durable evaluation reservation. Missing landed cost, inventory, promotion or other required facts produce HOLD. The original PROCEED/HOLD/BLOCK/ESCALATE verdict, signed dossier and policy identity remain visible. No callback or integration is dispatched. Commerce may separately request native margin and agent-budget authorization only after unchanged PROCEED.