{
  "$schema": "https://configops.pyrra.net/atlas/options.schema.json",
  "verified": true,
  "canonical": "https://configops.pyrra.net/atlas/options/woocommerce_cod_settings",
  "generatedAt": "2026-08-25",
  "source": {
    "commit": "e319f502ff677bd76e53b7034650f9ee2afead72",
    "url": "https://github.com/PyrraNet/ConfigOps/blob/e319f502ff677bd76e53b7034650f9ee2afead72/src/Adapter/WooCommerceAdapter.php"
  },
  "option": {
    "name": "woocommerce_cod_settings",
    "slug": "woocommerce_cod_settings",
    "path": "/atlas/options/woocommerce_cod_settings",
    "label": "Cash on delivery enabled",
    "seoTitle": "woocommerce_cod_settings: WooCommerce WordPress Option | ConfigOps",
    "summary": "woocommerce_cod_settings is owned by WooCommerce in the tested WooCommerce 10.3, 10.7, 10.9 & 11.0 ConfigOps contract. It is a structured option with 6 exact mapped fields in adapter schema 1.",
    "description": "woocommerce_cod_settings: WooCommerce owns this associative array with nested fields with 6 mapped fields. See secrets, WP-CLI reads, ConfigOps Undo limits, and source evidence.",
    "owner": {
      "id": "woocommerce",
      "name": "WooCommerce",
      "componentType": "WordPress plugin",
      "testedVersion": "WooCommerce 10.3, 10.7, 10.9 & 11.0",
      "testedVersionConstraint": ">=10.3 <10.4 || >=10.7 <10.8 || >=10.9 <11.1",
      "schemaVersion": 1,
      "componentFile": "woocommerce/woocommerce.php",
      "sourceFile": "src/Adapter/WooCommerceAdapter.php",
      "sourceUrl": "https://github.com/PyrraNet/ConfigOps/blob/e319f502ff677bd76e53b7034650f9ee2afead72/src/Adapter/WooCommerceAdapter.php"
    },
    "status": "configuration",
    "statusDescription": "Verified configuration option in a pinned ConfigOps adapter contract.",
    "verification": "Tested ConfigOps adapter assignment",
    "adminSurface": "WooCommerce → Settings · Offline payments",
    "valueShape": "Associative array with nested fields",
    "valueNotes": [],
    "fields": [
      {
        "path": "/enabled",
        "label": "Cash on delivery enabled",
        "group": "Offline payments",
        "kind": "portable",
        "explanation": "Controls whether customers can select this bundled offline payment method.",
        "referenceType": null
      },
      {
        "path": "/title",
        "label": "Cash on delivery title",
        "group": "Offline payments",
        "kind": "portable",
        "explanation": "The payment-method name shown during checkout.",
        "referenceType": null
      },
      {
        "path": "/description",
        "label": "Cash on delivery description",
        "group": "Offline payments",
        "kind": "portable",
        "explanation": "The payment-method explanation shown during checkout.",
        "referenceType": null
      },
      {
        "path": "/instructions",
        "label": "Cash on delivery instructions",
        "group": "Offline payments",
        "kind": "portable",
        "explanation": "Instructions shown after the customer places an order.",
        "referenceType": null
      },
      {
        "path": "/enable_for_methods",
        "label": "Cash on delivery shipping methods",
        "group": "Offline payments",
        "kind": "environment",
        "explanation": "Limits cash on delivery to selected local shipping methods.",
        "referenceType": null
      },
      {
        "path": "/enable_for_virtual",
        "label": "Cash on delivery for virtual orders",
        "group": "Offline payments",
        "kind": "portable",
        "explanation": "Allows cash on delivery when an order contains only virtual products.",
        "referenceType": null
      }
    ],
    "fieldKinds": {
      "environment": 1,
      "portable": 5
    },
    "fieldCount": 6,
    "secretFields": [],
    "dynamicFieldFamilies": [],
    "technicalNeighbors": [],
    "technicalBoundary": "Known version, inbox, scheduler, onboarding, task-list, empty-selector, note, and rewrite state stays technical. Orders, products, customers, tax tables, shipping zones, webhooks, API keys, Action Scheduler jobs, and analytics tables remain outside option-only recovery.",
    "configOps": {
      "adapter": true,
      "adapterId": "woocommerce",
      "schemaVersion": 1,
      "adapterUndo": true,
      "restoreSummary": "Supported values can use adapter-aware, conflict-checked Undo when evidence is complete and the current value still matches."
    },
    "smartUndo": {
      "eligible": false,
      "summary": "No. Smart Undo is only for ordinary associative options that no adapter claims. This option is adapter-owned."
    },
    "cli": [
      {
        "label": "Read the current value",
        "command": "wp option get woocommerce_cod_settings --format=json"
      },
      {
        "label": "Inspect matching storage and autoload metadata",
        "command": "wp option list --search=woocommerce_cod_settings --fields=option_name,autoload --format=table"
      },
      {
        "label": "List top-level keys without changing the value",
        "command": "wp eval 'print_r( array_keys( (array) get_option( \"woocommerce_cod_settings\", array() ) ) );'"
      }
    ],
    "autopsies": [],
    "aliases": [
      "what plugin writes woocommerce_cod_settings",
      "woocommerce_cod_settings option history",
      "woocommerce_cod_settings wordpress option",
      "track update_option woocommerce_cod_settings",
      "what changed woocommerce_cod_settings",
      "Cash on delivery enabled",
      "Offline payments",
      "Cash on delivery title",
      "Offline payments",
      "Cash on delivery description",
      "Offline payments",
      "Cash on delivery instructions",
      "Offline payments",
      "Cash on delivery shipping methods",
      "Offline payments",
      "Cash on delivery for virtual orders",
      "Offline payments"
    ],
    "sourceReferences": [
      {
        "label": "WooCommerce adapter source",
        "url": "https://github.com/PyrraNet/ConfigOps/blob/e319f502ff677bd76e53b7034650f9ee2afead72/src/Adapter/WooCommerceAdapter.php"
      },
      {
        "label": "ConfigOps adapter documentation",
        "url": "https://github.com/PyrraNet/ConfigOps/blob/e319f502ff677bd76e53b7034650f9ee2afead72/docs/adapters.md"
      }
    ],
    "updated": "2026-08-25"
  }
}