SaaS API세금계산서
세금계산서 청구 요청
광고주가 캠페인 크레딧 결제 전 세금계산서(청구) 발행을 요청합니다.
세금계산서 청구 요청
광고주가 캠페인 크레딧 결제 전 세금계산서를 청구하면 글로브가 정발행으로 청구 세금계산서를 발행합니다. 발행은 비동기 처리되며, 약 10분 내 webhook으로 결과를 받아 ISSUED 전환 + Slack 알림이 발송됩니다. 광고주는 응답의 taxInvoiceUrl (볼타 조회 페이지) 에서 사업자번호를 입력해 PDF 출력/저장 가능.
인증 토큰의
business_account_id가 자동으로 invoice 에 매핑되어, 본인만 목록 / 단건 조회 가능. 수정/취소는 광고주 권한 없음 (운영자 admin endpoint 사용).
HTTP 요청
POST /ai/business/tax-invoice/request
Authorization: Bearer {access_token}
Content-Type: application/jsonRequest Body
| 필드 | 타입 | 필수 | 설명 |
|---|---|---|---|
businessNumber | String | 예 | 광고주 사업자등록번호 10자리만 허용. 주민등록번호(13자리) 발행 미지원. |
businessName | String | 예 | 광고주 상호 |
representative | String | 예 | 대표자명 |
address | String | 아니오 | 사업장 주소 |
businessType | String | 아니오 | 업태 (예: 정보통신업) |
businessItem | String | 아니오 | 업종/종목 (예: 온라인 광고) |
managerEmail | String | 예 | 받는쪽 담당자 이메일 |
referenceEmail | String | 아니오 | 참조 이메일. 담당자 외 1인 추가 수신. 입력 시 담당자 + 참조 2인에게 세금계산서 메일 발송 (볼타 받는 측 담당자 최대 2명). 미입력 시 담당자 1인만 발송. |
supplyAmount | Long | 예 | 공급가액(세전, 10원 단위만 허용 — 부가세 1원 미만 절사 방지). 부가세 자동 10% 가산. |
본 endpoint 는 청구(CLAIM) 전용. 영수(RECEIPT) 는 크레딧 충전 완료 후 진입하는 별도 endpoint 로 분리 예정.
프론트는 발행 form 진입 시
GET /ai/business/tax-invoice/issuer-info로 광고주 본인 사업자 정보(주소 포함) 를 미리 채우고, 광고주가 수정 가능하게 노출. 업태/업종은 본 dto 에서만 직접 입력 (Business 에 미저장). 미입력 시null로 발행 (볼타가 허용).
품목 정보 (자동 생성)
발행되는 세금계산서의 품목은 백엔드가 자동 생성. dto 에 입력 불필요.
| 항목 | 값 |
|---|---|
| 품목명 | Glow.B 크래딧 {만원단위} — 예: supplyAmount=5000000 → Glow.B 크래딧 500. 만원 미만은 Glow.B 크래딧 |
| 규격 | EA 자동 |
| 수량 | 1 자동 |
| 단가 | supplyAmount |
| 작성일자 | 발행 당일 (LocalDate.now()) 자동 |
성공 응답 (200 OK)
{
"status": 200,
"code": null,
"message": "세금계산서 발행 접수",
"data": {
"id": 12345,
"status": "REQUESTED",
"supplyAmount": 1000000,
"vatAmount": 100000,
"totalAmount": 1100000,
"taxInvoiceUrl": null,
"businessNumber": "1234567890",
"managerEmail": "manager@company.com",
"referenceEmail": "reference@company.com"
}
}흐름
- 광고주 캠페인 크레딧 충전 결제 직전 청구 요청 → DB
PENDING저장 - 볼타 정발행 API 호출 →
REQUESTED(issuanceKey 받음) → Slack 알림 (📋 청구 접수) - 약 10분 후 볼타 webhook →
ISSUED또는FAILED - ISSUED 시
taxInvoiceUrl채움 → Slack 알림 (✅ 발행 완료+ 사업자번호 함께 표시) - FAILED 시 → Slack 알림 (
❌ 발행 실패+ 에러 원인) - 광고주는
taxInvoiceUrl클릭 → 볼타 조회 페이지에서 사업자번호 입력 → PDF 출력/저장
Slack 알림 채널
| 환경 | 채널 |
|---|---|
| 테스트 | #saas-test-기업-캠페인 |
| 운영 | #결제-정산-알리미 |
발송자: Glowb bot (chat.postMessage). 채널마다 봇 초대 필수.