Centurio Sistemska in modulska dokumentacija
🏛️ Arhitektura platforme 🔑 Login
🏠 Vse module / supply_chain / Vrnitev in pritožbe
↩️

Vrnitev in pritožbe

returns supply_chain 🛡️ RLS Protected

Rücksendungsmanagement für Kunden und Lieferanten, Qualitätsprüfung, Einlagerung und Gutschrifterstellung.

Fachliche Bestimmung: Celovit proces RMA (autoriziranje vračanja blaga).Kupniki ali servisni tehnik prijavijo vračila.Sistem poda številko RMA, vodi skladišče delavca skozi preverjanje kakovosti in napak, v skladišče vrača brez napak blago in samodejno spodbuja izdelavo kreditov ali nadomestnih dobav.

⚡ Delo in življenjski cikli

RMA-priklic in računovodstvo rma_workflow

Od začetka vračila do preverjanja tehničnega stanja do kreditne napove.

stateDiagram-v2 [*] --> REGISTER: RMA anlegen REGISTER --> RECEIVE: Ware trifft ein RECEIVE --> INSPECT: Qualitätsprüfung INSPECT --> RESTOCK: Ware einwandfrei -> Lagerzubuchung INSPECT --> SCRAP: Defekt -> Schrottbuchung RESTOCK --> SETTLE: Gutschrift auslösen SCRAP --> SETTLE: Kulanz- / Garantiegutschrift SETTLE --> [*]
1. REGISTER
Vračanje
stranka ali notranja služba obvesti o vračanju z razlogom.
Aktionen: Izdelava
2. RECEIVE
Vstop & identifikacija
Paket se sreča v skladišče, barkodni sken RMA.
Aktionen: Izvedba
3. INSPECT
Preverjanje stanja
Preverjanje: novo, rabljeno, popravilo ali odpadki.
Aktionen: Dokumentiranje rezultatov preverjanja
4. SETTLE
Izravnava
Vključitev v skladišče ali razgradnja, izkoriščanje kreditne obveznosti.
Aktionen: Izdelava kreditnih sredstev

Vrnitev status:return_order

Prehodov v zvezi s tem niso prisiljeni <unk> glej potrditev storitve.

1. draft
predloga
Status <unk>izvajanje <unk> vrnitev stroja v stanju.
2. requested
zahtevano
Status <unk>required<unk> vrnitev stroja v stanje.
3. approved
odobreno
Status <unk> odobren <unk> vrn stroja v stanje.
4. rejected
zavrnjeno
Status <unk> zavrnjen <unk> vrn stroja v stanje.
5. in_transit
in_transit
Status <unk>in_transit<unk> vrnitve stroja v stanju.
6. part_received
part_received
Status <unk>part_received<unk> vrnitve stroja v stanju.
7. received
Prijetna
Status <unk>pridobljen <unk> vrnitev stroja v stanju.
8. inspected
pregledano
Status <unk>inspected<unk> vrnitev stroja v stanju.
9. resolved
izčrpitev
Status <unk>resolved<unk> stanje mašine vrnitev.
10. closed
zaprt
Status <unk>closed<unk> vrnitev stroja.
11. cancelled
preklicano
Status <unk>odpovedan<unk> vrnitev stroja v stanje.

🗄️ Podatki in polja

ReturnLines return_lines RLS Aktiv
30 Polja / stolpci

Tabelle return_lines

