01.software 문서

워크스페이스 설정

소유자, 팀 접근, 결제 상태, 운영 책임을 정리합니다.

워크스페이스를 새로 만들거나, 소유권을 넘겨받거나, 팀에 운영을 인계할 때 이 페이지를 사용합니다.

이 페이지는 Console과 Admin Panel을 사용하는 운영자를 위한 시작점입니다. 앱 구현은 빠른 시작과 도메인 작업 가이드에서 시작합니다. 작업 가이드를 완료하면 해당 앱 작업만 확인되므로, 출시 전에는 출시 준비 점검의 운영 확인도 실행합니다.

변경 전에 Console의 활성 워크스페이스를 확인합니다. 한 워크스페이스의 역할로 다른 워크스페이스에 접근할 수 없으며, 워크스페이스 이름·쿠키·헤더가 멤버십을 부여하지 않습니다.

워크스페이스 접근·임베디드 관리·알림 및 발신 이메일·발신 도메인·마켓 설정을 저장하려면 대상 워크스페이스를 먼저 선택해야 합니다. 선택이 없거나 저장 대상과 다르면 서버가 저장을 거부합니다. 두 워크스페이스의 관리자이거나 플랫폼 관리자여도 같은 규칙이 적용됩니다. 워크스페이스를 다시 선택하고 설정을 확인한 뒤 저장하세요.

설정 단계

워크스페이스 식별 정보 확인

명확한 워크스페이스 이름을 사용하고, 소유자를 확인하며, 이후 관리자가 이해할 수 있도록 목적을 짧게 남깁니다.

관리자 접근 배정

초기 tenant-admin 사용자를 추가하고, 임시 접근을 제거하며, 출시 전에는 신뢰할 수 있는 관리자를 최소 두 명 둡니다.

결제 상태 확인

고객 대상 작업을 시작하기 전에 활성 플랜과 주의가 필요한 구독 상태가 있는지 확인합니다.

정액 플랜의 다운그레이드를 예약했다면 결제 화면의 예약 취소를 눌러 현재 플랜을 유지할 수 있습니다. 현재 결제 기간과 예약 적용 시점이 끝나기 전에 취소해야 하며, 취소 자체로 결제나 환불이 발생하지 않습니다.

사용량 기반 요금에서는 최종 청구 예정 금액이 1–99원인 경우 해당 금액을 면제하여 0원으로 안내합니다. 산출 내역은 청구서에 보존되며, 이미 안내된 청구서는 자동으로 변경하지 않습니다.

Enterprise 사용량 요금의 등록, 계산, 청구서 확인은 아래 Enterprise 사용량 요금을 참고합니다.

운영 담당자 기록

팀이 일상 운영을 시작하기 전에 콘텐츠, 커머스, 지원, 모더레이션, 결제, 연동 담당자를 지정합니다.

브랜딩

Console의 설정 → 사이트·브랜딩 → 브랜딩, SEO, 사업자 정보에서 로고와 사업자 정보를 입력합니다. 입력한 값은 다음 위치에 쓰입니다.

위치사용하는 값
Console 사이드바 상단로고(없으면 로고마크), 다크 모드 로고
고객 알림 메일(주문·배송·반품·이벤트)로고, 상호, 입력된 사업자 정보. 발신자 표시 이름을 비워 두면 워크스페이스 이름으로 보냅니다.
고객 로그인 코드·비밀번호 재설정 메일로고, 상호
고객 로그인 화면(호스티드 로그인)OAuth 클라이언트의 로고 URL. 비어 있으면 워크스페이스 로고와 다크 모드 로고

상호는 사업자 정보의 상호, 사이트 제목, 워크스페이스 이름 순서로 정해집니다. 메일에는 SVG 로고가 표시되지 않으며, 고객 로그인 화면은 01 SOFTWARE 미디어 CDN에 있는 로고만 표시합니다.

Console 로그인·비밀번호 재설정·MFA처럼 워크스페이스를 고르기 전의 운영자 화면은 01 SOFTWARE로 표시됩니다. 고객 로그인 화면은 고객의 언어 설정에 따라 한국어 또는 영어로 표시됩니다.

소셜 로그인 앱 자격증명

워크스페이스 관리자는 설정 → 연동 → 소셜 로그인 자격증명에서 Google·Kakao·Naver 앱의 자격증명을 제공자별로 등록합니다.

  1. 로그인 제공자를 선택하고 해당 앱의 Client ID와 Client secret 입력·교체를 입력합니다.
  2. 화면에 표시된 제공자 앱에 등록할 콜백 URL을 앱 설정에 그대로 등록합니다. 경로는 /customer-oauth/social/{provider}/callback이며 고객 로그인 주소를 기준으로 합니다.
  3. 저장합니다. secret은 다시 표시하거나 조회할 수 없습니다.

