# QA Report - Redmine #3951 (dev)

- Generated: 2026-08-06T18:43:19+09:00
- Redmine: https://itsm.bix.bz/issues/3951
- QA Redmine: https://itsm.bix.bz/issues/3953
- Subject: 공제금 음수 처리 오류 수정
- Workflow Status: 완료
- Status: PASS
- Result JSON: artifacts/result-summary.json
- Roles: ADMIN -> VE
- Route Candidates: not recorded

## Scope

개발계 ADMIN/VE 기준으로 박재민_가맹의 2026년 8월 일반·선정산 정산과 음수 공제금 처리 결과를 화면/API/지갑내역으로 대조한다.

## Checklist

1. 관리자 정산내역에서 박재민_가맹의 2026년 8월 양수·음수 취소·음수 채권 정산과 일반/선정산 법인계좌가 준비되어 있는지 확인
2. 일반 양수 공제금 +44,607원, 일반 음수 취소 공제금 -11,151원, 선정산 양수 공제금 +34,694원, 선정산 음수 취소 공제금 -22,303원을 확인하고 거래 없는 음수 채권의 공제금이 0원인지 확인
3. 실험실 > 법인계좌관리V2에서 박재민 법인계좌와 박재민 선정산계좌를 분리해 2026년 8월 정산 전 월별 공제금 기준을 기록
4. transfer_ve_gj로 비스킷페이에 로그인해 정산 완료 전 지갑 잔액과 정산예정금·정산대기금을 기록
5. 준비된 일반·선정산 양수, 음수 취소, 음수 채권 6건을 지급·전산완료 처리
6. 정산 완료 후 일반정산 월별 공제금이 대상 4건·33,456원, 선정산 월별 공제금이 대상 4건·12,391원 증가하고 음수 채권은 공제금 대상에서 제외되는지 확인
7. 관리자 정산내역 재조회에서 6건이 완료 상태가 되고 공제 후 지급 금액이 일반 +315,393원/-78,849원, 선정산 +245,306원/-157,697원, 음수 채권 각 -10,000원인지 확인
8. 비스킷페이 정산내역과 지갑내역에서 일반·선정산 대금지급 및 음수 금액이 각각 표시되는지 확인
9. 정산 전후 가맹점 지갑 잔액 차이가 전체 대금지급 합계 +304,153원이고 음수 지급이 '-' 부호로 표시되는지 확인
10. 관리자·가맹점 화면을 새로고침한 뒤 일반/선정산 공제금, 정산 금액, 지갑 잔액과 음수 이력이 동일하게 유지되는지 확인

## Setup Steps

1. [required] ADMIN 정산·법인계좌 데이터 접근 (admin/ADMIN / kind: manual-precondition) - 개발계 ADMIN으로 정산관리 > 정산내역과 실험실 > 법인계좌관리V2에 접근하고 박재민_가맹/박재민 법인 데이터를 조회할 수 있어야 한다.
2. [required] VE 정산 전 지갑 기준 기록 (store/VE / kind: manual-precondition) - transfer_ve_gj 세션으로 비스킷페이 정산내역과 지갑내역에 접근해 정산 전 기준 금액을 기록한다. 런타임에서는 QA3951_VE storage state만 사용한다.
3. [required] 준비된 6건 지급·전산완료 (admin/ADMIN / kind: state-verify / mutation: persistent / guard: QA_3951_ALLOW_SETTLEMENT_PAYMENT) - 대상 정산 6건만 지급·전산완료 처리하고, 5xx/no healthy upstream 응답은 제품 실패가 아닌 환경 확인 불가로 기록한다.

## Source Text

김경주님의 QA 요청입니다. 개발계 2026년 8월 박재민_법인/박재민_가맹의 일반정산·선정산 양수, 거래 연결 음수 취소, 거래 없는 음수 채권 정산을 완료 처리한 뒤 관리자 정산내역, 일반·선정산 법인계좌 월별 공제금, 가맹점 정산내역과 지갑내역을 대조한다. 음수 취소는 부가세와 사업소득세 공제금이 음수로 반영되고, 거래 없는 음수 채권은 공제금 0원이어야 하며, 일반·선정산 계좌가 섞이지 않아야 한다. 가맹점 계정은 제공된 transfer_ve_gj 세션을 사용한다.

## Execution Summary

