Glowb Dev Docs
Admin APIAdmin Finance API

Admin Finance API

기업/캠페인 단위 크레딧·예산·결제 통합 관리 API

Admin Finance API

관리자가 기업·캠페인 단위로 크레딧 잔액, 캠페인 예산(LOCK 금액), 카드결제를 통합 조회하고 어드민 권한으로 크레딧/예산을 조정할 수 있는 API입니다.

Base URL: /ai/admin/finance

이 API는 관리자 권한이 필요합니다. (현재 게이트 미적용 — Phase 추가 시 보완 예정)

모델 개요

개념저장 위치설명
글로벌 크레딧Business.remainCredit기업 단위 잔액
글로벌 거래 이력CreditTransaction WHERE collab_no IS NULL기업 단위 거래 (결제 충전 / 관리자 충전·차감 등)
캠페인 거래 이력CreditTransaction WHERE collab_no IS NOT NULL캠페인 단위 거래 (캠페인 입금 / 환급 / BUDGET_ADJUST audit)
캠페인 LOCK 예산CampaignBudget크리에이터 제안별 LOCK 금액 (status=LOCKED/UNLOCKED)

엔드포인트 목록

조회

메서드경로설명
GET/ai/admin/finance/search?q={keyword}기업·캠페인 통합 검색 (각 max 20)
GET/ai/admin/finance/business/{businessAccountId}기업 상세 (요약 + 캠페인 리스트 + 글로벌 타임라인)
GET/ai/admin/finance/collab/{collabNo}캠페인 상세 (요약 + CreditTransaction + lock/unlock 통합 타임라인)

변경 (ledger 패턴)

메서드경로설명
POST/ai/admin/finance/collab/{collabNo}/credit기업 잔액 → 캠페인 입금
PUT/ai/admin/finance/credit-tx/{txId}크레딧 트랜잭션 수정 (reverse + 새 행)
DELETE/ai/admin/finance/credit-tx/{txId}크레딧 트랜잭션 삭제 (reverse only)
PATCH/ai/admin/finance/budget/{budgetId}/amountLOCK 예산 금액 수정 (audit row 생성)

Ledger 규약

수정/삭제는 원본을 변경하지 않고 reverse 행을 추가합니다.

  • 원본 CreditTransaction(id=X, amount=A) 를 삭제하면:
    • 새 행 CreditTransaction(transactionType=동일, amount=-A, reverseOfTxId=X) 추가
    • BUDGET_ADJUST 가 아니면 Business.remainCredit 도 같이 보정
  • 수정은 위 reverse + 새 본 행 = 두 row 추가 (트랜잭션 1개로 묶임)
  • 이미 reverse 된 원본 또는 reverse 행 자체 는 재수정·재삭제 불가 (IllegalStateException)
  • UI 에서는 reversed=true 인 row 를 strike-through 처리

CreditTransactionReason (어드민 수동 거래 사유)

라벨
META_AD_FEE메타/페북 광고비
GUIDELINE_ADDITIONAL가이드라인 추가금
RESHOOT_ADDITIONAL재촬영/제작 요청 추가금
ETC기타 (memo 필수)

시스템 자동 거래(결제 충전·캠페인 자동 입금 등)는 reason=null 로 남습니다.

CreditTransactionType ↔ Timeline Type 매핑

CreditTransactionTypeTimeline Type비고
PAYMENT (with candyPaymentId)CARD_PAYMENT카드결제 충전
PAYMENT (no candyPaymentId)CREDIT_ADD시스템 충전
REFUNDCARD_REFUND
CREDIT_ADDCREDIT_ADD관리자 추가
CREDIT_DEDUCTCREDIT_DEDUCT관리자 차감
CREDIT_USECREDIT_USE일반 사용
CAMPAIGN_DEPOSITCAMPAIGN_DEPOSIT캠페인 입금
CAMPAIGN_REFUNDCAMPAIGN_REFUND캠페인 환급
CAMPAIGN_LOCKBUDGET_LOCK(현재 미사용)
CAMPAIGN_UNLOCKBUDGET_UNLOCK(현재 미사용)
BUDGET_ADJUSTBUDGET_ADJUSTLOCK 금액 수정 audit

CampaignBudget 의 LOCK/UNLOCK 은 entity 그대로(createdAt, updatedAt) timeline 에 합쳐집니다.

On this page