개요
VibeFox Razorpay Payment는 PrestaShop에 Razorpay 결제를 추가합니다. 고객은 쇼핑몰의 결제 페이지에서 열리는 Razorpay Checkout 팝업에서 결제합니다. 팝업에는 Razorpay 계정에서 활성화된 결제 수단이 표시되며, 예를 들어 UPI, 신용카드 및 체크카드, NetBanking, 전자지갑 등이 있습니다. 카드 및 은행 정보는 쇼핑몰이 아니라 Razorpay 팝업에 입력됩니다. 주문은 Razorpay가 결제를 확인한 후에만 생성되므로, 중단된 결제로 미결제 주문이 남지 않습니다.
인도의 쇼핑몰과 UPI 및 현지 결제 수단을 제공하려는 Razorpay 계정을 보유한 다른 쇼핑몰에 적합합니다. INR 이외의 통화는 Razorpay 계정에서 International Payments가 활성화되어 있어야 합니다. 모듈은 일회성 결제만 지원합니다. 구독, 저장된 카드, Razorpay Magic Checkout, Payment Links, Route(분할 결제), 혜택 위젯은 지원하지 않습니다.
주요 기능
Razorpay가 확인한 경우에만 결제 완료: 모듈은 Razorpay 서명을 검증하고 Razorpay API에서 결제 정보를 가져옵니다. 장바구니 금액과 통화가 정확히 일치하는 결제만 주문을 결제 완료로 표시합니다. 일치하지 않으면 주문은 메모와 함께 Razorpay payment on hold 상태가 됩니다.
웹훅: 서명된 웹훅은 고객이 결제 직후 브라우저를 닫아도 결제를 확인합니다. 유효한 서명이 없는 웹훅은 거부됩니다.
이중 결제 방지: 장바구니가 이미 Razorpay에서 결제된 경우, 모듈은 두 번째 결제를 요청하지 않고 기존 결제를 찾습니다. 반복되는 콜백과 웹훅으로 주문이 두 번 생성되지 않습니다.
Authorize & Capture 또는 Authorize Only: 즉시 청구하거나, 금액을 예약해 두었다가 나중에 주문 페이지의 Capture Razorpay payment로 캡처합니다.
주문 페이지에서 환불: 주문의 Razorpay payment 블록에서 전액 및 부분 환불이 가능합니다. 환불 한도는 Razorpay가 실제로 청구한 금액까지입니다. Razorpay Dashboard에서 이루어진 환불은 주문에 기록됩니다.
테스트 및 운영 모드: 테스트용 키와 운영용 키를 분리하여 사용합니다. 주문의 결제, 캡처, 환불은 항상 해당 주문이 결제된 모드의 키를 사용합니다.
모든 통화에서 정확한 금액: 소수점 두 자리 통화, 소수점이 없는 통화(JPY, KRW 등), 소수점 세 자리 통화(KWD, BHD, OMR)를 Razorpay가 요구하는 방식으로 전송합니다.
주문 페이지의 Razorpay 블록: 결제 ID, 환불 내역, 메모. 키나 고객 연락처 정보가 없는 로그를 기록합니다.
요구 사항
PrestaShop 8.0 ~ 9.x, PHP 8.0 이상. Key ID와 Key Secret이 있는 Razorpay 계정과 웹훅(권장). vibefox.net에서 받은 VibeFox 라이선스 키(도메인 하나당 키 하나).
