Files
sam-docs/system/erp-analysis/06-accounting.md
권혁성 d4e5f62413 docs: [종합정비] Phase 1 시스템 현황 문서 14개 작성
- system/overview.md: 전체 아키텍처 개요
- system/api-structure.md: API 구조 (220 모델, 1027 엔드포인트, 18 라우트 도메인)
- system/react-structure.md: React 구조 (249 페이지, 612 컴포넌트)
- system/mng-structure.md: MNG 구조 (171 컨트롤러, 436 Blade 뷰)
- system/docker-setup.md: Docker 7 컨테이너 구성
- system/database/README.md + 9개 도메인 스키마 (270+ 테이블)
  - core, hr, sales, production, finance, boards, files, system, erp-analysis

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 18:03:13 +09:00

12 KiB

회계관리 (슬라이드 60-91)

1. 개요

회계관리 모듈은 거래처, 매출, 매입, 입금, 출금, 어음, 거래처원장, 미수금 현황, 입출금 계좌 조회 등을 관리합니다.

2. 회계관리 플로우차트 (슬라이드 61)

2.1 매출 플로우

거래처 선택 → 매출 등록 → 세금계산서 발행

2.2 입금 플로우

입금 등록 → 전액 입금? → 어음 수취?
                ↓           ↓
            입출금 계좌 조회  어음관리

2.3 매입 플로우

거래처 선택 → 매입 등록 → 세금계산서 수취

2.4 출금 플로우

출금 등록 → 전액 출금? → 어음 발행?
                ↓           ↓
            입출금 계좌 조회  어음관리

2.5 추심 플로우

미수금 현황 → 연체? → 악성주심? → 악성 추심
                            ↓
                       미지급 알림

2.6 조회

  • 입출금 계좌 조회
  • 카드 내역 조회

2.7 장부/보고서

  • 거래처원장
  • 지출 예상 내역서
  • 일일 일보

3. 거래처관리 (슬라이드 62-65)

3.1 현황 카드

항목 설명
전체 거래처
매출 거래처
매입 거래처

3.2 삭제 버튼

  • 관리 권한이 없을 경우 숨김
  • 클릭: "선택한 거래처 N개를 삭제하시겠습니까?" 확인 Alert 표시
  • 확인 선택 시 삭제

3.3 구분 필터 셀렉트 박스

  • 종류: 전체, 매출, 매입, 매입매출
  • 디폴트: 전체

3.4 신용등급 필터 셀렉트 박스

  • 종류: 전체, AAA, AA, A, BBB, BB, B, CCC, CC, C, D
  • 디폴트: 전체

3.5 거래등급 필터 셀렉트 박스

  • 종류: 전체, A(우수), B(양호), C(보통), D(주의), E(위험)
  • 디폴트: 전체

3.6 약정체결 필터 셀렉트 박스

  • 종류: 전체, 약정체결, 정상
  • 디폴트: 전체

3.7 정렬 셀렉트 박스

  • 종류: 최신순, 등록순, 거래처명 오름차순, 거래처명 내림차순, 미수금 높은순, 미수금 낮은순
  • 디폴트: 최신순

4. 거래처 상세 (슬라이드 63-65)

4.1 기본 정보

필드명 필수 설명
사업자등록번호 Y
거래처 코드 N
거래처명 Y
대표자명 Y
거래처 유형 Y 매출매입 선택
업태 N
업종 N

4.2 연락처 정보

필드명 필수 설명
주소 N 우편번호 찾기 + 상세주소
전화번호 N
모바일 N
팩스 N
이메일 N

4.3 담당자 정보

필드명 필수 설명
담당자명 N
담당자 전화 N

4.4 시스템 관리자

필드명 필수 설명
관리자명 N

4.5 회사 정보

필드명 필수 설명
회사 로고 N 750x250px, 10MB 이하 PNG, JPEG, GIF

4.6 결제 정보

필드명 필수 설명
매입 결제일 N 종류: 1일~31일, 말일. 디폴트: 10일. 거래처 유형이 '매입' 또는 '매입매출'일 경우 해당
매출 결제일 N 종류: 1일~31일, 말일. 디폴트: 15일. 거래처 유형이 '매출' 또는 '매입매출'일 경우 표시

4.7 신용 정보

필드명 필수 설명
신용등급 N 외부 신용평가 등급 표시. 예: AAA, AA, A, BBB, BB, B, CCC, CC, C, D
거래등급 N 종류: A(우수), B(양호), C(보통), D(주의), E(위험). 디폴트: A(우수). 자사 기준 거래처 평가 등급

