본문으로 건너뛰기
cccskills
무료GitHub에 공개한국어 소개

refund-and-dispute

Stripe 결제의 청구 금액, 환불된 금액, 통화와 분쟁 여부를 먼저 확인한 뒤 환불이나 차지백 대응을 진행합니다. 환불에는 사람의 확인이 필요하며, 처리 후 환불 번호와 금액, 상태, 계정 모드를 보고합니다.

원문원문 설명 보기

Move money back to a customer in Stripe, or respond to a dispute, with the checks that belong in front of an irreversible write — read the charge first, fix the exact amount, and clear Stripe's human confirmation step. Use when the user asks to refund a payment, cancel and refund a subscription, or handle a chargeback or dispute.

ParadevAI/Paradev스타 15,720(GitHub 15,720 + cccskills 0)
연동 도구Stripe

실행 점수 미검증

설치 방법 보기

이럴 때 유용합니다

  • 결제 전액 환불
  • 결제 일부 금액 환불
  • 구독 취소와 환불 처리
  • 분쟁 검토 후 증거 제출 또는 수락

한국어 소개

할 수 있는 일

Stripe 결제를 확인한 뒤 전액 또는 일부 환불을 처리하거나 차지백 분쟁에 대응합니다. 청구 정보를 읽어 금액, 통화, 이미 환불된 금액, 결제 상태, 진행 중인 분쟁 여부를 확인합니다. 변경하기 전에 환불할 내용을 명확히 알립니다. 처리한 뒤에는 환불 번호, 금액, 상태와 실제 운영 모드인지 테스트 모드인지 보고합니다.

이럴 때 유용합니다

고객이 환불을 요청했을 때, 구독 취소와 환불을 함께 처리해야 할 때, 카드 발급사를 통한 분쟁에 대응할 때 사용할 수 있습니다. 분쟁이 있으면 내용을 확인하고 증거를 제출하거나 분쟁을 받아들이는 작업을 다룹니다. 구독 취소와 환불은 서로 다른 처리로 구분합니다.

사용 예시

  • “이 결제에서 이미 환불된 금액을 확인하고 나머지를 환불해 주세요.”
  • “이 분쟁을 확인하고 증거 제출을 처리해 주세요.”

주의 사항

Stripe 읽기 및 쓰기 MCP 도구가 필요합니다. 환불은 취소할 수 없으므로 처리 전에 결제와 금액을 확인합니다. Stripe가 확인 URL을 반환하면 사용자가 Stripe에서 승인해야 하며, 그 뒤 같은 작업을 다시 실행합니다. 승인은 24시간 후 만료됩니다. 분쟁 중인 결제에 환불하면 손실이 두 배가 될 수 있으므로 별도의 대응이 필요합니다.

이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.

문서 점검

AI가 SKILL.md의 내용에서 주의가 필요한 작업과 도입 전제를 확인했습니다. 점수는 실제로 실행한 결과(실행 검증)만으로 매깁니다.

안전성전송·삭제·명령 실행 등을 명시하고 있는가
A양호되돌릴 수 없는 환불 전에 확인하고 Stripe에서 사람의 승인을 요구합니다.
도입의 용이성필요한 도구나 API 키가 적고 적혀 있는가
B일부 부족Stripe 읽기·쓰기 도구가 필요하지만 설치 절차는 없습니다.

점수에는 넣지 않았습니다. 2026년 10월 29일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.

평가가 다르다고 생각되면 재검토를 요청하기

어느 항목이 왜 다르다고 생각하는지 적어 주세요. 로그인은 필요 없습니다. SKILL.md와 대조해 평가를 다시 만들고 이곳에 반영합니다.

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

포함된 파일(1)

  • SKILL.md4.9 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

A refund is not a retryable call

Every other Stripe read can be run again for free. A refund cannot. Treat the write as the last step of a short checklist, never as the first attempt at understanding the request.

1. Read the charge before you touch it

The checks live on the charge, so a pi_ id is not where this starts: read the PaymentIntent, follow latest_charge, and read that charge. Skipping the hop is how an agent misses an open dispute, because refunded, amount_refunded, and disputed are not PaymentIntent fields and reading them off one yields undefined rather than an error.

A latest_charge of null ends the job rather than starting it: the PaymentIntent was never confirmed, or no attempt produced a charge, so there is nothing to refund. Say that and stop.

On the charge, check four fields:

  • amount and currency: the only authority for what can be refunded.
  • amount_refunded: a charge refunded in part looks fully refundable from a dashboard glance.
  • status and refunded: a failed or already-refunded charge needs a different answer, not a write.
  • disputed: if a dispute is open, refunding is the wrong instrument. See step 5.

Confirm the mode with get_stripe_account_info first. A live-mode refund issued because the id was assumed to be a sandbox id cannot be undone.

2. Fix the amount in the smallest currency unit, explicitly

Omitting amount refunds the whole charge. A partial refund takes an integer in the smallest unit of the charge's currency, so a $12.34 refund is 1234 and a 1234 yen refund is 1234. Never derive the figure from a human-readable total in the conversation when the charge object is one read away, and say the figure and currency back to the user before writing.

3. State the intent, then write once

