가입하면 프리미엄 플랜 할인할인 받기

블로그/developers·2026년 9월 13일·5분·eroq 팀 작성

크레딧 사용 내역 읽는 법: 모든 차감, 모든 환불

잔액을 한 줄씩 맞춰 보세요. 작업 행에 담긴 내용, 환불이 음수인 이유, 크레딧을 쓴 멤버나 키를 찾는 방법까지.


잔액이 계산한 것보다 180 적거나, 180 많아요. 어느 쪽이든 고객에게 말하기 전에 이유를 알고 싶겠죠. 요청 로그가 그 답을 주지만, 로그가 무엇을 기록하는지 알 때만 그래요. 요청 로그는 성공한 생성의 목록이 아니라 크레딧 이동의 장부이고, 둘은 같은 목록이 아니거든요.

이동 하나에 행 하나

크레딧이 움직일 때마다 행이 하나 기록돼요. 행에는 발생 시각, 작업, 모델 ID, 부호가 붙은 크레딧 양이 담기고, 요청 로그가 보여 주는 게 바로 이거예요. 개발자 대시보드의 요청 로그에서 볼 수 있어요.

작업은 여섯 가지이고, 그 열에서 보게 될 값은 이것뿐이에요.

  • chat: RP+ 또는 RP mini의 응답 1회. 비전을 쓸 때 첨부 이미지 1장당 추가되는 2크레딧도 포함돼요.
  • image: 이미지 생성 호출 1회. 4장 배치는 네 행이 아니라 한 행이에요.
  • video: 대기열에 들어간 클립 하나.
  • speech: 텍스트 음성 변환 호출 1회. 100자 블록 단위로, 시작된 블록마다 과금돼요.
  • transcription: 음성 텍스트 변환 호출 1회. 오디오가 시작된 1분마다 과금돼요(측정된 길이는 행의 세부 정보에 있어요).
  • storage: eroq Store 업로드. 시작된 10 MB마다 2 크레딧이에요.

로그는 워크스페이스 단위라서 팀원들의 호출도 들어 있고, 최근 30일을 50행씩 페이지로 보여 줘요. 모델 열에는 공개 모델 ID(eroq-image-anime, seedance-2-5, eroq-voice-turbo)가 표시되는데, 요청에 넣은 문자열과 같아서 각 행을 내 로그의 특정 호출까지 추적할 수 있어요.

결과가 나올 때가 아니라 요청할 때 차감돼요

헷갈리는 장부 대부분을 설명해 주는 규칙이 있어요. 크레딧은 엔진이 돌기 전에 차감되고, 절대 나중에 차감되지 않아요. 성공했을 때만 과금하는 게 더 공정해 보이지만, 실제로는 구현할 수 없어요. 그렇게 하면 스트리밍 도중에 연결을 끊는 클라이언트가 매번 공짜로 생성을 가져갈 테니까요.

그래서 차감 행은 요청이 접수되는 순간 생겨요. 동영상 클립은 파일이 도착할 때가 아니라 작업이 대기열에 들어갈 때 차감돼요. 이미지 4장 배치는 첫 픽셀이 그려지기 전에 40 크레딧이 차감돼요. 이게 공정한 이유는 규칙의 나머지 절반 덕분이에요. 실패하면 크레딧을 돌려받아요.

음수 행은 환불이에요

환불은 음수 금액을 가진 두 번째 행으로 기록되고, 표에서는 환불 태그가 붙고 플러스 기호로 표시돼요. 장부에서 환불은 내게 돌아오는 돈이니까요.

환불은 자동이고, 생성이 결과를 내지 못하는 모든 경우를 다뤄요. 아무것도 돌려주지 않은 엔진, 엔진이 차단한 프롬프트, 10분 마감이 지나도 끝나지 않은 동영상 작업, 토큰을 하나도 내보내기 전에 끊긴 채팅 스트림, 차감된 뒤 실패한 업로드까지요. 따로 청구할 것도, 지원 티켓을 열 필요도 없어요.

