📖 Adit 서비스 가이드에 오신 것을 환영합니다!
💰 정산 가이드
정산 개요

정산 개요

Adit 캠페인의 정산 방식과 절차를 안내드립니다.


정산 시점

정산 레코드(Settlement)는 캠페인이 "업로드 완료(UPLOADED)" 상태가 되면 자동으로 생성됩니다.

이 시점에는 Settlement 1건만 생성됩니다(상태: SETTLEMENT_PENDING). 광고주 청구서(AdvertiserInvoice)와 Bolta 세금계산서 정발행은 이후 정산 요청/어드민 정발행 시점에 처리됩니다.


정산 방식

방식코드설명수수료원천징수
Adit 정산ADIT_SETTLEMENT대행사가 중개있음 (기본 20%)개인(INDIVIDUAL)만 3.3%
매체사 직정산DIRECT_INVOICE파트너↔광고주 직접없음 (0%)없음 (0%)

파트너 사업자 유형은 3가지입니다 — 법인사업자(CORPORATE_BUSINESS), 개인사업자(INDIVIDUAL_BUSINESS), 개인(INDIVIDUAL). 원천징수(3.3%)와 수수료 +10% VAT 보전은 개인(INDIVIDUAL)에만 적용됩니다. 개인사업자는 법인사업자와 동일하게 취급됩니다(세금계산서 발행 가능, 원천징수 없음). 자세한 내용은 수수료 체계·원천징수 참고.

⚠️

정산 유형 변경: 어드민이 정산 유형을 ADIT_SETTLEMENTDIRECT_INVOICE로 변경할 수 있습니다. 변경 시 수수료/원천징수가 재계산되며 정산 상태가 SETTLEMENT_PENDING으로 초기화됩니다.


Adit 정산 플로우

캠페인 업로드 완료 → 정산 요청 → 입금 → 지급 순서로 진행됩니다.

┌─────────────────────────────────────────────────────────────────┐
│                                                                 │
│  시스템                   대행사                   광고주      │
│                                                                 │
│  ⓪ 업로드 완료 시                                              │
│     → Settlement 자동 생성 (SETTLEMENT_PENDING)                │
│                                                                 │
│  파트너                                                        │
│                                                                 │
│  ① 정산 요청 ──────────→                                       │
│     (사업자=법인/개인사업자: Bolta 역발행 자동)                 │
│     (개인: 역발행 스킵)                                         │
│                                                                 │
│  ⑴ 어드민: Bolta 정발행 요청 (광고주 세금계산서, 수동)         │
│     → AdvertiserInvoice 생성·연결 ───────────────→              │
│                                                                 │
│                                          ② 입금 ──────────→    │
│                          ③ 입금 확인                            │
│                                                                 │
│  ④ 세금계산서 요청 ←────                                       │
│                                                                 │
│  ⑤ 세금계산서 발행 ──────→                                     │
│     (Bolta 역발행 or 직접)                                      │
│                                                                 │
│  ⑥ 정산금 수령 ←──────────                                     │
│     (원천징수 차감 후)                                          │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

단계별 상세

단계담당액션정산 상태
0시스템업로드 완료 → Settlement만 자동 생성SETTLEMENT_PENDING
1파트너정산 요청 (사업자: Bolta 역발행 자동 요청 / 개인: 스킵)AWAITING_ADVERTISER_PAYMENT
1-a어드민Bolta 정발행 요청(수동) → AdvertiserInvoice 생성·연결 + 광고주 세금계산서 발행-
2광고주입금-
3어드민입금 확인, 결제 확인ADVERTISER_PAID
4어드민파트너 지급 시작 (사업자: 세금계산서 수령 확인)PARTNER_PAYOUT_PROCESSING
5파트너세금계산서 발행 (개인은 불필요)-
6어드민정산금 송금, 완료 처리 (→ 캠페인 COMPLETED)SETTLEMENT_COMPLETED

정발행 시점: Bolta 정발행은 업로드 시 자동이 아니라, 어드민이 콘솔에서 수동 요청합니다(POST /api/admin/settlements/:id/retry-issuance, ADIT 정산 전용). AdvertiserInvoice가 없으면 이 시점에 자동 생성됩니다.


매체사 직정산 플로우

파트너가 광고주에게 직접 청구합니다.

