Orchard Core Commerce
repository·main·Indexed 42 days ago
https://github.com/orchardcms/orchardcore.commerceAn extensible commerce module for the Orchard Core CMS providing e-commerce capabilities including inventory management, product pricing, promotions, taxation, and payment provider integrations such as Stripe and Exactly. It includes specialized data types for money and addresses, as well as a set of commerce-specific content fields.
What's inside Orchard Core Commerce
- The Tax module provides taxation capabilities for Orchard Core Commerce, specifically designed to handle sales tax or VAT (Value Added Tax) calculations during the commerce workflow.
Overview of Orchard Core Commerce - Payment
mainTheOrchardCore.Commerce.Paymentmodule provides payment processing capabilities for Orchard Core Commerce. It allows for the integration and management of various payment methods within the commerce ecosystem.Overview of Orchard Core Commerce - Promotion
mainTheOrchardCore.Commerce.Promotionmodule provides the functionality for managing discounts and promotions within an Orchard Core Commerce setup. It allows you to define rules and apply price reductions or special offers to products and orders.Overview of Orchard Core Commerce Inventory
mainThe Inventory module provides inventory management capabilities for Orchard Core Commerce. It allows you to track and manage stock levels for products within your commerce system.Available official payment providers
mainOrchard Core Commerce includes several built-in payment providers that can be enabled or disabled as standalone features:
- Exactly: A production-ready provider for exactly.com.
- Stripe: A production-ready provider for stripe.com.
- Dummy: A development-only provider used for UI testing. It allows you to complete the checkout process without being redirected to an external site.
Use the Money Data Type for monetary values
mainTheOrchardCore.Commerce.MoneyDataTypelibrary provides a specialized data type designed to represent monetary values within Orchard Core Commerce. This data type ensures that currency and amount information are handled consistently across the commerce system.External libraries used in Orchard Core Commerce
mainOrchard Core Commerce relies on several third-party .NET libraries for its core functionality, including the modular framework, testing, and payment processing.
Core Libraries
- Orchard Core: The underlying modular and multi-tenant application framework.
- Shouldly: Used for expressive testing in .NET.
- Stripe.net: The portable class library used for Stripe.com integrations.
Use the Exactly payment provider for Orchard Core Commerce
mainThe
OrchardCore.Commerce.Payment.Exactlymodule provides an integration for the Exactly payment gateway within Orchard Core Commerce.For detailed configuration steps, feature capabilities, and implementation guides, refer to the official documentation at: https://commerce.orchardcore.net/en/latest/features/exactly-payment/
Testing and analysis libraries used in Orchard Core Commerce
mainFor developers contributing to or building on top of Orchard Core Commerce, the project utilizes the following testing tools and code analyzers:
Testing and Analysis Tools
- Lombiq.Analyzers: Provides .NET code analyzers and code convention settings.
- Lombiq.HelpfulLibraries: Utility libraries designed for Orchard development.
- Lombiq.Tests.UI: A Web UI testing toolbox for Orchard Core applications using Selenium.
- VS Test SDK: The Visual Studio Test Platform.
- xUnit 3: The primary unit testing tool for the .NET Framework.
- xUnit VS runner: The VSTest runner specifically for xUnit.net.
Use commerce-specific content fields in Orchard Core
mainThe
OrchardCore.Commerce.ContentFieldsmodule provides specialized content fields designed for e-commerce scenarios. These fields can be added to any Content Type within Orchard Core to store structured commerce data.Available fields:
AddressField: Used to store structured address information, including components like country, region, and street address.AmountField: Used to store a numeric value paired with a specific currency (e.g.,10.00 USD).
Use the Stripe payment provider in Orchard Core Commerce
mainThe Stripe module provides a payment provider integration for Orchard Core Commerce. It allows you to process payments using Stripe's infrastructure within your Orchard Core Commerce store. For detailed configuration steps and feature explanations, refer to the official Stripe payment documentation.Use Orchard Core Commerce abstractions to extend commerce functionality
mainThe
OrchardCore.Commerce.Abstractionslibrary provides the models and interfaces necessary for building modules that extend Orchard Core Commerce.If you are developing a custom module that needs to interact with the commerce engine, you should reference this library to access the core domain models and interfaces. Note that while this library defines the interfaces, the actual implementations are located in the
OrchardCore.Commercemodule.