Glowb Dev Docs
Main API결제 API

POST /ai/payments/credit/confirm

크레딧 충전 결제 승인

크레딧 충전 결제 승인

캠페인과 무관하게 기업 크레딧을 충전합니다.

이 API는 순수 크레딧 충전 전용입니다. 캠페인 결제는 /ai/payments/collab/confirm을 사용하세요.

항목
메서드POST
경로/ai/payments/credit/confirm
인증필요

크레딧 계산 방식

결제금액에서 실제 크레딧이 계산됩니다.

기본 공식: 크레딧 = 결제금액 / 1.1

크레딧 충전표

결제금액기본 크레딧보너스총 크레딧
55,000원50,000-50,000
110,000원100,000-100,000
330,000원300,000-300,000
550,000원500,000-500,000
1,100,000원1,000,000-1,000,000
2,200,000원2,000,000-2,000,000
3,300,000원3,000,000-3,000,000
5,500,000원5,000,000+25,0005,025,000
7,700,000원7,000,000+40,0007,040,000
11,000,000원10,000,000+100,00010,100,000

보너스 크레딧은 정확히 해당 금액(5,000,000 / 7,000,000 / 10,000,000 크레딧)일 때만 적용됩니다.

요청

POST /ai/payments/credit/confirm HTTP/1.1
Host: api.glowb.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...
Content-Type: application/json

{
  "paymentKey": "intent_1234567890123456",
  "orderId": "credit_20250105_001",
  "amount": 5500000
}
curl -X POST "https://api.glowb.com/ai/payments/credit/confirm" \
  -H "Authorization: Bearer {access_token}" \
  -H "Content-Type: application/json" \
  -d '{
    "paymentKey": "intent_1234567890123456",
    "orderId": "credit_20250105_001",
    "amount": 5500000
  }'
const response = await fetch('/ai/payments/credit/confirm', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${accessToken}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    paymentKey: 'intent_1234567890123456',
    orderId: 'credit_20250105_001',
    amount: 5500000  // 결제금액 (원)
  })
});
const result = await response.json();

Request Body 스키마

Prop

Type

응답

성공 응답 (200 OK)

{
  "status": 200,
  "code": null,
  "message": "크레딧 충전 성공",
  "data": {
    "intentKey": "intent_1234567890123456",
    "orderId": "credit_20250105_001",
    "orderName": "credit_20250105_001",
    "mId": 12345,
    "totalAmount": 5500000,
    "status": "APPROVED",
    "requestedAt": "2025-01-05T10:30:00",
    "approvedAt": "2025-01-05T10:30:01"
  }
}

위 예시에서 totalAmount: 5,500,000원 결제 시:

  • 기본 크레딧: 5,000,000
  • 보너스 크레딧: +25,000
  • 총 충전 크레딧: 5,025,000

응답 스키마

Prop

Type

에러 응답

상태 코드에러 코드설명
400INVALID_USER기업 정보를 찾을 수 없음
400PAYMENT_FAILED캔디페이 결제 승인 실패
500INTERNAL_SERVER_ERROR서버 오류
{
  "status": 400,
  "code": "INVALID_USER",
  "message": "기업 정보를 찾을 수 없습니다",
  "data": null
}

크레딧 충전 흐름

  1. 프론트엔드에서 CandyPay SDK로 결제 UI 호출
  2. 사용자가 결제 완료 후 paymentKey, orderId 반환
  3. 이 API 호출하여 결제 승인 + 크레딧 충전
  4. 결제금액 / 1.1 = 기본 크레딧 계산
  5. 보너스 크레딧 적용 (해당 시)
  6. TB_CANDY_PAYMENT에 결제 정보 저장
  7. TB_CREDIT_TRANSACTION에 충전 이력 저장
  8. TB_BUSINESS.remain_credit 잔액 증가

결제 실패 시 TB_CANDY_PAYMENT_FAILURE 테이블에 자동으로 실패 정보가 기록됩니다.

API 테스트

On this page