┌─────────────────────────────────────────────────────────────────┐
│                                                                 │
│  파트너                                          광고주        │
│                                                                 │
│  ① 정산 요청 ──────────────────────────────────→               │
│     (계좌 정보 안내)                                            │
│                                                                 │
│  ② 세금계산서 발행 ────────────────────────────→               │
│                                                                 │
│                                          ③ 입금 ──────────→    │
│                                                                 │
│  ④ 입금 확인 처리                                              │
│     (파트너가 직접!)                                            │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

단계별 상세

단계담당액션정산 상태
1파트너정산 요청AWAITING_ADVERTISER_PAYMENT
2파트너광고주에게 세금계산서 발행-
3광고주파트너 계좌로 직접 입금-
4파트너입금 확인 처리SETTLEMENT_COMPLETED
🚫

매체사 직정산에서는 파트너가 직접 "입금 확인"을 해야 캠페인이 완료됩니다.


정산 상태

상태코드설명
🕐 정산 대기SETTLEMENT_PENDING파트너 정산 요청 전
📤 결제 대기AWAITING_ADVERTISER_PAYMENT정산 요청됨, 광고주 입금 대기
✅ 결제 완료ADVERTISER_PAID광고주 입금 확인됨 (ADIT 정산만)
🔄 지급 처리 중PARTNER_PAYOUT_PROCESSING파트너 지급 처리 중 (ADIT 정산만)
💰 정산 완료SETTLEMENT_COMPLETED정산 완료
❌ 정산 취소SETTLEMENT_CANCELLED정산 취소
SETTLEMENT_PENDING

       │ 파트너: 정산 요청

AWAITING_ADVERTISER_PAYMENT

       │ 어드민: 입금 확인

ADVERTISER_PAID

       │ 어드민: 지급 시작

PARTNER_PAYOUT_PROCESSING

       │ 어드민: 정산 완료

SETTLEMENT_COMPLETED

수수료 체계

수수료율 기본값

항목기본값설정 위치비고
Adit 정산 수수료20%파트너별 설정 (Partner.commissionRate)캠페인별 오버라이드 가능
직정산 수수료0% (고정)-변경 불가

수수료율 적용 우선순위 (ADIT 정산)

  1. 캠페인별 수수료 (Campaign.commissionRate) — 설정되어 있으면 최우선 적용
  2. 파트너별 수수료 (Partner.commissionRate) — 캠페인에 설정 안 된 경우
  3. 시스템 기본값 — 20%
⚠️

개인(INDIVIDUAL) 파트너 VAT 보전 (+10%)

개인(INDIVIDUAL) 파트너 + ADIT 정산인 경우, 위에서 정해진 수수료율에 +10%p가 가산됩니다. 개인은 세금계산서를 발행할 수 없어 Adit이 매입세액 공제를 받지 못하므로, 그 손실분(VAT)을 수수료로 보전합니다.

예: 기본 20% → 개인은 30% 적용. (법인사업자·개인사업자는 가산 없음)


원천징수

⚠️

원천징수는 개인(INDIVIDUAL) 파트너 + ADIT 정산(ADIT_SETTLEMENT)인 경우에만 적용됩니다. 개인사업자(INDIVIDUAL_BUSINESS)는 적용 대상이 아닙니다.

조건원천징수율적용 여부
개인(INDIVIDUAL) + ADIT 정산3.3% (소득세 3% + 지방소득세 0.3%)
개인사업자(INDIVIDUAL_BUSINESS) + ADIT 정산0%
법인사업자(CORPORATE_BUSINESS) + ADIT 정산0%
모든 유형 + 매체사 직정산0%

원천징수 계산 기준: 정산금(settlementAmount) 기준


정산금 계산

Adit 정산 (법인사업자)

수수료 = 캠페인 가격 × 수수료율
정산금 = 캠페인 가격 - 수수료
실지급액 = 정산금 (원천징수 없음)

예시 (100만원, 수수료 20%, 법인사업자):

항목금액
캠페인 가격1,000,000원
수수료 (20%)-200,000원
정산금800,000원
원천징수 (0%)0원
실지급액 (payoutAmount)800,000원

파트너가 세금계산서 발행 시: 공급가액 800,000원 + VAT 80,000원 = 880,000원

