가격
가격 기준정보는 상품을 얼마에 사고, 얼마에 팔고, 어떤 거래처에 어떤 단가를 적용할지 관리하는 데이터다. 가격은 주문 금액과 정산 금액의 기준이 되므로 변경 이력과 적용 기간을 반드시 관리해야 한다.
가격 유형
| 유형 | 설명 |
|---|---|
| 매입가 | 공급사에서 상품을 사는 기준 금액 |
| 판매가 | 고객에게 판매하는 금액 |
| 공급가 | 세금 제외 기준 금액 |
| 거래처별 단가 | 특정 거래처에만 적용되는 계약 단가 |
| 행사 가격 | 특정 기간에 적용되는 할인 가격 |
가격 적용 흐름
DB 설계 포인트
| 컬럼 | 설명 |
|---|---|
product_id | 상품 |
partner_id | 거래처별 가격이면 거래처 |
price_type | 매입가, 판매가, 행사 가격 |
price | 적용 금액 |
valid_from | 적용 시작일 |
valid_to | 적용 종료일 |
tax_type | 과세/면세 |
주문이 생성될 때는 당시 적용된 가격을 주문 라인에 복사해 둔다. 현재 가격만 참조하면 과거 주문 금액과 정산 금액이 나중에 바뀌어 버린다.
실무에서 자주 생기는 문제
- 가격 변경 후 과거 주문 금액이 같이 바뀐다.
- 매입가와 판매가를 같은 컬럼으로 관리해 정산 기준이 불명확하다.
- 거래처별 단가보다 기본 판매가가 먼저 적용된다.
- 행사 종료 후에도 할인 가격이 계속 적용된다.
- 부가세 포함/별도 기준이 섞인다.