뒤로

VibeFox Moyasar for OpenCart — 도움말

요구 사항

OpenCart: 3.0.x (3.0.5.0에서 테스트됨) 또는 4.0.2 이상 (4.1.0.3에서 테스트됨).

PHP: 8.0 이상.

통화: 체크아웃 통화는 SAR, AED, USD, EUR, KWD, BHD 또는 OMR이어야 합니다. 그 밖의 통화에서는 체크아웃에서 결제 수단이 숨겨집니다.

Moyasar 계정: Moyasar 계정의 시크릿 API 키(테스트 및 운영)가 필요합니다. 시크릿 키만 사용됩니다. 결제는 Moyasar 페이지에서 이루어지므로 공개 키(publishable key)는 필요하지 않습니다. Moyasar 대시보드에서 웹훅을 설정하는 것을 권장합니다(구성 참조).

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

설치

다운로드 파일은 두 OpenCart 버전의 패키지가 들어 있는 zip 파일 하나입니다. 컴퓨터에서 압축을 풀어 주세요. 여기에는 README.txt, OpenCart 3 패키지 wcp_moyasar_payment_gateway-oc3-(version).ocmod.zip, OpenCart 4 패키지 wcp_moyasar_payment_gateway.ocmod.zip이 들어 있습니다. 사용 중인 OpenCart 버전의 패키지만 설치하세요. 라이선스 키는 두 버전에서 같습니다.

OpenCart 3

1. 관리자 화면에서 Extensions > Installer로 이동하여 Upload를 클릭하고 파일 wcp_moyasar_payment_gateway-oc3-(version).ocmod.zip을 선택합니다. 이 확장 프로그램에는 OCMOD 수정 사항이 없으므로 Extensions > Modifications를 새로 고칠 필요가 없습니다. 설치 도구 대신 이 패키지의 upload 폴더 내용을 쇼핑몰의 루트 폴더에 복사할 수도 있습니다.

2. Extensions > Extensions로 이동하여 유형으로 Payments를 선택합니다. VibeFox Moyasar Payment Gateway를 찾아 Install(초록색 + 버튼)을 클릭합니다. 관리자 사용자에게는 결제 확장 프로그램 목록을 수정할 권한이 있어야 합니다.

3. Edit(연필 버튼)을 클릭하여 설정 페이지를 엽니다. 페이지 상단의 라이선스 블록에 있는 License key에 VibeFox 라이선스 키를 붙여 넣고 Activate를 클릭합니다(라이선스 키 참조).

4. Moyasar 시크릿 키를 붙여 넣고 Save를 클릭합니다. 처음 저장하면 웹훅 공유 시크릿이 생성되며, 설정 위에 한 번만 표시됩니다. 이 시크릿으로 Moyasar 대시보드에서 웹훅을 설정하세요(구성 참조).

5. Enable/Disable을 켜고 Save를 클릭합니다. 테스트 모드에서 테스트 주문을 한 건 진행한 다음 Test mode를 끕니다.

OpenCart 4

1. 관리자 화면에서 Extensions > Installer로 이동하여 Upload를 클릭하고 파일 wcp_moyasar_payment_gateway.ocmod.zip을 선택합니다. 파일 이름을 바꾸지 마세요: OpenCart 4는 확장 프로그램 코드를 파일 이름에서 가져오므로, 이름을 바꾼 패키지는 작동하지 않습니다.

2. 같은 페이지의 설치된 확장 프로그램 목록에 패키지가 나타납니다. 그 옆의 Install(초록색 + 버튼)을 클릭하세요.

3. Extensions > Extensions로 이동하여 유형으로 Payments를 선택합니다. VibeFox Moyasar Payment Gateway를 찾아 Install(초록색 + 버튼)을 클릭한 다음 Edit(연필 버튼)을 클릭합니다.

4. 라이선스 키, Moyasar 키, 웹훅을 OpenCart 3의 3단계부터 5단계까지와 같은 방식으로 입력합니다. 설정 페이지와 그 필드는 두 버전에서 같습니다. 웹훅 URL만 다릅니다(웹훅 URL 참조).

새로 설치하면 결제 수단은 꺼진 상태이며 테스트 모드는 켜진 상태로 시작합니다.

구성

