뒤로

VibeFox ECPay for WooCommerce — 도움말

요구 사항

WordPress: 6.0 이상.

WooCommerce: 8.0 이상, 설치 및 활성화되어 있어야 합니다.

PHP: 8.0 이상.

쇼핑몰 통화: 신대만달러(TWD). ECPay는 TWD로만 결제를 처리하며, 쇼핑몰 또는 결제 대상 주문이 다른 통화를 사용하는 경우 해당 결제 방법은 표시되지 않습니다. ECPay는 소수점을 받지 않으므로 금액은 정수 TWD로 전송됩니다. 주문 합계는 가장 가까운 달러로 반올림됩니다. 반올림을 피하려면 TWD 가격을 소수점 0자리로 설정하세요.

ECPay 계정: 실결제를 위해서는 ECPay 가맹점 백오피스(vendor.ecpay.com.tw)에서 발급받은 ECPay 가맹점 계정의 MerchantID, HashKey, HashIV가 필요합니다. 테스트에는 ECPay 계정이 필요하지 않습니다.

사이트 접근: ECPay가 결제 알림을 전달할 수 있도록 사이트는 80/443 포트에서 HTTP/HTTPS로 인터넷에서 접근 가능해야 합니다. 유지보수 모드, 방화벽 또는 사이트 앞단의 기본 인증은 알림을 차단합니다.

VibeFox 라이선스 키: vibefox.net에서 구매합니다. 키 하나는 도메인 하나에서 작동합니다.

설치

1. WordPress에서 Plugins > Add New > Upload Plugin으로 이동하여 플러그인 ZIP 파일을 선택하고 Install Now를 클릭합니다. FTP로 wcp_ecpay_payment_gateway 폴더를 /wp-content/plugins/에 업로드할 수도 있습니다.

2. Activate를 클릭합니다. WooCommerce가 활성화되어 있어야 합니다.

3. 설정을 엽니다: WooCommerce > Settings > Payments > ECPay (綠界) > Manage, 또는 플러그인 페이지에서 플러그인 이름 아래의 Settings를 클릭합니다.

4. 페이지 상단의 라이선스 영역에 VibeFox 라이선스 키를 입력하고 Activate를 클릭합니다.

5. Enable/Disable을 켜고 결제 방법을 선택한 다음, 첫 테스트를 위해 Test Mode를 켜 둡니다. 샌드박스에서는 ECPay 테스트 카드 4311-9522-2222-2222(향후 임의의 만료일, CVV 222, 샌드박스 페이지의 3-D Secure 코드)로 결제할 수 있습니다.

6. 실결제를 위해 MerchantID, HashKey, HashIV를 입력하고(구성 참조) Test Mode의 선택을 해제합니다.

구성

모든 설정은 한 페이지에 있습니다: WooCommerce > Settings > Payments > ECPay (綠界). 필드 위에는 쇼핑몰 통화가 TWD가 아닐 때(이 경우 ECPay는 체크아웃에 표시되지 않음) 및 운영 모드에 MerchantID, HashKey, HashIV가 없을 때 오류가 표시됩니다. 테스트 모드가 켜져 있는 동안에는 결제가 공개 테스트 가맹점 3002607을 사용하는 ECPay 샌드박스로 전송되며 금액이 청구되지 않는다는 점, 그리고 공개 샌드박스 키를 아는 누구나 테스트 주문을 확인할 수 있다는 점을 경고하므로, 실제 주문을 받기 전에 테스트 모드를 꺼야 합니다.

일반

Enable/Disable: Enable ECPay Payment로 결제 방법을 켜거나 끕니다. 기본값: 꺼짐.

Title: 체크아웃 시 고객에게 표시되는 결제 방법 이름입니다. 기본값: ECPay (綠界).

Description: 체크아웃 시 결제 방법 아래에 표시되는 텍스트입니다. 기본값: Pay securely via ECPay (Credit Card, ATM, CVS, Barcode).

ECPay 계정

MerchantID, HashKey, HashIV는 ECPay 가맹점 백오피스(vendor.ecpay.com.tw)의 System development management > System integration settings(系統開發管理 > 系統介接設定)에서 확인할 수 있습니다.

Test Mode: Enable sandbox/test mode는 공개 ECPay 테스트 가맹점 3002607을 사용하여 결제를 ECPay 샌드박스(payment-stage.ecpay.com.tw)로 전송합니다. 실제 금액은 발생하지 않습니다. 아래 자격 증명은 테스트 모드가 꺼져 있을 때만 사용됩니다. 기본값: 켜짐.

