| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Sales (sale_management) • Invoicing (account) • Discuss (mail) |
| Lines of code | 981 |
| Technical Name |
delivery_smsa_ecomapis |
| License | LGPL-3 |
| Website | https://electron.com.sa |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Sales (sale_management) • Invoicing (account) • Discuss (mail) |
| Lines of code | 981 |
| Technical Name |
delivery_smsa_ecomapis |
| License | LGPL-3 |
| Website | https://electron.com.sa |
🚀 SMSA Express Shipping Connector
Complete integration with SMSA Express ECOM APIs for Odoo 18 Enterprise
Overview
Transform your Odoo shipping operations with seamless SMSA Express integration. This comprehensive module brings enterprise-grade shipping capabilities directly into your Odoo 18 system, supporting both Business-to-Customer (B2C) deliveries and Customer-to-Business (C2B) pickups with advanced pricing and automation.
Key Features
B2C Shipments
Automatically create outgoing delivery shipments with complete address validation and label generation.
C2B Returns
Handle customer returns and pickups seamlessly with automated C2B shipment creation.
Advanced Pricing
Three flexible pricing modes: Fixed Price, Weight-based, or Detailed Weight Tables with service-specific rules.
Free Shipping
Configure free shipping thresholds with smart exclusions for heavy items and international orders.
Label Generation
Generate shipping labels in PDF or ZPL format directly from Odoo with one-click download.
Real-time Tracking
Track shipments directly from Odoo with detailed scan history and delivery status updates.
COD Support
Full Cash on Delivery integration with automatic amount calculation from order totals.
Heavy Items
Automatic detection and special handling for heavy/oversized items with EDDH service code.
International Shipping
Support for both domestic and international shipments with destination-based pricing.
Sandbox Testing
Test all features in SMSA's sandbox environment before going live.
Easy Configuration
Intuitive setup wizard with comprehensive field descriptions and validation.
Multi-Service Support
Support for multiple SMSA service codes (EDDL, EDCR, EDDH) with automatic selection.
Flexible Pricing Modes
Choose the pricing strategy that best fits your business model:
Fixed Price
Simple flat rate for all shipments
- Easy to configure
- Predictable costs
- Best for uniform products
Weight-Based
Price per kilogram calculation
- Fair pricing by weight
- Minimum price support
- Automatic calculation
Weight Table ⭐
Recommended - Most flexible option
- Weight range rules
- Service-specific pricing
- Domestic/International rates
- Heavy item pricing
Installation
Requirements
| Component | Requirement |
|---|---|
| Odoo Version | >= 18.0 Enterprise |
| Python Version | >= 3.10 |
| Python Libraries | requests (included with Odoo) |
| SMSA Account | Active SMSA ECOM API account |
Installation Steps
-
Download and Extract
Download the module and extract it to your Odoo addons directory.cp -r delivery_smsa_ecomapis /opt/odoo/addons/ -
Update Apps List
In Odoo, navigate to Apps → Update Apps List to refresh the module catalog. -
Install Module
Search for "SMSA" in the Apps menu and click Install. -
Configure Delivery Method
Navigate to Inventory → Configuration → Delivery Methods → Create
Select "SMSA Express" as the delivery provider.
Configuration Guide
Basic Setup
Configure these essential settings in your SMSA delivery method:
| Setting | Description | Example |
|---|---|---|
| Environment | Choose Sandbox for testing or Production for live operations | Production |
| API Key | Your SMSA ECOM API key (required) | your-api-key-here |
| Service Code | Default SMSA service code | EDDL (B2C) / EDCR (C2B) |
| Waybill Type | Label format for printing | PDF or ZPL |
| Weight Unit | Unit of measurement for weights | KG or LB |
Weight Table Configuration Example
Create pricing rules based on weight ranges and destinations:
| Destination | Service | Min Weight | Max Weight | Price (SAR) |
|---|---|---|---|---|
| Domestic | EDDL | 0 kg | 1 kg | 25.00 |
| Domestic | EDDL | 1 kg | 5 kg | 35.00 |
| Domestic | EDDL | 5 kg | 10 kg | 50.00 |
| Domestic | EDDH | 0 kg | 30 kg | 100.00 |
| International | EDDL | 0 kg | 5 kg | 150.00 |
How to Use
Creating B2C Shipments
-
Create Sales Order
Create a new sales order with customer delivery address. -
Select SMSA Delivery
Choose your configured SMSA delivery method. Shipping cost will be calculated automatically. -
Confirm Order
Confirm the sales order to create the delivery transfer. -
Create Shipment
Open the delivery transfer and click "Create B2C Shipment" button. -
Download Label
Download the shipping label from the SMSA tab and print it.
Tracking Shipments
Track any shipment directly from Odoo:
- Open the transfer/delivery operation
- Navigate to the SMSA tab
- Click "Track SMSA Shipment" button
- View tracking details in the chatter
📸 Screenshots
See the SMSA Express Shipping Connector in action with these professional screenshots showcasing all major features and functionality.
⚙️ Configuration & Setup
Easy setup with API key, environment selection, and service codes
Flexible pricing modes: Fixed, Weight-based, or Weight Table
Configure tags for heavy items with automatic EDDH service
Define pricing rules by weight range, service, and destination
🛒 Sales & Orders
Automatic shipping cost calculation on sales orders
📦 Shipment Management
Create shipments with one click and get AWB instantly
View AWB, SAWB, and download shipping labels
Download PDF or ZPL labels for printing
Technical Specifications
Module Information
| Property | Value |
|---|---|
| Technical Name | delivery_smsa_ecomapis |
| Version | 18.0.1.8.0 |
| Category | Inventory/Delivery |
| License | LGPL-3 |
| Dependencies | delivery, stock, sale_management |
| Author | Electron Tech |
| Maintainer | Electron Trading Co. |
Supported SMSA APIs
| Endpoint | Method | Purpose |
|---|---|---|
| /api/shipment/b2c/new | POST | Create B2C delivery shipment |
| /api/c2b/new | POST | Create C2B pickup shipment |
| /api/c2b/cancel/{awb} | POST | Cancel C2B pickup |
| /api/track/single/{awb} | GET | Track single shipment |
| /api/track/reference/{ref} | GET | Track by order reference |
| /api/track/bulk/ | POST | Track multiple shipments |
| /api/invoice | POST | Push invoice data |
Custom Models & Fields
New Models:
delivery.smsa.pricelist- Weight-based pricing rules
Extended Models:
delivery.carrier- SMSA configuration fieldsstock.picking- SMSA shipment tracking fieldsproduct.category- Heavy items configurationproduct.template- Auto-tagging for heavy items
Support & Documentation
Documentation
Comprehensive README with examples, troubleshooting guides, and API documentation included with the module.
Bug Reports
Report issues or request features through our support channels. We're committed to continuous improvement.
Professional Support
Contact Electron Trading Co. for professional implementation, customization, and support services.
Troubleshooting
Common issues and solutions:
Solution: Create a delivery method with type "SMSA Express" in Inventory → Configuration → Delivery Methods
Solution: Verify your API Key is correct and matches the selected environment (Sandbox/Production)
Solution: Add pricing rules in the SMSA Weight Rules tab covering all required weight ranges and service codes
Ready to Streamline Your Shipping?
Transform your Odoo shipping operations with professional SMSA Express integration
Please log in to comment on this module