Centurio Systémová a modulová dokumentace
🏛️ Architektura platformy 🔑 Login
🏠 Všechny moduly / supply_chain / Nákup a objednávky
🛒

Nákup a objednávky

purchasing supply_chain 🛡️ RLS Protected

Objednání od dodavatelů, dotazy na ceny (RFQ), zaznamenávání příjezdů zboží a třístupňové vyrovnání.

Fachliche Bestimmung: Ovládá celý nákupní proces. Vytváří objednávky z potřeb kupní objednávky, obchodů na trati nebo minimálních pravidel zásob. Podporuje rezervace vstupů zboží prostřednictvím převodu LVS a automatizuje trojstranný vyrovnání (objednávka <unk> vstup zboží <unk> přijatá faktura).

⚡ Pracovní toky a životní cykly

Základní částka procure_to_pay_lifecycle

Od požadavku na potřeby přes objednávku od dodavatele až po příjezd zboží.

graph LR A[Bedarfsanforderung / BTO] --> B[Bestellung an Lieferant] B --> C[Wareneingang & Prüfung] C --> D[LVS-Lagerzubuchung] D --> E[3-Wege-Rechnungsprüfung]
1. RFQ
Výše cen
Požadavka u jednoho nebo více dodavatelů.
Aktionen: Porovnávat nabídky
2. ORDER
Objednávání
Vývolat závazné objednávky.
Aktionen: Vytváření PO
3. RECEIPT
Příjezd zboží
Získání nálezů z zboží a zkoumání množství/kvalita.
Aktionen: Úhrada zásob
4. INVOICE_MATCH
Účetní účet
3 - cesta vyrovnání proti účtu na nákup.
Aktionen: Uvolňování

Kontrolní úprava potvrzení cascade:business.order_confirmation.check

Kaskade (review_gated).

1. match
AB <unk> vyrovnávání objednávek
nákupy
Aktionen: order_confirmation.match
2. project
projekt / přidělování nákladních míst
projekty
Aktionen: link_project
3. task
Doba dodání / sledování cen
úkoly
Aktionen: create_task

Potvrzení objednávky <unk> vyrovnání objednávky cascade_target:business.order_confirmation.match

Kaskade (review_gated).

1. cascade
Potvrzení objednávky <unk> vyrovnání objednávky

Příkaz uživatele: agent pro odeslání zboží plan:command_goods_receipt_agent

Kontrolovaný trvalý plán (durable_plan), start: manual_command.

1. goods_receipt_agent
goods_receipt_agent
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Aktionen: goods_receipt_agent

Příkaz uživatele: zástupce koordinátoru zadávání zakázek plan:command_procurement_coordinator_agent

Kontrolovaný trvalý plán (durable_plan), start: manual_command.

1. procurement_coordinator_agent
procurement_coordinator_agent
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Aktionen: procurement_coordinator_agent

Používání: funkce agenty pro zadávání zakázek plan:command_procurement_rule_function_agent

Kontrolovaný trvalý plán (durable_plan), start: manual_command.

1. procurement_rule_function_agent
procurement_rule_function_agent
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Aktionen: procurement_rule_function_agent

Používání: agent pro zadávání zakázek plan:command_procurement_run_function_agent

Kontrolovaný trvalý plán (durable_plan), start: manual_command.

1. procurement_run_function_agent
procurement_run_function_agent
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Aktionen: procurement_run_function_agent

Použití: zakupní agent plan:command_purchase_agent

Kontrolovaný trvalý plán (durable_plan), start: manual_command.

1. purchase_agent
purchase_agent
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Aktionen: purchase_agent

Používání: trojího stykového agenta plan:command_three_way_match_agent

Kontrolovaný trvalý plán (durable_plan), start: manual_command.

1. three_way_match_agent
three_way_match_agent
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Aktionen: three_way_match_agent

Vstupní zboží plan:goods_receipt_followup

Zkontrolovaný trvalý plán (durable_plan), start: domain_event.

1. three_way_match_agent
three_way_match_agent
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Aktionen: three_way_match_agent

Vyplacená loď status:dropship_line

Zobrazovací zařízení (only observable_only) - nepřeprava není nucená <unk> viz servisní validace.

1. needs_supplier
needs_supplier
Status <unk>needs_supplier<unk> stavového zařízení dropship.
2. requested
požadované
Status <unk>předloženo <unk> stavové stroje dropship.
3. ordered
Objednané
Status <unk>připraven<unk> stavového stroje dropship.
4. confirmed
potvrzené
Status <unk>potvrzen<unk> stavového stroje dropship.
5. shipped
přepravované
Status <unk>shipped<unk> stavové stroje dropship.
6. delivered
přepravované
Status <unk>doručený <unk> stavové strojové lodě.
7. issue
Věc
Status <unk>vydání <unk> stavového zařízení dropship.
8. cancelled
zrušen
Status <unk> zrušen<unk> stavového stroje dropship.

Příjezd zboží status:goods_receipt