4.8 계좌 정보

필드명 필수 설명
세금계산서 이메일 N
입금계좌 은행 N 은행 선택
계좌 N
예금주 N

4.9 추가 정보

필드명 설명
미수금 해당 거래처의 현재 미수금 잠게 표시. 읽기 전용
연체 - ON: 연체 상태로 표시, 연체일수 표시
- OFF: 정상 상태
- 거래처 상세에서 연체 설정과 연동
- (4-1) 연체 등록 이후부터 경과일 표시
미지급 해당 거래처에 대한 미지급금 잠게 표시. 읽기 전용
악성채권 - ON: 악성채권으로 등록, 악성채권 추심관리 목록에 표시
- OFF: 정상 상태
- 디폴트: OFF
메모 추가 버튼 클릭 시 목록 최상단에 추가

5. 매출관리 (슬라이드 66-71)

5.1 매출 유형

  • 필드 매출 시 매출 직접 등록 (삭제 가능)
  • 필드 매출: 용역 매출, 공사 매출, 임대 수익, 기타 매출

5.2 매출 상세

필드명 필수 설명
매출번호 - 자동 채번
매출일 Y
거래처명 Y 거래처 선택
매출 유형 Y 선택

5.3 품목 정보

필드명 필수 설명
품목명 Y
수량 Y
단가 Y
공급가액 - 자동 계산
부가세 - 자동 계산
적요 N

5.4 세금계산서

필드명 설명
세금계산서 발행 토글

5.5 거래명세서

필드명 설명
거래명세서 토글

6. 입금관리 (슬라이드 74-76)

6.1 입금 유형

  • 종류: 매출대금, 선수금, 가수금, 입대수익, 미자수익, 보증금 반환, 차입금, 자본금, 부가세 환급, 기타, 미상정

6.2 입금 상세

필드명 필수 설명
입금일 Y
입금계좌 Y 국민은행 1234 (계좌명)
입금자명 Y
입금금액 Y
적요 N
거래처 N 선택
입금 유형 Y

7. 출금관리 (슬라이드 77-79)

7.1 출금 유형

  • 종류: 매입대금, 선급금, 가지급금, 임대비용, 보증금 지급, 차입금 상환, 배당금 지급, 세금, 공과금, 경비, 4대보험, 급여

7.2 출금 상세

필드명 필수 설명
출금일 Y
출금계좌 Y
받는 분 Y
출금금액 Y
적요 N
거래처 N
출금 유형 Y

8. 거래처원장 (슬라이드 80)

8.1 현황 카드

항목 설명
전기 이월
매출
수금
잔액

8.2 거래처원장 목록

  • 거래처별 기간별 합계 금액 표시
  • 클릭: 거래처원장 상세 화면으로 이동

8.3 엑셀 다운로드 버튼

  • 클릭: 엑셀 파일 다운로드

9. 미수금 현황 (슬라이드 85)

9.1 미수금 현황 목록

  • 거래처별 월별 미수금 현황 (매출, 입금, 어음, 미수금, 메모)

9.2 수취 어음 등록 시 표시

  • 회계에는 미반영

9.3 연체 표시

  • ON: 연체 상태로 표시, 연체일수 표시
  • OFF: 정상 상태
  • 거래처 상세에서 연체 설정과 연동

9.4 엑셀 다운로드 버튼

9.5 저장 버튼

10. 입출금 계좌 조회 (슬라이드 90)

10.1 설명

  • 기준 정보 > 계좌 관리에 등록된 계좌의 자동 입출금 내역 수집

10.2 새로고침 버튼

  • 클릭: 은행 계좌 입출금 내역 최신 데이터 조회
  • 바로빌 API 연동 시 실시간 조회

10.3 구분 필터 셀렉트 박스

  • 종류: 전체, 출금, 입금
  • 디폴트: 전체

10.4 계정과목 필터 셀렉트 박스, 검색&다중 선택

  • (2) 선택에 따른 계정과목 목록 표시
  • 입금 종류: 전체, 매출대금, 선수금, 가수금, 임대수익, 이자수익, 보증금 반환, 차입금, 자본금, 부가세 환급, 기타, 미상정
  • 출금 종류: 전체, 매입대금, 선급금, 가지급금, 임대비용, 이자비용, 보증금 지급, 차입금 상환, 배당금 지급, 세금, 공과금, 경비, 4대보험, 급여
  • 디폴트: 전체

10.5 정렬 셀렉트 박스

  • 종류: 최신순, 등록순, 금액순
  • 디폴트: 최신순