같은 앱의 secret을 교체하려면 새 secret을 입력하고 저장하세요. 빈 입력은 기존 값을 유지합니다. 폐기하려면 저장된 secret 폐기를 선택하고 저장합니다. 교체와 폐기는 한 번에 함께 할 수 없습니다. 폐기해도 Client ID는 남습니다. 다시 등록하려면 같은 앱의 secret을 입력하세요. 연결된 고객이 있으면 Client ID를 바꿀 수 없으며, 정지·보관된 고객도 포함합니다. 설정 삭제로 이 제한을 우회할 수 없습니다. 연결된 고객이 없어 앱을 바꿀 때는 secret도 교체하거나 폐기해야 합니다.

Live 로그인은 워크스페이스 자체 앱만 사용합니다. 저장된 secret이 없거나 폐기하면 해당 제공자는 표시되지 않고 새 로그인도 거부됩니다. OAuth 클라이언트에서도 Google 또는 Kakao를 활성화해야 합니다. 자격증명 없이 활성 선택을 저장할 수 있지만 미완료입니다. Sandbox는 플랫폼 공용 개발 앱을 사용하고 Live 자격증명을 사용하지 않습니다. Sandbox 설정 적용은 자격증명을 Live로 복사하지 않습니다. secret을 교체하면 이전 설정으로 시작한 로그인은 거부되므로 다시 시작하세요. 이전에 저장한 Kakao 활성값은 자격증명이 준비되면 적용됩니다. Naver 로그인은 아직 제공하지 않습니다.

Google 로그인 설정

  1. Google Cloud / Google Auth Platform에서 워크스페이스의 프로젝트를 만들거나 선택합니다. 서비스의 브랜딩·대상·데이터 액세스와 지원 연락처를 설정합니다.
  2. 웹 애플리케이션 유형의 OAuth 클라이언트를 만듭니다. 승인된 리디렉션 URI에 Console이 표시하는 Google 콜백을 정확히 등록합니다. 일반적으로 https://01.software/customer-oauth/social/google/callback이며 staging은 별도 issuer를 씁니다. 이는 제공자 콜백입니다. 고객사 사이트의 리디렉션 URI는 고객 OAuth 클라이언트에 등록합니다.
  3. Google Client ID와 secret을 소셜 로그인 자격증명에 입력하고 저장한 뒤, 워크스페이스의 고객 OAuth 클라이언트에서 Google을 활성화합니다.
  4. Google 앱이 테스트 상태라면 테스트 사용자를 추가하세요. 운영 사용은 Google의 현재 게시·검증 요건을 충족해야 합니다.

Google에는 openid email profile을 요청합니다. 비어 있지 않은 검증된 이메일이 필수입니다. 고객에 저장하는 값은 이메일·이름·제공자 식별자이며, 전화번호·생년월일·성별· 프로필 사진은 저장하지 않습니다. 앱에서 요청하는 범위와 실제 저장 항목은 다르며 범위 선택 UI는 없습니다.

동의 화면의 앱 이름 표시에는 Google의 브랜드 승인이 필요합니다. Google은 콜백 도메인의 소유 확인을 요구할 수 있습니다. 호스티드 콜백은 01 SOFTWARE의 도메인이므로 워크스페이스가 이 확인을 완료하지 못할 수 있습니다. 미승인 앱에는 도메인이나 미검증 앱 안내가 표시될 수 있습니다. 앱 등록·게시·심사와 브랜드 승인은 워크스페이스가 맡습니다.

Google OAuth 설정과 Google 브랜드 검증.