- Passed: 10
- Failed: 0
- Skipped: 0
- Blocked: 0
- Flaky: 0
- Duration: 89391ms


## 한눈에 보는 결과

| 확인한 항목 | 계정 | 화면 | 수행한 동작 | 결과 | 증거 자료 |
|---|---|---|---|---|---|
| 관리자 정산내역에서 박재민_가맹의 2026년 8월 양수·음수 취소·음수 채권 정산과 일반/선정산 법인계좌가 준비되어 있는지 확인 | ADMIN | [ADMIN] role | ADMIN 계정으로 [ADMIN] role 항목을 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/01-어드민-법인계좌관리V2-ADMIN-precondition.png)<br>[실행 기록 1](artifacts/logs/01-어드민-법인계좌관리V2-ADMIN-precondition.md) |
| 일반 양수 공제금 +44,607원, 일반 음수 취소 공제금 -11,151원, 선정산 양수 공제금 +34,694원, 선정산 음수 취소 공제금 -22,303원을 확인하고 거래 없는 음수 채권의 공제금이 0원인지 확인 | ADMIN | [ADMIN] role | ADMIN 계정으로 [ADMIN] role 항목을 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/02-어드민-정산내역-ADMIN-negative-tax.png)<br>[실행 기록 1](artifacts/logs/02-어드민-정산내역-ADMIN-negative-tax.md) |
| 실험실 > 법인계좌관리V2에서 박재민 법인계좌와 박재민 선정산계좌를 분리해 2026년 8월 정산 전 월별 공제금 기준을 기록 | ADMIN | [ADMIN] role | ADMIN 계정으로 [ADMIN] role 항목을 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/03-어드민-법인계좌관리V2-ADMIN-account-separation.png)<br>[실행 기록 1](artifacts/logs/03-어드민-법인계좌관리V2-ADMIN-account-separation.md) |
| transfer_ve_gj로 비스킷페이에 로그인해 정산 완료 전 지갑 잔액과 정산예정금·정산대기금을 기록 | ADMIN | [ADMIN] role | ADMIN 계정으로 [ADMIN] role 항목을 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/04-스토어-지갑내역-VE-store-before.png)<br>[실행 기록 1](artifacts/logs/04-스토어-지갑내역-VE-store-before.md) |
| 준비된 일반·선정산 양수, 음수 취소, 음수 채권 6건을 지급·전산완료 처리 | ADMIN | [ADMIN] role | ADMIN 계정으로 [ADMIN] role 항목을 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/05-어드민-정산내역-ADMIN-settlement-payment.png)<br>[실행 기록 1](artifacts/logs/05-어드민-정산내역-ADMIN-settlement-payment.md) |
| 정산 완료 후 일반정산 월별 공제금이 대상 4건·33,456원, 선정산 월별 공제금이 대상 4건·12,391원 증가하고 음수 채권은 공제금 대상에서 제외되는지 확인 | ADMIN | [ADMIN] role | ADMIN 계정으로 [ADMIN] role 항목을 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/06-어드민-법인계좌관리V2-ADMIN-monthly-deduction-after.png)<br>[실행 기록 1](artifacts/logs/06-어드민-법인계좌관리V2-ADMIN-monthly-deduction-after.md) |
| 관리자 정산내역 재조회에서 6건이 완료 상태가 되고 공제 후 지급 금액이 일반 +315,393원/-78,849원, 선정산 +245,306원/-157,697원, 음수 채권 각 -10,000원인지 확인 | ADMIN | [ADMIN] role | ADMIN 계정으로 [ADMIN] role 항목을 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/07-어드민-정산내역-ADMIN-admin-after.png)<br>[실행 기록 1](artifacts/logs/07-어드민-정산내역-ADMIN-admin-after.md) |
| 비스킷페이 정산내역과 지갑내역에서 일반·선정산 대금지급 및 음수 금액이 각각 표시되는지 확인 | VE | [VE] role | VE 계정으로 [VE] role 항목을 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/08-스토어-정산내역-VE-store-after.png)<br>[실행 기록 1](artifacts/logs/08-스토어-정산내역-VE-store-after.md) |
| 정산 전후 가맹점 지갑 잔액 차이가 전체 대금지급 합계 +304,153원이고 음수 지급이 '-' 부호로 표시되는지 확인 | VE | [VE] role | VE 계정으로 [VE] role 항목을 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/09-스토어-지갑내역-VE-wallet-delta.png)<br>[실행 기록 1](artifacts/logs/09-스토어-지갑내역-VE-wallet-delta.md) |
| 관리자·가맹점 화면을 새로고침한 뒤 일반/선정산 공제금, 정산 금액, 지갑 잔액과 음수 이력이 동일하게 유지되는지 확인 | VE | [VE] role | VE 계정으로 비스킷 카드 정책 사용여부/강제적용 값을 변경, 저장 확인, 원복 후 새로고침 유지 여부를 확인 | 기대한 동작과 일치했습니다. | [스크린샷 1](artifacts/screenshots/10-스토어-지갑내역-VE-refresh-persist.png)<br>[실행 기록 1](artifacts/logs/10-스토어-지갑내역-VE-refresh-persist.md) |

