{
  "$schema": "https://agentcommerce.dev/schemas/manifest/v1.json",
  "version": "1.0",
  "protocol": {
    "name": "acp",
    "id": "acp",
    "title": "Agentic Commerce Protocol",
    "version": "2025-09-29",
    "spec_url": "https://www.agenticcommerce.dev/",
    "spec_repository": "https://github.com/agentic-commerce-protocol/agentic-commerce-protocol",
    "compliance_level": "discovery-only",
    "participates_in_programmatic_checkout": false
  },
  "api_base_url": "https://turva.dev/.well-known/acp",
  "supported_transports": [
    "https"
  ],
  "capabilities": {
    "services": [
      {
        "name": "Audit",
        "price": 6500,
        "currency": "EUR",
        "unit": "fixed",
        "duration": "2-3 weeks"
      },
      {
        "name": "Advisory",
        "price": 3000,
        "currency": "EUR",
        "unit": "month",
        "minimum_commitment_months": 3
      },
      {
        "name": "Implementation",
        "price": 1500,
        "currency": "EUR",
        "unit": "day"
      }
    ],
    "checkout": false,
    "quote_on_request": true
  },
  "merchant": {
    "name": "turva.dev",
    "legal_name": "Erik Rekola",
    "business_id": "3600281-7",
    "country": "FI",
    "url": "https://turva.dev/"
  },
  "payment_model": "quote_on_request",
  "checkout_flow": "human_contact",
  "supported_payment_methods": [],
  "pricing": {
    "currency": "EUR",
    "vat_included": false,
    "items": [
      {
        "name": "Audit",
        "price": 6500,
        "unit": "fixed"
      },
      {
        "name": "Advisory",
        "price": 3000,
        "unit": "month"
      },
      {
        "name": "Implementation",
        "price": 1500,
        "unit": "day"
      }
    ]
  },
  "contact": {
    "email": "info@turva.dev",
    "signal": "@turva.19",
    "languages": [
      "en"
    ]
  },
  "rationale": "Pricing is per engagement against published prices. Agents should propose a written customer contact rather than attempt programmatic checkout. All communication is asynchronous and in writing.",
  "non_participation_in_programmatic_checkout": true
}