Skip to main content
결제 실패 후 연체되었거나 고객이 취소한 구독에 대해 Subscription Dunning이 고객에게 이메일을 보내고, 결제 수단을 업데이트하거나 재구매하도록 요청합니다. Dunning을 켜면 자동으로 실행됩니다.

구독 추심이란?

Dunning은 구독이 복구 가능한 상태가 된 시점을 감지하고 고객에게 조치를 요청하는 이메일 시퀀스를 보냅니다. 다음 세 가지 상태에서 시퀀스가 시작됩니다.
  • On Hold 구독: 갱신 결제에 실패한 경우입니다. 예를 들어 잔액 부족 또는 카드 만료가 원인일 수 있습니다.
  • Past Due 구독: 유예 기간이 열려 있는 동안 갱신 결제에 실패한 경우입니다.
  • Cancelled 구독: 고객이 Customer Portal에서 취소한 경우입니다.

추심 작동 원리

1

Trigger

구독이 다음 세 가지 상태 중 하나가 됩니다.
  • On Hold: 갱신 결제에 실패했습니다.
  • Past Due: 유예 기간이 열려 있는 동안 갱신 결제에 실패했습니다.
  • Cancelled: 고객이 Customer Portal에서 구독을 취소했습니다.
그러면 Dodo Payments가 Dunning 시도를 생성하고 dunning.started webhook을 보냅니다. 해당 시퀀스에 활성화된 이메일이 없으면 시도가 시작되지 않으며, 구독에는 한 번에 하나의 활성 시도만 존재할 수 있습니다.
2

Grace Period

유예 기간을 설정하면 결제 실패로 인해 구독이 past_due 대신 on_hold 상태로 이동합니다.On Hold 이메일 시퀀스는 해당 기간 동안 실행되므로, 고객이 아직 액세스 권한을 보유하고 있을 때 결제하도록 안내할 수 있습니다.결제 실패 한 건이 하나의 시퀀스를 시작합니다. 기간이 끝나도 두 번째 시퀀스가 시작되지는 않습니다. 구독이 On Hold 상태로 기간이 끝나면 시퀀스에 남아 있는 이메일은 계속 발송됩니다. 구독이 Cancelled 상태로 기간이 끝나면 시도는 exhausted로 표시됩니다.Dunning 시도에는 past_due 트리거 상태가 기록됩니다. Dunning analytics를 조회할 때는 on_hold뿐만 아니라 past_due도 필터링해야 합니다.
3

Email Sequence

Dodo Payments는 트리거 상태를 기준으로 설정한 지연 시간에 따라 최대 4개의 Dunning 이메일을 보냅니다. 각 이메일은 Customer Portal로 연결되어 고객이 결제 수단을 업데이트할 수 있으며, 취소된 구독을 재구매할 수 있는 checkout으로도 연결할 수 있습니다.
4

Recovery

고객이 Customer Portal에서 결제 수단을 업데이트하면 Dodo Payments가 남은 미납 금액을 자동으로 청구합니다. 결제가 성공하면 구독이 재활성화되고 Dunning 시도는 recovered로 표시됩니다.

상태 수명 주기

각 Dunning 시도에는 다음 상태 중 하나가 지정됩니다.
Dunning 시도가 exhausted로 표시되면 Dodo Payments는 구독을 변경하지 않습니다. 구독은 현재 상태(Past Due, On Hold 또는 Cancelled)를 유지합니다.

Dunning 구성

대시보드의 Settings → Recovery에서 Dunning을 켜고 구성합니다. Dunning은 기본적으로 꺼져 있습니다.
Dunning settings page with enable toggle, four on-hold emails at 1, 3, 5, and 7 day intervals, and four cancelled emails at the same intervals

Dunning settings in the dashboard showing enable toggle, on-hold sequence, and cancelled sequence

이메일 시퀀스

