UCPStoreDocs
Optional Augmentations

Extensions

Extensions provide optional functionality that augments core capabilities. Businesses can choose which extensions to implement based on their needs.

What are Extensions?

Unlike core capabilities which are mandatory, extensions are optional features that businesses can implement to enhance their UCP integration. Extensions allow for specialized functionality without bloating the core protocol.

Platforms and agents should gracefully handle cases where extensions are not available, falling back to alternative flows when needed.

Available Extensions

Fulfillment

dev.ucp.shopping.fulfillment

Comprehensive shipping, pickup, and delivery management for physical goods.

Key Features

  • Multiple fulfillment method support
  • Shipping rate calculation
  • Pickup location management
  • Delivery time estimation
  • Carrier integration
View documentation

Discount

dev.ucp.shopping.discount

Promotional codes, automatic discounts, and dynamic pricing support.

Key Features

  • Promotional code validation
  • Automatic discount application
  • Tiered pricing support
  • Bundle discounts
  • Time-limited offers
View documentation

AP2 Mandates

dev.ucp.common.ap2_mandate

Cryptographic authorization proofs for autonomous agent transactions.

Key Features

  • Cryptographic mandate signing
  • Spending limit enforcement
  • Time-bound authorizations
  • Revocation support
  • Audit trail generation
View documentation

Buyer Consent

dev.ucp.common.buyer_consent

Privacy compliance management for GDPR, CCPA, and other regulations.

Key Features

  • Consent collection flows
  • Preference management
  • Data retention policies
  • Right to erasure support
  • Audit logging
View documentation

Extension Declaration

Businesses declare their supported extensions in their profile alongside capabilities:

{
  "capabilities": [
    "dev.ucp.shopping.checkout",
    "dev.ucp.shopping.order"
  ],
  "extensions": [
    "dev.ucp.shopping.fulfillment",
    "dev.ucp.shopping.discount"
  ]
}

Extension Discovery

Platforms can check for extension support before using extension-specific features:

// Check if fulfillment extension is supported
const profile = await fetch('/.well-known/ucp/business_profile.json');
const data = await profile.json();

if (data.extensions.includes('dev.ucp.shopping.fulfillment')) {
  // Use fulfillment features
  const methods = await getFulfillmentMethods(sessionId);
}

Next Steps

Learn about each extension in detail:

U

Ready to Get Started?

Join the waitlist for early access to UCPStore and start building with UCP.

Join Waitlist