## 실패 또는 확인 불가 상세

- 실패 또는 확인 불가 항목이 없습니다.

## 수동 재현 필요

- 수동 재현이 필요한 항목이 없습니다.

## 스크린샷

- ADMIN / [ADMIN] role / 관리자 정산내역에서 박재민_가맹의 2026년 8월 양수·음수 취소·음수 채권 정산과 일반/선정산 법인계좌가 준비되어 있는지 확인: [스크린샷 1](artifacts/screenshots/01-어드민-법인계좌관리V2-ADMIN-precondition.png)
- ADMIN / [ADMIN] role / 일반 양수 공제금 +44,607원, 일반 음수 취소 공제금 -11,151원, 선정산 양수 공제금 +34,694원, 선정산 음수 취소 공제금 -22,303원을 확인하고 거래 없는 음수 채권의 공제금이 0원인지 확인: [스크린샷 1](artifacts/screenshots/02-어드민-정산내역-ADMIN-negative-tax.png)
- ADMIN / [ADMIN] role / 실험실 > 법인계좌관리V2에서 박재민 법인계좌와 박재민 선정산계좌를 분리해 2026년 8월 정산 전 월별 공제금 기준을 기록: [스크린샷 1](artifacts/screenshots/03-어드민-법인계좌관리V2-ADMIN-account-separation.png)
- ADMIN / [ADMIN] role / transfer_ve_gj로 비스킷페이에 로그인해 정산 완료 전 지갑 잔액과 정산예정금·정산대기금을 기록: [스크린샷 1](artifacts/screenshots/04-스토어-지갑내역-VE-store-before.png)
- ADMIN / [ADMIN] role / 준비된 일반·선정산 양수, 음수 취소, 음수 채권 6건을 지급·전산완료 처리: [스크린샷 1](artifacts/screenshots/05-어드민-정산내역-ADMIN-settlement-payment.png)
- ADMIN / [ADMIN] role / 정산 완료 후 일반정산 월별 공제금이 대상 4건·33,456원, 선정산 월별 공제금이 대상 4건·12,391원 증가하고 음수 채권은 공제금 대상에서 제외되는지 확인: [스크린샷 1](artifacts/screenshots/06-어드민-법인계좌관리V2-ADMIN-monthly-deduction-after.png)
- ADMIN / [ADMIN] role / 관리자 정산내역 재조회에서 6건이 완료 상태가 되고 공제 후 지급 금액이 일반 +315,393원/-78,849원, 선정산 +245,306원/-157,697원, 음수 채권 각 -10,000원인지 확인: [스크린샷 1](artifacts/screenshots/07-어드민-정산내역-ADMIN-admin-after.png)
- VE / [VE] role / 비스킷페이 정산내역과 지갑내역에서 일반·선정산 대금지급 및 음수 금액이 각각 표시되는지 확인: [스크린샷 1](artifacts/screenshots/08-스토어-정산내역-VE-store-after.png)
- VE / [VE] role / 정산 전후 가맹점 지갑 잔액 차이가 전체 대금지급 합계 +304,153원이고 음수 지급이 '-' 부호로 표시되는지 확인: [스크린샷 1](artifacts/screenshots/09-스토어-지갑내역-VE-wallet-delta.png)
- VE / [VE] role / 관리자·가맹점 화면을 새로고침한 뒤 일반/선정산 공제금, 정산 금액, 지갑 잔액과 음수 이력이 동일하게 유지되는지 확인: [스크린샷 1](artifacts/screenshots/10-스토어-지갑내역-VE-refresh-persist.png)

## 화면 재현 기록

