
The Blocklist tab under Settings
고객을 차단하면 발생하는 일
차단은 추가하는 즉시 다음 각 영역에 적용됩니다:차단은 과거 결제를 환불하지 않으며, 진행 중인 disputes에도 영향을 주지 않습니다. 환불이 필요한 경우 Refunds 페이지에서 별도로 처리하세요.
차단 대상 고객 매칭 방식
customer ID 또는 email로 차단할 수 있습니다. 어느 방법을 사용하든 차단은 customer record가 아니라 고객의 이메일을 기준으로 적용됩니다:- 해당 이메일을 사용하는 모든 record가 적용 대상입니다. Checkout에서는 기존 이메일로 다시 방문한 고객에 대해 새 customer record를 만들 수 있으므로, 하나의 customer ID만 차단하면 우회할 수 있습니다. 이메일을 기준으로 차단하면 우회할 수 없습니다.
- Aliases도 적용 대상입니다. 이메일은 소문자로 비교하며
+alias가 제거됩니다. 따라서buyer+promo@example.com와Buyer@example.com는 동일한 고객으로 간주됩니다. 주소의 점은 입력된 그대로 유지됩니다. - 귀사의 business에만 적용됩니다. 차단은 귀사의 business에만 적용됩니다. 동일한 이메일로도 Dodo Payments의 다른 business에서는 계속 구매할 수 있습니다.
- 이메일은 기존 고객에게 속해야 합니다. 귀사의 어떤 고객과도 일치하지 않는 이메일은 차단할 수 없으며, 이메일이 없는 customer record도 차단할 수 없습니다.
고객 차단하기
Blocklist 페이지 또는 고객의 전용 페이지에서 고객을 차단할 수 있습니다.- From Settings
- From the customer's page
1
Open the Blocklist
대시보드에서 Settings → Blocklist로 이동합니다.
2
Add to Blocklist
Add to Blocklist를 클릭한 다음 Customer ID or email에 고객의 이메일 또는 customer ID를 입력합니다. 패널에 일치하는 고객이 표시됩니다.
3
Confirm
패널에서 Add to Blocklist를 클릭합니다. 고객의 live subscriptions가 즉시 취소되고 항목이 Blocked entries 테이블에 표시됩니다. 일부 subscriptions가 아직 취소 중이면 대시보드에 알림이 표시됩니다. 잠시 후 페이지를 새로 고쳐 확인하세요.
reason를 전송하세요.
차단된 고객 관리
Blocklist 페이지에는 모든 활성 차단이 표시됩니다:- Total Customers Blocked: 현재 차단된 고객 수입니다.
- Blocked entries: 차단당 하나의 행이 표시되며, 입력한 Identifier(email 또는 customer ID), Blocked By, Blocked On이 포함됩니다. Blocked By에는 차단을 추가한 팀원이 표시되며, API key로 추가된 차단은 API로 표시됩니다.
- Search Identifier 및 Filters: email 또는 customer ID로 항목을 검색하거나 Blocked By 및 Blocked Between으로 필터링할 수 있습니다.
- Action: See Details를 클릭하면 차단된 고객의 페이지가 열리고, Unblock을 클릭하면 차단이 해제됩니다. Viewer role의 팀원은 차단을 해제할 수 없습니다.
차단된 고객의 페이지

