개요
VibeFox Flutterwave Payment는 Flutterwave가 호스팅하는 결제 페이지(Flutterwave Standard, API v3)를 통해 PrestaShop에 Flutterwave 결제를 추가합니다. 결제 단계에서 고객은 Flutterwave를 선택하고 Flutterwave 페이지로 이동하여, 쇼핑몰의 Flutterwave 계정에서 활성화된 방법(카드, 은행 송금, USSD, 모바일 머니 등)으로 결제한 뒤 쇼핑몰로 돌아옵니다. 주문은 Flutterwave가 결제를 확인한 후에만 생성되므로, 중간에 포기한 결제로 인해 미결제 주문이 남지 않습니다.
나이지리아, 가나, 케냐, 남아프리카공화국, 동아프리카 및 아프리카 프랑스어권 쇼핑몰과 해외 카드를 받는 쇼핑몰에 적합합니다. 장바구니는 항상 장바구니 통화로 청구됩니다. 모듈은 일회성 결제만 지원합니다. 쇼핑몰 사이트 내 인라인 또는 모달 체크아웃, 저장된 카드, 구독, 분할 결제 또는 결제 플랜은 지원하지 않으며, Flutterwave 대시보드에서 처리한 환불은 PrestaShop과 동기화되지 않습니다.
주요 기능
호스팅 체크아웃: 장바구니 통화로 장바구니 총액에 대한 결제를 생성하고, 해당 통화의 소수 자릿수에 맞춰 반올림합니다(XOF, XAF, UGX, RWF 등은 소수 자릿수가 없습니다). Flutterwave 페이지에 표시할 결제 옵션을 제한할 수 있습니다.
Flutterwave 확인 시에만 결제 완료: 반환 URL이나 웹훅 본문은 그대로 신뢰하지 않습니다. 서버가 Flutterwave에서 모든 결제를 다시 조회하며, 참조가 해당 장바구니에 속하고 상태가 성공이며 금액과 통화가 일치할 때만 주문이 결제 완료로 표시됩니다.
서명된 웹훅: 설정한 비밀 해시가 있는 웹훅만 받습니다. 고객이 브라우저를 닫아도 결제를 확인합니다.
중복 처리 방지: 반복된 웹훅과 반환 요청이 두 번째 주문을 만들거나 결제를 두 번 기록하지 않습니다. 이전 결제 링크를 나중에 결제해도 받으며, 이미 결제된 주문에 대한 두 번째 결제는 환불 대상으로 표시됩니다.
대기 중인 결제 방법 처리: 은행 송금, USSD, 모바일 머니 결제가 아직 대기 중이면 Flutterwave가 확인할 때까지 주문이 Awaiting Flutterwave payment 상태로 유지됩니다.
주문 페이지에서 환불: 주문의 Flutterwave payment 블록에서 Flutterwave가 청구한 금액과 통화로 전액 및 부분 환불을 처리하며, 결제 당시 모드의 키를 사용합니다.
테스트 및 운영: 별도의 비밀 키를 사용합니다. 운영 모드에 테스트 키를 입력하거나 테스트 모드에 운영 키를 입력하면 결제 방법이 숨겨지고 경고가 표시됩니다.
주문 페이지의 Flutterwave 블록: 참조, 거래, 모드, 환불 내역, 주문의 Flutterwave 메모를 표시합니다. 키나 고객 데이터를 포함하지 않는 선택 사항인 로그를 사용할 수 있습니다.
요구 사항
PrestaShop 8.0 ~ 9.x, PHP 8.0 이상. 비밀 키가 있는 Flutterwave 계정과 비밀 해시를 설정한 웹훅. vibefox.net에서 발급받은 VibeFox 라이선스 키(도메인 하나당 키 하나).