- 화면 재현 기록 자료가 없습니다.
- 화면 재현 기록은 기본적으로 실패/확인불가 항목에 한해 포함합니다. PASS 항목 trace까지 필요하면 `QA_PUBLISH_TRACE=1 npm run qa:report -- --issue <id> --env <env>`로 내부 제출용 산출물을 생성합니다.

## 실행 기록

- ADMIN / [ADMIN] role / 관리자 정산내역에서 박재민_가맹의 2026년 8월 양수·음수 취소·음수 채권 정산과 일반/선정산 법인계좌가 준비되어 있는지 확인: [실행 기록 1](artifacts/logs/01-어드민-법인계좌관리V2-ADMIN-precondition.md)
- ADMIN / [ADMIN] role / 일반 양수 공제금 +44,607원, 일반 음수 취소 공제금 -11,151원, 선정산 양수 공제금 +34,694원, 선정산 음수 취소 공제금 -22,303원을 확인하고 거래 없는 음수 채권의 공제금이 0원인지 확인: [실행 기록 1](artifacts/logs/02-어드민-정산내역-ADMIN-negative-tax.md)
- ADMIN / [ADMIN] role / 실험실 > 법인계좌관리V2에서 박재민 법인계좌와 박재민 선정산계좌를 분리해 2026년 8월 정산 전 월별 공제금 기준을 기록: [실행 기록 1](artifacts/logs/03-어드민-법인계좌관리V2-ADMIN-account-separation.md)
- ADMIN / [ADMIN] role / transfer_ve_gj로 비스킷페이에 로그인해 정산 완료 전 지갑 잔액과 정산예정금·정산대기금을 기록: [실행 기록 1](artifacts/logs/04-스토어-지갑내역-VE-store-before.md)
- ADMIN / [ADMIN] role / 준비된 일반·선정산 양수, 음수 취소, 음수 채권 6건을 지급·전산완료 처리: [실행 기록 1](artifacts/logs/05-어드민-정산내역-ADMIN-settlement-payment.md)
- ADMIN / [ADMIN] role / 정산 완료 후 일반정산 월별 공제금이 대상 4건·33,456원, 선정산 월별 공제금이 대상 4건·12,391원 증가하고 음수 채권은 공제금 대상에서 제외되는지 확인: [실행 기록 1](artifacts/logs/06-어드민-법인계좌관리V2-ADMIN-monthly-deduction-after.md)
- ADMIN / [ADMIN] role / 관리자 정산내역 재조회에서 6건이 완료 상태가 되고 공제 후 지급 금액이 일반 +315,393원/-78,849원, 선정산 +245,306원/-157,697원, 음수 채권 각 -10,000원인지 확인: [실행 기록 1](artifacts/logs/07-어드민-정산내역-ADMIN-admin-after.md)
- VE / [VE] role / 비스킷페이 정산내역과 지갑내역에서 일반·선정산 대금지급 및 음수 금액이 각각 표시되는지 확인: [실행 기록 1](artifacts/logs/08-스토어-정산내역-VE-store-after.md)
- VE / [VE] role / 정산 전후 가맹점 지갑 잔액 차이가 전체 대금지급 합계 +304,153원이고 음수 지급이 '-' 부호로 표시되는지 확인: [실행 기록 1](artifacts/logs/09-스토어-지갑내역-VE-wallet-delta.md)
- VE / [VE] role / 관리자·가맹점 화면을 새로고침한 뒤 일반/선정산 공제금, 정산 금액, 지갑 잔액과 음수 이력이 동일하게 유지되는지 확인: [실행 기록 1](artifacts/logs/10-스토어-지갑내역-VE-refresh-persist.md)

## 자동화 원본 결과

