API and Integration Hub Architecture Overview
Architectural blueprint of the SmartERP Integration Hub, REST/JSON-RPC protocols, webhook event bus, and external microservice connectivity.
1. Overview & Business Value#
This comprehensive operational guide details the architecture, business workflows, configuration parameters, and execution steps for API and Integration Hub Architecture Overview within SmartERP.
The SmartERP Integration Hub delivers high-throughput, secure communication pipelines connecting SmartERP with external FinTech gateways, corporate customer portals, mobile applications, and enterprise microservices.
It supports dual API architectures: native high-performance JSON-RPC for deep ORM transaction binding, and modern RESTful JSON endpoints secured by cryptographic API bearer tokens and HMAC request signing.
{screenshot:overview-overview-dashboard}
2. Prerequisites & Security Access Groups#
- Required Modules:
base, web, smarterp_core, payment - Security Groups:
Integration Specialist(Technical ID:base.group_user)System Administrator / API Director(Technical ID:base.group_system)
- Master Data Dependencies: Established API keys, configured payment providers, and verified external webhook callback endpoints.
3. Step-by-Step Configuration & Execution#
Step 1: Navigating to the Module Interface#
- Log into your SmartERP instance at
https://smarterp.et/odoo. - Open the main App Switcher (grid icon in the top-left corner).
- Select the Settings app icon.
- From the top navigation bar, open Technical → Integrations → API Keys / Webhooks.
{screenshot:overview-app-switcher-navigation}
Step 2: Creating and Parameterizing Records#
- Click the New button in the top-left control panel.
- Complete the mandatory fields in the integration form:
- Endpoint Name (Mandatory): Descriptive identifier for the external client application.
- Allowed API Scopes (Mandatory): Explicit read/write model permissions.
- Authentication Mode (Mandatory): Bearer Token, API Key, or HMAC-SHA256 signature.
- Configure optional parameters: rate limit quotas, IP address allowlists, and retry schedules.
{screenshot:overview-record-creation-form}
Step 3: Validating and Processing Transactions#
- Execution & Validation: Dispatch test payload from external client tool (cURL / Postman).
- Log Verification: Inspect HTTP response status (HTTP 200 OK) in the API access log.
{screenshot:overview-transaction-processing-state}
4. Advanced Configuration Points#
- Automated Actions & Scheduled Tasks (Crons):
Integration: Clean stale webhook queues(base.ir_cron_webhook_cleanup)Integration: Sync currency exchange rates(base.ir_cron_currency_rates)
- Custom Print Templates & Reports:
- API Usage & Latency Telemetry Audit Report
- FinTech Reconciliation & Settlement Statement
- Multi-Company Rules: Record-level security isolation under Company 1 (
Ashewa Technology Solutions S.C.).
5. Comprehensive Troubleshooting Matrix#
| Error Symptom / Exception | Probable Root Cause | Corrective Action / Resolution |
|---|---|---|
HTTP 401: Invalid API Key | Client authorization header missing or key revoked. | Generate fresh API key under User Preferences and update client header. |
HTTP 429: Too Many Requests | Request volume exceeded configured per-minute rate limit. | Implement exponential backoff in client script or request rate quota increase. |
HMAC Signature Mismatch | Webhook payload modified in transit or mismatched secret key. | Verify raw JSON bytes encoding before computing HMAC signature. |