OrchardCMS / OrchardCMS/OrchardCore.Commerce
Shipping infrastructure and generic implementation (OCC-60)
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 231
- Forks
- 94
- Avg merge
- 7d 7h
- Merged PRs (30d)
- 1
Description
Shipping is a very complex feature set, that may not be necessary in the minimum feature set, but is vital to many if not most businesses.
- The feature must allow for multiple shipping providers to be active and contribute at the same time.
- Specific implementations may rely on external web services, and as such must be async and fault-tolerant.
- Product dimensions (weight, volume, length, width, and height, as well as maybe a flag for unusual shapes) can be stored on a
Dimensionspart that can be added to products and that is not implementation-specific.
A generic implementation would likely be mostly manually operated, and would be a place to store external tracking links, shipping provider name, and simple pricing determination based on weight and volume intervals. It should not attempt to be too sophisticated, as that would likely imply specialization that should really live in provider-specialized extensions.
Note: there exist Stripe-like shipping broker services that could also be good first implementations or extensions to build.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are named. Start by surveying the repository for existing product, provider, and asynchronous integration abstractions, then review the Jira issue and the requirements for Dimensions, multiple providers, fault tolerance, tracking links, and basic pricing. Done would require an agreed scope and a complete generic shipping design, including extension points for provider-specific implementations.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- backend, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100