| Scenario | Status | Duration | Screenshot | 화면 재현 기록 | Log | Error |
|---|---:|---:|---|---|---|---|
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [ADMIN] role / 관리자 정산내역에서 박재민_가맹의 2026년 8월 양수·음수 취소·음수 채권 정산과 일반/선정산 법인계좌가 준비되어 있는지 확인 | PASS | 12627ms | [스크린샷 1](artifacts/screenshots/01-어드민-법인계좌관리V2-ADMIN-precondition.png) |  | [로그 1](artifacts/logs/01-어드민-법인계좌관리V2-ADMIN-precondition.md) |  |
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [ADMIN] role / 일반 양수 공제금 +44,607원, 일반 음수 취소 공제금 -11,151원, 선정산 양수 공제금 +34,694원, 선정산 음수 취소 공제금 -22,303원을 확인하고 거래 없는 음수 채권의 공제금이 0원인지 확인 | PASS | 11294ms | [스크린샷 1](artifacts/screenshots/02-어드민-정산내역-ADMIN-negative-tax.png) |  | [로그 1](artifacts/logs/02-어드민-정산내역-ADMIN-negative-tax.md) |  |
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [ADMIN] role / 실험실 > 법인계좌관리V2에서 박재민 법인계좌와 박재민 선정산계좌를 분리해 2026년 8월 정산 전 월별 공제금 기준을 기록 | PASS | 11413ms | [스크린샷 1](artifacts/screenshots/03-어드민-법인계좌관리V2-ADMIN-account-separation.png) |  | [로그 1](artifacts/logs/03-어드민-법인계좌관리V2-ADMIN-account-separation.md) |  |
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [ADMIN] role / transfer_ve_gj로 비스킷페이에 로그인해 정산 완료 전 지갑 잔액과 정산예정금·정산대기금을 기록 | PASS | 3547ms | [스크린샷 1](artifacts/screenshots/04-스토어-지갑내역-VE-store-before.png) |  | [로그 1](artifacts/logs/04-스토어-지갑내역-VE-store-before.md) |  |
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [ADMIN] role / 준비된 일반·선정산 양수, 음수 취소, 음수 채권 6건을 지급·전산완료 처리 | PASS | 11383ms | [스크린샷 1](artifacts/screenshots/05-어드민-정산내역-ADMIN-settlement-payment.png) |  | [로그 1](artifacts/logs/05-어드민-정산내역-ADMIN-settlement-payment.md) |  |
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [ADMIN] role / 정산 완료 후 일반정산 월별 공제금이 대상 4건·33,456원, 선정산 월별 공제금이 대상 4건·12,391원 증가하고 음수 채권은 공제금 대상에서 제외되는지 확인 | PASS | 11556ms | [스크린샷 1](artifacts/screenshots/06-어드민-법인계좌관리V2-ADMIN-monthly-deduction-after.png) |  | [로그 1](artifacts/logs/06-어드민-법인계좌관리V2-ADMIN-monthly-deduction-after.md) |  |
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [ADMIN] role / 관리자 정산내역 재조회에서 6건이 완료 상태가 되고 공제 후 지급 금액이 일반 +315,393원/-78,849원, 선정산 +245,306원/-157,697원, 음수 채권 각 -10,000원인지 확인 | PASS | 12447ms | [스크린샷 1](artifacts/screenshots/07-어드민-정산내역-ADMIN-admin-after.png) |  | [로그 1](artifacts/logs/07-어드민-정산내역-ADMIN-admin-after.md) |  |
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [VE] role / 비스킷페이 정산내역과 지갑내역에서 일반·선정산 대금지급 및 음수 금액이 각각 표시되는지 확인 | PASS | 3971ms | [스크린샷 1](artifacts/screenshots/08-스토어-정산내역-VE-store-after.png) |  | [로그 1](artifacts/logs/08-스토어-정산내역-VE-store-after.md) |  |
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [VE] role / 정산 전후 가맹점 지갑 잔액 차이가 전체 대금지급 합계 +304,153원이고 음수 지급이 '-' 부호로 표시되는지 확인 | PASS | 3776ms | [스크린샷 1](artifacts/screenshots/09-스토어-지갑내역-VE-wallet-delta.png) |  | [로그 1](artifacts/logs/09-스토어-지갑내역-VE-wallet-delta.md) |  |
| 3951/dev/negative-settlement-deduction.spec.ts / [3951][dev] 공제금 음수 처리 오류 수정 / [VE] role / 관리자·가맹점 화면을 새로고침한 뒤 일반/선정산 공제금, 정산 금액, 지갑 잔액과 음수 이력이 동일하게 유지되는지 확인 | PASS | 6602ms | [스크린샷 1](artifacts/screenshots/10-스토어-지갑내역-VE-refresh-persist.png) |  | [로그 1](artifacts/logs/10-스토어-지갑내역-VE-refresh-persist.md) |  |

## Notes

- Playwright 실행 결과를 기준으로 작성되었습니다.
- QA subissue에 report/evidence 업로드와 완료 상태 갱신이 반영되었습니다.
