CREATE TABLE charges ( id SERIAL, metering_point_id VARCHAR(18) NOT NULL REFERENCES metering_points(metering_point_id), charge_type VARCHAR(20) NOT NULL, name VARCHAR(200) NOT NULL, description VARCHAR(500), owner VARCHAR(100) NOT NULL, valid_from_date DATE NOT NULL, valid_to_date DATE, period_type VARCHAR(50), price NUMERIC(12,6), quantity INTEGER, position INTEGER NOT NULL DEFAULT 0, fetched_at TIMESTAMPTZ NOT NULL DEFAULT now(), UNIQUE (metering_point_id, charge_type, name, owner, valid_from_date, position) );