Adit 정산 (개인사업자)

개인사업자(INDIVIDUAL_BUSINESS)는 법인사업자와 동일합니다 — VAT 보전(+10%)·원천징수 모두 없음. 위 법인사업자 예시와 같습니다.

Adit 정산 (개인 · INDIVIDUAL)

개인은 ① 수수료율에 +10%p 가산(VAT 보전), ② 정산금에 3.3% 원천징수가 적용됩니다.

수수료율 = (캠페인/파트너 수수료율) + 10   ← VAT 보전
수수료 = 캠페인 가격 × 수수료율
정산금 = 캠페인 가격 - 수수료
원천징수 = 정산금 × 3.3%
실지급액 = 정산금 - 원천징수

예시 (100만원, 기본 수수료 20% → +10% = 30%, 개인):

항목금액
캠페인 가격1,000,000원
수수료 (20% + 10% = 30%)-300,000원
정산금700,000원
원천징수 (3.3%)-23,100원
실지급액 (payoutAmount)676,900원

개인은 세금계산서를 발행하지 않으므로 Bolta 역발행도 진행하지 않습니다(주민등록번호·통장 확인 후 원천징수 차감하여 지급).

매체사 직정산

수수료와 원천징수 모두 0%:

항목금액
캠페인 가격1,000,000원
수수료0원
정산금1,000,000원
원천징수0원
실지급액1,000,000원

파트너가 세금계산서 발행 시: 공급가액 1,000,000원 + VAT 100,000원 = 1,100,000원


3계층 정산 구조

계층모델설명
1계층Settlement캠페인 단위 정산 (1:1)
2계층-AAdvertiserInvoice광고주 청구서
2계층-BPartnerPayout파트너 지급 배치

Settlement 주요 필드

필드설명
campaignPrice캠페인 가격 (스냅샷)
commissionRate수수료율 (%)
commissionAmount수수료 금액
settlementAmount정산금 (= campaignPrice - commissionAmount)
withholdingTaxRate원천징수율 (%) — 개인+ADIT: 3.3%, 그 외: 0
withholdingTaxAmount원천징수 금액
payoutAmount실지급액 (= settlementAmount - withholdingTaxAmount)

청구/지급 유형

유형설명현재 상태
건별 (PER_CAMPAIGN)캠페인 1건 = 청구서/지급 1건✅ 지원
월별 (MONTHLY)여러 캠페인 합산추후 지원

Bolta 세금계산서 연동

역발행 (Adit 정산 · 사업자 = 법인사업자/개인사업자)

사업자 파트너(법인사업자 또는 개인사업자)의 정산 요청 시 Bolta API를 통한 역발행이 자동으로 요청됩니다. (조건: businessEntityType !== 'INDIVIDUAL' + ADIT 정산)

단계설명
1파트너가 정산 요청 → Bolta 역발행 자동 요청
2파트너에게 역발행 승인 URL 이메일 발송 (10분 유효)
3파트너가 승인 → 세금계산서 자동 발행

세금계산서는 파트너 명의로 발행되고, 공급받는자(수급자)는 정산 주체(Adit 또는 담당 대행사)가 됩니다.

개인 (INDIVIDUAL)

개인 파트너는 세금계산서를 발행할 수 없으므로 역발행을 스킵합니다. 대신 원천징수(3.3%)를 차감한 금액을 지급합니다.

정발행 (광고주 청구)

Adit 정산 시 광고주에게 발행하는 세금계산서는 어드민이 콘솔에서 수동으로 Bolta 정발행을 요청합니다(자동 아님). 정발행 요청 시 AdvertiserInvoice가 없으면 자동 생성됩니다.

단계설명
1어드민이 정발행 요청 (POST /api/admin/settlements/:id/retry-issuance, ADIT 전용)
2Bolta API 정발행 → 성공 시 세금계산서 번호/URL 저장
3실패 시 Slack 알림 + 어드민 재시도

정산 취소

상태취소 가능
SETTLEMENT_PENDING
AWAITING_ADVERTISER_PAYMENT
ADVERTISER_PAID
PARTNER_PAYOUT_PROCESSING
SETTLEMENT_COMPLETED
🚫

정산 완료 후에는 취소할 수 없습니다. 이미 송금이 완료된 상태입니다.


사용자별 가이드