Centurio Documentația sistemului
🏛️ Arhitectura de platformă 🔑 Login
🏠 Toate modurile / supply_chain / Achiziții și comenzi
🛒

Achiziții și comenzi

purchasing supply_chain 🛡️ RLS Protected

Comenzile furnizate de furnizori, cereri de preț (RFQ), înregistrarea primirii de mărfuri și înregistrarea în trei moduri.

Fachliche Bestimmung: Controlă întregul proces de achiziție. Produce comenzi din nevoi de cumpărare, de vânzări de marfă sau reguli de stoc minim. Suportează înregistrarea de mărfuri cu transferul LVS și automatizează compensarea în trei moduri (comanda <unk> intrare de mărfuri <unk> factură de intrare).

⚡ Fluxuri de lucru

Ciclul de achiziție de la achiziție la plată (P2P) procure_to_pay_lifecycle

De la cererea de cerere la comandă a furnizorilor până la intrarea mărfurilor.

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
Cerere de preț
Cerere la unul sau mai mulți furnizori.
Aktionen: Comparați oferte
2. ORDER
Comanda
Începerea unei comenzi obligatorii.
Aktionen: generarea de documente PO
3. RECEIPT
Intraînare
Recuperarea și verificarea cantității/calității de intrare în mărfuri.
Aktionen: Înregistrarea stocurilor LVS
4. INVOICE_MATCH
Înregistrat
3 modalități de compensare cu factura de achiziție.
Aktionen: Fără a fi plătit

Verificarea confirmării contractului cascade:business.order_confirmation.check

Cascade (review_gated).

1. match
AB <unk> comparațiunea comenzii
achiziționarea
Aktionen: order_confirmation.match
2. project
proiect / atribuirea de
Proiecte
Aktionen: link_project
3. task
Monitorizarea termenului de livrare / a prețurilor
sarcini
Aktionen: create_task

Confirmare de comandă <unk> Echecarea comandelor cascade_target:business.order_confirmation.match

Cascade (review_gated).

1. cascade
Confirmare de comandă <unk> Echecarea comandelor

Ordonanța de utilizare: agent de primire a mărfurilor plan:command_goods_receipt_agent

Plan durabil verificat (durable_plan), inițiativă: manual_command.

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

Ordonanța de utilizare: agentul de coordonare a achizițiilor plan:command_procurement_coordinator_agent

Plan durabil verificat (durable_plan), inițiativă: manual_command.

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

Oferta de utilizare: funcția de agent de reglementare a achizițiilor plan:command_procurement_rule_function_agent

Plan durabil verificat (durable_plan), inițiativă: manual_command.

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

Oferta de utilizare: funcție de executare a achizițiilor plan:command_procurement_run_function_agent

Plan durabil verificat (durable_plan), inițiativă: manual_command.

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

Ordonanța de utilizare: agent de achiziție plan:command_purchase_agent

Plan durabil verificat (durable_plan), inițiativă: manual_command.

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

Ordonanța de utilizare: agent de corespondență cu trei ori plan:command_three_way_match_agent

Plan durabil verificat (durable_plan), inițiativă: manual_command.

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

Înregistrare plan:goods_receipt_followup

Plan durabil verificat (durable_plan), start: domain_event.

1. three_way_match_agent
three_way_match_agent
{"key": "step_0", "label": "Bestellung, Wareneingang und Rechnung abgleichen", "adapter": "agent.execute", "agent": "three_way_match_agent", "condition_fact": null}
Aktionen: three_way_match_agent

Nave de la bord status:dropship_line

În cazul în care se aplică o metodă de verificare a situaţiei, se poate observa o metodă de verificare a situaţiei.

1. needs_supplier
needs_supplier
Statutul de furnizor al mașinii de stat
2. requested
solicitate
Statutul <unk>receat<unk> de la dispozitivul de tip "dropship".
3. ordered
ordonat
Statut <unk>ordonat <unk> de la mașina de stat
4. confirmed
confirmat
Statutul de instalare a vehiculului de transport
5. shipped
transportat
Statutul de "naviat" al mașinii de "naviat" de "naviat" de "naviat" de "naviat" de "naviat" de "naviat" de "naviat" de "naviat" de "naviat" de "naviat" de "naviat" de "naviat"
6. delivered
livrate
Statut <unk>delivered<unk> de la mașinăria de tip dropship.
7. issue
înregistrat
Statutul de "Emisie" a mașinii de "Download"
8. cancelled
anulate
Statutul de "cancelat" al "dropship" de la "state machine".