모든 설정은 확장 프로그램 페이지에 있습니다: Extensions > Extensions > Payments > VibeFox Moyasar Payment Gateway > Edit. 섹션은 왼쪽에 나열되며, 목록 아래의 Save 버튼은 페이지 전체를 저장합니다. 설정 위쪽에서는 현재 모드에 시크릿 키가 없을 때(이 경우 체크아웃에서 결제 수단이 숨겨짐), 저장된 웹훅 공유 시크릿이 없을 때(이 경우 웹훅이 모든 호출을 거부함), 또는 쇼핑몰의 기본 통화가 지원되지 않을 때 페이지가 경고합니다. 확장 프로그램이 테스트 모드로 활성화되어 있는 동안에는 테스트 모드 활성: 결제가 시뮬레이션되며 금액이 청구되지 않습니다.라고 표시됩니다. 확장 프로그램을 수정할 권한이 없으면 페이지에 설정은 표시되지만 저장할 수는 없습니다.

저장할 때 Title은 1자 이상 128자 이하여야 하고, Sort Order는 정수여야 하며(음수 허용), Total은 0 이상의 숫자여야 하고, 지역(Geo Zone)과 주문 상태가 존재해야 합니다. 그렇지 않으면 아무것도 저장되지 않습니다. 확장 프로그램은 공개 키, 다른 모드의 키, 공백이 포함된 키를 거부합니다. 나머지는 설정이 저장되었습니다. 단, 빨간색으로 표시된 키는 제외합니다.라는 문구와 함께 저장되며, 이전 키는 유지되고 이유가 표시됩니다. 현재 모드의 시크릿 키 없이 확장 프로그램을 활성화하면, 설정은 경고와 함께 저장됩니다.

Moyasar

Enable/Disable: Enable Moyasar는 결제 수단을 켜거나 끕니다. 기본값: 꺼짐.

Title: 고객이 체크아웃에서 보는 결제 수단 이름입니다. 주문에 저장되는 결제 수단 이름이기도 합니다. 기본값: Pay with Moyasar. 필수, 최대 128자.

Description: Confirm Order 단계에서 확인 버튼 위에 고객에게 표시되는 텍스트입니다. 기본값: You will be redirected to the secure Moyasar payment page to pay with mada, Visa, Mastercard, Apple Pay or STC Pay. 테스트 모드에서는 이 단계에 (테스트 모드: 실제 결제는 이루어지지 않습니다.)가 추가됩니다.

Sort Order: 체크아웃에서 Moyasar가 결제 수단 중 표시되는 순서입니다. 비워 두거나 정수를 입력하세요.

Geo Zone: 선택한 지역의 결제 주소에 대해서만 Moyasar를 제공합니다. 기본값: All zones. 지역은 System > Localisation > Geo Zones에서 설정합니다.

Total: Moyasar를 제공하기 전에 주문이 도달해야 하는, 쇼핑몰 기본 통화 기준의 장바구니 총액입니다. 모든 금액에 대해 Moyasar를 제공하려면 비워 두세요.

API 키

시크릿 키는 Moyasar Dashboard > Settings > API Keys에서 복사하세요(페이지에 해당 위치로 연결되는 링크가 있습니다). 테스트 키와 운영 키는 별도입니다. 테스트 모드는 테스트 키만, 운영 모드는 운영 키만 사용합니다.

Test mode: 테스트 시크릿 키를 사용합니다. 결제는 시뮬레이션되며 금액이 청구되지 않습니다. 기본값: 켜짐. 운영 시크릿 키로 실제 결제를 받으려면 끄세요. 다른 모드의 인보이스는 상태 확인과 환불에 여전히 해당 모드의 키를 사용합니다.

Test secret key: 테스트 모드의 시크릿 키입니다. sk_test_로 시작합니다.

Live secret key: 운영 모드의 시크릿 키입니다. sk_live_로 시작합니다.

저장된 키와 시크릿은 다시 표시되지 않습니다. 필드는 비어 있으며 저장됨 — 유지하려면 비워 두세요.라고 표시됩니다. 변경하려는 경우에만 새 값을 입력하세요. 저장된 값을 제거하려면 필드 아래의 Clear the saved value on save를 선택한 다음 Save를 클릭합니다.

결제 알림(웹훅)

