Admin APIAdmin Campaign API
POST /ai/admin/campaigns/{campaignNo}/payment-verification
결제미완(PAYMENT_PENDING) 캠페인의 결제 완료 처리
결제 완료 처리 (결제미완 → 결제완료)
PAYMENT_PENDING (결제미완) 상태의 캠페인을 PAID (결제완료) 로 전환합니다.
결제 금액 / 결제 방식 / 결제 확인 담당자를 기록하고 임시 크레딧이 부여됩니다.
본 API 는 PATCH /ai/admin/campaigns/{campaignNo}/step 으로 paymentStatus=PAYMENT_PENDING 처리된 캠페인에만 호출 가능합니다.
HTTP 요청
POST /ai/admin/campaigns/{campaignNo}/payment-verification
Authorization: Bearer {access_token}
Content-Type: application/jsonPath Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
campaignNo | Long | 예 | 캠페인 번호 |
Request Body
| 필드 | 타입 | 필수 | 설명 |
|---|---|---|---|
amount | Long | 예 | 결제 금액 (양수) |
method | PaymentMethod | 예 | TAX_INVOICE (세금계산서) | CARD (카드) | OTHER (기타) |
methodMemo | String | 아니오 | method=OTHER 일 때 자유 메모 (그 외 값일 때 무시) |
verifierName | String | 예 | 결제 확인 담당자 이름 (자유 입력) |
요청 예시
{
"amount": 1500000,
"method": "TAX_INVOICE",
"verifierName": "홍길동"
}{
"amount": 500000,
"method": "OTHER",
"methodMemo": "현금 입금",
"verifierName": "홍길동"
}동작
- verification 행을 조회하여
paymentStatus == PAYMENT_PENDING인지 검증. CandyPaymentService.payCollabWithCreditByAdmin호출 → 임시 크레딧 부여 (잔액 부족 시 자동 충전 후 차감).- verification 행 업데이트:
paymentStatus=PAID,verifiedAt,verifiedAmount,verifiedMethod,verifiedMethodMemo(method=OTHER 일 때만),verifierName.
응답
성공 응답 (200 OK)
{
"status": 200,
"code": null,
"message": "결제 완료 처리가 완료되었습니다.",
"data": null
}에러 응답 - 결제미완 상태가 아님 (404)
{
"status": 404,
"code": "INVALID_DATA",
"message": "결제미완 상태가 아닙니다. 결제 완료 처리를 할 수 없습니다.",
"data": null
}{
"status": 404,
"code": "INVALID_DATA",
"message": "이미 결제 완료된 캠페인입니다.",
"data": null
}에러 응답 - 캠페인 없음 (404)
{
"status": 404,
"code": "INVALID_COLLAB",
"message": "존재하지 않는 캠페인입니다.",
"data": null
}