Centurio System and module documentation
๐Ÿ›๏ธ Platform architecture ๐Ÿ”‘ Login
๐Ÿ  All modules / sales_billing / Sales and customer orders
๐Ÿ›’

Sales and customer orders

sales sales_billing ๐Ÿ›ก๏ธ RLS Protected

Trade-oriented sales contracts: quote takeover, confirmation, delivery, invoicing - without the external service/workshop coupling.

Fachliche Bestimmung: Technical implementation at the joint contracting authority (order_type='sale'), consciously disconnected from the external service context: no operations, no installation, no place of execution. Instead, the Odoo sales pipeline design -> Confirmed -> In delivery -> Delivered -> In factured with customer reference, payment conditions, account, delivery deadline and billing rule (after order/delivery).

โšก Workflows and life cycles

The Commission shall adopt delegated acts in accordance with Article 21 of this Regulation. sales_order_pipeline

From quote or the direct installation on confirmation and delivery to invoice.

stateDiagram-v2 [*] --> DRAFT: Anlegen / aus Angebot DRAFT --> CONFIRMED: Bestรคtigen CONFIRMED --> IN_DELIVERY: Lieferung starten IN_DELIVERY --> DELIVERED: Als geliefert markieren DELIVERED --> INVOICED: Rechnung erstellen DRAFT --> CANCELLED: Stornieren
1. DRAFT
Draft
order is either created or taken from a quote (idempotent).
Aktionen: Holding positions, Establishment of payment conditions
2. CONFIRMED
Confirmed
The following conditions shall apply:
Aktionen: Starting of delivery
3. IN_DELIVERY
In supply
The following information is provided for the purpose of this Regulation:
Aktionen: As delivered
4. DELIVERED
Delivered
Delivery quantities booked; invoicing basis "delivered" in the case of settlement.
Aktionen: Manufacture of other textile materials
5. INVOICED
Manufacture from materials of heading 810
Drafting of the accounts from order (regular, deposit, collective account).

Benutzerbefehl: sales order agent plan:command_sales_order_agent

The following is the list of the main functions of the system:

1. sales_order_agent
sales_order_agent
{"key": "execute_command", "label": "Befehl prรผfen, ausfรผhren oder zur Freigabe vorlegen", "adapter": "agent.execute", "agent": "sales_order_agent", "condition_fact": null}
Aktionen: sales_order_agent

๐Ÿ—„๏ธ Data models and fields

DropshipLines dropship_lines RLS Aktiv
37 Fields and columns

Tabelle dropship_lines

Feldname Type of data The Commission Schlรผssel The technical significance
item_type VARCHAR(24) Ja * - Feld item_type
item_id UUID Ja * - Feld item_id
quote_id UUID Nein FK โž” quotes.id Feld quote_id
work_order_id UUID Nein FK โž” work_orders.id Feld work_order_id
project_id UUID Nein FK โž” projects.id Feld project_id
customer_id UUID Nein FK โž” customers.id Feld customer_id
product_id UUID Nein FK โž” products.id Feld product_id
description VARCHAR(255) Ja * - Feld description
quantity NUMERIC(14, 4) Ja * - Feld quantity
unit VARCHAR(16) Ja * - Feld unit
sales_net NUMERIC(14, 2) Ja * - Feld sales_net
supplier_id UUID Nein FK โž” suppliers.id Feld supplier_id
purchase_id UUID Nein FK โž” purchases.id Feld purchase_id
purchase_item_id UUID Nein FK โž” purchase_items.id Feld purchase_item_id
cost_net NUMERIC(14, 2) Nein - Feld cost_net
ship_to TEXT Nein - Feld ship_to
status VARCHAR(16) Ja * - Feld status
carrier VARCHAR(120) Nein - Feld carrier
tracking_number VARCHAR(120) Nein - Feld tracking_number
tracking_url VARCHAR(512) Nein - Feld tracking_url
expected_delivery_date DATE Nein - Feld expected_delivery_date
shipped_at DATETIME Nein - Feld shipped_at
delivered_at DATETIME Nein - Feld delivered_at
proof_document_id UUID Nein FK โž” documents.id Feld proof_document_id
billing_released BOOLEAN Ja * - Feld billing_released
release_reason VARCHAR(255) Nein - Feld release_reason
chain_review BOOLEAN Ja * - Feld chain_review
issue_note VARCHAR(500) Nein - Feld issue_note
id UUID Nein PK Feld id
tenant_id UUID Ja * FK โž” organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
SalesAgents sales_agents RLS Aktiv
18 Fields and columns

Tabelle sales_agents