웹훅은 권장되지만 필수는 아닙니다. 주문은 고객이 쇼핑몰로 돌아왔을 때, 그리고 인보이스가 결제되면 Moyasar가 쇼핑몰로 자동 전송하는 인보이스 알림을 통해서도 확인됩니다. 웹훅은 돌아오기 전에 브라우저를 닫은 고객도 처리하며, Moyasar 대시보드에서 이루어진 환불을 알려 줍니다. Moyasar Dashboard > Settings > Webhooks에서 추가하세요.

Webhook URL: Copy 버튼과 함께 읽기 전용으로 표시됩니다. OpenCart 3에서는 https://your-store/index.php?route=extension/payment/wcp_moyasar_payment_gateway/webhook, OpenCart 4에서는 https://your-store/index.php?route=extension/wcp_moyasar_payment_gateway/payment/wcp_moyasar_payment_gateway.webhook와 비슷한 형태이며, OpenCart 설치의 storefront 주소를 기준으로 만들어집니다. 설정에 표시된 그대로 URL을 정확히 복사하세요. HTTP 메서드: POST. 이 URL은 인터넷에서 접근 가능해야 합니다.

Webhook shared secret: Moyasar 웹훅의 Shared secret과 같은 값을 입력하거나, Generate a new secret을 선택하고 저장하세요. 저장된 값이 없으면 Save가 무작위 시크릿을 생성합니다. 생성된 시크릿은 저장 후 설정 위에 한 번만 표시되고 그 뒤로는 다시 표시되지 않으므로, 즉시 Moyasar에 복사하세요. 올바른 공유 시크릿이 없는 웹훅은 거부됩니다. 하나의 공유 시크릿이 두 모드 모두에 사용됩니다.

웹훅에 다음 이벤트를 선택하세요(이 섹션에도 나열되어 있습니다):

payment_paid: 고객이 인보이스를 결제했습니다.
payment_failed: 결제가 실패했습니다.
payment_refunded: 결제가 환불되었습니다. 예를 들어 Moyasar 대시보드에서 환불한 경우입니다.
payment_voided: 결제가 무효화되었습니다.

웹훅이나 알림의 내용은 그대로 신뢰되지 않습니다. 확장 프로그램은 각각에 대해, 인보이스가 생성된 모드의 시크릿 키로 Moyasar API에서 인보이스를 읽고, 이 쇼핑몰이 인보이스를 생성했는지 확인합니다. 같은 Moyasar 계정에 있는 다른 연동의 결제는 무시됩니다.

주문

OpenCart는 Confirm Order 단계에서 상태 없이 주문을 만듭니다(미완료 주문). 주문은 Moyasar가 인보이스를 확인한 후에야 상태를 받습니다. 아래의 각 필드에는 사용 중인 OpenCart 주문 상태가 나열됩니다.

Status after payment: 확인된 결제 후 설정되는 상태입니다. 기본값: 처리 중. 결제된 주문을 즉시 완료하려면 Complete를, 결제된 모든 주문이 수동 확인을 기다려야 한다면 검토 상태를 선택하세요.

Awaiting Moyasar payment status: Moyasar가 결제를 검토를 위해 보류합니다. Moyasar가 결제를 확인하면 주문은 Status after payment로 넘어갑니다. 기본값: 대기 중.

Moyasar payment on hold status: Moyasar가 주문 총액과 다른 금액이나 통화를 보고했거나, 주문이 취소되거나 다른 상태가 된 후에 인보이스가 결제되었습니다. 주문은 결제 완료로 표시되지 않습니다. 기본값: 대기 중. OpenCart에는 보류 상태가 없기 때문입니다. System > Localisation > Order Statuses에서 직접 상태를 만들고 여기에서 선택할 수 있습니다.

Payment error status: 검토 중이던 결제가 실패했습니다. 기본값: 실패.

Refunded status: 주문 페이지에서 결제 전액을 환불한 후 설정됩니다. 기본값: 환불됨.

고급

Debug log: API 호출과 알림을 OpenCart 로그 폴더(storage/logs)의 moyasar_p_debug.log.php에 기록합니다. 이 파일은 웹에서 열 수 없으며, 5 MB에 도달하면 moyasar_p_debug.old.log.php로 옮겨집니다. 오류와 경고는 항상 기록됩니다. API 키, 카드 데이터, 고객 정보는 절대 기록되지 않습니다. 기본값: 꺼짐.