Zobrazovací zařízení (only observable_only) - nepřeprava není nucená <unk> viz servisní validace.

1. draft
návrh
Status <unk>výrobek <unk>vstupní stav
2. posted
vykazované
Status <unk>posted<unk> stavové stroje
3. cancelled
zrušen
Status <unk> zrušen<unk> stavového přístupu zboží.

Objednávání status:purchase

Zobrazovací zařízení (only observable_only) - nepřeprava není nucená <unk> viz servisní validace.

1. draft
návrh
Status <unk>výloha <unk> stavové objednávky.
2. sent
posílá
Status <unk>posílatel <unk> stálého zařízení
3. partially_received
partially_received
Status <unk>partially_received<unk> stavu objednávky.
4. received
přijaté
Status <unk>přijetý <unk> objednávky stálého stroju.
5. cancelled
zrušen
Status <unk> zrušen<unk> objednávky stálého stroju.

Objednání status:purchase_requisition

Zobrazovací zařízení (only observable_only) - nepřeprava není nucená <unk> viz servisní validace.

1. draft
návrh
Status <unk>výloha <unk> stavové stroje
2. submitted
předložené
Status <unk> předložený <unk> stavové stroje
3. approved
schválené
Status <unk> schválený <unk> stavové stroje
4. rejected
Odmítnutí
Status <unk>odmítnut<unk> stavu stroje
5. ordered
Objednané
Status <unk>připravený <unk> stavové stroje
6. cancelled
zrušen
Status <unk> zrušen<unk> stavu stroje

Výše cen status:purchase_rfq

Zobrazovací zařízení (only observable_only) - nepřeprava není nucená <unk> viz servisní validace.

1. draft
návrh
Status <unk>výloha <unk>vývozu cenového požadavku.
2. sent
posílá
Status <unk>posílací stanice
3. partially_quoted
partially_quoted
Status <unk>partially_quoted<unk> státního strojového cenového požadavku.
4. quoted
citované
Status <unk>quoted<unk> státní stroj cenová dotace.
5. ordered
Objednané
Status <unk>připravený <unk> stavové stroje
6. cancelled
zrušen
Status <unk> zrušen<unk> stavu strojů

Výdaje status:supplier_quote

Zobrazovací zařízení (only observable_only) - nepřeprava není nucená <unk> viz servisní validace.

1. draft
návrh
Status <unk>výrobek <unk> stavového stroju
2. received
přijaté
Status <unk>přijetý <unk> stavové strojové dodávky
3. accepted
přijatý
Status <unk> přijatý <unk> stavové strojové dodávky
4. rejected
Odmítnutí
Status <unk> odmítnut<unk> stavové stroje

🗄️ Data modely a pole

ProcurementNeeds procurement_needs RLS Aktiv
24 Plochy / sloupci

Tabelle procurement_needs

Feldname Typ údajů Povinnost Schlüssel Vědecké význam
run_id UUID Ja * FK ➔ procurement_runs.id Feld run_id
rule_id UUID Ja * FK ➔ reordering_rules.id Feld rule_id
product_id UUID Ja * FK ➔ products.id Feld product_id
location_id UUID Nein FK ➔ locations.id Feld location_id
supplier_info_id UUID Nein FK ➔ product_supplierinfo.id Feld supplier_info_id
physical_quantity NUMERIC(14, 4) Ja * - Feld physical_quantity
reserved_quantity NUMERIC(14, 4) Ja * - Feld reserved_quantity
incoming_quantity NUMERIC(14, 4) Ja * - Feld incoming_quantity
forecast_quantity NUMERIC(14, 4) Ja * - Feld forecast_quantity
requested_quantity NUMERIC(14, 4) Ja * - Feld requested_quantity
ordered_quantity NUMERIC(14, 4) Ja * - Feld ordered_quantity
status VARCHAR(48) Ja * - Feld status
purchase_id UUID Nein FK ➔ purchases.id Feld purchase_id
purchase_item_id UUID Nein FK ➔ purchase_items.id Feld purchase_item_id
explanation TEXT Ja * - Feld explanation
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
ProcurementRuns procurement_runs RLS Aktiv
16 Plochy / sloupci

Tabelle procurement_runs

Feldname Typ údajů Povinnost Schlüssel Vědecké význam
status VARCHAR(48) Ja * - Feld status
trigger VARCHAR(32) Ja * - Feld trigger
started_at DATETIME Ja * - Feld started_at
finished_at DATETIME Nein - Feld finished_at
idempotency_key VARCHAR(128) Nein - Feld idempotency_key
summary JSONB Ja * - Feld summary
error_message TEXT Nein - Feld error_message
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

🔌 Úvodní místa (UI a API)