Kakao 로그인 설정

  1. Kakao Developers에서 워크스페이스 서비스의 앱을 만듭니다. 앱 아이콘을 등록한 뒤 앱 소유자가 앱 → 일반 → 비즈니스 정보 → 사업자 정보 등록에서 사업자 정보를 입력해 비즈 앱으로 전환합니다. 사업자등록번호가 없다면 같은 메뉴의 개인 개발자 비즈 앱 절차를 확인하세요. 앱 등록과 추가 동의항목 권한 심사는 워크스페이스가 맡습니다.
  2. 카카오 로그인 → 사용 설정과 OpenID Connect를 켭니다. 동의항목에서 카카오계정(이메일)(account_email)을 필수 동의로, 닉네임(profile_nickname)을 선택 동의로 설정합니다. 이메일 필수 동의를 설정할 수 없다면 비즈 앱 전환 완료를 확인하세요.
  3. 앱 → 플랫폼 키 → REST API 키에서 Console이 표시하는 Kakao 콜백을 리다이렉트 URI로 정확히 등록합니다. 일반적으로 https://01.software/customer-oauth/social/kakao/callback이며 staging은 별도 issuer를 씁니다. 고객사 사이트의 리디렉션 URI는 고객 OAuth 클라이언트에 별도로 등록합니다.
  4. 같은 REST API 키의 클라이언트 시크릿을 활성화합니다. Console의 소셜 로그인 자격증명에서 Kakao를 선택하고 Client ID에 REST API 키, Client secret 입력·교체에 클라이언트 시크릿을 저장합니다. 어드민 키나 JavaScript 키를 입력하지 마세요.
  5. 고객 OAuth 클라이언트에서 Kakao를 활성화합니다. Live는 이 앱으로 로그인하고, Sandbox는 플랫폼 공용 개발 앱이 구성되어 있을 때 해당 앱으로 시험합니다.

로그인 요청은 scope를 생략해 앱의 동의항목 설정을 따릅니다. OIDC가 켜져 있으면 ID 토큰도 발급됩니다. OIDC가 꺼져 있으면 ID 토큰이 발급되지 않아 로그인에 실패합니다.

이메일은 필수로 유지하고 닉네임은 선택 동의 또는 사용 안 함으로 설정할 수 있습니다. 닉네임을 거절해도 재로그인할 수 있습니다.

이메일이 없거나 인증되지 않은 계정은 고객을 생성하지 않습니다. 고객사 리디렉션에 이메일이 없으면 error=provider_missing_claims, 미인증이면 error=provider_email_unverified를 붙입니다. 이메일 필수 동의 설정을 확인하고 Kakao Account의 이메일을 인증하거나 다른 로그인 방법을 사용하세요.

고객에 저장하는 제공자 정보는 이메일, 닉네임, 제공자 식별자뿐입니다. 전화번호, 생년월일, 성별, 프로필 사진은 저장하지 않습니다.

이 연동에서는 다른 동의항목을 사용 안 함으로 유지하세요. 다른 동의항목을 켜두면 해당 항목도 Kakao 동의 화면에 표시되며, 고객이 동의하면 해당 정보 제공도 동의 범위에 포함됩니다. 저장하는 항목은 같습니다. 동의 화면에 표시되는 항목과 이 연동에서 실제 저장하는 항목을 모두 서비스의 개인정보 처리방침에 반영하세요.

기존 서비스 앱을 재사용했거나 이메일을 선택 동의에서 필수 동의로 바꾼 경우, 먼저 앱의 이메일 필수 동의 설정을 확인하세요. 고객은 다시 로그인해 이메일 제공에 동의하면 됩니다. 선택 동의를 필수로 바꾸면 아직 동의하지 않은 고객에게 다음 로그인 때 해당 동의 화면이 자동으로 표시됩니다. provider_missing_claims가 반복되면 앱의 OIDC 활성화와 이메일 필수 동의 설정부터 확인하세요.

Kakao 로그인 설정, 비즈 앱 및 동의항목 권한, OIDC와 동의항목, 기존 사용자의 추가 동의, 필수 동의 변경에 대한 Kakao 운영진 답변.

Enterprise 사용량 요금

Enterprise는 셀프서비스 요금제가 아니라 워크스페이스별 계약 요금표로 계산하는 사용량 기반 요금입니다. 시작하려면 software@01.works로 영업팀에 문의합니다.

계약 조건 확인과 카드 등록

  1. 영업팀이 워크스페이스의 요금표를 활성화한 뒤 01.software 구독 화면으로 연결되는 계약 조건 확인 링크를 전달합니다.
  2. 해당 워크스페이스의 tenant-admin으로 로그인해 링크를 엽니다. 화면에 계약 요금표 이름, 기본료, 월 최저 청구액, 적용 기간, 카드 등록 시 결제액, 청구 사전 안내 기간, 미터별 단가·버킷·포함량이 표시됩니다.
  3. 조건을 확인한 뒤 카드를 등록합니다. 카드 등록 시 결제액은 0원이며, 등록만으로는 청구되지 않습니다.

조건을 확인할 수 없다는 안내가 나오면 링크가 최신인지 영업팀에 확인합니다. 등록 중 조건이 바뀌면 등록이 진행되지 않고 최신 조건이 다시 표시되므로, 다시 확인한 뒤 등록합니다. 적용 기간은 계약 요금표에 기록된 날짜를 보여 주며, 기간에 따른 가격 전환이나 가격 유지는 계약 내용을 따릅니다.