Dunning에는 On Hold와 Cancelled라는 두 개의 이메일 시퀀스가 있으며, 각 시퀀스에는 최대 4개의 이메일이 포함됩니다. 대시보드에는 각각 구독이 On Hold 상태일 때 고객에게 보내는 이메일 및 구독이 취소되었을 때 고객에게 보내는 이메일로 표시됩니다. past_due 시도는 On Hold 시퀀스를 사용합니다. 각 이메일에는 다음 설정이 있습니다. Subject Line에서 Dodo Payments는 다음 placeholders를 대체합니다: {store_name}, {store_owner_name}, {store_contact_email}, {subscription_id}, {failure_reason} 및 {payment_form_link}. 기본 지연 시간은 다음과 같습니다.

Dunning 이메일 예시

Dunning은 각 구독 상태에 따라 서로 다른 이메일을 보냅니다. 다음 예시는 고객에게 표시되는 내용을 보여줍니다.
Dunning email for an on-hold subscription showing store name, message about failed payment, subscription details with plan and amount, and an Update Payment Method button

Dunning email sent when a renewal payment fails and the subscription is on hold

고객 복구 경험

고객이 On Hold Dunning 이메일의 링크를 클릭하면 Customer Portal이 해당 구독 화면에서 열립니다. 여기에서 구독 상태를 확인하고 결제 수단을 업데이트할 수 있습니다.
Customer portal showing an on-hold subscription for Pro Plan at $95.00/year with an Update payment method button and a warning banner about the failed payment

Customer portal showing an on-hold subscription with option to update payment method

고객이 결제 수단을 업데이트하면 Dodo Payments가 미납된 금액을 청구합니다. 결제가 성공하면 구독이 active로 돌아갑니다. 취소된 구독의 경우 링크를 클릭하면 해당 구독의 product가 이미 cart에 담긴 checkout 페이지가 열립니다.

Analytics

대시보드의 Analytics → Recovery에서 Dunning 성과를 추적합니다.
Recovery analytics dashboard showing dunning entry counts, success rates, recovered revenue, and per-email performance breakdown

Recovery analytics dashboard showing ACR and dunning metrics

Dunning 섹션에는 다음 metrics가 표시됩니다.

Webhook Events

Dunning은 두 개의 webhook events를 보냅니다.

Recovery Webhook Payloads

Dunning events의 전체 webhook payload schemas를 확인하세요.

예외 상황

Dunning은 다음 상황을 자동으로 처리합니다.

모범 사례

  • 기본값으로 시작하세요: 기본 지연 시간(1일, 3일, 5일 및 7일)은 이메일을 일주일에 걸쳐 분산하므로 고객에게 이메일을 과도하게 보내지 않으면서도 꾸준히 알림을 전달할 수 있습니다.
  • 복구율을 모니터링하세요: Recovery rate by email을 확인하여 어떤 이메일이 가장 많은 복구를 유도하는지 파악하세요. 이후 이메일에서 복구가 거의 발생하지 않는다면 해당 이메일을 끄세요.
  • support와 협력하세요: Dunning 이메일이 발송된다는 사실을 support team에 알려 고객이 답장했을 때 도움을 줄 수 있도록 하세요.
  • 구독 상태를 검토하세요: Dunning을 subscription.on_hold 및 subscription.cancelled webhooks와 함께 사용하여 전체 구독 수명 주기를 추적하세요.
Dunning은 Customer Portal의 기존 On Hold 및 재활성화 흐름과 함께 작동합니다. Dunning을 켜면 별도의 integration 작업 없이 자동으로 실행됩니다.

관련 문서

Recovery Webhooks

dunning.started 및 dunning.recovered events에 대응하세요.

Abandoned Cart Recovery

abandoned 또는 failed checkouts를 recovery emails로 복구합니다.

Customer Portal

고객은 Customer Portal에서 결제 수단을 업데이트합니다.

Subscriptions

Dunning을 트리거하는 구독 상태입니다.
마지막 수정일 2026년 9월 26일