Log: 현재 로그의 크기와 최신 항목을 보여 줍니다. Clear log를 클릭하면 로그가 비워집니다.

Clean uninstall: 켜져 있으면 확장 프로그램을 제거할 때 게이트웨이 설정과 로그가 삭제됩니다. 주문과 함께 저장된 결제 정보(Moyasar 인보이스 및 결제 ID)는 환불을 추적할 수 있도록 보존됩니다. 기본값: 꺼짐.

가져오기 / 내보내기

Export: Download JSON은 설정을 JSON 파일로 저장합니다. 키와 시크릿은 내보내지지 않습니다.

Import: 이전에 내보낸 JSON을 붙여 넣고 Import를 클릭하면 설정이 복원됩니다. 저장된 키와 시크릿은 유지됩니다.

체크아웃

Payment Method 단계에서 고객이 결제 수단을 선택합니다(기본값은 Pay with Moyasar). Confirm Order 단계에서 고객은 귀하의 설명을 봅니다. OpenCart는 이 단계에서 아직 상태가 없는 주문을 만듭니다. 고객이 Confirm Order를 클릭하면, 확장 프로그램은 주문 통화로 주문 총액에 대한 Moyasar 인보이스를 만들고 고객을 그 결제 페이지로 보냅니다. 거기서 고객은 Moyasar 계정에서 활성화된 어떤 방식으로든 결제합니다. OpenCart 4에서는 고객이 결제 수단 블록의 Choose 버튼으로 Payment method options 창에서 결제 수단을 고르고, 체크아웃 페이지 하단의 Confirm Order를 클릭합니다. 인보이스에는 Order #, 주문 번호, 쇼핑몰 이름이 표시됩니다.

주문은 Moyasar가 확인한 후에만 결제 완료로 표시됩니다. 확장 프로그램은 Moyasar API에서 인보이스를 읽고, 결제되었는지, 이 주문에 속하는지, 주문 금액과 통화가 정확히 일치하는지 확인합니다. 이후 주문은 일반적인 OpenCart 방식으로 상태를 받고, 평소와 같은 주문 이메일과 재고 업데이트가 이루어지며, 고객은 OpenCart 주문 완료 페이지에서 Moyasar 결제가 접수되었습니다.라는 문구를 봅니다. Moyasar가 결제를 검토를 위해 보류하면 페이지에는 Moyasar가 결제를 검토 중입니다. Moyasar가 확인하면 주문이 자동으로 업데이트됩니다. 다시 결제하지 마세요.가 표시됩니다. 귀하의 검토를 위해 주문이 보류된 경우에는 결제가 접수되었으며 주문을 검토하고 있습니다. 필요한 사항이 있으면 연락드리겠습니다. 다시 결제하지 마세요.가 표시됩니다. 검토 중인 결제가 나중에 실패하면 페이지에는 Moyasar 결제가 완료되지 않았습니다. 이 주문에 대해 문의해 주세요.가 표시됩니다.

고객이 결제하지 않고 돌아오면(예: 결제 페이지의 뒤로 가기 버튼 사용), 다음 메시지 중 하나와 함께 체크아웃으로 돌아갑니다: Moyasar 결제가 완료되지 않았습니다. 다시 시도하거나 다른 결제 수단을 선택하세요., Moyasar 결제가 거절되었거나 만료되었습니다. 다시 시도하거나 다른 결제 수단을 선택하세요. 또는 결제를 아직 확인할 수 없을 때 Moyasar 결제를 아직 확인하지 못했습니다. 결제를 완료했다면 몇 분 안에 주문이 자동으로 업데이트됩니다. 다시 결제하기 전에 이메일을 확인하세요. OpenCart 4에서는 이 메시지들이 체크아웃 페이지 위에 표시됩니다. 장바구니는 유지됩니다.