Before calling stripe_api_write, tell the user in one line what you are about to do: the charge id, the amount, the currency, the mode, and the reason (duplicate, fraudulent, or requested_by_customer). The reason is not decoration; fraudulent affects how Stripe treats the customer later, so do not pick it for a routine cancellation.

4. Expect Stripe's confirmation step and let the human do it

Stripe requires human confirmation before it performs certain writes, refunds among them. The call comes back with a confirmation URL instead of a refund. When that happens:

  • Pass the URL to the user and stop. They review the real amount on Stripe's own page and approve it there.
  • The approval expires after 24 hours.
  • After they approve, retry the same call once. Approval alone does not perform the refund.

Do not loop retrying while you wait, and do not route around the step by asking for an API key. The confirmation is the control that makes an agent with write access safe.

If a write errors ambiguously, list the charge's refunds before retrying and check whether one already landed. Reporting a refund that did not happen and issuing a second one are both worse than a slow answer.

5. A dispute is not a refund

A chargeback is the issuer taking the money back on the customer's word. Opening a refund on a disputed charge can cost you the amount twice and still lose the dispute. Read the dispute, then either submit evidence through its evidence fields or accept it deliberately. Say which one you did and why.

6. Report what actually changed

The refund id, the amount and currency, the status (pending and succeeded mean different things to the customer), and the mode. Tell the user the money typically reaches the customer in five to ten business days, because the next question is always when it arrives.

Anti-patterns

  • Refunding to make a dispute go away. It does not, and it can double the loss.
  • "Refund the last payment." Name the charge you picked and why, or the user cannot catch you picking the wrong one.
  • Guessing a partial amount from the thread. Read the charge.
  • Running the checklist against a PaymentIntent. The refund and dispute fields live on the charge; a PaymentIntent answers those questions with undefined, which reads like "no".
  • Treating a confirmation URL as an error. It is the system working.
  • Refunding when the user asked to cancel. Cancelling a subscription stops future invoices and refunds nothing. Do the one that was asked for, and say which.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

10x

무료요약 있음

Superset 사용 현황을 살펴보고 아직 쓰지 않는 기능 중 업무 방식에 맞는 항목을 제안합니다. 각 기능을 설명하고, 사용자가 고른 예약 실행 에이전트나 병렬 작업 공간, 공유 작업 등을 설정합니다.

  • 사용하지 않는 Superset 기능 찾기
  • 에이전트 예약 실행 설정
  • 여러 작업 공간에서 병렬 작업
ParadevAI/Paradev1.6만2026년 10월 29일 업데이트

automate

무료요약 있음

반복 작업을 Superset 자동화로 설정합니다. 에이전트 지침, 일정 또는 이벤트 조건, 실행 작업 공간을 정리하고 명시적인 확인을 받은 뒤 자동화를 만듭니다. 저장된 조건과 첫 실행 결과를 살펴 지침을 조정합니다.

  • 매일 또는 매주 작업 예약
  • GitHub에서 풀 리퀘스트가 열릴 때 실행
  • Slack의 지정된 반응을 계기로 실행
ParadevAI/Paradev1.6만2026년 10월 29일 업데이트

browser

무료요약 있음

Superset 작업 공간의 브라우저에서 페이지를 열고 클릭하거나 입력하며, 화면과 콘솔 정보를 확인합니다. 개발 중인 웹 앱 미리 보기, 폼 동작 및 화면 이동 점검에 활용할 수 있습니다.

  • 로컬 웹 앱 미리 보기
  • 페이지 화면 캡처
  • 콘솔 오류 확인
ParadevAI/Paradev1.6만2026년 10월 29일 업데이트

build-a-stripe-integration

무료요약 있음

Stripe 공식 문서와 API 매개변수 정의를 확인해 결제, 구독, 청구서, 웹훅 연동을 구현합니다. 적절한 제품 선택부터 샌드박스 테스트와 웹훅 처리까지 다루며, 결제와 구독 상태를 웹훅 이벤트로 판단합니다.

  • 정기 결제에 맞는 Stripe 제품 선택
  • Checkout 또는 청구서 처리 구현
  • 오작동하는 Stripe 연동 조사
ParadevAI/Paradev1.6만2026년 10월 29일 업데이트

cdp-verification

무료요약 있음

Chrome DevTools Protocol로 실행 중인 Electron 데스크톱 앱을 조작해 UI 변경을 확인하고 문제를 재현합니다. 실제 사용 흐름을 따라 화면 전환을 검증하고, 스크린샷과 경로·스크롤 위치·포커스·저장 상태를 기록해 비교합니다.

  • 실행 중인 앱에서 UI 문제 재현
  • 수정 후 화면 동작 확인
  • 화면 전환이 포함된 흐름 검증
ParadevAI/Paradev1.6만2026년 10월 29일 업데이트

ci-triage

무료요약 있음

GitHub Actions 실패 로그에서 최초 오류를 찾아 코드 결함, 환경 문제, 간헐적 실패, 기존 장애로 구분합니다. 기준 브랜치와 PR 변경 사항을 비교해 관련성을 설명하고 다음 조치를 정리합니다.

  • PR 검사 실패 원인 조사
  • 불안정한 테스트와 코드 결함 구분
  • 기준 브랜치의 기존 장애 확인
ParadevAI/Paradev1.6만2026년 10월 29일 업데이트

ParadevAI의 스킬 모두 보기

이 스킬의 문제 신고