Merchant ID: 운영용 ECPay Merchant ID입니다. 테스트 모드에서는 무시됩니다.

Hash Key: 운영용 ECPay Hash Key입니다. 테스트 모드에서는 무시됩니다.

Hash IV: 운영용 ECPay Hash IV입니다. 테스트 모드에서는 무시됩니다.

붙여넣은 자격 증명에 공백이나 줄바꿈이 있으면 모든 서명이 깨지므로, 저장 시 자동으로 제거되며 페이지에서 이를 알려줍니다.

결제 옵션

Enabled Payment Methods: 고객에게 제공되는 결제 방법입니다. 두 가지 이상 선택하면 고객이 체크아웃 시 선택합니다. ATM, CVS, Barcode 주문은 고객이 결제할 때까지 보류 중 상태로 유지됩니다. 최소 하나의 방법을 선택해야 하며, 선택하지 않으면 Credit Card가 활성화됩니다. 기본값: Credit Card.

Credit Card: Visa, MasterCard, JCB.
ATM (Virtual Account): 고객이 가상 은행 계좌를 받아 돈을 송금합니다.
CVS (Convenience Store): 고객이 7-ELEVEN, FamilyMart, Hi-Life 또는 OK mart의 결제 코드를 받습니다.
Barcode: 고객이 편의점 바코드를 받습니다.

Default Payment Method: 미리 선택되는 방법입니다. 활성화된 방법 중 하나여야 하며, 그렇지 않으면 활성화된 첫 번째 방법이 사용됩니다. 기본값: Credit Card.

Order Prefix: ECPay 거래 번호(MerchantTradeNo)의 접두사로, 최대 5자의 문자 또는 숫자입니다. 다른 문자는 저장 시 제거됩니다. 여러 쇼핑몰이 하나의 ECPay 계정을 공유할 때 각 쇼핑몰에 고유한 접두사를 지정하면 유용합니다. 기본값: EC.

결제 알림

ECPay는 결제 결과를 쇼핑몰로 전송합니다. 이 섹션에는 알림 URL이 표시됩니다. 형식은 다음과 같습니다: https://your-site/wc-api/ecpay_p_callback/. 이 URL은 모든 결제와 함께 전송되므로 ECPay 측에서 설정할 필요는 없지만, 유지보수 모드, 방화벽, 기본 인증 없이 80/443 포트에서 인터넷으로 접근 가능해야 합니다.

각 알림은 결제가 시작된 환경(테스트 또는 운영)의 키로 CheckMacValue 서명을 통해 확인됩니다. 유효한 서명이 없는 알림은 거부되며 ECPay가 다시 전송합니다. 알림이 없으면 어떤 주문도 결제 완료로 표시되지 않으므로, ECPay 백오피스에서 결제를 확인하세요.

고급

Enable Logging: Log payment events and API calls는 주문 ID, 거래 번호, 금액, ECPay 반환 코드를 WooCommerce > Status > Logs(소스: wcp_ecpay_payment_gateway)에 기록합니다. 키나 고객 데이터는 기록되지 않습니다. 기본값: 꺼짐.

Delete Data on Uninstall: Delete all plugin data when uninstalling. 이 플러그인의 모든 설정, 로그, 주문 메타데이터를 제거합니다. 기본값: 꺼짐.

체크아웃

고객은 결제 방법을 선택합니다(기본값 ECPay (綠界)). 여러 방법이 활성화된 경우 고객은 Credit Card, ATM (Virtual Account), CVS (Convenience Store) 또는 Barcode도 선택합니다. 테스트 모드가 켜져 있는 동안 결제 방법에는 TEST MODE — ECPay sandbox, no real money is charged.가 표시됩니다.

주문이 완료되면 고객에게 Redirecting to ECPay for payment. Please wait...가 표시되고 ECPay 결제 페이지로 이동하며, 리디렉션이 시작되지 않을 경우를 위한 Proceed to ECPay 버튼이 제공됩니다. 주문 합계는 상품명과 수량과 함께 정수 TWD로 전송됩니다. ECPay 페이지는 대만 및 홍콩 사이트 언어의 경우 번체 중국어로, 간체 중국어, 한국어, 일본어 사이트 언어의 경우 각 해당 언어로, 그 외 모든 언어의 경우 영어로 열립니다.

주문은 ECPay가 서명된 서버 알림으로 확인한 후에만 결제 완료로 표시됩니다. 확인이 도착하기 전에 고객이 주문 접수 페이지로 돌아오면 페이지에 We have not received a payment confirmation from ECPay for this order yet. If you did not complete the payment, you can try again:와 Pay 버튼이 표시됩니다.