Intraînare status:goods_receipt

În cazul în care se aplică o metodă de verificare a situaţiei, se poate observa o metodă de verificare a situaţiei.

1. draft
proiect
Statut <unk>proiect <unk> de intrare a mărfurilor din mașinăria de stare.
2. posted
publicate
Statut <unk>postat<unk> al mașinii de stare de intrare a mărfurilor.
3. cancelled
anulate
Statut <unk> anulat <unk> intrarea de mărfuri a mașinii de stat.

Comanda status:purchase

În cazul în care se aplică o metodă de verificare a situaţiei, se poate observa o metodă de verificare a situaţiei.

1. draft
proiect
Statutul proiectului de comandă a mașinii de stat.
2. sent
trimise
Statut de comandă a mașinii de comandă.
3. partially_received
partially_received
Statut <unk>partial_received<unk> al comandării de mașină în stare de funcționare.
4. received
primite
Statut <unk>a primit <unk>a comandă de mașină de stare.
5. cancelled
anulate
Starea de comandă a mașinii de comandă anulate.

Cerința de comandă status:purchase_requisition

În cazul în care se aplică o metodă de verificare a situaţiei, se poate observa o metodă de verificare a situaţiei.

1. draft
proiect
Statutul proiectului de machinerie de stare
2. submitted
prezentate
Statut <unk>submis <unk> de la mașină de stare de comandă cerere.
3. approved
aprobate
Statut <unk>aprobat<unk> de mașinărie de stat
4. rejected
respingerea
Statut <unk>rejected<unk> de stat de machinărie
5. ordered
ordonat
Statut <unk>ordonat <unk> cerința de comandă a mașinii de stat.
6. cancelled
anulate
Statutul de anulare a machinii de anulare

Cerere de preț status:purchase_rfq

În cazul în care se aplică o metodă de verificare a situaţiei, se poate observa o metodă de verificare a situaţiei.

1. draft
proiect
Statut <unk>proiect <unk> de maşină de stat preţ solicităre.
2. sent
trimise
Statut <unk>să trimită <unk>a cererea de preţ a mașinii de stat.
3. partially_quoted
partially_quoted
Statut <unk>partial_quoted<unk> al mașinii de stat prețanunt.
4. quoted
Citat
Statut <unk>citat <unk> de la mașina de stat prețuri cerere.
5. ordered
ordonat
Statut <unk>ordonat <unk>a mașinii de stat prețuire.
6. cancelled
anulate
Statut <unk> anulat <unk> cererea de preţ a mașinii de stat.

Oferta de livrare status:supplier_quote

În cazul în care se aplică o metodă de verificare a situaţiei, se poate observa o metodă de verificare a situaţiei.

1. draft
proiect
Statutul proiectului de echipament de stat
2. received
primite
Statut <unk>a primit <unk>a masinilor de stat
3. accepted
acceptate
Statut <unk>acceptat<unk> de la mașina de stat
4. rejected
respingerea
Statut de refuz a dispozitivului de stat

🗄️ Modele de date & câmpuri

ProcurementNeeds procurement_needs RLS Aktiv
24 Câmpuri / coloane

Tabelle procurement_needs

Feldname Tip de date Obligatoriu Schlüssel Importanța profesională
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 Câmpuri / coloane

Tabelle procurement_runs

Feldname Tip de date Obligatoriu Schlüssel Importanța profesională
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

🔌 Puncte de inițiere (UI & API)

Art Metoda Punctul de încheiere / traseul Titel & Zweck Asigurarea
⚡ 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
anulare
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/dropshipping/{line_id}/delivered
livrate
Semantic binding: operator_surface; mutation=True
purchasing
⚡ REST API POST /api/v1/dropshipping/{line_id}/issue
înregistrat
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
de urmărire
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
Comandați
Creează un nou ordin de achiziție
purchasing:write

🛡️ Reglementări și respectare

Dieses Modul unterliegt folgenden gesetzlichen, regulatorischen und Revisionsstandards:

  • Încercibilitate
  • HGB §377 (obligatie de retragere la intrarea în vigoare a mărfurilor)
Module legate:
➔ suppliers ➔ inventory ➔ dropship ➔ crossdock