고객은 다시 시도할 수 있습니다. OpenCart 3은 Confirm Order 단계가 표시될 때마다 새 주문을 만들지만, OpenCart 4는 체크아웃의 주문 하나를 유지하고 같은 주문을 다시 결제합니다. 확장 프로그램은 먼저 같은 장바구니의 미결 인보이스를 확인합니다. 이 주문의 미결 결제 페이지가 여전히 같은 모드, 금액, 통화를 가지고 있으면 재사용합니다. 그렇지 않으면 이전 인보이스를 Moyasar에서 취소하고 새 인보이스를 만들므로, 이전 인보이스는 더 이상 결제할 수 없습니다. 장바구니의 이전 인보이스가 이미 결제된 것으로 확인되면, 새 결제를 만드는 대신 그 결제를 확인합니다.

OpenCart 4는 성공 페이지가 표시될 때까지 주문을 체크아웃에 보관합니다. 그 사이에 결제 없이 주문이 닫히면(예: 취소했거나 결제가 실패한 경우), 고객은 Your previous order was cancelled or its payment failed. Please confirm the order again.와 함께 체크아웃으로 돌아가며, 다음 Confirm Order에서 새 주문이 결제됩니다. 결제된 후 취소되었거나 환불된 주문은 더 이상 그 장바구니를 점유하지 않습니다.

Moyasar가 결제를 시작할 수 없으면, 고객은 Confirm Order 단계에 머무르며 버튼 위에 짧은 메시지가 표시됩니다. 예를 들면 Moyasar 결제 서비스가 응답하지 않습니다. 몇 분 후에 다시 시도해 주세요.이며, 다른 결제 수단을 선택할 수 있습니다. 세부 정보는 로그에 기록됩니다.

웹훅과 인보이스 알림은 쇼핑몰이 유지 보수 모드인 동안에도 작동합니다. 그 이유는 OpenCart 3이 결제 확장 프로그램의 요청을 통과시키고, OpenCart 4에서는 확장 프로그램이 이를 위해 시작 액션을 추가하기 때문이며, 이 덕분에 고객도 Moyasar에서 돌아올 수 있습니다.

이 확장 프로그램은 Moyasar 페이지에서의 일회성 결제만 처리합니다. 귀하의 체크아웃에는 카드 양식이 없고, 저장된 카드나 토큰화도 없으며, 구독도 없고, 승인과 매입을 따로 하는 기능도 없습니다.

주문 및 환불

주문 상태

상태 없음(미완료 주문): 고객은 Moyasar로 이동했지만 결제하지 않았거나, Moyasar가 아직 결제를 확인하지 않았거나, 결제가 거절, 만료 또는 취소되었습니다. Sales > Orders에서 이러한 주문은 Order Status 필터를 Missing Orders로 설정했을 때만 표시됩니다.

Status after payment(기본값 처리 중): 결제가 확인되었습니다. 메모에는 결제가 어떻게 확인되었는지(웹훅, 인보이스 알림, 고객의 복귀 또는 체크아웃), 인보이스 ID, 결제 ID, 결제 수단(예: 카드 브랜드와 끝 네 자리)이 표시됩니다.

Awaiting Moyasar payment status(기본값 대기 중): Moyasar가 결제를 검토를 위해 보류합니다. Moyasar가 결제를 확인하면 주문은 Status after payment로, 결제가 실패하면 Payment error status로 넘어갑니다.

Moyasar payment on hold status(기본값 대기 중): Moyasar가 주문 총액과 다른 금액이나 통화를 보고했거나, 주문을 취소하거나 상태를 변경한 후에 인보이스가 결제되었습니다. 주문은 결제 완료로 표시되지 않지만, 실제 청구된 금액은 환불을 위해 기록됩니다. 메모에 이유가 설명되어 있습니다. Moyasar 대시보드에서 결제를 확인한 뒤 주문을 처리하거나 결제를 환불하세요.

Payment error status(기본값 실패): 검토 중이던 결제가 실패했습니다.

Refunded status(기본값 환불됨): 결제가 확장 프로그램을 통해 전액 환불되었습니다.

결제 완료되었거나 환불된 주문은 이후의 이벤트로 되돌려지지 않습니다. 결제 완료 상태를 직접 설정한 경우, 결제는 기록되지만 상태는 바뀌지 않습니다. 이미 결제 완료된 장바구니의 두 번째 인보이스도 결제되면(예: 브라우저 탭 두 개에서), 결제 완료된 주문은 변경되지 않습니다. 메모에서 중복 결제를 Moyasar 대시보드에서 환불하라는 안내가 표시됩니다.