ATM, CVS, Barcode의 경우 고객이 먼저 결제 정보를 받습니다. 주문은 보류 중 상태가 되며, 은행 코드와 가상 계좌, 편의점 결제 코드 또는 바코드, 금액, Pay before 날짜가 감사 페이지의 ECPay payment instructions, My account > Orders, 보류 중 주문 이메일에 표시됩니다. 고객이 결제하면 ECPay가 또 다른 알림을 보내고 주문이 결제 완료로 표시됩니다.

ECPay는 재사용된 번호를 거부하므로 결제 페이지를 방문할 때마다 새로운 ECPay 거래 번호가 생성됩니다. 따라서 Pay for order 페이지와 결제 실패 후 재시도가 정상적으로 작동하며, 이 번호 중 어느 것에 대한 알림도 해당 주문과 일치됩니다. 주문당 최대 30회의 결제 시도가 가능합니다.

편의점 결제 등 방법별 ECPay 자체 금액 한도는 체크아웃이 아니라 ECPay 페이지에서 확인됩니다.

이 결제 방법은 클래식 체크아웃, 체크아웃 블록, Pay for order 페이지에서 작동합니다. WooCommerce High-Performance Order Storage(HPOS)와 호환됩니다.

플러그인은 ECPay 페이지에서 일회성 결제만 받습니다. WooCommerce에서의 환불, 저장된 카드, 구독 또는 정기 결제(定期定額), 할부, Apple Pay, TWQR, WeChat Pay, BNPL, WebATM, 전자 세금계산서, 물류, 서버 측 상태 조회는 지원하지 않습니다. 사이트가 알림을 받을 수 없는 경우 ECPay 백오피스에서 결제를 확인하세요.

주문

주문 상태

Pending payment: 고객이 ECPay로 이동했지만 아직 결제하지 않았거나 알림이 아직 도착하지 않았습니다.

On hold, waiting for payment: 고객이 ATM, CVS 또는 Barcode를 선택하고 결제 정보를 받았습니다. 주문 메모에는 은행 코드와 가상 계좌, 결제 코드 또는 바코드, 기한이 표시됩니다.

Processing: 결제가 확인되었습니다(WooCommerce 기본값. 가상 다운로드 상품만 있는 주문은 완료됨으로 전환됩니다). 주문 메모에는 ECPay TradeNo, 결제 유형, 금액, 거래 번호가 표시됩니다. 거래 ID는 ECPay TradeNo입니다.

On hold after payment: ECPay가 주문과 다른 금액이나 통화를 보고했거나, 운영 모드로 전환한 후 샌드박스 결제가 도착했거나(실제 금액은 발생하지 않음), 주문이 취소된 후 결제가 도착한 경우입니다. 주문 메모에 이유가 설명되어 있습니다. ECPay 백오피스와 대조하여 수동으로 주문을 완료하거나 환불하세요.

Failed: ECPay가 최근 결제 시도가 실패했다고 보고했습니다. 메모에는 ECPay 반환 코드와 메시지가 표시됩니다. 고객은 다시 시도할 수 있습니다.

중복된 알림은 무시됩니다. 결제 완료·취소·환불된 주문은 오래된 알림으로 다시 열리지 않습니다. 이미 결제된 주문에 대한 두 번째 결제(예: 두 개의 브라우저 탭에서)는 주문 메모로 기록되어 ECPay 백오피스에서 환불할 수 있습니다. ECPay 백오피스에서 시작된 시뮬레이션 결제는 기록만 되며, ECPay가 해당 결제에 대해 금액을 청구하지 않으므로 주문을 결제 완료로 표시하지 않습니다.

환불

WooCommerce에서의 환불은 사용할 수 없습니다. ECPay 백오피스에서 결제를 환불한 다음, WooCommerce에 환불을 수동으로 기록하세요.

라이선스 키

플러그인은 vibefox.net에서 받은 VibeFox 라이선스 키로 작동합니다. 라이선스 영역은 WooCommerce > Settings > Payments > ECPay (綠界) 상단에 있습니다. 키를 License key에 붙여넣고 Activate를 클릭합니다. 영역에는 라이선스 유효 기한과 도메인 등의 상태가 표시됩니다. Check now로 상태를 다시 확인하고, Change key로 다른 키를 입력하고, Remove key로 이 사이트에서 키를 제거합니다. Manage licenses and domains in your account 링크는 vibefox.net 계정을 엽니다.