Feldname Vrsta podatkov Obveznost Schlüssel Poseben pomen
return_id UUID Ja * FK ➔ return_orders.id Feld return_id
position INTEGER Ja * - Feld position
stock_owner VARCHAR(16) Ja * - Feld stock_owner
product_id UUID Nein FK ➔ products.id Feld product_id
stored_article_id UUID Nein FK ➔ stored_articles.id Feld stored_article_id
asset_id UUID Nein FK ➔ assets.id Feld asset_id
invoice_item_id UUID Nein - Feld invoice_item_id
description VARCHAR(255) Ja * - Feld description
unit VARCHAR(32) Ja * - Feld unit
unit_price NUMERIC(14, 2) Nein - Feld unit_price
tax_rate NUMERIC(6, 3) Nein - Feld tax_rate
quantity_requested NUMERIC(14, 4) Ja * - Feld quantity_requested
quantity_received NUMERIC(14, 4) Ja * - Feld quantity_received
quantity_accepted NUMERIC(14, 4) Ja * - Feld quantity_accepted
from_location_id UUID Nein FK ➔ locations.id Feld from_location_id
tracking_codes JSONB Ja * - Feld tracking_codes
reason_id UUID Nein FK ➔ return_reasons.id Feld reason_id
condition_grade VARCHAR(1) Nein - Feld condition_grade
disposition VARCHAR(24) Nein - Feld disposition
disposition_location_id UUID Nein FK ➔ locations.id Feld disposition_location_id
disposed_at DATETIME Nein - Feld disposed_at
unit_cost NUMERIC(14, 2) Nein - Feld unit_cost
inspection_notes TEXT Nein - Feld inspection_notes
photo_document_ids JSONB Ja * - Feld photo_document_ids
child_return_id UUID Nein - Feld child_return_id
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
metadata JSONB Ja * - Feld metadata
ReturnNotes return_notes RLS Aktiv
9 Polja / stolpci

Tabelle return_notes

Feldname Vrsta podatkov Obveznost Schlüssel Poseben pomen
return_id UUID Ja * FK ➔ return_orders.id Feld return_id
author_id UUID Nein - Feld author_id
kind VARCHAR(16) Ja * - Feld kind
body TEXT Ja * - Feld body
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
metadata JSONB Ja * - Feld metadata
ReturnOrders return_orders RLS Aktiv
46 Polja / stolpci

Tabelle return_orders

Feldname Vrsta podatkov Obveznost Schlüssel Poseben pomen
rma_number VARCHAR(64) Ja * - Feld rma_number
kind VARCHAR(24) Ja * - Feld kind
status VARCHAR(16) Ja * - Feld status
channel VARCHAR(16) Ja * - Feld channel
public_token UUID Ja * - Feld public_token
customer_id UUID Nein FK ➔ customers.id Feld customer_id
supplier_id UUID Nein FK ➔ suppliers.id Feld supplier_id
contract_id UUID Nein FK ➔ contracts.id Feld contract_id
invoice_id UUID Nein - Feld invoice_id
work_order_id UUID Nein - Feld work_order_id
project_id UUID Nein - Feld project_id
rental_booking_id UUID Nein FK ➔ rental_bookings.id Feld rental_booking_id
ticket_id UUID Nein FK ➔ tickets.id Feld ticket_id
parent_return_id UUID Nein - Feld parent_return_id
policy_id UUID Nein - Feld policy_id
reason_id UUID Nein FK ➔ return_reasons.id Feld reason_id
reason_text TEXT Nein - Feld reason_text
resolution VARCHAR(24) Nein - Feld resolution
restocking_fee_percent NUMERIC(5, 2) Ja * - Feld restocking_fee_percent
credit_note_id UUID Nein - Feld credit_note_id
replacement_ref VARCHAR(255) Nein - Feld replacement_ref
repair_work_order_id UUID Nein - Feld repair_work_order_id
charge_invoice_id UUID Nein - Feld charge_invoice_id
credit_amount NUMERIC(14, 2) Nein - Feld credit_amount
carrier VARCHAR(128) Nein - Feld carrier
tracking_number VARCHAR(128) Nein - Feld tracking_number
return_location_id UUID Nein FK ➔ locations.id Feld return_location_id
pickup_address TEXT Nein - Feld pickup_address
risk_score INTEGER Ja * - Feld risk_score
risk_flags JSONB Ja * - Feld risk_flags
requested_at DATETIME Nein - Feld requested_at
approved_at DATETIME Nein - Feld approved_at
shipped_at DATETIME Nein - Feld shipped_at
received_at DATETIME Nein - Feld received_at
inspected_at DATETIME Nein - Feld inspected_at
resolved_at DATETIME Nein - Feld resolved_at
notes TEXT Nein - Feld notes
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
ReturnPolicies return_policies RLS Aktiv
22 Polja / stolpci