메모는 고객이 볼 수 없는 주문의 History 항목입니다.

VibeFox Moyasar Payment Gateway 탭

Sales > Orders에서 Moyasar로 결제된 주문을 엽니다. 주문 페이지 하단, History와 Additional 옆의 VibeFox Moyasar Payment Gateway 탭에는 Moyasar invoice(테스트 결제에는 Test mode 라벨 표시), Moyasar payment, Method, Status, Paid / refunded 금액, 환불 양식, 환불 기록, 주문의 Moyasar notes가 표시됩니다. 이 탭은 확장 프로그램에 접근 권한이 있는 사용자에게 표시됩니다.

환불

VibeFox Moyasar Payment Gateway 탭에서 Amount를 입력합니다(아직 환불되지 않은 금액이 미리 채워집니다). 필요하면 Reason (optional)을 입력하고 Refund via Moyasar를 클릭합니다. 이 금액을 Moyasar를 통해 환불하시겠습니까? 이 작업은 취소할 수 없습니다. 질문을 확인하세요. 전액 환불과 부분 환불을 모두 지원합니다. 확장 프로그램을 수정할 권한이 필요합니다(System > Users > User Groups에서 설정). 환불은 Moyasar가 청구한 금액과 통화로 이루어집니다. 따라서 금액 불일치가 있었다면 주문 총액이 아니라 고객이 실제로 결제한 금액까지만 환불할 수 있습니다. 2시간 이내에 이루어진 카드 결제의 전액 환불은 무효화(void: 정산 전 취소, 수수료 없음)로 전송됩니다. STC Pay 결제와 그 밖의 모든 경우는 일반 환불로 처리됩니다. 환불은 결제가 이루어진 모드(테스트 또는 운영)의 시크릿 키를 사용하므로, 해당 키가 설정되어 있어야 합니다. 확장 프로그램은 먼저 Moyasar에서 결제의 통화, 상태, 환불 가능 금액을 확인합니다. Moyasar가 환불을 수락하지 않으면 탭에 오류가 표시되며 환불은 기록되지 않습니다. 성공한 환불이나 무효화는 환불 기록과 메모에 추가됩니다. 전액 환불은 고객에게 알리지 않고, 수동 상태 변경과 마찬가지로 상품을 재고로 되돌리지 않은 채 주문을 Refunded status로 설정합니다. 부분 환불은 상태를 바꾸지 않습니다. 환불은 Moyasar가 결제를 확인한 뒤에 사용할 수 있습니다.

Sales > Returns의 상품 반품은 Moyasar를 통해 돈을 돌려보내지 않습니다.

Moyasar 대시보드에서 이루어진 환불과 무효화는 웹훅으로 전달됩니다. Moyasar가 확장 프로그램이 기록한 것보다 많은 환불 금액을 표시하면, 주문에 메모가 추가됩니다. 주문 상태는 자동으로 바뀌지 않습니다. 필요하면 Refund via Moyasar를 사용하지 않고 수동으로 업데이트하세요.

라이선스 키

이 확장 프로그램은 vibefox.net에서 받은 VibeFox 라이선스 키로 작동합니다. License — VibeFox Moyasar Payment Gateway 라이선스 블록은 Extensions > Extensions > Payments > VibeFox Moyasar Payment Gateway > Edit에서 설정 위에 있는 첫 번째 블록입니다. 키를 License key에 붙여 넣고 Activate를 클릭합니다. 그 후 블록에는 마스킹된 키, 상태(예: 라이선스가 유효한 날짜와 귀하의 도메인), 그리고 다음 버튼이 표시됩니다. 상태를 다시 확인하는 Check now, 다른 키를 입력하는 Change key, 이 쇼핑몰에서 키를 제거하는 Remove key입니다. 그 아래에는 Product: opencart-payment-moyasar 줄과 귀하의 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를 클릭하세요. 라이선스 서버에 연결할 수 없으면 확장 프로그램은 마지막으로 확인된 상태로 계속 작동합니다.

키 하나는 도메인 하나에서만 작동합니다. 쇼핑몰에서 키를 제거해도 도메인 슬롯은 비워지지 않습니다. vibefox.net 계정에서 슬롯을 비우세요.