요금 계산 방식

청구 금액은 한국 표준시(KST) 달력월 단위로 계산합니다.

항목의미
기본료매월 청구되는 고정 금액
월 최저 청구액기본료와 종량 초과분의 합이 이 금액보다 적으면 차액을 최저 청구 조정으로 더함
버킷사용량을 세는 묶음 크기. 사용량을 버킷 크기로 나눈 뒤 올림
포함량추가 요금 없이 포함되는 버킷 수. 원시 사용량이 아님
단가포함량을 넘는 버킷 1개당 금액(원)
미터별 청구 단위    = max(0, ceil(사용량 ÷ 버킷 크기) − 포함량)
미터별 금액        = 청구 단위 × 단가
소계              = 기본료 + 미터별 금액의 합
조정·면제 전 금액   = max(소계, 월 최저 청구액)

서비스가 월 중간에 시작되거나 끝나면 기본료와 월 최저 청구액을 일할합니다. 이용 일수는 그 달 안에서 이용 시작부터 종료까지의 시간을 24시간 단위로 올림한 값이며, 이용한 달력 날짜 수가 아닙니다. 각 금액에 이용 일수 ÷ 그 달 일수를 곱하고 1원 미만은 올립니다.

확정 청구서 합계는 조정·면제 전 금액에 사전 안내 전에 기록된 조정을 더하고(0원 미만이면 0원), 그 결과가 1–99원이면 위 결제 상태 확인 단계의 면제를 적용한 값입니다. 자세한 내용은 예상액과 확정 청구서 확인을 참고합니다.

다음 값은 계산 방식을 보여 주는 가상의 예이며, 실제 계약 단가나 기본값이 아닙니다. 사용량 25,001, 버킷 10,000, 포함량 1버킷, 버킷당 100원이면 ceil(25,001 ÷ 10,000) = 3버킷에서 포함량 1버킷을 빼 청구 단위는 2, 미터 금액은 200원입니다. 포함량 1은 사용량 1이 아니라 10,000 단위 버킷 1개입니다.

요금표에는 다음 여섯 미터가 있으며, 마감된 달의 사용량 스냅샷 값을 사용합니다.

화면 이름사용량
API 호출API 호출 수
AI 생성AI 생성 수
동영상 전송 시간동영상 전송 시간(분)
스토리지 GB (마지막 성공 표본)마지막 성공 표본의 저장 용량을 GB(10억 바이트)로 환산한 값
알림알림 이메일 수
문서 수 (마지막 성공 표본)마지막 성공 표본의 문서 수

스토리지와 문서는 해당 월이 진행 중일 때 마지막으로 성공한 사용량 표본의 값입니다. 월중 사용량이 줄면 다음 성공 표본에도 감소가 반영되며, 표본 갱신이 실패하면 이전 성공 표본을 유지합니다. 월평균, 최대값, 이용 기간에 걸쳐 누적한 값이 아닙니다. 실제 청구 수량은 확정 청구서의 미터별 내역으로 확인합니다.

예상액과 확정 청구서 확인

tenant-admin은 01.software 대시보드에서 워크스페이스를 열고 결제 탭에서 다음을 확인합니다.

  • 이번 달 사용량 예상액: 진행 중인 달에 지금까지 기록된 사용량과 활성 요금표로 계산한 확정 전 금액입니다. 확정 청구서 금액과 다를 수 있습니다.
  • 사용량 청구서: 마감된 달의 확정 청구서입니다. 상태(확정, 청구완료, 실패), 합계, 기본료, 종량 초과분, 최저 청구 조정, 사전통지일, 청구일, 미터별 내역(사용량, 버킷, 포함, 청구 단위 × 단가 = 금액)이 표시됩니다.

확정 청구서의 합계에는 1–99원 면제나 사전 안내 전에 기록된 조정이 반영될 수 있어 기본료, 종량 초과분, 최저 청구 조정의 합과 다를 수 있습니다. 확정된 청구서는 이후 요금표 변경이나 사용량 재집계로 바뀌지 않습니다.

