VibeFox Datatrans for OpenCart — 도움말
요구 사항
OpenCart: 3.0.x (3.0.5.0에서 테스트됨) 또는 4.0.2 이상(4.1.0.3에서 테스트됨).
PHP: 8.0 이상.
Datatrans 계정: 가맹점 ID(merchant ID), 서버 간 API 비밀번호, 그리고 웹훅용 HMAC-SHA256 서명 키(권장)가 필요합니다. 샌드박스 자격 증명은 Datatrans 샌드박스 Web Admin(admin.sandbox.datatrans.com)에서, 운영 자격 증명은 운영 Web Admin(admin.datatrans.com)에서 받을 수 있습니다. 샌드박스와 운영은 가맹점 ID와 키가 서로 다른 별도의 Datatrans 계정입니다.
접근 가능한 쇼핑몰: Datatrans는 자체 서버에서 웹훅을 보내므로, 쇼핑몰은 인터넷에서 접근할 수 있어야 합니다.
VibeFox 라이선스 키: vibefox.net에서 구매합니다. 키 하나는 도메인 하나에서 사용할 수 있습니다.
설치
다운로드는 두 OpenCart 버전용 패키지가 들어 있는 zip 파일 하나입니다. 컴퓨터에서 압축을 푸십시오. 압축 파일에는 README.txt, OpenCart 3용 패키지 wcp_datatrans_gateway-oc3-(version).ocmod.zip, OpenCart 4용 패키지 wcp_datatrans_gateway.ocmod.zip이 들어 있습니다. 사용 중인 OpenCart 버전의 패키지만 설치하십시오. 라이선스 키는 두 버전 모두 같습니다.
OpenCart 3
1. 관리자 페이지에서 Extensions > Installer로 이동하여 Upload를 클릭하고 wcp_datatrans_gateway-oc3-(version).ocmod.zip 파일을 선택합니다. 이 확장 프로그램에는 OCMOD 수정 사항이 없으므로 Extensions > Modifications를 새로 고칠 필요가 없습니다. 설치 프로그램 대신 이 패키지의 upload 폴더 내용을 쇼핑몰의 루트 폴더에 복사해도 됩니다.
2. Extensions > Extensions로 이동하여 유형을 Payments로 선택합니다. VibeFox Datatrans Gateway를 찾아 Install(녹색 + 버튼)을 클릭합니다. 관리자 사용자에게는 결제 확장 프로그램 목록을 수정할 권한이 있어야 합니다.
3. Edit(연필 버튼)를 클릭하여 설정 페이지를 엽니다. 페이지 상단의 라이선스 블록에 있는 License key 항목에 VibeFox 라이선스 키를 붙여 넣고 Activate를 클릭합니다(라이선스 키 항목 참조).
4. Datatrans 샌드박스 Web Admin에서 받은 샌드박스 자격 증명을 입력합니다(설정 항목 참조).
5. Enable/Disable을 켜고 Save를 클릭합니다. 샌드박스 모드에서 테스트 결제를 진행하십시오. 모든 것이 정상 작동하면 운영 자격 증명을 입력하고 Sandbox mode를 끕니다.
OpenCart 4
1. 관리자 페이지에서 Extensions > Installer로 이동한 뒤 Upload를 클릭하고 wcp_datatrans_gateway.ocmod.zip 파일을 선택합니다. 파일 이름을 바꾸지 마십시오. OpenCart 4는 확장 프로그램 코드를 파일 이름에서 가져오므로, 이름을 바꾼 패키지는 작동하지 않습니다.
2. 설치된 확장 프로그램 목록에 패키지가 같은 페이지에 나타납니다. 그 옆의 Install(녹색 + 버튼)을 클릭하십시오.
3. Extensions > Extensions로 이동하여 유형을 Payments로 선택합니다. VibeFox Datatrans Gateway를 찾아 Install(녹색 + 버튼)을 클릭한 다음 Edit(연필 버튼)을 클릭합니다.
4. 라이선스 키와 Datatrans 자격 증명을 입력하고, OpenCart 3의 3~5단계와 같이 결제를 테스트하십시오. 설정 페이지와 필드는 두 버전에서 같습니다. 웹훅 URL만 다릅니다(Configuration 참조).
새로 설치하면 결제 수단은 꺼진 상태이고 샌드박스 모드는 켜진 상태로 시작합니다. 웹훅 URL은 거래마다 Datatrans로 전송되므로 따로 설정할 필요가 없습니다.
설정
모든 설정은 확장 프로그램 페이지에 있습니다: Extensions > Extensions > Payments > VibeFox Datatrans Gateway > Edit. 섹션은 왼쪽에 나열되며, 목록 아래의 Save 버튼은 페이지 전체를 저장합니다. 결제 수단은 활성화되어 있지만 현재 환경에 가맹점 ID나 API 비밀번호가 없으면, 페이지에 누락된 항목과 함께 Datatrans is hidden at checkout until these settings are filled in:가 표시됩니다. 샌드박스 모드가 켜져 있는 동안에는 페이지에 Sandbox mode is on: payments go to the Datatrans sandbox, no real money is charged.가 표시됩니다. 확장 프로그램을 수정할 권한이 없으면 설정은 보이지만 저장할 수 없습니다.
저장할 때 Title은 비어 있거나 128자를 초과할 수 없으며, Sort Order는 정수여야 하고, Total은 0 이상의 숫자여야 하며, 지역(geo zone)과 주문 상태는 존재해야 합니다. 그렇지 않으면 아무것도 저장되지 않고 페이지에 오류가 표시됩니다. 16진수 문자열이 아닌 서명 키는 저장되지 않습니다. 이전 값이 유지되고 나머지 설정은 저장되며, 페이지에는 해당 항목 이름을 알려주는 경고가 표시됩니다.
Datatrans
Enable/Disable: Enable Datatrans Payment는 결제 수단을 켜거나 끕니다. 기본값: 끔.
Title: 고객이 결제 단계에서 보는 결제 수단 이름입니다. 주문에 저장되는 결제 수단 이름이기도 합니다. 기본값: Datatrans. 필수, 최대 128자.
Description: Confirm Order 단계에서 확인 버튼 위에 고객에게 표시되는 텍스트입니다. 기본값: Pay securely via Datatrans.
Sandbox mode: Datatrans 샌드박스를 사용합니다. 테스트 결제만 이루어지며 실제 돈은 청구되지 않습니다. 이 스위치는 Datatrans 서버와 새 결제에 사용되는 자격 증명을 모두 전환합니다. 기본값: 켜짐. 실결제를 받으려면 끕니다. 켜져 있는 동안 고객은 Confirm Order 단계에서 Sandbox mode: no real payment is taken.를 보게 됩니다. 환불과 캡처는 이 스위치 설정과 관계없이 항상 결제가 이루어진 환경을 사용합니다.
Sort Order: 결제 단계에서 결제 수단 중 Datatrans의 표시 순서입니다. 비워 두거나 정수를 입력합니다.
Geo Zone: 선택한 지역(geo zone)의 결제 주소에 대해서만 Datatrans를 제공합니다. 기본값: All zones. 지역은 System > Localisation > Geo Zones에서 설정합니다.
Total: Datatrans를 제공하기 전에 주문이 도달해야 하는 결제 금액으로, 쇼핑몰 기본 통화 기준입니다. 비워 두면 금액과 관계없이 Datatrans를 제공합니다.
샌드박스 자격 증명
Datatrans 샌드박스 Web Admin(admin.sandbox.datatrans.com, 해당 페이지에 링크가 있습니다)에서 복사합니다. 서명 키는 그곳의 보안 설정에 있습니다.
Sandbox merchant ID: 샌드박스 계정의 가맹점 ID입니다.
Sandbox API password: 샌드박스 계정의 서버 간 API 비밀번호입니다.
Sandbox HMAC sign key: 웹훅의 Datatrans-Signature 헤더를 검증하는 데 사용되는 16진수 키입니다. 이 키가 없으면 모든 웹훅은 Datatrans 상태 API로 다시 확인됩니다.
운영 자격 증명
Datatrans 운영 Web Admin(admin.datatrans.com)에서 복사합니다.
Production merchant ID: 운영 계정의 가맹점 ID입니다.
Production API password: 운영 계정의 서버 간 API 비밀번호입니다.
Production HMAC sign key: 운영 웹훅의 Datatrans-Signature 헤더를 검증하는 데 사용되는 16진수 키입니다. 이 키가 없으면 모든 웹훅은 Datatrans 상태 API로 다시 확인됩니다.
저장된 비밀번호와 서명 키는 다시 표시되지 않습니다. 항목은 비어 있으며 Saved — leave empty to keep it.가 표시됩니다. 변경하려는 경우에만 새 값을 입력합니다. 저장된 값을 삭제하려면 항목 아래의 Clear the saved value on save를 체크한 다음 Save를 클릭합니다.
웹훅 URL
이 섹션에는 쇼핑몰의 웹훅 URL이 표시됩니다. 형식은 OpenCart 3에서는 https://your-store/index.php?route=extension/payment/wcp_datatrans_gateway/webhook, OpenCart 4에서는 https://your-store/index.php?route=extension/wcp_datatrans_gateway/payment/wcp_datatrans_gateway.webhook과 같으며, OpenCart 설치의 스토어프런트 주소로 만들어집니다. 확장 프로그램은 거래마다 이 URL을 Datatrans로 보내므로, 어디에도 직접 입력할 필요가 없습니다. Datatrans Web Admin의 웹훅 설정에도 입력할 수 있으며, 그러면 그곳에서 이루어진 캡처와 취소에 대한 업데이트를 받을 수 있습니다. 설정에 표시된 그대로 복사하십시오. Datatrans Web Admin에서 이루어진 환불은 주문에 반영되지 않습니다.
웹훅은 거래의 상태를 알려줍니다. 확장 프로그램은 다음 상태에 따라 동작합니다:
HMAC 서명 키가 있으면, 각 웹훅은 결제가 이루어진 환경의 서명 키로 Datatrans-Signature 헤더를 통해 검증됩니다. 유효한 서명이 없는 웹훅은 거부됩니다. 서명 키가 없으면 확장 프로그램은 웹훅 내용을 신뢰하지 않고, 모든 웹훅을 Datatrans 상태 API로 확인합니다. 웹훅이 없으면, 고객이 결제 후 쇼핑몰로 돌아왔을 때에만 주문이 상태를 받습니다.
결제 처리
Auto settle: 결제를 즉시 캡처(정산)합니다. 끄면 결제는 승인만 되며, 주문은 보류 상태가 됩니다. 나중에 주문 탭의 Capture Datatrans payment로 캡처하거나, Cancel Datatrans authorization으로 승인을 해제할 수 있습니다. 기본값: 켜짐.
OpenCart는 Confirm Order 단계에서 상태가 없는 주문(누락된 주문)을 만듭니다. Datatrans가 결제를 확인한 후에만 주문에 상태가 부여됩니다. 실패하거나 취소된 결제는 주문을 상태 없이 남기며, 장바구니는 유지됩니다. 아래 각 항목에는 귀하의 OpenCart 주문 상태가 나열됩니다.
Order status after payment: 결제가 정산되고 금액과 통화가 일치할 때 주문에 부여되는 상태입니다. 기본값: Processing.
Datatrans payment on hold: 승인만 된 결제(Auto settle 꺼짐), 금액 또는 통화 불일치, 그리고 주문이 취소된 후에 도착한 결제에 사용됩니다. 메모에 이유가 설명됩니다. 기본값: Pending. OpenCart에는 On hold 상태가 없기 때문입니다. System > Localisation > Order Statuses에서 직접 상태를 만들어 여기서 선택할 수 있습니다.
Authorization canceled: Cancel Datatrans authorization을 사용하거나 Datatrans Web Admin에서 승인이 해제되었을 때 설정됩니다. 기본값: Canceled.
Refunded: 주문 페이지에서 결제가 전액 환불된 후 설정됩니다. 기본값: Refunded.
고급
Logging: 결제 이벤트와 API 호출을 OpenCart 로그 폴더(storage/logs)의 datatrans_p_debug.log.php에 기록합니다. 이 파일은 웹에서 열 수 없으며, 5 MB에 도달하면 datatrans_p_debug.old.log.php로 이동됩니다. 이 스위치가 꺼져 있어도 오류는 항상 기록됩니다. 키, 카드 데이터, 고객 데이터는 기록되지 않습니다. 기본값: 끔.
Log: 로그의 크기와 최근 항목을 표시합니다. Clear log를 클릭하면 로그를 비울 수 있습니다.
Delete data on uninstall: 켜져 있으면 확장 프로그램을 제거할 때 모듈 설정과 로그가 삭제됩니다. 주문의 Datatrans 결제 기록(거래, 환불)은 유지됩니다. 기본값: 끔.
가져오기 / 내보내기
Export: Download JSON은 설정을 JSON 파일로 저장합니다. 비밀번호와 서명 키는 내보내지지 않습니다.
Import: 이전에 내보낸 JSON을 붙여 넣고 Import를 클릭하면 설정이 복원됩니다. 저장된 비밀번호와 서명 키는 유지됩니다.
결제
Payment Method 단계에서 고객은 결제 수단을 선택합니다(기본값은 Datatrans). Confirm Order 단계에서 고객은 설명과 You will be redirected to the Datatrans payment page to complete the payment securely. 안내를 봅니다. OpenCart는 이 단계에서 아직 상태가 없는 주문을 만듭니다. 고객이 Confirm Order를 클릭하면, 확장 프로그램은 주문 통화로 주문 합계에 대한 Datatrans 거래를 만듭니다. 이때 참조값으로 OpenCart 주문 번호를 사용하고, 고객을 Datatrans 결제 페이지로 보냅니다. 페이지는 쇼핑몰 언어가 독일어, 영어, 프랑스어, 이탈리아어 중 하나인 경우 해당 언어로 열립니다. 고객은 그곳에서 Datatrans 계정에서 활성화된 모든 결제 수단으로 결제합니다. OpenCart 4에서는 고객이 결제 수단 블록의 Choose 버튼을 눌러 Payment method options 창에서 결제 수단을 고르고, 체크아웃 페이지 하단의 Confirm Order를 클릭합니다.
결제 후 고객은 쇼핑몰로 돌아옵니다. 주문은 Datatrans가 확인한 후에만 결제 완료로 표시됩니다. 확인은 웹훅을 통해 이루어지거나, 고객이 돌아올 때 서버 측에서 Datatrans 상태 API에 요청하여 이루어집니다. 복귀 주소에는 결제 시도의 임의 토큰이 포함되며, 복귀 주소 자체는 결코 신뢰되지 않습니다. 그 후 주문은 OpenCart의 표준 방식으로 상태를 받고, 일반 주문 이메일과 재고 업데이트가 이루어지며, 고객은 Your payment with Datatrans has been received.가 표시된 OpenCart 주문 성공 페이지를 보게 됩니다. 승인만 된 결제의 경우, 페이지에는 Your payment with Datatrans has been authorized. The amount will be charged when your order is processed.가 표시됩니다. Datatrans가 아직 결제를 확인하지 않았다면, Payment confirmation 페이지에 Your payment is being confirmed by Datatrans. You will receive an e-mail as soon as it is confirmed. Please do not pay again.가 표시되며, Check again 및 Back to checkout 버튼이 함께 나타납니다. 웹훅이 도착하는 즉시 주문 상태가 설정됩니다. OpenCart 4에서는 Datatrans가 고객을 돌려보낼 때 브라우저가 쇼핑몰 세션을 보내지 않으므로, 확장 프로그램이 먼저 짧은 페이지를 표시하고 쇼핑몰에서 같은 복귀 주소를 다시 엽니다. 이렇게 하면 고객의 장바구니와 로그인 상태가 유지됩니다.
고객이 Datatrans 페이지에서 취소하면, 고객은 The payment was canceled. You can try again or choose another payment method.가 표시된 결제 단계로 돌아갑니다. 결제가 실패하면 메시지는 The payment was not completed. Please try again or choose another payment method.입니다. OpenCart 4에서는 이 메시지가 체크아웃 페이지 위에 표시됩니다. 장바구니는 유지됩니다. OpenCart 3은 Confirm Order 단계가 표시될 때마다 새 주문을 만들고, OpenCart 4는 체크아웃 주문 하나를 유지하면서 업데이트하며, 새 시도는 같은 주문의 새 Datatrans 거래가 됩니다. 새 결제를 시작하기 전에, 같은 장바구니의 이전 주문에 남아 있는 미완료 Datatrans 거래를 확인합니다. 결제되었거나 승인된 거래는 새 결제를 시작하는 대신 확인되고, 미완료 거래는 Datatrans에서 취소됩니다. 장바구니는 한 번만 결제됩니다. 같은 장바구니의 다른 주문이 이미 결제되었거나 승인되었다면 새 결제는 시작되지 않고, 고객은 성공 페이지로 이동합니다. 이미 결제된 장바구니의 다른 주문에 대한 결제가 여전히 도착하면, 그 주문은 상태 없이 남고 결제된 주문에는 중복 결제를 Datatrans에서 확인하고 환불하라는 메모가 붙습니다.
OpenCart 4는 성공 페이지가 표시될 때까지 주문을 체크아웃에 유지합니다. 그 사이에 주문이 닫힌 경우(예: 취소, 승인 취소 후 또는 환불된 경우 포함), Confirm Order 또는 Datatrans에서의 복귀는 고객을 Your previous order was cancelled without a payment. Please confirm the order again to pay with a new order.와 함께 체크아웃으로 돌려보내며, 다음 Confirm Order에서 그 장바구니의 새 주문에 대한 결제가 진행됩니다. 주문이 이미 결제되었고 그 뒤 장바구니(상품 또는 수량)가 변경되었다면, 고객은 체크아웃으로 돌아가며, 변경된 장바구니는 새 주문과 자체 결제를 받습니다. 변경되지 않은 장바구니는 새 결제 없이 성공 페이지로 이동합니다.
Datatrans가 결제를 시작할 수 없으면, 고객은 Confirm Order 단계에 머무르며 The payment could not be started. Please try again or choose another payment method.가 표시됩니다. 기술적인 이유는 로그에 기록됩니다.
쇼핑몰이 유지 보수 모드에 있는 동안에도 웹훅은 작동합니다. OpenCart 3은 결제 확장 프로그램의 요청을 통과시키고, OpenCart 4에서는 확장 프로그램이 웹훅과 고객의 복귀를 통과시키는 시작 액션(startup action)을 추가합니다.
이 확장 프로그램은 Datatrans 결제 페이지에서 일회성 결제를 받습니다. 저장된 카드나 별칭, 구독, 쇼핑몰 사이트의 Lightbox 또는 Secure Fields, 설정에서의 결제 수단 선택, 승인의 부분 캡처는 지원하지 않습니다.
주문 및 환불
주문 상태
No status (missing order): 고객이 Datatrans로 보내졌지만 결제하지 않았거나, 결제가 실패했거나 취소되었거나, Datatrans가 아직 확인하지 않은 경우입니다. Sales > Orders에서 이러한 주문은 Order Status 필터를 Missing Orders로 설정한 경우에만 표시됩니다.
Order status after payment (default Processing): 결제가 정산되었습니다. 메모에는 금액, 결제 수단, Datatrans 거래 ID, 환경, 그리고 확인 방법(웹훅 또는 복귀)이 표시됩니다.
Datatrans payment on hold after an authorization (default Pending): Auto settle이 꺼져 있어 결제는 승인만 되었습니다. 주문 탭에서 캡처하거나 취소하십시오.
Datatrans payment on hold after payment: Datatrans가 주문 합계와 다른 금액이나 통화를 보고했거나, 주문이 취소된 후에 결제가 도착했습니다. 메모에 이유가 설명됩니다. Datatrans Web Admin에서 거래를 확인한 다음, 주문을 처리하거나 결제를 환불하십시오.
Authorization canceled (default Canceled): 주문 탭이나 Datatrans Web Admin에서 승인이 해제되었습니다.
Refunded (default Refunded): 확장 프로그램을 통해 결제가 전액 환불되었습니다.
이미 결제되었거나 승인된 주문에 두 번째 결제가 도착하면, 주문은 변경되지 않습니다. 메모는 중복 결제를 확인하고 Datatrans에서 환불하라고 요청합니다. 실패하거나 취소된 거래 때문에 결제 완료된 주문의 상태가 낮아지는 일은 없습니다. 이미 환불된 주문에 대한 결제는 메모만 추가합니다.
메모는 고객에게 보이지 않는 주문 History의 항목입니다.
VibeFox Datatrans Gateway 탭
Sales > Orders에서 Datatrans로 결제된 주문을 엽니다. 주문 페이지 하단, History와 Additional 옆에 있는 VibeFox Datatrans Gateway 탭에는 샌드박스 결제의 경우 Sandbox 라벨과 함께 Transaction ID, Datatrans Status, Payment method, Amount, Paid / refunded 금액, 캡처 및 취소 버튼 또는 환불 양식, 환불 내역, 그리고 주문의 Datatrans notes가 표시됩니다. 이 탭은 확장 프로그램에 접근 권한이 있는 사용자에게 표시됩니다. 탭의 작업에는 확장 프로그램을 수정할 권한이 필요합니다(System > Users > User Groups에서 설정).
캡처 및 취소
승인만 된 결제의 경우 탭에 Capture Datatrans payment와 Cancel Datatrans authorization이 표시됩니다. 캡처는 현재 주문 합계에 대해 결제를 정산하며, 이 금액은 승인된 금액을 넘을 수 없습니다. 그 후 주문은 Order status after payment로 바뀝니다. 취소는 승인을 해제하고 주문을 Authorization canceled로 설정합니다. 두 작업 모두 결제가 이루어진 환경으로 전송됩니다. Datatrans가 거부하면 탭에 오류가 표시되고 메모가 추가됩니다.
환불
탭에서 Amount를 입력합니다(아직 환불되지 않은 금액이 자동으로 채워집니다). 필요하면 Reason (optional)도 입력하고 Refund via Datatrans를 클릭합니다. Refund this amount through Datatrans? This cannot be undone. 질문을 확인합니다. 전액 환불과 부분 환불을 지원하며, Datatrans가 실제로 청구한 금액에서 이전 환불 금액을 뺀 범위까지 가능합니다. 환불은 결제가 이루어진 환경으로 전송되므로, 해당 환경의 가맹점 ID와 API 비밀번호가 설정되어 있어야 합니다. 재시도된 환불이 두 번 적립되지는 않습니다. Datatrans가 환불을 받아들이지 않으면 탭에 오류가 표시되며 환불은 기록되지 않습니다. 환불이 성공하면 Datatrans 환불 거래 ID와 함께 환불 내역과 메모에 추가됩니다. 전액 환불은 고객에게 알리지 않고, 제품을 재고로 되돌리지 않은 채 주문을 Refunded로 설정합니다. 수동으로 상태를 변경하는 것과 같습니다. 부분 환불은 상태를 변경하지 않습니다.
환불은 Datatrans가 결제를 정산한 후에 가능합니다. 승인만 된 결제는 대신 캡처하거나 취소해야 하며, 금액이 일치하지 않는 승인은 정산되기 전까지 환불할 수 없습니다.
Sales > Returns의 제품 반품은 Datatrans를 통해 돈을 돌려주지 않습니다. Datatrans Web Admin에서 이루어진 환불은 OpenCart에 기록되지 않습니다.
라이선스 키
이 확장 프로그램은 vibefox.net에서 받은 VibeFox 라이선스 키로 작동합니다. 라이선스 블록 License — VibeFox Datatrans Gateway는 Extensions > Extensions > Payments > VibeFox Datatrans Gateway > Edit 페이지에서 설정 위에 있는 첫 번째 블록입니다. 키를 License key에 붙여 넣고 Activate를 클릭합니다. 그 후 블록에는 마스킹된 키, 상태(예: 라이선스가 유효한 날짜와 도메인), 그리고 상태를 다시 확인하는 Check now, 다른 키를 입력하는 Change key, 이 쇼핑몰에서 키를 제거하는 Remove key 버튼이 표시됩니다. 그 아래에는 Product: opencart-payment-datatrans 줄과 vibefox.net 계정을 여는 Manage licenses and domains in your account 링크가 있습니다. 확장 프로그램에 대한 Modify 권한이 있는 관리자 사용자만 키를 변경할 수 있습니다. 블록의 텍스트는 관리자 언어를 따릅니다(영어와 러시아어가 포함됩니다).
키가 받아들여지지 않으면 블록에 그 이유가 표시됩니다. 예: Key not found, This key belongs to another product, Domain limit reached, 또는 날짜와 함께 표시되는 License expired on. 쇼핑몰 주소를 바꾼 후, 또는 계정에서 도메인 슬롯을 비운 후에는 Check now를 클릭하십시오. 라이선스 서버에 연결할 수 없으면 확장 프로그램은 마지막으로 확인된 상태를 기준으로 계속 작동합니다.
키 하나는 도메인 하나에서만 작동합니다. 도메인은 OpenCart 설정의 쇼핑몰 주소입니다. 쇼핑몰에서 키를 제거해도 도메인 슬롯은 비워지지 않습니다. vibefox.net 계정에서 슬롯을 비우십시오.
활성 키가 없으면 결제 단계에서 고객에게 Datatrans가 표시되지 않습니다. 그래도 결제가 시작되면 고객에게 This payment method is not available. Please choose another one.가 표시됩니다. 같은 브라우저에서 관리자 페이지에 로그인한 관리자 사용자에게는 쇼핑몰에서 결제 수단이 계속 보이며, (unlicensed — visible to admins only)라고 표시됩니다. 따라서 키를 구매하기 전에 확장 프로그램을 설정하고 테스트할 수 있습니다. OpenCart 4에서는 이 미리 보기를 사용할 수 없습니다. 쇼핑몰은 관리자 로그인을 인식하지 못하므로, 활성 키가 없으면 결제 수단은 모든 사용자에게 숨겨집니다. Edit 페이지를 한 번 열고 나면 관리자 Dashboard에 알림이 나타납니다. ×로 닫으면 7일 동안 숨겨집니다. 기존 주문에는 영향이 없습니다. 이미 시작된 결제는 계속 확인되고, 환불도 정상적으로 작동합니다.
라이선스가 만료되어도 확장 프로그램은 계속 작동하지만, 업데이트와 지원을 받으려면 갱신이 필요합니다. 상태는 관리자 Dashboard나 Edit 페이지를 열 때 자동으로 다시 확인됩니다. 키를 입력한 후 처음 14일 동안에는 하루에 한 번, 그 이후에는 일주일에 한 번 확인됩니다. 크론 작업은 필요하지 않습니다. 확장 프로그램을 제거하면 라이선스 키와 라이선스 상태는 항상 삭제됩니다.
문제 해결
Datatrans가 결제 단계에 나타나지 않음: 라이선스가 활성 상태인지, Enable/Disable이 켜져 있는지, 그리고 현재 환경에 가맹점 ID와 API 비밀번호가 있는지 확인하십시오. 샌드박스 모드에서는 샌드박스 항목, 그 밖에는 운영 항목입니다. 설정 페이지에 누락된 항목이 나열됩니다. 또한 결제 주소가 선택한 Geo Zone에 포함되는지, 그리고 주문이 설정된 Total에 도달하는지도 확인하십시오.
결제는 되었지만 주문에 상태가 없음: Datatrans가 웹훅 URL에 도달하지 못했고 고객도 쇼핑몰로 돌아오지 않았습니다. 쇼핑몰이 인터넷에서 접근 가능한지, 그리고 방화벽이 웹훅 URL로의 요청을 차단하지 않는지 확인하십시오. 설정의 서명 키가 결제가 이루어진 환경에 속하는지 확인하십시오. 확장 프로그램 페이지의 Log 항목을 확인하십시오.
웹훅이 Invalid signature를 응답함: 설정의 HMAC 서명 키가 Datatrans Web Admin의 키와 일치하지 않거나, 다른 환경의 키입니다. 키를 다시 복사하십시오.
웹훅이 Not configured 또는 Verification failed를 응답함: 웹훅을 Datatrans 상태 API로 확인해야 했는데, 해당 환경의 자격 증명이 없거나 Datatrans가 응답하지 않았습니다. Datatrans는 웹훅을 다시 시도합니다.
웹훅이 Busy, retry를 응답함: 주문이 같은 시점에 다른 요청에 의해 확인되고 있었거나, 주문 상태를 설정할 수 없었습니다. Datatrans는 웹훅을 다시 시도합니다. 로그에 이유가 표시됩니다.
브라우저에서 웹훅 URL이 Method not allowed를 표시함: 정상입니다. 이 URL은 Datatrans의 요청만 허용합니다.
HMAC 서명 키가 저장되지 않음: 키는 16진수 문자열이어야 합니다. Datatrans Web Admin에서 다시 복사하십시오.
고객에게 Datatrans payments are not configured yet가 표시됨: 현재 환경의 가맹점 ID 또는 API 비밀번호가 없습니다.
고객에게 The payment could not be started가 표시됨: Log 항목을 확인하십시오. 잘못된 가맹점 ID나 API 비밀번호, 또는 잘못된 환경의 자격 증명이 흔한 원인입니다.
고객에게 We could not verify the payment가 표시됨: 복귀 주소가 해당 주문의 결제 시도와 일치하지 않았습니다. 금액이 청구되었더라도 웹훅이 주문 상태를 설정합니다.
결제 후 주문이 보류 상태에 있음: 주문 탭의 Datatrans notes를 읽은 다음(주문 상태 항목 참조), 주문을 처리하거나 결제를 환불하십시오.
캡처가 거부됨: 주문 합계가 승인된 금액보다 큽니다. Datatrans는 승인된 금액을 초과하여 정산할 수 없습니다.
탭에 캡처 버튼이나 환불 양식이 없음: 탭에 이유가 표시됩니다. 결제가 아직 정산되지 않았거나, 전액 환불되었거나, 사용자 그룹에 확장 프로그램을 수정할 권한이 없거나, 결제 환경의 자격 증명이 없는 경우입니다.
자격 증명이 없다는 메시지와 함께 환불 또는 캡처가 실패함: 결제는 다른 환경에서 이루어졌는데, 그 환경의 가맹점 ID 또는 API 비밀번호가 설정되어 있지 않습니다. 값을 입력하고 다시 시도하십시오.
개발자용 참고: Datatrans 거래가 만들어지기 전에 확장 프로그램은 요청 본문과 주문을 담아 OpenCart 이벤트 datatrans_p_init_request를 실행합니다.
제거
Extensions > Extensions로 이동하여 유형을 Payments로 선택한 다음, VibeFox Datatrans Gateway 옆의 Uninstall(빨간색 − 버튼)을 클릭합니다. 이 확장 프로그램의 라이선스 키와 라이선스 상태는 항상 제거됩니다. OpenCart는 확장 프로그램 자체의 설정을 항상 제거합니다. 즉, Enable/Disable, Sort Order, Geo Zone, Total, 그리고 Payment processing 섹션의 네 가지 주문 상태가 제거되며, 재설치하면 기본값으로 돌아갑니다. 확장 프로그램의 OpenCart 이벤트도 제거됩니다(OpenCart 4에서는 이벤트와 함께, 유지 보수 모드에서도 Datatrans를 통과시키는 시작 액션도 제거됩니다). Delete data on uninstall이 켜져 있으면 다른 모듈 설정(제목, 설명, 샌드박스 모드, 자격 증명, auto settle, 로깅)과 로그가 삭제됩니다. 꺼져 있으면 나중에 재설치할 때를 위해 유지됩니다. Datatrans 거래와 환불은 항상 유지되므로, 재설치 후에도 이전에 결제된 주문을 환불하거나 캡처할 수 있습니다. 기존 주문은 결제 메모를 유지합니다.
OpenCart 4에서 확장 프로그램의 파일까지 제거하려면, 제거 후 Extensions > Installer로 이동하여 설치된 확장 프로그램 목록에서 VibeFox Datatrans Gateway 옆의 Uninstall(주황색 − 버튼)을 클릭한 다음, Delete(빨간색 휴지통 버튼)를 클릭하여 업로드한 패키지를 삭제하십시오.
Datatrans는 각 소유자의 상표입니다. 이 확장 프로그램은 Datatrans와 제휴하거나 Datatrans의 승인을 받지 않았습니다.