활성 키가 없으면 체크아웃에서 고객에게 Moyasar가 표시되지 않습니다. 그럼에도 결제가 시작되면 고객은 This payment method is not available. Please choose another one.를 봅니다. 같은 브라우저에서 관리자 화면에 로그인한 관리자 사용자는 쇼핑몰에서 결제 수단을 (unlicensed — visible to admins only)로 표시된 상태로 계속 볼 수 있으므로, 키를 구입하기 전에 확장 프로그램을 설정하고 테스트할 수 있습니다. OpenCart 4에서는 이 미리보기를 사용할 수 없습니다. 스토어가 관리자 로그인을 인식하지 못하므로, 활성 키가 없으면 결제 수단이 모든 사람에게 숨겨집니다. Edit 페이지를 한 번 열면 관리자 화면의 Dashboard에 알림이 나타납니다. ×로 닫으면 7일 동안 숨겨집니다. 기존 주문에는 영향이 없습니다. 이미 시작된 결제는 계속 확인되며 환불도 작동합니다.

라이선스가 만료되면 확장 프로그램은 계속 작동하지만, 업데이트와 지원에는 갱신이 필요합니다. 관리자 화면의 Dashboard나 Edit 페이지를 열면 상태가 자동으로 다시 확인됩니다. 키를 입력한 후 처음 14일 동안은 하루에 한 번, 그 후에는 일주일에 한 번입니다. cron 작업은 필요하지 않습니다. 확장 프로그램을 제거하면 라이선스 키와 라이선스 상태는 항상 삭제됩니다.

문제 해결

Moyasar가 체크아웃에 나타나지 않음: 라이선스가 활성 상태인지, Enable/Disable이 켜져 있는지, 현재 모드에 시크릿 키가 있는지 확인하세요. 테스트 모드에서는 Test secret key, 운영 모드에서는 Live secret key입니다. 키가 없으면 설정 페이지에 경고가 표시됩니다. 고객은 SAR, AED, USD, EUR, KWD, BHD 또는 OMR로 결제해야 합니다(쇼핑몰에서 선택된 통화). 또한 결제 주소가 선택한 Geo Zone에 있는지, 그리고 주문이 설정의 Total에 도달하는지 확인하세요.

결제는 완료되었지만 주문이 상태 없이 남아 있음: 확인 신호가 쇼핑몰에 도달하지 않았습니다. 웹훅을 설정하세요. Moyasar 대시보드에서 웹훅이 존재하는지, URL이 설정의 Webhook URL과 정확히 일치하는지, 메서드가 POST인지, 네 가지 이벤트가 모두 선택되었는지, 그리고 공유 시크릿이 Webhook shared secret에 저장된 값과 같은지 확인하세요. 주문은 고객이 결제 후 쇼핑몰로 돌아왔을 때, 또는 같은 장바구니를 다시 결제하려고 할 때도 상태를 받습니다.

웹훅 응답이 Unauthorized임: Moyasar의 공유 시크릿이 저장된 값과 다릅니다. Moyasar 웹훅의 시크릿을 Webhook shared secret에 입력하고 저장하거나, Generate a new secret을 선택하고 저장한 뒤 표시된 시크릿을 Moyasar에 붙여 넣으세요.

웹훅 응답이 Webhook secret not configured임: 저장된 공유 시크릿이 없습니다. 예를 들어 Clear the saved value on save로 삭제한 뒤입니다. Save를 클릭하여 생성하고 Moyasar에 복사하세요.

웹훅 응답이 Key not configured임: 인보이스가 시크릿 키가 비어 있는 모드(테스트 또는 운영)에서 생성되었습니다. 해당 키를 입력하세요.

웹훅 응답이 Verification failed 또는 Try again later임: Moyasar API에서 인보이스를 읽을 수 없었거나, 같은 순간 다른 요청이 장바구니를 업데이트하고 있었거나, 주문 상태를 설정할 수 없었습니다. Moyasar가 웹훅을 다시 시도합니다. 이유를 보려면 Debug log를 켜세요.

웹훅 URL을 브라우저에서 열면 Method not allowed가 표시됨: 정상입니다. 이 URL은 Moyasar의 POST 요청만 받습니다.