Tabelle return_policies

Feldname Vrsta podatkov Obveznost Schlüssel Poseben pomen
name VARCHAR(255) Ja * - Feld name
customer_id UUID Nein FK ➔ customers.id Feld customer_id
contract_id UUID Nein FK ➔ contracts.id Feld contract_id
is_default BOOLEAN Ja * - Feld is_default
window_days INTEGER Ja * - Feld window_days
auto_approve BOOLEAN Ja * - Feld auto_approve
restocking_fee_percent NUMERIC(5, 2) Ja * - Feld restocking_fee_percent
require_inspection BOOLEAN Ja * - Feld require_inspection
shipping_paid_by VARCHAR(16) Ja * - Feld shipping_paid_by
grade_credit_percent JSONB Ja * - Feld grade_credit_percent
condition_matrix JSONB Ja * - Feld condition_matrix
max_return_rate_percent NUMERIC(5, 2) Ja * - Feld max_return_rate_percent
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
ReturnReasons return_reasons RLS Aktiv
16 Polja / stolpci

Tabelle return_reasons

Feldname Vrsta podatkov Obveznost Schlüssel Poseben pomen
code VARCHAR(32) Ja * - Feld code
label VARCHAR(255) Ja * - Feld label
category VARCHAR(32) Ja * - Feld category
fault_party VARCHAR(16) Ja * - Feld fault_party
default_disposition VARCHAR(24) Nein - Feld default_disposition
default_resolution VARCHAR(24) Nein - Feld default_resolution
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

🔌 Izhodišče (UI & API)

Art Sredstva Končna točka / pot Titel & Zweck Pravilo
⚡ REST API GET /api/v1/returns
list_returns
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /api/v1/returns/analytics
analitika
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /api/v1/returns/contract/{contract_id}/returnables
contract_returnables
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /api/v1/returns/invoice/{invoice_id}/items
invoice_items
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /api/v1/returns/meta
meta
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /api/v1/returns/party-context
party_context
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /api/v1/returns/policies
list_policies
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /api/v1/returns/reasons
list_reasons
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /api/v1/returns/{return_id}
get_return
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /api/v1/returns/{return_id}/credit-preview
credit_preview
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /portal/{slug}/retouren
returns_page
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /pub/retoure/status/{token}
return_status
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /pub/retoure/status/{token}/slip
return_slip
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /pub/retoure/{tenant_id}
return_form
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /returns
returns_list_page
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /returns/analytics
returns_analytics_page
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /returns/new
returns_new_page
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /returns/settings
returns_settings_page
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /returns/{return_id}
returns_detail_page
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API GET /returns/{return_id}/print
returns_print_page
Semantic binding: not_evaluated; mutation=False
returns
⚡ REST API PATCH /api/v1/returns/policies/{policy_id}
update_policy
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API PATCH /api/v1/returns/reasons/{reason_id}
update_reason
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns
create_return
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/collective-credit-note
create_collective_credit_note
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/policies
create_policy
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/reasons
create_reason
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/approve
odobri
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/cancel
preklic
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/close
bližnje
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/escalate-ticket
escalate_to_ticket
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/inspect
pregled
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/lines/{line_id}/photos
add_photos
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/notes
add_note
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/receive
prejem
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/reject
zavrniti
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/resolve
izločanje
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /api/v1/returns/{return_id}/ship
ladja
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /portal/{slug}/retouren/anfordern
return_request
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /pub/retoure/{tenant_id}
return_lookup
Semantic binding: not_evaluated; mutation=True
returns
⚡ REST API POST /pub/retoure/{tenant_id}/submit
return_submit
Semantic binding: not_evaluated; mutation=True
returns

🛡️ Regulatorska in skladnost

Dieses Modul unterliegt folgenden gesetzlichen, regulatorischen und Revisionsstandards:

  • BGB Pravo na preklic (§355)
  • Pravo o jamstvu (§ 437 BGB)
  • Dodatki za kreditne papirje
Povezani moduli:
➔ inventory ➔ finance ➔ customers ➔ portal