Extend, substitute, or create?
You can build on the drop-ins Adobe provides in more than one way, and the path you pick changes how much is supported for you and how much you maintain yourself. The sections below step through the tradeoffs. Start with the recommended path, then read the others if your requirements rule it out.
Choose your approach
Section titled “Choose your approach”Boundaries and limitations
Section titled “Boundaries and limitations”Drop-ins work best for certain types of functionality. Understanding these boundaries helps you choose the right approach:
Drop-ins excel at:
Section titled “Drop-ins excel at:”- Commerce-specific UI components (product displays, cart management, checkout flows)
- Data-driven interfaces that connect to Commerce APIs
- Reusable functionality across multiple storefronts
- Components that benefit from Commerce’s styling and theming system
Consider alternatives for these use cases:
Section titled “Consider alternatives for these use cases:”- Simple static content (use HTML/CSS instead)
- Third-party integrations with existing UI (use vendor scripts)
- Highly merchant-specific logic (use application-level code)
- Temporary A/B testing variants (use feature flags)
- Single-use, non-reusable customizations
Need a new extension point?
Section titled “Need a new extension point?”If existing drop-ins don’t provide the slots or events you need:
- Document your use case - Explain what you’re trying to achieve
- Identify the gap - What specific slot or event is missing?
- Submit a request - Share your requirements in the Discord Commerce Storefront channel
Q: Why does Adobe recommend extending over building new drop-ins?
Extending is fully supported, maintains compatibility with updates, and reduces maintenance overhead. Most customization needs can be met through extension without the risks associated with building from scratch or substituting drop-ins.
Q: When is it acceptable to substitute a drop-in?
Substitution is acceptable when you need complete solutions from a single provider, have specialized functionality that doesn’t align with Adobe’s approach, need legacy system integration, or require provider-specific workflows with their complete UI and logic. However, you become responsible for maintaining compatibility with Commerce APIs and handling all updates independently.
Q: Is the drop-in SDK ready for production use?
No. The SDK is currently in early access with limited third-party support and no timeline for full support. Contact Adobe before investing in custom drop-in development.
Q: What extensibility options are available beyond slots?
While slots are the primary mechanism, you can also:
- Use configuration options to customize behavior
- Change how drop-ins look or behave (styling and layouts)
- Respond to drop-in events with custom logic
- Modify transformers to change how drop-ins process data
Q: How do I know if my use case requires a new drop-in?
Follow the decision flow in this guide. Most needs can be met by extending existing drop-ins. Only consider building new drop-ins if you have a use case that no existing drop-in addresses, are building entirely new functionality for multiple storefronts or brands, and have the resources and expertise for long-term maintenance.
Q: What happens if I substitute a drop-in and Commerce APIs change?
You’re responsible for updating your substitute to maintain compatibility. Adobe cannot provide support for third-party substitutes, and you may miss out on new features or security updates.