키와 관련된 저장 오류: 공개 키(pk_...)나 다른 모드의 키가 붙여 넣어졌거나, 키에 공백이 포함되어 있습니다. 이전 값은 유지되었습니다. 테스트 키는 sk_test_, 운영 키는 sk_live_로 시작합니다.

Confirm Order 후 고객이 오류를 봄: Debug log를 켜고 확장 프로그램 페이지의 Log 필드를 확인하세요. This payment method is not available.는 체크아웃 세션이 더 이상 주문과 맞지 않거나 그 사이 결제 수단이 꺼졌다는 뜻입니다. 고객은 체크아웃을 새로 고쳐야 합니다. This payment method is temporarily unavailable. Please choose another payment method or contact us.는 보통 잘못되었거나 없는 시크릿 키를 뜻합니다. A payment for this order has already been received and is being reviewed. Please contact us instead of paying again.는 장바구니에 이미 결제 완료된 인보이스가 있지만 그 주문 상태를 설정할 수 없었다는 뜻입니다. 로그를 확인하세요.

결제 후 주문이 보류 상태임: VibeFox Moyasar Payment Gateway 탭의 Moyasar notes를 읽으세요. 결제된 금액이나 통화가 주문과 달랐거나, 결제가 주문 취소 후에 도착했습니다. 주문을 처리하거나 결제를 환불하세요.

탭에 환불 양식이 없음: 탭에 이유가 표시됩니다. 결제가 아직 확인되지 않았거나, 전액 환불되었거나, 사용자 그룹에 확장 프로그램을 수정할 권한이 없는 경우입니다.

환불이 실패함: 메시지를 읽으세요. 결제가 다른 모드에서 이루어졌다면 그 모드의 시크릿 키를 입력하세요. 금액이 Moyasar에서 아직 환불 가능한 금액보다 크다면, 결제의 일부는 이미 환불된 것입니다. 예를 들어 Moyasar 대시보드에서요. Moyasar가 환불된 금액을 확인하지 않았다면, 다시 시도하기 전에 Moyasar 대시보드에서 결제를 확인하세요.

개발자용: 확장 프로그램은 지원되는 통화와 인보이스 데이터를 변경하기 위해 OpenCart 이벤트 moyasar_p_supported_currencies와 moyasar_p_invoice_params를 발생시킵니다.

제거

Extensions > Extensions로 이동하여 유형으로 Payments를 선택하고, VibeFox Moyasar Payment Gateway 옆의 Uninstall(빨간색 − 버튼)을 클릭합니다. 이 확장 프로그램의 라이선스 키와 라이선스 상태는 항상 제거됩니다. OpenCart는 확장 프로그램의 자체 설정을 항상 제거합니다. Enable/Disable, Sort Order, Geo Zone, Total, 그리고 Orders 섹션의 주문 상태입니다. 이들은 다시 설치할 때 기본값으로 돌아갑니다. 확장 프로그램의 OpenCart 이벤트도 제거됩니다(OpenCart 4에서는 이벤트와 유지 보수 모드에서 웹훅을 통과시키는 시작 액션도 제거됩니다). Clean uninstall이 켜져 있으면 나머지 게이트웨이 설정(제목, 설명, 테스트 모드, 키, 웹훅 공유 시크릿, 디버그 로그)과 로그가 삭제됩니다. 꺼져 있으면 나중에 다시 설치할 때 사용할 수 있도록 보존됩니다. Moyasar의 인보이스, 결제, 환불 기록은 항상 보존되므로, 이전 주문도 다시 설치한 후에 환불할 수 있습니다. 기존 주문은 결제 메모를 그대로 유지합니다.

OpenCart 4에서 확장 프로그램의 파일도 함께 제거하려면, 제거 후 Extensions > Installer로 이동하여 설치된 확장 프로그램 목록에서 VibeFox Moyasar Payment Gateway 옆의 Uninstall(주황색 − 버튼)을 클릭한 다음, Delete(빨간색 휴지통 버튼)를 클릭해 업로드된 패키지를 삭제하세요.

Moyasar는 해당 소유자의 상표입니다. 이 확장 프로그램은 Moyasar와 제휴하거나 Moyasar의 승인을 받은 것이 아닙니다.