Django-Oscar B2B Webshop with Customer Specific Pricelists & Company Management
Budget: €30 – €250 EUR
I need an experienced Django / Django-Oscar developer to build a B2B webshop based on the official Django-Oscar sandbox environment.
The project must extend Oscar with proper B2B functionality including customer-specific pricing and company account management.
This is a fixed-price project.
Technical Stack
Python 3.x
Django (latest stable)
Django-Oscar (latest stable)
Required Features
1) Add a company and let each customer be connected to a company
1) Company specific Pricelists (Core Requirement)
The pricelist must:
Be defined per company
Allow setting price per:
Product
Variant (if applicable)
Override default Oscar pricing
Be used automatically in the Oscar pricing strategy
Work across:
Product detail page
Basket
Checkout
Order totals
The price list an lines model must follow this json
for the header:
{
"PriceList": "TEST",
"Name": "TEST",
"ValidFrom": "0001-01-01T00:00:00",
"ValidTo": "0001-01-01T00:00:00",
"Currency": "",
}
for the line:
{
"PriceList": "TEST",
"Item": "2000",
"Price": 5.0,
"Pct": 0.0,
"Qty": 1.0,
"Discount": 20.0,
"ItemGroup": null,
"ValidFrom": "0001-01-01T00:00:00",
"ValidTo": "0001-01-01T00:00:00",
"Currency": null,
},
If no special price exists, the system must fall back to default price.
2️⃣ Company Model (B2B Structure)
We need a proper B2B structure:
A Company
A company can have multiple users
One user is marked as Company Admin
Pricelist is attached to the Company (not user)
3️⃣ Company Admin Capabilities
Company Admin must be able to:
- Add users to their company
- Remove users from their company
- Edit users
- Manage delivery addresses for company accounts
Users belonging to the same company must:
- See the same pricelist
- See orders created by all users in their company
4️⃣ Disable Company
A company can be marked as:
- Active
- Disabled
If Disabled:
No users in that company can place orders
Basket checkout must be blocked
Clear error message shown
5️⃣ Account Page Enhancements
Logged in users must be able to:
See their company information
See their active pricelist
See prices reflected correctly on all products
See all company orders
Code Requirements
Clean architecture
Extend Oscar correctly (no hacks)
Use custom pricing strategy properly
Proper migrations
Admin interface for managing:
Companies
Pricelists
Company users
This is a fixed price project
The project must extend Oscar with proper B2B functionality including customer-specific pricing and company account management.
This is a fixed-price project.
Technical Stack
Python 3.x
Django (latest stable)
Django-Oscar (latest stable)
Required Features
1) Add a company and let each customer be connected to a company
1) Company specific Pricelists (Core Requirement)
The pricelist must:
Be defined per company
Allow setting price per:
Product
Variant (if applicable)
Override default Oscar pricing
Be used automatically in the Oscar pricing strategy
Work across:
Product detail page
Basket
Checkout
Order totals
The price list an lines model must follow this json
for the header:
{
"PriceList": "TEST",
"Name": "TEST",
"ValidFrom": "0001-01-01T00:00:00",
"ValidTo": "0001-01-01T00:00:00",
"Currency": "",
}
for the line:
{
"PriceList": "TEST",
"Item": "2000",
"Price": 5.0,
"Pct": 0.0,
"Qty": 1.0,
"Discount": 20.0,
"ItemGroup": null,
"ValidFrom": "0001-01-01T00:00:00",
"ValidTo": "0001-01-01T00:00:00",
"Currency": null,
},
If no special price exists, the system must fall back to default price.
2️⃣ Company Model (B2B Structure)
We need a proper B2B structure:
A Company
A company can have multiple users
One user is marked as Company Admin
Pricelist is attached to the Company (not user)
3️⃣ Company Admin Capabilities
Company Admin must be able to:
- Add users to their company
- Remove users from their company
- Edit users
- Manage delivery addresses for company accounts
Users belonging to the same company must:
- See the same pricelist
- See orders created by all users in their company
4️⃣ Disable Company
A company can be marked as:
- Active
- Disabled
If Disabled:
No users in that company can place orders
Basket checkout must be blocked
Clear error message shown
5️⃣ Account Page Enhancements
Logged in users must be able to:
See their company information
See their active pricelist
See prices reflected correctly on all products
See all company orders
Code Requirements
Clean architecture
Extend Oscar correctly (no hacks)
Use custom pricing strategy properly
Proper migrations
Admin interface for managing:
Companies
Pricelists
Company users
This is a fixed price project