본문으로 건너뛰기

WalletAutoRecharge — 지갑 자동 충전

잔액이 정해 둔 기준 아래로 내려가면 알리거나 자동으로 충전합니다. (ADR-119)

무엇을 해결하나​

크레딧 차감이 관리자에게도 적용되는 운영에서는 잔액이 0이 되는 순간 업무가 멈춥니다. 사람이 잔액을 계속 지켜보게 하는 대신, 시스템이 감시하고 계정이 정한 방식으로 대응합니다.

회원·관리자가 선택하는 3가지 모드​

내 지갑 › 자동 충전 (/user/wallet/auto-recharge) 에서 본인이 고릅니다.

모드동작
사용 안 함 (기본)아무 일도 일어나지 않습니다
알림만 받기기준 아래로 내려가면 알려 드립니다. 충전은 직접 합니다
자동 충전저장된 결제수단으로 자동 결제합니다

자동 충전은 결제수단·충전 상품·기준 잔액·충전 금액이 모두 설정돼야 켜집니다. 하나라도 비어 있으면 저장이 거부되고 무엇이 빠졌는지 알려 드립니다 — 켜 두고 매번 실패하는 상태를 만들지 않기 위해서입니다.

안전장치​

금전 자동화는 실수의 대가가 즉시 돈으로 나타나므로, 방어를 여러 겹 둡니다.

장치막는 것
일 한도 / 월 한도설정 실수로 인한 무한 충전
최소 간격(쿨다운)잔액이 기준 근처에서 오르내릴 때의 연쇄 충전
중복 발동 차단여러 경로가 동시에 감지해도 결제는 한 번
연속 실패 시 자동 정지만료된 카드로 매 주기 실패하는 상태
기본 사용 안 함플러그인을 켜는 것만으로는 아무 것도 결제되지 않음

한도 기본값은 무제한이 아니라 유한값입니다. 무제한이 기본이면 설정 실수 하나가 그대로 무한 충전이 되기 때문입니다. 사이트 정책에 맞게 올리십시오.

운영자 가이드​

활성화​

php artisan migrate   # plg_wallet_autorecharge_settings / _attempts

자동 결제까지 쓰려면 Commerce 플러그인과 충전 상품이 필요합니다. Commerce 없이도 알림 모드는 정상 동작합니다.

충전 상품 준비​

충전 상품은 상품 설정에 적립 크레딧을 선언한 상품입니다(Wallet 충전과 같은 방식). 자동 충전은 이 선언을 근거로 적립하므로, 선언이 없는 상품은 결제 자체를 거부합니다 — 그대로 두면 돈만 나가고 크레딧은 들어오지 않기 때문입니다.

현황 확인 — 회원 관리 › 지갑 자동 충전​

누가 자동 결제를 켜 뒀는지, 누가 연속 실패로 멈춰 있는지 한눈에 봅니다. 자동 결제를 켠 계정은 눈에 띄게 표시됩니다(돈이 자동으로 나가는 계정이므로).

멈춘 계정은 자동 정지 해제 액션으로 되살립니다. 실패 횟수도 함께 초기화됩니다 — 남겨 두면 다음 실패 한 번에 곧바로 다시 멈추기 때문입니다.

운영자 화면은 읽기 전용입니다. 남의 결제 조건을 대신 바꾸면 "누가 결제를 위임했는가"가 흐려지므로, 설정 변경은 계정 본인만 할 수 있습니다.

이력 확인 — 회원 관리 › 자동 충전 이력​

성공·실패뿐 아니라 정책이 막은 것도 사유와 함께 남습니다. "왜 충전이 안 됐지"라는 문의에 답할 수 있어야 하기 때문입니다.

상태의미조치
충전 완료크레딧이 적립됨—
결제 실패결제수단 문제회원에게 결제수단 확인 안내
정책 차단한도·쿨다운 등 정상 동작필요 시 한도 조정
알림 발송알림만 하는 모드—

배치​

php artisan wallet:autorecharge-scan            # 실제 처리
php artisan wallet:autorecharge-scan --dry-run # 무엇이 발동될지만 확인 (결제·알림 없음)

차감이 일어난 직후에도 즉시 감지하므로, 배치는 누락 복구를 담당합니다 (크레딧 만료·회수처럼 차감 없이 잔액이 줄어드는 경우).

알림​

시점내용
기준 도달잔액이 기준 아래로 내려갔습니다
충전 완료얼마가 충전되고 잔액이 얼마가 됐습니다
결제 실패실패 사유와 함께 결제수단 확인 안내
자동 정지연속 실패로 멈췄으니 결제수단을 갱신하고 다시 켜 달라는 안내

문안과 채널은 알림 설정에서 사이트별로 바꿀 수 있습니다.

알려진 제한​

카드 만료 예고 알림은 아직 없습니다. 결제수단에 만료일이 저장되지 않아 미리 판단할 수 없기 때문입니다. 다만 만료된 카드는 결제 실패로 나타나고 연속 실패 시 자동 정지 + 알림이 발송되므로, 사후 통보는 됩니다.

관련​