정산과 결제 시점

  • 한 달의 사용량 정산 기간은 다음 달 5일(KST)까지입니다. 정산 기간 이후 정기 처리에서 청구서를 확정할 수 있는지는 현재 청구서 발행 가능 여부를 확인하세요. 청구서 생성일은 고정되어 있지 않습니다.
  • 청구서가 확정되면 워크스페이스 tenant-admin에게 확정 금액을 이메일로 안내합니다. 한 명 이상에게 발송되면 사전통지일이 기록되며, 모든 수신자에게 도착한다고 보장하지 않으므로 결제 탭에서 사전통지일을 확인합니다.
  • 결제는 사전통지일로부터 최소 7일이 지난 뒤 정기 처리에서 시도합니다. 정확한 결제일은 고정되어 있지 않으며, 결제된 날짜는 청구일로 확인합니다. 0원 청구서는 카드 결제 없이 청구완료로 처리됩니다.
  • 결제가 거절되면 청구서가 실패로 표시됩니다. 결제 탭에서 상태를 확인하고 software@01.works로 문의합니다.

청구 문의와 환불

청구 금액이나 환불 문의는 사용량 청구서의 환불 가능 여부와 처리 기간 문의를 포함해 software@01.works로 보냅니다. 환불 접수 절차는 환불 규정을 따릅니다.

청구 오류 정정은 플랫폼 super-admin이 Admin Panel에서 검토·승인합니다. 워크스페이스 관리자에게는 정정 실행 권한이나 셀프서비스 환불 화면이 없습니다. 결제사 결과가 불명확하면 재전송하지 않고 확인 필요 상태로 보존합니다. 정정해도 원 청구서와 구독·서비스 권한은 유지되며, 신규 Enterprise 청구를 재개하지 않습니다.

Console 홈의 첫 작업

빈 워크스페이스의 Console 홈에는 아직 표시할 활동이 없습니다 안내와 상세 진단 보기 링크만 표시됩니다. 이커머스가 켜진 워크스페이스도 상품과 주문이 하나도 없으면 빈 커머스 카드 대신 이 안내를 보여 줍니다. 설정 상태는 워크스페이스 진단에서 확인합니다.

팀원은 팀원 초대 절차로 추가합니다.

커머스 KPI를 선택하면 표시된 워크스페이스로 필터한 화면으로 이동합니다. 처리 대기 주문과 오늘 주문 수는 해당 상태·날짜의 주문 목록으로, 환불 대기는 반품 목록으로, 재고 부족 품목은 재고 화면의 저재고 필터로 이동합니다. 오늘 매출은 같은 Console 홈의 매출 리포트에서 오늘 항목으로 확인합니다. 매출 리포트를 불러오지 못하면 그 자리에 오류 안내와 다시 시도 버튼이 표시되고, KPI와 최근 주문은 계속 확인할 수 있습니다. 정상 0과 상한 적용 표시는 각각 실제 집계값과 제한된 집계값을 나타냅니다.

운영 리듬

  • 매주 tenant-admin이 접근 권한, 콘텐츠 대기열, 실패한 웹훅, 준비 상태의 차단 요소를 검토합니다.
  • 매월 워크스페이스 소유자가 플랜, 결제, 쿼터, 키, 사용하지 않는 기능을 검토합니다.
  • 장애 중 결제, 키, CORS, 커머스, 모더레이션이 막히면 워크스페이스 소유자가 출시 또는 고객 노출을 중지합니다.

접근 역할

운영자의 정확한 역할은 다음과 같습니다. super-admin은 플랫폼 역할이며 나머지 세 역할은 워크스페이스별로 배정합니다. 고객 계정과 운영자 계정은 별개입니다.

역할책임경계
super-admin플랫폼 관리와 지원전역 권한. 워크스페이스 작업에서는 대상 워크스페이스를 선택
tenant-admin워크스페이스 설정, 기능, 키, 결제, 팀 접근 관리해당 역할을 배정받은 워크스페이스에 한함
tenant-editor허용된 콘텐츠·커머스 작업컬렉션별 쓰기 권한. 워크스페이스 설정·키·결제·멤버십 관리는 불가
tenant-viewer허용된 검토와 리포트 확인읽기 전용. 운영 변경 불가

워크스페이스 소유자는 소유권 관계이며 다섯 번째 역할이 아닙니다. 소유권은 이전·삭제를 제어하며, 일반 관리 작업은 운영자의 워크스페이스 역할을 확인합니다. 개인별 로그인 계정을 사용하고 워크스페이스마다 접근 권한을 검토합니다.

인계 체크리스트

  • 워크스페이스 소유자가 최신 상태입니다
  • 신뢰할 수 있는 관리자가 최소 두 명 있습니다
  • 임시 접근이 제거되었습니다
  • 결제 상태가 명확합니다
  • 활성화한 기능별 담당자가 정해졌습니다
  • 출시 지원과 모더레이션 담당자가 정해졌습니다

접근 권한, CORS, 운영 담당자를 확인하기 전에는 Secret Key 소유권을 개인이나 외부 업체에 넘기지 마세요.

다음 액션

목차