정산 가이드
ONDA 플랫폼의 정산 프로세스와 입금 일정을 안내합니다.
정산 가이드
ONDA API를 통해 발생한 예약에 대한 정산 프로세스, 입금 일정, 세금계산서 발행 등을 안내합니다.
정산 프로세스 개요
예약 확정
고객이 예약을 완료하고 결제가 처리됩니다.
체크아웃 완료
고객이 숙박을 마치고 체크아웃합니다.
정산 확정
정산 주기에 맞춰 체크아웃 완료 건을 집계합니다.
입금 처리
수수료를 차감한 금액이 등록된 계좌로 입금됩니다.
정산 주기
등급별 정산 일정
| 등급 | 정산 주기 | 정산일 | 입금 예정일 |
|---|---|---|---|
| Standard | 월 2회 | 매월 1일, 16일 | 정산일 + 영업일 3~5일 |
| Professional | 월 2회 | 매월 1일, 16일 | 정산일 + 영업일 3~5일 |
| Enterprise | 주 1회 (선택 가능) | 매주 금요일 | 정산일 + 영업일 3일 |
Enterprise 등급은 기본 월 2회 정산과 주 1회 정산 중 선택할 수 있습니다. 주 1회 정산 선택 시 현금 흐름을 개선할 수 있습니다.
정산 기준일
정산은 체크아웃 완료 시점을 기준으로 합니다.
| 예약 상태 | 정산 포함 여부 |
|---|---|
confirmed | ❌ (체크아웃 대기) |
checked_in | ❌ (체크아웃 대기) |
checked_out | ✅ 정산 대상 |
cancelled | ❌ (취소됨) |
no_show | ✅ 정산 대상 (수수료 차감) |
정산 상세 흐름
1. 체크아웃 완료
# 체크아웃 시점 예시
reservation = {
"id": "res_abc123",
"status": "checked_out",
"check_in": "2026-02-15",
"check_out": "2026-02-16",
"checked_out_at": "2026-02-16T11:00:00Z", # 체크아웃 완료 시각
"pricing": {
"total": 154000, # 총 예약 금액
"currency": "KRW"
},
"commission": {
"rate": 0.15, # 15% (Standard 등급)
"amount": 23100 # 수수료
}
}
# 숙박 시설 정산 예정 금액
payout_amount = reservation["pricing"]["total"] - reservation["commission"]["amount"]
print(f"정산 예정 금액: {payout_amount:,}원") # 130,900원
2. 정산 확정
매월 1일과 16일, 지정된 기간의 체크아웃 완료 건을 집계합니다.
2월 정산 예시:
| 정산일 | 집계 기간 | 입금 예정일 |
|---|---|---|
| 2월 1일 | 1월 16일 0시 ~ 1월 31일 23시 59분 체크아웃 | 2월 4~6일 |
| 2월 16일 | 2월 1일 0시 ~ 2월 15일 23시 59분 체크아웃 | 2월 19~21일 |
# 2월 1일 정산 집계 예시
settlement_period = {
"settlement_date": "2026-02-01",
"period_start": "2026-01-16T00:00:00Z",
"period_end": "2026-01-31T23:59:59Z",
"reservations": [
{
"id": "res_001",
"checked_out_at": "2026-01-20T11:00:00Z",
"total": 154000,
"commission": 23100,
"payout": 130900
},
{
"id": "res_002",
"checked_out_at": "2026-01-25T10:30:00Z",
"total": 200000,
"commission": 30000,
"payout": 170000
}
# ... 더 많은 예약
],
"summary": {
"total_reservations": 150,
"gross_revenue": 22500000, # 총 매출
"total_commission": 3375000, # 총 수수료
"net_payout": 19125000 # 실 정산 금액
}
}
3. 입금 처리
정산 확정 후 영업일 기준 3~5일 이내에 등록된 계좌로 입금됩니다.
입금 처리 일정:
정산일: 2026-02-01 (토요일)
↓
영업일 계산: 월(3), 화(4), 수(5), 목(6), 금(7)
↓
입금 예정: 2026-02-04 ~ 2026-02-06
↓
실제 입금: 2026-02-05 (수요일) ✅
공휴일 및 주말 처리
정산일이 주말이나 공휴일인 경우, 영업일 계산은 다음 영업일부터 시작됩니다. 입금도 은행 영업일 기준으로 처리됩니다.
정산 내역 확인
대시보드에서 확인
개발자 센터 대시보드에서 실시간으로 정산 내역을 확인할 수 있습니다.
경로: 대시보드 > 정산 관리
확인 가능한 정보:
- 정산 예정 금액 (체크아웃 완료, 입금 대기)
- 정산 완료 내역 (입금 완료)
- 정산 상세 내역 (예약별 수수료 및 정산액)
- 월별/분기별/연간 통계
API로 조회
import requests
headers = {"Authorization": f"Bearer {access_token}"}
# 최근 정산 내역 조회
response = requests.get(
"https://api.onda.me/v1/settlements",
headers=headers,
params={
"limit": 10,
"status": "completed"
}
)
settlements = response.json()
for settlement in settlements["data"]:
print(f"정산 ID: {settlement['id']}")
print(f"정산 기간: {settlement['period_start']} ~ {settlement['period_end']}")
print(f"예약 건수: {settlement['reservation_count']}건")
print(f"총 매출: {settlement['gross_revenue']:,}원")
print(f"수수료: {settlement['total_commission']:,}원")
print(f"정산 금액: {settlement['net_payout']:,}원")
print(f"입금일: {settlement['payout_date']}")
print(f"입금 상태: {settlement['payout_status']}")
print("---")
응답 예시:
{
"data": [
{
"id": "settle_xyz123",
"settlement_date": "2026-02-01",
"period_start": "2026-01-16T00:00:00Z",
"period_end": "2026-01-31T23:59:59Z",
"reservation_count": 150,
"gross_revenue": 22500000,
"total_commission": 3375000,
"net_payout": 19125000,
"currency": "KRW",
"payout_date": "2026-02-05",
"payout_status": "completed",
"payout_method": "bank_transfer",
"bank_account": {
"bank_name": "신한은행",
"account_number": "****1234",
"account_holder": "주식회사 예시"
}
}
],
"meta": {
"total": 24,
"page": 1,
"limit": 10,
"has_more": true
}
}
특정 정산 상세 조회
settlement_id = "settle_xyz123"
response = requests.get(
f"https://api.onda.me/v1/settlements/{settlement_id}",
headers=headers,
params={"include": "reservations"}
)
settlement_detail = response.json()
# 정산에 포함된 모든 예약 확인
for reservation in settlement_detail["reservations"]:
print(f"{reservation['confirmation_number']}: {reservation['payout_amount']:,}원")
정산 상태값
| 상태 | 설명 | 다음 가능 상태 |
|---|---|---|
pending | 체크아웃 완료, 다음 정산일 대기 | confirmed |
confirmed | 정산 확정, 입금 대기 | processing, cancelled |
processing | 입금 처리 중 | completed, failed |
completed | 입금 완료 | - |
failed | 입금 실패 (계좌 오류 등) | processing |
cancelled | 정산 취소 (예약 취소 등) | - |
상태별 처리
def check_settlement_status(settlement):
"""정산 상태별 안내"""
status = settlement["status"]
if status == "pending":
next_date = settlement["next_settlement_date"]
print(f"다음 정산 예정일: {next_date}")
elif status == "confirmed":
payout_date = settlement["estimated_payout_date"]
print(f"입금 예정일: {payout_date}")
elif status == "processing":
print("입금 처리 중입니다. 곧 완료됩니다.")
elif status == "completed":
payout_date = settlement["payout_date"]
amount = settlement["net_payout"]
print(f"{payout_date}에 {amount:,}원 입금 완료")
elif status == "failed":
reason = settlement.get("failure_reason", "알 수 없음")
print(f"입금 실패: {reason}")
print("계좌 정보를 확인하고 support@onda.me로 연락주세요.")
세금계산서
자동 발행
수수료에 대한 세금계산서는 정산 확정 시점에 자동으로 발행됩니다.
| 항목 | 내용 |
|---|---|
| 발행 시기 | 정산 확정일 (매월 1일, 16일) |
| 발행 방법 | 전자세금계산서 |
| 발송 방법 | 이메일 (등록된 이메일 주소) |
| 국세청 전송 | 발행일 다음 영업일 |
세금계산서 내역
공급자: ONDA (주식회사 온다)
- 사업자등록번호: 123-45-67890
- 주소: 서울특별시 강남구 테헤란로 123
공급받는자: 귀사 정보 (등록된 사업자 정보)
품목 및 금액:
[2026년 2월 1일 정산 - 1.16~1.31 기간]
품목: ONDA API 플랫폼 수수료
수량: 150건
단가: 22,500원 (평균)
공급가액: 3,375,000원
부가세 (10%): 337,500원
총 합계: 3,712,500원
세금계산서는 PDF 파일로 이메일 발송되며, 대시보드의 정산 관리 > 세금계산서 메뉴에서 언제든지 재발행 및 다운로드할 수 있습니다.
세금계산서 조회
# API로 세금계산서 목록 조회
response = requests.get(
"https://api.onda.me/v1/tax-invoices",
headers=headers,
params={
"year": 2026,
"month": 2
}
)
invoices = response.json()
for invoice in invoices["data"]:
print(f"발행일: {invoice['issue_date']}")
print(f"공급가액: {invoice['supply_amount']:,}원")
print(f"부가세: {invoice['tax_amount']:,}원")
print(f"합계: {invoice['total_amount']:,}원")
print(f"PDF: {invoice['pdf_url']}")
print("---")
계좌 정보 관리
계좌 등록 및 변경
정산금을 입금받을 계좌 정보는 대시보드에서 관리할 수 있습니다.
경로: 대시보드 > 설정 > 정산 계좌
필수 정보:
- 은행명
- 예금주명 (사업자명과 일치 필요)
- 계좌번호
- 사업자등록번호 (법인 계좌의 경우)
계좌 변경 시점:
- 다음 정산부터 새 계좌로 입금 처리
- 진행 중인 정산은 기존 계좌로 입금
계좌 변경 시 주의사항
정산일 3일 전까지 계좌 변경을 완료해야 해당 정산부터 새 계좌로 입금됩니다. 예를 들어, 2월 1일 정산분은 1월 29일까지 변경해야 합니다.
API로 계좌 정보 업데이트
# 계좌 정보 변경
response = requests.put(
"https://api.onda.me/v1/channels/me/bank-account",
headers=headers,
json={
"bank_code": "088", # 신한은행
"account_number": "1234567890",
"account_holder": "주식회사 예시",
"business_number": "123-45-67890"
}
)
if response.status_code == 200:
print("계좌 정보 변경 완료")
account = response.json()
print(f"다음 정산부터 {account['bank_name']} {account['account_number']}로 입금됩니다.")
정산 관련 주의사항
1. 최소 정산 금액
정산 금액이 10,000원 미만인 경우, 다음 정산 주기로 이월됩니다.
# 정산 이월 예시
settlement_1 = {
"date": "2026-02-01",
"amount": 8500,
"status": "carried_forward" # 이월
}
settlement_2 = {
"date": "2026-02-16",
"amount": 150000,
"carried_forward": 8500, # 이월분 합산
"total_payout": 158500, # 실제 입금 금액
"status": "completed"
}
2. 입금 실패 처리
계좌 정보 오류 등으로 입금이 실패하면 이메일로 안내됩니다.
입금 실패 사유:
- 계좌번호 오류
- 예금주명 불일치
- 폐쇄된 계좌
- 은행 시스템 오류
해결 방법:
- 계좌 정보 확인 및 수정
- support@onda.me로 재입금 요청
- 영업일 기준 2~3일 이내 재처리
3. 환불 처리
예약 취소로 고객에게 환불이 발생하면, 정산 금액에서 차감됩니다.
# 환불 발생 시 정산 조정
original_settlement = {
"gross_revenue": 1000000,
"commission": 150000,
"net_payout": 850000
}
# 예약 취소 (전액 환불)
refund = {
"reservation_total": 154000,
"commission_refund": 23100,
"payout_deduction": 130900
}
adjusted_settlement = {
"gross_revenue": 1000000 - 154000, # 846,000원
"commission": 150000 - 23100, # 126,900원
"net_payout": 850000 - 130900, # 719,100원
"refund_adjustments": [refund]
}
환불 조정은 환불 발생 시점의 정산 주기에 반영됩니다. 이미 입금 완료된 정산분에서 환불이 발생하면, 다음 정산에서 차감됩니다.
4. 노쇼 (No-show) 처리
고객이 체크인하지 않은 경우(노쇼), 숙박 시설 정책에 따라 정산 처리됩니다.
| 정책 | 정산 처리 |
|---|---|
| 전액 수수료 | 예약 금액의 100%에 대해 정산 (수수료 차감) |
| 일부 수수료 | 부과된 위약금에 대해서만 정산 |
| 수수료 없음 | 정산 없음 (예약 취소 처리) |
Enterprise 등급 주간 정산
Enterprise 등급은 주 1회 정산을 선택할 수 있습니다.
주간 정산 일정
| 구분 | 내용 |
|---|---|
| 정산일 | 매주 금요일 |
| 집계 기간 | 지난 주 토요일 0시 ~ 금요일 23시 59분 체크아웃 |
| 입금 예정일 | 정산일 + 영업일 3일 |
2월 주간 정산 예시:
1주차 정산 (2월 7일 금요일)
집계 기간: 2월 1일 (토) ~ 2월 7일 (금) 체크아웃
입금 예정: 2월 12일 (수)
2주차 정산 (2월 14일 금요일)
집계 기간: 2월 8일 (토) ~ 2월 14일 (금) 체크아웃
입금 예정: 2월 19일 (수)
3주차 정산 (2월 21일 금요일)
집계 기간: 2월 15일 (토) ~ 2월 21일 (금) 체크아웃
입금 예정: 2월 26일 (수)
4주차 정산 (2월 28일 금요일)
집계 기간: 2월 22일 (토) ~ 2월 28일 (금) 체크아웃
입금 예정: 3월 5일 (수)
현금 흐름 개선
주간 정산을 선택하면 월 2회 정산 대비 평균 7~10일 빠른 입금이 가능하여 현금 흐름이 개선됩니다.
정산 관련 FAQ
1. 정산 금액이 예상과 다릅니다.
다음 사항을 확인해주세요:
- 환불 조정 발생 여부
- 수수료율 (등급 변경 여부)
- 최소 정산 금액 이월 (10,000원 미만)
- 세금계산서 상의 공급가액과 비교
2. 입금 예정일이 지났는데 입금이 안 됐습니다.
입금은 은행 영업일 기준으로 처리됩니다. 공휴일이나 주말이 포함되면 지연될 수 있습니다. 영업일 기준 5일이 지나도 입금이 안 되면 support@onda.me로 문의해주세요.
3. 세금계산서를 받지 못했습니다.
대시보드의 정산 관리 > 세금계산서 메뉴에서 직접 다운로드할 수 있습니다. 이메일 미수신은 스팸 메일함을 확인하거나 담당자에게 이메일 주소 변경을 요청해주세요.
4. 정산 주기를 변경할 수 있나요?
Enterprise 등급만 주간 정산을 선택할 수 있습니다. Standard/Professional 등급은 월 2회 정산만 가능합니다.
5. 해외 송금이 가능한가요?
현재는 국내 은행 계좌로만 정산이 가능합니다. 해외 송금이 필요하신 경우 enterprise@onda.me로 별도 문의해주세요.