Feldname Type of data The Commission Schlรผssel The technical significance
name VARCHAR(255) Ja * - Feld name
email VARCHAR(320) Nein - Feld email
phone VARCHAR(64) Nein - Feld phone
customer_id UUID Nein FK โž” customers.id Feld customer_id
supplier_id UUID Nein FK โž” suppliers.id Feld supplier_id
default_commission_percent NUMERIC(5, 2) Nein - Feld default_commission_percent
default_markup_percent NUMERIC(5, 2) Nein - Feld default_markup_percent
notes TEXT Nein - Feld notes
active BOOLEAN Ja * - Feld active
id UUID Nein PK Feld id
tenant_id UUID Ja * FK โž” organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata

๐Ÿ”Œ The Commission shall adopt delegated acts in accordance with Article 21 of this Regulation.

Art The method Endpoint / path Titel & Zweck The Commission shall adopt the following:
โšก REST API DELETE /api/v1/sales/orders/{order_id}/items/{item_id}
delete_item
Semantic binding: operator_surface; mutation=True
sales
โšก REST API GET /api/v1/sales/orders
list_sales_orders
Semantic binding: inventory_only; mutation=False
sales
โšก REST API GET /api/v1/sales/orders/{order_id}
get_sales_order
Semantic binding: inventory_only; mutation=False
sales
โšก REST API GET /api/v1/sales/summary
sales_summary
Semantic binding: inventory_only; mutation=False
sales
โšก REST API GET /portal/{slug}/bestellung
order_form
Semantic binding: inventory_only; mutation=False
sales
โšก REST API GET /verkauf
sales_page
Semantic binding: inventory_only; mutation=False
sales
โšก REST API GET /verkauf/{order_id}
sales_order_page
Semantic binding: inventory_only; mutation=False
sales
โšก REST API PATCH /api/v1/sales/orders/{order_id}
update_sales_order
Semantic binding: operator_surface; mutation=True
sales
โšก REST API PATCH /api/v1/sales/orders/{order_id}/items/{item_id}
update_item
Semantic binding: operator_surface; mutation=True
sales
โšก REST API POST /api/v1/sales/orders
create_sales_order
Semantic binding: operator_surface; mutation=True
sales
โšก REST API POST /api/v1/sales/orders/from-quote/{quote_id}
create_from_quote
Semantic binding: operator_surface; mutation=True
sales
โšก REST API POST /api/v1/sales/orders/{order_id}/cancel
cancel_sales_order
Semantic binding: operator_surface; mutation=True
sales
โšก REST API POST /api/v1/sales/orders/{order_id}/confirm
confirm_sales_order
Semantic binding: operator_surface; mutation=True
sales
โšก REST API POST /api/v1/sales/orders/{order_id}/invoice
invoice_sales_order
Semantic binding: operator_surface; mutation=True
sales
โšก REST API POST /api/v1/sales/orders/{order_id}/items
add_item
Semantic binding: operator_surface; mutation=True
sales
โšก REST API POST /api/v1/sales/orders/{order_id}/mark-delivered
mark_delivered
Semantic binding: operator_surface; mutation=True
sales
โšก REST API POST /api/v1/sales/orders/{order_id}/start-delivery
start_delivery
Semantic binding: operator_surface; mutation=True
sales
โšก REST API POST /portal/{slug}/bestellung
order_submit
Semantic binding: operator_surface; mutation=True
sales
๐Ÿ–ฅ๏ธ WEB-UI GET /quotes?status=dropship
The following table shows the following:
Filtered offers with routing business positions
quotes:read
๐Ÿ–ฅ๏ธ WEB-UI GET /purchasing#dropship
The Commission shall adopt the following measures:
Dedicated shopping cart with identification numbers and tracking
purchasing:read
โšก REST API GET /api/v1/dropshipping
The following table shows the following:
Supplier routing positions with supplier and proof data
quotes:read
โšก REST API POST /api/v1/dropshipping/{id}/assign-supplier
allocation of _GT9_0__
In the case of the product concerned, the following conditions shall apply:
purchasing:write
โšก REST API POST /api/v1/dropshipping/{id}/tracking
Tracking deposited
Enter tracking number and set status to in_transit
purchasing:write
โšก REST API POST /api/v1/dropshipping/{id}/delivered
Confirm delivery
Set status to delivered and issue clearance of accounts
purchasing:write

๐Ÿ›ก๏ธ Regulatory and compliance

Standard GoBD- und DSGVO-Regelwerk.

Connected modules:
โž” quotes โž” invoices โž” customers โž” inventory โž” products โž” contracts