A blocked customer's details page
- 고객 이름 옆의 Blocked 배지 및 Unblock Customer 버튼
- Activity Log: 고객이 blocklist에 추가된 시점, 사유 및 이후 팀에서 추가한 notes입니다. Add Note를 클릭하여 chargeback 처리 결과와 같은 새로운 맥락을 기록할 수 있습니다. 나중에 API를 통해 note를 수정할 수 있습니다.
- Reference IDs: 이 차단에 연결된 customer ID이며, 복사할 수 있습니다.
고객 차단 해제하기
고객의 페이지에서 Unblock Customer를 클릭하거나 Blocklist 페이지의 Action 열에서 Unblock을 선택합니다. 그런 다음 Unblock으로 확인합니다.- Checkout 및 Customer Portal 변경 사항이 즉시 복원됩니다.
- 취소된 subscriptions는 다시 활성화되지 않습니다. 고객은 다시 구매해야 합니다.
- 항목은 notes와 함께 audit record로 보존되지만 활성 목록에는 더 이상 표시되지 않습니다.
- 나중에 같은 고객을 다시 차단할 수 있습니다. 이 경우 새 항목이 생성됩니다.
고객에게 표시되는 내용
차단된 고객에게는 차단되었다는 사실이 절대 알려지지 않습니다.- Checkout에서 결제가 일반적인 거부 메시지와 함께 실패합니다: “This payment cannot be processed.” API는 원인을 표시하지 않는 오류 코드
PAYMENT_NOT_PERMITTED와 함께 HTTP403를 반환합니다. 실제 사유는 Dodo Payments의 logs에만 기록됩니다. - Customer Portal에서 모든 항목이 표시되지만 계정을 변경하는 모든 action은 거부됩니다. 거부된 action은
PORTAL_ACTION_NOT_PERMITTED및 “This action is not available.” 메시지와 함께 HTTP403를 반환합니다. 포털 profile에는read_only: true가 포함되므로 custom portal integration에서 자체 controls를 비활성화할 수 있습니다. 포털에는 blocklist 항목이나 notes가 절대 표시되지 않습니다.
API 사용
Blocklist API를 사용하면 chargeback이 접수되는 경우처럼 자체 tooling에서 고객을 차단할 수 있습니다. 이를 사용하려면 secret API key가 필요합니다. 모든 key는 entries를 나열하고 notes를 읽을 수 있습니다. write access가 활성화된 key는 고객 차단, 차단 해제 및 notes 관리를 수행할 수 있습니다. 대시보드에서도 team roles에 동일한 권한 구분이 적용됩니다. Viewer role은 목록을 읽고, Editor role은 변경을 수행합니다. Blocklist API에는 6개의 endpoints가 있습니다:
목록에는 활성 차단만 반환됩니다. 필터링하려면
identifier(이메일 또는 customer ID에 대한 대소문자를 구분하지 않는 부분 일치), blocked_by_email, created_at_gte 또는 created_at_lte를 전달하세요. 기본적으로 페이지당 10개의 entries가 반환됩니다. 최대 100개를 반환하려면 page_size를 설정하고, 페이지를 탐색하려면 page_number를 설정하세요.
고객 차단하기
body의 최상위 수준에customer_id 또는 email 중 하나를 전송합니다. 둘 다 전송하면 차단에는 customer_id가 사용됩니다. reason는 선택 사항이며 entry 페이지에 표시됩니다. 새 차단이 생성되면 HTTP 201가 반환됩니다.
Response
이미 차단된 고객을 다시 차단하면 HTTP
409 및 CUSTOMER_ALREADY_BLOCKED가 반환됩니다. 단, subscriptions가 아직 취소 대기 중인 경우에는 예외입니다. 이 경우 call이 취소 작업을 계속 진행하고 HTTP 200를 반환합니다.고객이 차단되었는지 확인
Get Customer Detail은 두 개의 추가 fields를 반환합니다.blocked_at는 활성 차단이 추가된 시간이며, 고객이 차단되지 않은 경우 null입니다. blocklist_entry_id는 해당 차단의 entry입니다. List Customers endpoint에서는 두 fields가 모두 비어 있습니다.
고객 차단 해제하기
204를 반환하며, ID가 활성 차단과 일치하지 않으면 HTTP 404를 반환합니다. 차단을 해제하면 checkout 및 portal writes가 복원되지만 subscription은 다시 활성화되지 않습니다.
모범 사례
- 사유를 기록하세요. 차단에 짧은 사유를 남기고 이후 발생하는 일은 notes로 기록하면 대시보드를 벗어나지 않고도 support team이 전체 상황을 파악할 수 있습니다.
- chargeback 후 차단하세요. dispute 또는 payment에서 고객 페이지를 열어 차단하거나,
dispute.openedwebhook의POST /blocklist/customers를 사용하여 자동화하세요. Disputes를 참고하세요. subscriptions_swept를 확인하세요. API를 통해 차단할 때 response에true가 표시될 때까지 call을 반복하여 live subscription이 남지 않도록 하세요.- 환불은 별도로 처리하세요. 차단은 향후 구매만 중지합니다. 고객에게 지급해야 할 금액이 있다면 평소와 같이 payment를 환불하세요.
- 목록을 검토하세요. 문제가 해결된 고객은 차단을 해제하세요. 차단 해제는 즉시 적용되며 기록은 유지됩니다.
관련 문서
Customer Management
고객을 찾고 세부 정보 페이지를 열어 subscriptions를 관리합니다.
Customer Portal
차단된 고객이 portal에서 할 수 있는 작업과 할 수 없는 작업입니다.
Disputes
chargeback에 대응하고 차단이 필요한 시점을 결정합니다.
Error Codes
PAYMENT_NOT_PERMITTED 및 PORTAL_ACTION_NOT_PERMITTED의 의미입니다.