VibeFox Loggi for OpenCart — 도움말
요구 사항
OpenCart: 3.0.x(3.0.5.0에서 테스트됨) 또는 4.0.2 이상(4.1.0.3에서 테스트됨).
PHP: 8.0 이상.
Loggi 계정(실시간 요금에만 해당): 실시간 요금은 Loggi가 비즈니스 계정에 발급하는 API 키를 사용하여 Loggi GraphQL API를 이용합니다. Loggi 계정 담당자 또는 Loggi 연동 지원팀(integracoes@loggi.com)에 문의하십시오. docs.api.loggi.com의 Loggi API 문서도 참고하십시오. 세 가지 값이 필요합니다: Loggi 계정의 이메일, API 키, 그리고 쇼핑몰의 숫자 ID입니다. Loggi 계정에 새로운 Loggi REST 플랫폼 API(클라이언트 ID와 시크릿)의 자격 증명만 있다면 실시간 요금은 사용할 수 없으며, 고정 요금이 사용됩니다. 고정 요금만 사용한다면 Loggi 계정은 필요하지 않습니다.
VibeFox 라이선스 키: vibefox.net에서 구매합니다. 키 하나는 도메인 하나에서 작동합니다.
설치
다운로드는 두 OpenCart 버전용 패키지가 모두 들어 있는 zip 파일 하나입니다. 컴퓨터에서 압축을 푸십시오. 파일에는 README.txt, OpenCart 3 패키지 vfd_loggi-oc3-(version).ocmod.zip, OpenCart 4 패키지 vfd_loggi.ocmod.zip이 들어 있습니다. 사용 중인 OpenCart 버전에 맞는 패키지만 설치하십시오. 라이선스 키는 두 버전에서 동일합니다.
OpenCart 3
1. 관리자 화면에서 Extensions > Installer로 이동하여 Upload를 클릭하고 vfd_loggi-oc3-(version).ocmod.zip 파일을 선택합니다. 이 확장 기능은 OCMOD 수정 사항을 추가하지 않으므로 Extensions > Modifications를 새로 고칠 필요가 없습니다. Installer 대신 이 패키지의 upload 폴더 내용을 쇼핑몰의 루트 폴더에 복사할 수도 있습니다.
2. Extensions > Extensions로 이동하여 확장 기능 유형에서 Shipping을 선택합니다. VibeFox Loggi를 찾아 Install(녹색 + 버튼)을 클릭합니다.
3. Edit(연필 버튼)을 클릭하여 설정 페이지를 엽니다.
4. Edit 페이지 상단의 라이선스 블록에 있는 License key에 VibeFox 라이선스 키를 붙여 넣고 Activate를 클릭하십시오(라이선스 키 참조).
5. Loggi API 이메일, API 키, 샵 ID, 집하 주소를 입력하고, 쇼핑몰의 기본 통화가 BRL이 아니면 BRL 환율도 입력합니다. 안전망으로 고정 요금을 추가하고(Configuration 참조), Enable Loggi를 켠 다음 Save를 클릭합니다.
OpenCart 4
1. 관리자 화면에서 Extensions > Installer로 이동하여 Upload를 클릭하고 vfd_loggi.ocmod.zip 파일을 선택합니다. 파일 이름을 바꾸지 마십시오. OpenCart 4는 확장 기능 코드를 파일 이름에서 가져오므로, 이름을 바꾼 패키지는 작동하지 않습니다.
2. 같은 페이지의 설치된 확장 기능 목록에 패키지가 나타납니다. 그 옆의 Install(녹색 + 버튼)을 클릭하십시오.
3. Extensions > Extensions로 이동하여 확장 기능 유형에서 Shipping을 선택합니다. VibeFox Loggi를 찾아 Install(녹색 + 버튼)을 클릭한 다음 Edit(연필 버튼)을 클릭합니다.
4. OpenCart 3의 4단계와 5단계와 같이 라이선스 키와 설정을 입력합니다. 설정 페이지와 그 필드는 두 버전에서 동일합니다.
설치 시 확장 기능은 캐시된 Loggi 요금을 위한 작은 테이블을 만듭니다. Enable Loggi를 켜고 저장하기 전까지 이 방법은 꺼져 있습니다. 제거 후 확장 기능을 다시 설치하면 보관된 Loggi 설정이 다시 사용됩니다.
설정
모든 설정은 확장 기능 페이지에 있습니다: Extensions > Extensions > Shipping > VibeFox Loggi > Edit. 섹션은 왼쪽에 나열됩니다. 이 설정은 모든 지오존에 적용됩니다. 하단의 Save 버튼 하나로 페이지를 다시 로드하지 않고 전체를 저장합니다. 저장할 때마다 캐시된 Loggi 요금도 지워집니다. 값이 잘못되면(예: 음수, 잘못된 이메일, 숫자가 아닌 샵 ID), 페이지에 오류가 표시되고 아무것도 저장되지 않습니다. 이 확장 기능에 대한 수정 권한이 있는 관리자 사용자만 설정을 저장할 수 있습니다.
설정 위의 경고(저장할 때마다 다시 표시됨)는 설정이 불완전함을 나타냅니다: API 자격 증명 없음(고정 요금만 사용), API 자격 증명과 고정 요금 모두 없음(배송 방법이 표시되지 않음), 집하 주소 없음, 또는 BRL 환율 없음. 쇼핑몰에 단위가 kg인 무게 등급이나 단위가 cm인 길이 등급이 없고 기본 등급의 단위를 인식할 수 없으면 다른 경고가 나타납니다. 그 경우 상품 무게는 kg, 치수는 cm로 계산됩니다. System > Localisation > Weight Classes와 Length Classes에서 등급을 추가하십시오.
일반
Enable Loggi: 체크아웃에서 Loggi를 표시하거나 숨깁니다. 기본값: 끔.
Method title: 장바구니와 체크아웃에서 고객에게 표시되는 배송 방법 이름. 기본값: Loggi. 필수이며 최대 64자이고, 문자 < > ; = # { }는 사용할 수 없습니다.
Sort order: 체크아웃에서 배송 방법 목록 중 Loggi의 위치. 정수입니다.
Loggi API(실시간 요금)(고정 요금만 사용하려면 자격 증명을 비워 두십시오)
API e-mail: Loggi 계정의 이메일입니다. API 키는 이 계정에 속합니다. 유효한 이메일 주소여야 합니다. 지우면 저장된 API 키도 지워집니다.
API key: Loggi API 키입니다. Loggi에만 전송되며 절대 기록되지 않습니다. 저장 후 이 필드는 비어 있고 Saved — leave empty to keep it; clear the API e-mail to remove it.를 표시합니다. 변경하려는 경우에만 새 값을 입력하십시오. API e-mail을 변경하는 경우 새 이메일의 API 키도 입력하십시오. 그렇지 않으면 페이지에 오류가 표시되고 아무것도 저장되지 않습니다.
Shop ID: Loggi 대시보드에 있는 쇼핑몰의 숫자 ID(pk)입니다(예: 12345). 다른 값은 오류와 함께 거부됩니다.
Staging: 테스트 자격 증명으로 Loggi 스테이징 환경을 사용합니다. 스테이징과 운영 환경은 계정과 키가 다릅니다. 기본값: 끔.
Pickup address: Loggi가 소포를 수거할 위치를 한 줄로 입력합니다: 도로명과 번호, 동네, 도시, 주, CEP(예: Rua Example, 123 - Bairro, São Paulo - SP, 01310-100). 실시간 요금에 필수입니다. OpenCart의 쇼핑몰 주소는 자유 입력 텍스트이므로 대신 사용되지 않습니다. 집하 주소가 없으면 Loggi는 견적을 낼 수 없으며 고정 요금만 사용됩니다.
BRL exchange rate: Loggi 요금은 브라질 헤알 기준입니다. 쇼핑몰의 기본 통화가 BRL이면 이 필드는 필요 없으며 페이지에 그렇게 표시됩니다. 그렇지 않으면 1 BRL이 쇼핑몰 통화로 얼마인지 입력하십시오(예: 0.16). 이것이 없으면 실시간 요금은 사용되지 않습니다. 양수만 허용됩니다. 소수점 구분자로 점과 쉼표 모두 허용됩니다.
고정 요금(쇼핑몰의 기본 통화, 세금 제외)
고정 요금은 Loggi API가 설정되지 않은 경우, 브라질 외 지역 또는 완전한 CEP가 없는 목적지에 사용되며, Loggi가 요금을 반환하지 않을 때(API 중단, 키 거부, 서비스 지역 외 주소)에도 사용됩니다.
Price table: 목적지 국가마다 한 행입니다. Add country를 클릭하면 행이 추가되고, 삭제 버튼으로 행을 제거할 수 있습니다. 자체 행이 없는 모든 국가에는 * All other countries를 선택합니다. 각 행에는 Base price와 무게 열이 있습니다. XS는 1 kg까지, S는 2 kg까지, M은 3 kg까지, L은 5 kg까지, XL은 5 kg 초과입니다. 비어 있거나 0인 무게 열은 기본 요금을 사용합니다. 기본 요금이 0이면 무료 배송입니다. "9.99"와 "9,99"는 모두 허용됩니다. 빈 행과 같은 국가의 두 번째 행은 저장할 때 삭제됩니다.
Price for countries not in the table: Loggi 실시간 요금이 없고 테이블에 목적지 국가의 행이 없을 때(그리고 * 행도 없을 때) 사용됩니다. 그 경우 배송 방법을 숨기려면 비워 두십시오.
Fixed price applies: 고정 요금을 계산하는 방식입니다. Loggi 실시간 요금은 이미 장바구니 전체를 포함하며, 절대 곱해지지 않습니다.
조건
Minimum weight (kg): 장바구니 무게가 이보다 가벼우면 배송 방법을 숨깁니다. 0은 제한 없음(기본값)을 의미합니다.
Maximum weight (kg): 장바구니 무게가 이보다 무거우면 배송 방법을 숨깁니다. 기본값: 30. 0은 제한 없음을 의미합니다. Minimum weight는 Maximum weight보다 클 수 없습니다.
Minimum order amount: 배송이 필요한 상품의 소계(쿠폰 적용 후, 세금 전)가 이 금액에 도달한 경우에만 배송 방법을 표시합니다. 항상 표시하려면 비워 두십시오.
Free shipping from: Loggi 배송이 무료가 되는, 배송이 필요한 상품의 소계(쿠폰 적용 후, 세금 전). 무료 배송이 없으면 비워 두십시오.
Tax class: 배송비의 세금 등급 또는 No tax(기본값). 요금과 Loggi 요금에 이미 세금이 포함되어 있으면 No tax를 선택하십시오.
Geo zone: 이 지오존 내의 주소에만 Loggi를 제공합니다. All zones(기본값)는 제한 없음을 의미합니다. 지오존은 System > Localisation > Geo Zones에서 관리합니다. Ignore shipping zones가 켜져 있으면 지오존은 확인되지 않습니다.
무게 제한과 무게 열의 경우, 무게가 없는 상품은 0 kg로 계산됩니다.
국가
OpenCart에는 운송사 구역이 없습니다. Geo zone은 배송 방법을 하나의 지오존 주소로 제한합니다. 대신 Ignore shipping zones를 켜고 국가 목록을 선택할 수 있습니다.
Ignore shipping zones: Geo zone과 관계없이 아래 국가에 Loggi를 제공합니다. 이 모드에서는 지오존이 확인되지 않습니다. 기본값: 끔.
Countries: 이 모드의 배송 대상 국가입니다. 비워 두면 쇼핑몰에서 활성화된 모든 국가를 허용합니다. 이 필드는 Ignore shipping zones가 켜져 있을 때만 사용됩니다.
고급
Debug log: 요금 계산과 Loggi 요청을 storage/logs/vfd_lggi_debug.log.php(OpenCart 4에서는 system/storage/logs/vfd_lggi_debug.log.php)에 기록합니다. 이 파일은 웹에서 읽을 수 없습니다. 이 옵션이 꺼져 있어도 API 오류는 항상 기록됩니다. API 키와 고객 주소는 절대 기록되지 않습니다. 파일이 5 MB에 도달하면 vfd_lggi_debug.old.log.php로 이동되고 새 로그가 시작됩니다.
Log: 디버그 로그의 크기와 최신 항목을 표시합니다. Clear log를 클릭하면 비워집니다.
Remove data on uninstall: 켜져 있으면 확장 기능을 제거할 때 Loggi 설정과 로그가 삭제됩니다. 꺼져 있으면(기본값) 다시 설치할 수 있도록 설정이 보관됩니다. 캐시된 요금은 항상 삭제됩니다.
가져오기 / 내보내기
Export: Download JSON을 클릭하면 설정을 JSON 파일로 저장합니다. API 키는 내보내지 않습니다.
Import: 이전에 내보낸 JSON을 붙여 넣고 Import를 클릭하면 설정을 복원합니다(예: 다른 쇼핑몰에서). 값은 일반 저장과 같은 방식으로 검사됩니다. 저장된 API 키는 유지됩니다.
체크아웃에서의 동작 방식
OpenCart가 배송 방법을 표시할 때 확장 기능에 Loggi 요금을 요청합니다. Geo zone이 설정되어 있고, Ignore shipping zones가 꺼져 있으며, 주소가 그 지오존 밖이면 Loggi는 제공되지 않습니다. Requires Shipping이 Yes로 설정된 상품만 계산에 포함됩니다. 그 외의 상품은 무게에 더해지지 않으며 주문 금액에도 포함되지 않습니다. 그다음 확장 기능은 조건을 확인합니다. 허용된 국가(Ignore shipping zones 사용 시), 장바구니 무게, 최소 주문 금액입니다. 주문 금액은 배송이 필요한 상품의 가격으로, 쿠폰 할인 후, 세금 전 금액입니다. 기프트 카드, 적립 포인트, 스토어 크레딧은 고려되지 않습니다. 무료 배송이 적용되면 요금은 0이 되며 Loggi로 요청이 전송되지 않습니다.
8자리 CEP가 모두 입력된 브라질 주소의 경우, 확장 기능은 Loggi 패키지를 구성합니다. 각 상품은 가장 짧은 면이 높이가 되도록 회전되며, 패키지가 55 × 55 × 55 cm, 20 kg 범위를 넘지 않는 한 상품은 하나의 패키지에 쌓입니다. 무게나 치수가 없는 상품은 각 면 1 cm로 계산되며, 각 패키지는 최소 100 g입니다. Loggi는 견적당 2개의 패키지를 허용하므로, 더 큰 장바구니는 여러 요청으로 전송되고 합계가 더해집니다. 확장 기능은 Loggi에 샵 ID, 집하 주소, 배송 주소(도로명, 도시, 주, CEP), 패키지를 전송하고, Loggi 합계를 BRL에서 쇼핑몰의 기본 통화로 환산합니다. 요금은 해당 통화의 소수점 자릿수에 맞게 반올림되며, 선택한 Tax class의 세금을 포함하여 고객의 통화로 표시됩니다.
각 Loggi 요금은 장바구니, 주소, 계정, 환경별로 1시간 동안 캐시되므로 같은 장바구니가 새 요청을 발생시키지 않습니다. 실패한 견적은 10분 동안 캐시됩니다. Loggi에 전혀 연결할 수 없으면 요청은 2분 동안 일시 중지되므로, 체크아웃이 새로 고칠 때마다 Loggi를 기다리지 않습니다. API 제한 시간은 10초입니다.
API가 설정되지 않았거나, 주소가 브라질 밖이거나 아직 완전한 CEP가 없거나, BRL 환율이 없거나, 집하 주소가 없거나, 상품이 Loggi 패키지보다 크거나, 장바구니에 10개를 넘는 패키지가 필요하거나, Loggi가 오류, 거부된 패키지, 서비스 지역 외 주소 또는 합계 0을 반환하면, 고정 요금이 사용됩니다. 고정 요금도 없으면 배송 방법은 숨겨집니다. 고객은 API 오류를 전혀 보지 않습니다. 이유는 디버그 로그에 기록됩니다.
OpenCart 4에서 고객은 체크아웃 페이지의 배송 방법 블록에서 Choose를 클릭한 다음 Shipping method options 창에서 Loggi를 선택합니다. 이 방법은 OpenCart 3과 같은 방식으로 작동합니다.
이 확장 기능은 요금만 계산합니다. Loggi 주문이나 배송을 생성하지 않고, 라벨을 인쇄하지 않으며, 소포를 추적하지 않고, 체크아웃에서 배송 기간을 표시하지 않으며, 픽업 포인트나 사물함을 제공하지 않습니다. 주문에 아무것도 추가하지 않습니다. 주문에는 다른 OpenCart 배송 방법과 마찬가지로 배송 방법 제목과 배송비가 표시됩니다. 배송은 Loggi 대시보드에서 생성하십시오. Loggi는 브라질 내에서만 배송합니다. 다른 국가에는 고정 요금을 사용하십시오.
라이선스 키
이 확장 기능은 vibefox.net에서 받은 VibeFox 라이선스 키로 작동합니다. 라이선스 블록 License — VibeFox Loggi는 Extensions > Extensions > Shipping > VibeFox Loggi > Edit에서 설정 위에 있는 첫 번째 블록입니다. 키를 License key에 입력하고 Activate를 클릭하십시오. 그러면 블록에 마스킹된 키, 상태(예: 라이선스 만료일과 도메인), 그리고 상태를 다시 확인하는 Check now, 다른 키를 입력하는 Change key, 이 쇼핑몰에서 키를 제거하는 Remove key 버튼이 표시됩니다. 그 아래에는 Product: opencart-shipping-loggi 줄과 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 계정에서 슬롯을 해제하십시오.
활성 키가 없으면 Loggi 배송 방법은 체크아웃에서 고객에게 표시되지 않으며 요금도 계산되지 않습니다. 관리자 화면에 같은 브라우저로 로그인한 관리자 사용자에게는 여전히 쇼핑몰에서 배송 방법이 표시되며, (unlicensed — visible to admins only)로 표시됩니다. 따라서 키를 구매하기 전에 확장 기능을 설정하고 테스트할 수 있습니다. OpenCart 4에서는 이 미리 보기를 사용할 수 없습니다. 쇼핑몰은 관리자 로그인을 인식하지 못하므로, 활성 키가 없으면 이 배송 방법은 모든 사용자에게 숨겨집니다. 관리자 화면에서 Edit 페이지를 한 번 열면 Dashboard에 알림이 표시됩니다. ×를 눌러 닫으면 7일 동안 숨겨집니다. 기존 주문은 영향을 받지 않습니다.
라이선스가 만료되어도 확장 기능은 계속 작동하지만, 업데이트와 지원을 받으려면 갱신이 필요합니다. 키를 입력한 뒤 처음 14일 동안은 하루에 한 번, 그 후에는 일주일에 한 번, 관리자 화면의 Dashboard 또는 Edit 페이지를 열 때 상태가 자동으로 다시 확인됩니다. cron 작업은 필요하지 않습니다. 확장 기능을 제거하면 라이선스 키와 라이선스 상태는 항상 삭제됩니다.
문제 해결
체크아웃에 Loggi가 나타나지 않음: 라이선스가 활성 상태이고 Enable Loggi가 켜져 있는지 확인하십시오. Geo zone, Ignore shipping zones, Countries를 확인하십시오. 확장 기능 페이지 상단의 경고, 무게 제한, Minimum order amount도 확인하십시오. 고객이 아직 완전한 CEP를 입력하지 않았거나 Loggi가 요금을 반환하지 않으면, 이 배송 방법에는 고정 요금이 필요합니다: 국가의 행, * 행, 또는 Price for countries not in the table. 상품의 Requires Shipping이 Yes로 설정되어 있는지 확인하십시오.
고정 요금만 표시됨: 확장 기능 페이지의 Log 필드를 확인하십시오. 오류는 항상 기록됩니다. 각 단계에 대해 Debug log를 켜고 체크아웃을 다시 로드하십시오. 일반적인 원인: API 이메일, 키 또는 샵 ID 누락, 집하 주소 없음, 쇼핑몰 통화가 BRL이 아닌데 BRL exchange rate 없음, 아직 8자리 완전한 CEP 없음, 상품이 55 cm보다 크거나 20 kg보다 무거움, 또는 주소가 Loggi 서비스 지역 밖.
로그에 HTTP 401 또는 403: Loggi가 API 이메일 또는 키를 거부했습니다. Loggi에서 확인하고, Staging이 자격 증명과 일치하는지 확인하십시오. 스테이징과 운영 키는 다릅니다.
쇼핑몰이 유로나 달러로 판매함: Loggi는 BRL로 응답합니다. BRL exchange rate(1 BRL이 쇼핑몰의 기본 통화로 얼마인지)를 입력하십시오. 고정 요금은 항상 쇼핑몰의 기본 통화입니다.
요금이 정확하지 않음: 상품의 무게와 치수를 입력하십시오. 없으면 상품은 각 면 1 cm, 각 패키지는 최소 100 g으로 계산됩니다.
Per item이 Loggi 요금을 곱하지 않음: 의도된 동작입니다. Loggi 실시간 요금은 장바구니 전체를 포함합니다. Per item은 고정 요금에만 적용됩니다.
변경 후 요금이 오래된 것처럼 보임: 확장 기능 페이지에서 Save를 클릭하십시오. 이렇게 하면 캐시된 Loggi 요금이 지워집니다.
페이지에 "Warning: You do not have permission to modify VibeFox Loggi!"가 표시됨: 관리자 사용자 그룹이 설정을 보기만 할 수 있을 수 있습니다. System > Users > User Groups에서 그룹에 extension/shipping/vfd_loggi(OpenCart 3) 또는 extension/vfd_loggi/shipping/vfd_loggi(OpenCart 4)에 대한 수정 권한을 부여하십시오.
개발자용: Loggi API 주소는 설정 vfd_lggi_api_url(테스트용)로 바꿀 수 있습니다. 설정 페이지에는 이에 대한 필드가 없습니다.
제거
Extensions > Extensions로 이동하여 유형 Shipping을 선택하고, VibeFox Loggi 옆의 Uninstall(빨간색 − 버튼)을 클릭합니다. 이 확장 기능의 라이선스 키와 라이선스 상태는 항상 삭제됩니다. OpenCart는 항상 Enable Loggi, Sort order, Tax class, Geo zone을 초기화합니다. 캐시된 Loggi 요금(테이블 포함)은 항상 삭제됩니다. Remove data on uninstall이 켜져 있으면 Loggi 설정과 디버그 로그도 삭제됩니다. 꺼져 있으면 다른 설정은 유지되고 확장 기능을 다시 설치할 때 다시 사용됩니다. 기존 주문은 배송 방법과 배송비를 그대로 유지합니다.
OpenCart 4에서 확장 기능의 파일도 제거하려면, 제거 후 Extensions > Installer로 이동하여 설치된 확장 기능 목록에서 VibeFox Loggi 옆의 Uninstall(주황색 − 버튼)을 클릭한 다음, 업로드한 패키지를 삭제하려면 Delete(빨간색 휴지통 버튼)를 클릭하십시오.
Loggi는 해당 소유자의 상표입니다. 이 확장 기능은 Loggi와 제휴되어 있지 않으며 Loggi의 승인을 받지 않았습니다.