금액을 보면 무엇이 실패했는지 알 수 있어요. 동영상 환불은 항상 클립 가격 전액이에요. 클립은 오거나 안 오거나 둘 중 하나니까요. 이미지 환불은 실패한 테이크 하나당 한 단위(10 크레딧)예요. 그래서 4장 배치에서 두 장이 실패하면 40 크레딧 차감 하나와 10 크레딧 환불 두 개가 따로 보여요. 이 비대칭이 진단의 전부예요. 이미지 행에 부분 환불이 있다면 배치 일부가 빈손으로 돌아왔다는 뜻이에요.

잔액 맞춰 보기: 실제 예시

하루를 5,000 크레딧으로 시작한 워크스페이스에서, 어느 세션이 최신순으로 이렇게 보인다고 해 볼게요.

video   seedance-2-5      +310   (refund)
video   seedance-2-5      −310
image   eroq-image-one     +10   (refund)
image   eroq-image-one     −40
video   eroq-motion-one   −60

아래에서 위로 읽으세요. 5초짜리 Motion One 클립은 60 크레딧이 들었고 결과가 나왔어요. 이미지 4장 배치는 40 크레딧이 들었는데, 테이크 하나가 빈손으로 돌아와 10 크레딧이 환불됐으니 이미지 세 장에 30 크레딧이 든 셈이에요. 5초짜리 Seedance 2.5 클립은 310 크레딧이 차감됐다가 310 크레딧이 환불됐어요. 결과가 나오지 않았고, 비용도 들지 않았어요.

순 이동량은 90 크레딧이고, 잔액은 4,910 크레딧이에요. 다섯 행, 결과물 세 개, 공짜 실패 하나. 여기서 두 가지를 알 수 있어요. 첫째, 일별 차트의 합계는 환불을 뺀 순액이라서, 차트에 보이는 숫자가 실제로 쓴 금액이에요. 둘째, 요청 카운터는 양수 행, 즉 차감 행만 세요. 환불은 요청이 아니니까요. 그래서 실패가 있었던 날에는 요청 수와 행 수가 달라요.

누가 썼는지 찾기

로그는 사용액을 사람별로 나누지 않아요. 그 일은 워크스페이스의 멤버 탭이 해요. 멤버 행마다 이번 달(달력 기준)에 쓴 크레딧이 환불을 뺀 순액으로, 0 아래로는 내려가지 않게 표시돼요.

멤버별 월 한도도 이 열을 기준으로 측정되고, 순액으로 계산하는 건 의도된 거예요. 렌더가 실패해 자동 환불된 외주 작업자는 자기 한도를 하나도 쓰지 않은 거니까요. 한도는 매달 1일에 초기화되고, 관리자는 누구의 역할도 건드리지 않고 한도를 올릴 수 있어요.

키별 사용액도 별도의 열이 아니라 같은 열로 집계돼요. 장부의 모든 행에는 호출한 API 키가 기록되고(스튜디오 호출은 브라우저 세션이라 키가 아니어서 기록되지 않아요), 키는 정확히 한 멤버에게 속하며 그 멤버의 역할을 물려받아요. 그러니까 멤버별 사용액은 키 소유자별로 합산한 키별 사용액이에요. 깔끔하게 나눠 보고 싶다면 연동마다 별도의 멤버 시트를 주세요. 단계별로 무엇을 할 수 있는지는 워크스페이스 역할과 권한에서 다뤄요.

API가 보여 주는 범위는 더 좁아요

GET /v1/account는 잔액과 30일 요약을 돌려줘요.

{
  "object": "account",
  "credits": 4870,
  "usage_30d": { "requests": 213, "credits": 9614 }
}