10.6 수정 버튼

  • 클릭: 해당 입금/출금 상세 화면으로 이동

데이터 모델

Vendor (거래처)

- id: bigint
- tenant_id: bigint (FK)
- business_number: string
- vendor_code: string
- name: string
- representative: string
- type: enum('sales', 'purchase', 'both')
- business_type: string
- business_category: string
- address: string
- phone: string
- mobile: string
- fax: string
- email: string
- manager_name: string
- manager_phone: string
- logo: string
- purchase_payment_day: int
- sales_payment_day: int
- credit_rating: enum('AAA', 'AA', 'A', 'BBB', 'BB', 'B', 'CCC', 'CC', 'C', 'D')
- trade_rating: enum('A', 'B', 'C', 'D', 'E')
- tax_invoice_email: string
- bank_code: string
- account_number: string
- account_holder: string
- is_overdue: boolean
- overdue_start_date: date
- is_bad_debt: boolean
- notes: json
- created_at: timestamp

Sales (매출)

- id: bigint
- tenant_id: bigint (FK)
- vendor_id: bigint (FK)
- sales_number: string
- sales_date: date
- sales_type: enum('product', 'service', 'construction', 'rental', 'other')
- total_amount: decimal
- tax_amount: decimal
- is_tax_invoice_issued: boolean
- is_statement_issued: boolean
- created_at: timestamp

SalesItem (매출 품목)

- id: bigint
- sales_id: bigint (FK)
- item_name: string
- quantity: int
- unit_price: decimal
- supply_amount: decimal
- tax_amount: decimal
- description: string

Deposit (입금)

- id: bigint
- tenant_id: bigint (FK)
- vendor_id: bigint (FK, nullable)
- account_id: bigint (FK)
- deposit_date: date
- depositor_name: string
- amount: decimal
- description: string
- deposit_type: enum('sales', 'advance', 'suspense', 'rental', 'interest', 'deposit_return', 'loan', 'capital', 'vat_refund', 'other', 'unidentified')
- created_at: timestamp

Withdrawal (출금)

- id: bigint
- tenant_id: bigint (FK)
- vendor_id: bigint (FK, nullable)
- account_id: bigint (FK)
- withdrawal_date: date
- recipient_name: string
- amount: decimal
- description: string
- withdrawal_type: enum('purchase', 'advance', 'suspense', 'rental', 'interest', 'deposit', 'loan_repayment', 'dividend', 'tax', 'utility', 'expense', 'insurance', 'salary')
- created_at: timestamp

API 도출

거래처 API

GET    /api/vendors                      # 거래처 목록
POST   /api/vendors                      # 거래처 등록
GET    /api/vendors/{id}                 # 거래처 상세
PUT    /api/vendors/{id}                 # 거래처 수정
DELETE /api/vendors/{id}                 # 거래처 삭제
DELETE /api/vendors/bulk                 # 거래처 일괄 삭제
GET    /api/vendors/summary              # 거래처 현황

매출 API

GET    /api/sales                        # 매출 목록
POST   /api/sales                        # 매출 등록
GET    /api/sales/{id}                   # 매출 상세
PUT    /api/sales/{id}                   # 매출 수정
DELETE /api/sales/{id}                   # 매출 삭제
POST   /api/sales/{id}/tax-invoice       # 세금계산서 발행
GET    /api/sales/summary                # 매출 현황

입금 API

GET    /api/deposits                     # 입금 목록
POST   /api/deposits                     # 입금 등록
GET    /api/deposits/{id}                # 입금 상세
PUT    /api/deposits/{id}                # 입금 수정
DELETE /api/deposits/{id}                # 입금 삭제

출금 API

GET    /api/withdrawals                  # 출금 목록
POST   /api/withdrawals                  # 출금 등록
GET    /api/withdrawals/{id}             # 출금 상세
PUT    /api/withdrawals/{id}             # 출금 수정
DELETE /api/withdrawals/{id}             # 출금 삭제

장부/보고서 API

GET    /api/ledger/vendor                # 거래처원장
GET    /api/ledger/vendor/{vendor_id}    # 거래처원장 상세
GET    /api/ledger/vendor/export         # 거래처원장 엑셀 다운로드
GET    /api/receivables                  # 미수금 현황
GET    /api/receivables/export           # 미수금 현황 엑셀 다운로드
GET    /api/bank-transactions            # 입출금 계좌 조회
POST   /api/bank-transactions/sync       # 입출금 내역 동기화