Art Přípravek Konečný bod / cesta Titel & Zweck Oprávnění
⚡ REST API DELETE /api/v1/purchasing/procurement/rules/{rule_id}
delete_reordering_rule
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API GET /api/v1/dropshipping
list_lines
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/dropshipping/meta
meta
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/goods-receipts
list_receipts
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/goods-receipts/{receipt_id}
get_receipt
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/goods-receipts/{receipt_id}/labels.pdf
goods_receipt_labels_pdf
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/goods-receipts/{receipt_id}/landed-costs
list_landed_costs
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/procurement/rules
list_reordering_rules
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/procurement/runs
list_procurement_runs
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/procurement/runs/{run_id}/needs
list_procurement_needs
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/purchases
list_purchases
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/purchases/open
list_open_purchases
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/purchases/{purchase_id}
get_purchase
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/purchases/{purchase_id}/matching
get_purchase_matching
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/purchases/{purchase_id}/pdf
get_purchase_pdf
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/reports/supplier-scorecard
supplier_scorecard_report
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/requisitions
list_purchase_requisitions
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/requisitions/{requisition_id}
get_purchase_requisition
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/rfqs
list_rfqs
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/rfqs/{rfq_id}
get_rfq
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/rfqs/{rfq_id}/compare
compare_rfq_quotes
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/settings
get_purchasing_settings
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/supplier-portal/purchases
list_purchases
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /api/v1/purchasing/supplier-portal/rfqs
list_rfqs
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /dropshipping
dropshipping_page
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /purchasing
purchasing_page
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /purchasing/new
purchase_create_page
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /purchasing/orders/{purchase_id}
purchase_order_detail_page
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /purchasing/receipts/{receipt_id}
goods_receipt_detail_page
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /purchasing/tab/procurement
purchasing_tab_procurement
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /purchasing/tab/purchases
purchasing_tab_purchases
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /purchasing/tab/receipts
purchasing_tab_receipts
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /purchasing/{purchase_id}
purchase_order_detail_page
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API GET /purchasing/{purchase_id}/pdf
purchase_order_pdf_view
Semantic binding: inventory_only; mutation=False
purchasing
⚡ REST API PATCH /api/v1/purchasing/goods-receipts/{receipt_id}
update_receipt_draft
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API PATCH /api/v1/purchasing/goods-receipts/{receipt_id}/items/{item_id}/tracking
update_receipt_item_tracking
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API PATCH /api/v1/purchasing/procurement/rules/{rule_id}
update_reordering_rule
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/dropshipping/quotes/{quote_id}/create
create_for_quote
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/dropshipping/{line_id}/cancel
zrušit
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/dropshipping/{line_id}/delivered
přepravované
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/dropshipping/{line_id}/issue
Věc
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/dropshipping/{line_id}/release-billing
release_billing
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/dropshipping/{line_id}/supplier
assign_supplier
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/dropshipping/{line_id}/tracking
sledování
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/goods-receipts
create_receipt
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/goods-receipts/{receipt_id}/landed-costs
create_landed_cost
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/goods-receipts/{receipt_id}/post
post_receipt
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/goods-receipts/{receipt_id}/print-labels
print_goods_receipt_labels
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/procurement/rules
create_reordering_rule
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/procurement/run
run_procurement
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/purchases
create_purchase
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/purchases/{purchase_id}/approve
approve_purchase
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/purchases/{purchase_id}/confirm-supplier
confirm_purchase_supplier
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/purchases/{purchase_id}/items
add_item_to_purchase
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/purchases/{purchase_id}/receive
quick_receive_purchase
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/purchases/{purchase_id}/send
send_purchase
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/purchases/{purchase_id}/send-email
send_purchase_email
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/purchases/{purchase_id}/tax-context
confirm_purchase_tax_context
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/requisitions
create_purchase_requisition
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/requisitions/{requisition_id}/approve
approve_purchase_requisition
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/requisitions/{requisition_id}/convert-to-purchase
convert_purchase_requisition
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/requisitions/{requisition_id}/reject
reject_purchase_requisition
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/requisitions/{requisition_id}/submit
submit_purchase_requisition
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/rfqs
create_rfq
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/rfqs/{rfq_id}/quotes
record_supplier_quote
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/rfqs/{rfq_id}/quotes/{quote_id}/purchase
create_purchase_from_quote
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/rfqs/{rfq_id}/suppliers
add_rfq_supplier
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/supplier-portal/invoices
upload_invoice
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/supplier-portal/rfqs/{rfq_id}/respond
respond_rfq
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing/supplier-portal/suppliers/{supplier_id}/access-token
issue_access_token
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /purchasing/settings/grouping
web_update_purchasing_grouping
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API PUT /api/v1/purchasing/settings
update_purchasing_settings
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/purchasing
Objednávání
Vytváří nové nákupní objednávky
purchasing:write

🛡️ Regulační a dodržovací

Dieses Modul unterliegt folgenden gesetzlichen, regulatorischen und Revisionsstandards:

  • Zkoumatelnost
  • HGB § 377 (přípustnost zpět při příjezdu zboží)
Vkládání:
➔ suppliers ➔ inventory ➔ dropship ➔ crossdock