키 하나는 도메인 하나에서 작동합니다. 사이트에서 키를 제거해도 해당 도메인 슬롯은 해제되지 않습니다. vibefox.net 계정에서 슬롯을 해제하세요.

활성 키가 없으면 ECPay는 체크아웃 시 고객에게 표시되지 않습니다. 그래도 결제가 시작되면 고객에게 This payment method is not available. Please choose another one.가 표시됩니다. 로그인한 쇼핑몰 관리자는 (unlicensed — visible to admins only)로 표시된 결제 방법을 계속 볼 수 있으므로 키를 구매하기 전에 플러그인을 설정하고 테스트할 수 있습니다. 플러그인 페이지와 WooCommerce 페이지에 알림이 표시됩니다. 기존 주문에는 영향이 없으며, 이미 시작된 결제는 그대로 확인됩니다.

라이선스가 만료되면 플러그인은 계속 작동하지만 업데이트와 지원을 받으려면 갱신이 필요합니다. 상태는 백그라운드에서 자동으로 다시 확인됩니다.

문제 해결

ECPay가 체크아웃에 표시되지 않음: 라이선스가 활성 상태인지, Enable/Disable이 켜져 있는지, 쇼핑몰 통화가 TWD인지, 운영 모드에서 Merchant ID, Hash Key, Hash IV가 설정되어 있는지 확인하세요. 설정 페이지는 이러한 각 경우에 오류를 표시합니다.

결제가 완료되었지만 주문이 결제 대기 중 상태로 남아 있음: ECPay 알림이 사이트에 도달하지 못했습니다(사이트 다운, 방화벽, 유지보수 모드, 기본 인증). ECPay는 여러 번 재시도합니다. ECPay 백오피스에서 거래를 확인하고 수동으로 주문을 완료할 수도 있습니다. Enable Logging을 켜서 플러그인이 수신한 알림을 확인하세요.

알림이 0|CheckMacValue verification failed를 반환: Hash Key 또는 Hash IV가 ECPay 계정과 일치하지 않습니다. ECPay 백오피스에서 다시 복사하세요.

알림이 0|MerchantID mismatch를 반환: 알림이 결제를 시작한 가맹점과 다른 ECPay 가맹점에 속해 있습니다.

알림이 0|Order not found를 반환: 거래 번호가 이 쇼핑몰에서 발급되지 않았습니다. 여러 쇼핑몰이 하나의 ECPay 계정을 공유하는 경우 등입니다. 각 쇼핑몰에 고유한 Order Prefix를 지정하세요.

고객에게 The order total is too small for ECPay.가 표시됨: 반올림 후 주문 합계가 1 TWD 미만이어서 ECPay로 결제할 수 없습니다.

주문이 금액 불일치 메모와 함께 보류 중 상태: ECPay가 보고한 금액이 주문 합계와 다릅니다. 예를 들어 고객이 결제를 시작한 후 주문이 수정된 경우입니다. ECPay 백오피스와 대조하여 수동으로 주문을 완료하거나 환불하세요.

주문이 샌드박스 결제 후 보류 중 상태: 결제가 테스트 모드에서 이루어졌지만 쇼핑몰이 현재 운영 모드입니다. 실제 금액은 발생하지 않았습니다. 주문을 수동으로 확인하세요.

고객에게 Too many payment attempts for this order가 표시됨: 주문이 30회 결제 시도에 도달했습니다. 고객에게 새 주문을 요청하세요.

라이선스 영역에 오류가 표시됨: 영역의 메시지를 따르세요. 예를 들어 키가 이미 다른 도메인에서 사용 중이라면 vibefox.net 계정에서 슬롯을 해제하고 Check now를 클릭하세요. 사이트 주소가 변경된 경우 Check now를 클릭하여 새 도메인에 대해 키를 활성화하세요. 라이선스 서버에 연결할 수 없으면 플러그인은 마지막으로 알려진 상태로 계속 작동합니다.

제거

플러그인을 비활성화해도 모든 데이터는 유지됩니다. 제거하려면 Plugins 페이지에서 비활성화한 후 삭제하세요. 이 플러그인의 라이선스 키와 라이선스 상태는 항상 제거됩니다. 설정, 주문에 저장된 ECPay 데이터, 로그는 Delete Data on Uninstall이 켜져 있던 경우에만 제거됩니다. 그렇지 않으면 나중에 재설치할 때를 위해 남아 있습니다. 기존 주문은 결제 메모와 거래 ID를 유지합니다.

ECPay는 해당 소유자의 상표입니다. 이 플러그인은 ECPay와 제휴 관계가 없으며 ECPay의 승인을 받지 않았습니다.