많은 사람이 오후 한나절을 날리는 함정이 하나 있어요. 이 엔드포인트는 키를 가진 계정 단위이고, 대시보드 로그는 워크스페이스 단위예요. 혼자 쓰는 워크스페이스에서는 둘이 일치해요. 공유 워크스페이스에서는 일치하지 않아요. 내 키의 usage_30d에는 팀원들이 같은 지갑에서 쓴 금액이 전부 빠져 있어요. credits는 모두가 함께 쓰는 공유 잔액인데도요. 워크스페이스 전체 합계는 대시보드에서, "이 키의 소유자가 무엇을 했는지"는 /v1/account에서 확인하세요.

usage_30d.credits도 환불을 뺀 순액이고, requests는 차트와 똑같이 차감만 세요.

예상하지 못한 행들

"이 줄은 뭐죠?"라는 질문 대부분은 두 가지 패턴에서 나와요.

생성 옆에 붙은 storage 행. store: true를 넘기면 결과물이 eroq Store에 저장되고 CDN URL이 돌아오는데, 시작된 10 MB마다 2 크레딧이 추가로 과금돼요. 이게 모델이 eroq-store인 두 번째 행이고, 그래서 10 크레딧짜리 이미지가 가끔 12 크레딧으로 보이는 거예요. 렌더를 라이브러리에 저장하는 건 무료이고 행도 전혀 기록되지 않아요. 행을 남기는 건 Store뿐이에요.

대화 하나에 여러 개의 chat 행. 채팅은 응답마다 과금되니, 12턴짜리 장면은 RP+에서 3 크레딧짜리 행 12개예요. 이런 형태의 사용량에 가격을 매기는 방법은 AI API의 크레딧 가격 책정에서, 팀 지갑에 관해서는 팀에서 AI 크레딧 관리하기에서 더 자세히 다뤄요.

요청 로그를 열고 지난 세션을 맞춰 보세요. 어떤 행이 환불인지 알고 나면 1분 정도면 돼요.

자주 묻는 질문

렌더가 끝나기 전에 잔액이 줄어드는 이유는 뭔가요?

크레딧은 결과가 나올 때가 아니라 작업이 접수될 때 차감되기 때문이에요. 중간에 버려진 요청이 공짜로 생성을 가져가는 걸 막는 유일한 방법이에요. 렌더가 실패하거나, 시간이 초과되거나, 차단되면 환불 행이 자동으로 크레딧을 돌려놓아요. 어느 쪽이든 잔액은 맞는 자리에서 끝나요.

크레딧 열의 음수는 무슨 뜻인가요?

워크스페이스 지갑으로 돌아오는 환불이에요. 그래서 표에서 그 행에 태그를 붙이고 플러스 기호로 보여 줘요. 모든 환불에는 되돌리는 작업과 모델이 적혀 있어서, 위쪽의 차감 행과 짝지어 볼 수 있어요. 차단된 프롬프트, 실패한 렌더, 마감을 넘긴 작업은 모두 환불 행을 만들어요.

대시보드 합계가 내 API 키가 보고하는 값과 다른 이유는 뭔가요?

대시보드 로그는 워크스페이스 전체를 다루고, GET /v1/account는 키를 소유한 계정만 다뤄요. 지갑을 공유한다면 키의 30일 수치가 워크스페이스 수치보다 낮게 나와요. 팀원들의 사용액은 내 계정에 집계되지 않으니까요. credits 잔액은 공유되므로 이 값은 항상 일치해요.

요청 로그는 얼마나 이전까지 볼 수 있나요?

30일이고, 한 번에 50행씩 불러와요. 일별 차트도 같은 기간을 다루니, 더 긴 기록이 필요하다면 기간이 지나기 전에 필요한 걸 내보내 두세요. 워크스페이스 멤버 탭의 멤버별 월 사용액은 이번 달(달력 기준)로 계산되니, 이건 또 다른 기간이에요.

태그creditsusagebillingworkspacesapi

이 글에 나온 모델로 직접 만들어 보세요 — 무료 크레딧 50개로 시작하거나, 모든 엔진과 가격도 살펴보세요.