VibeFox Australia Post for PrestaShop — 도움말
요구 사항
PrestaShop: 8.0~9.x.
PHP: 8.0 이상. 모듈은 이전 버전의 PHP에는 설치되지 않습니다.
Australia Post PAC API 키(실시간 요금에만 필요): 실시간 요금은 Australia Post Postage Assessment Calculator(PAC) API를 사용합니다. 키는 무료입니다. Australia Post Developer Centre(developers.auspost.com.au)에서 PAC API 키에 등록하세요. 모듈 페이지에 등록 페이지 링크가 있습니다. 발송지의 4자리 호주 우편번호도 필요합니다. 국가별 고정 가격만 사용한다면 API 키는 필요하지 않습니다.
VibeFox 라이선스 키: vibefox.net에서 구매합니다. 키 하나는 도메인 하나에서 작동합니다.
설치
1. 관리자 화면에서 Modules > Module Manager로 이동한 후 Upload a module을 클릭하세요. 모듈의 ZIP 파일을 선택하세요.
2. 업로드가 끝나면 Configure를 클릭하세요. 나중에 하려면 모듈 목록에서 VibeFox Australia Post를 찾아 Configure를 클릭하세요.
3. Configure 페이지 상단의 라이선스 블록에 있는 License key 칸에 VibeFox 라이선스 키를 입력하고 Activate를 클릭하세요(라이선스 키 참조).
4. Rate source를 선택하세요. 실시간 요금을 사용한다면 PAC API 키, 발송지 우편번호를 입력하고, 쇼핑몰의 기본 통화가 AUD가 아니라면 AUD 환율도 입력하세요(설정 항목 참조). Save를 클릭하세요.
설치 시 모듈은 배송 시간 텍스트 Australia Post parcel delivery가 적힌 Australia Post 운송업체를 만듭니다. 이 운송업체는 모든 배송 지역과 모든 고객 그룹에 할당됩니다. 배송 지역, 고객 그룹, 배송 시간, 로고, 크기 제한, 세금 규칙은 Shipping > Carriers에서 변경할 수 있습니다. 여기에서 가격을 설정하지 마세요. 가격은 항상 모듈에서 가져옵니다.
설정
모든 설정은 모듈 페이지에 있습니다: Modules > Module Manager > VibeFox Australia Post > Configure. 설정은 모든 배송 지역에 적용됩니다. 페이지 상단에는 Shipping > Carriers에 있는 운송업체의 이름과 ID가 표시됩니다. 각 섹션에는 전체 페이지를 저장하는 Save 버튼이 있습니다. 저장할 때마다 캐시된 Australia Post 요금도 지워집니다.
실시간 요금 소스를 선택했지만 API 키, 4자리 발송지 우편번호 또는 AUD 환율이 없으면 저장 후 경고가 표시됩니다. 경고에는 문제가 해결되기 전까지 어떤 일이 일어나는지도 나옵니다. 운송업체가 체크아웃에서 숨겨지거나, 대체 모드에서는 국가별 고정 가격이 사용됩니다.
숫자 필드는 소수점 구분자로 점이나 쉼표를 받습니다. 숫자가 아니거나 음수인 값은 저장되지 않으며, 경고에 해당 필드가 표시되고 이전 값이 유지됩니다. 쇼핑몰의 무게 또는 치수 단위(International > Localization)를 모듈이 인식하지 못하면 페이지에서도 경고합니다. 이 경우 상품 무게는 kg, 치수는 cm로 간주됩니다.
일반
Enable Australia Post: 모든 배송 지역에서 운송업체를 한 번에 끕니다. Shipping > Carriers의 운송업체 상태와 같은 스위치입니다.
Method title: 체크아웃에서 고객에게 보이는 운송업체 이름입니다. Shipping > Carriers의 운송업체 이름이기도 하며, 거기서 운송업체 이름을 바꾸면 이 필드도 업데이트됩니다. 기본값: Australia Post. 최대 64자: 더 긴 제목은 거부되며 아무것도 저장되지 않습니다. 필드가 비어 있거나 PrestaShop이 운송업체 이름에 허용하지 않는 문자가 포함되어 있으면 경고가 표시되고 Australia Post가 사용됩니다.
Tax status: 배송비에 세금을 적용하는 방법입니다.
Rate source: 가격을 계산하는 방식입니다.
오류 세부 정보는 로그에 기록되며 고객에게는 표시되지 않습니다.
Australia Post API (live rates)(고정 가격에는 필요하지 않음)
PAC API key: 무료로 받은 Australia Post PAC API 키입니다. AUTH-KEY 헤더로 Australia Post에 전송됩니다. 저장 후 이 필드는 비워지고 Saved — leave empty to keep it.를 표시합니다. 변경하려는 경우에만 새 값을 입력하세요.
Remove the saved API key: 저장된 키를 삭제하려면 켜고 저장하세요. 그 후 실시간 요금은 중단됩니다.
Ship-from postcode: 소포를 발송하는 4자리 호주 우편번호입니다(예: 2000).
Domestic service: 호주 국내 배송에 사용됩니다(최대 22kg, 한 변 최대 105cm). Parcel Post(기본값) 또는 Express Post입니다.
International service: 호주 외 지역 배송에 사용됩니다(최대 20kg). International Standard(기본값), International Express 또는 International Courier입니다.
Remove GST: 국내 API 가격을 1.1로 나눕니다. Australia Post의 국내 가격에는 10% GST가 포함되어 있습니다. PrestaShop이 배송비에 세금을 직접 추가할 때(운송업체에 세금 규칙이 있고 Tax status = Taxable인 경우) 이 옵션을 켜서 GST가 이중으로 부과되지 않도록 하세요. 국제 우편 요금은 GST가 없으며 절대 변경되지 않습니다.
AUD → (your currency) rate: 라벨에는 쇼핑몰의 기본 통화가 표시됩니다. Australia Post 가격은 AUD입니다. 기본 통화가 AUD가 아니라면 1 AUD가 내 통화로 얼마인지 입력하세요(예: 0.61). 환율은 0보다 커야 합니다. 환율이 없으면 실시간 요금은 사용되지 않습니다. 기본 통화가 AUD라면 페이지에 환산이 필요 없다고 표시됩니다. 이때는 필드를 비워 두세요. 소수점 구분자로 점과 쉼표를 모두 사용할 수 있습니다.
실시간 요금용 소포
장바구니는 하나의 소포로 발송됩니다. 상품 무게와 치수는 쇼핑몰 단위에서 kg과 cm로 변환됩니다. 아래 값은 무게나 치수가 없는 상품에 사용됩니다.
Default product weight (kg): 무게가 없는 각 상품에 사용됩니다. Australia Post 요청과 Min cart weight (kg) / Max cart weight (kg) 확인에 쓰입니다. 기본값: 1.
Default parcel length (cm): 장바구니의 어떤 상품에도 치수가 없을 때 사용됩니다. 기본값: 22.
Default parcel width (cm): 장바구니의 어떤 상품에도 치수가 없을 때 사용됩니다. 기본값: 16.
Default parcel height (cm): 장바구니의 어떤 상품에도 치수가 없을 때 사용됩니다. 기본값: 8.
상품에 치수가 있으면 소포는 그중 가장 큰 길이와 너비를 사용하고, 모든 상품의 부피를 담을 수 있을 때까지 높이가 늘어납니다.
고정 가격(고정 가격에 사용되며 실시간 요금의 대체 가격으로도 쓰입니다)
Country prices: 2자리 국가 코드(AU, NZ, US 등)와 쇼핑몰 기본 통화로 된 가격의 표이며, 세금은 제외합니다. Add row를 클릭하면 국가를 추가하고, × 링크를 클릭하면 국가를 삭제합니다. 그 밖의 모든 국가에는 *를 사용하세요. 가격이 없는 국가(그리고 * 행도 없는 경우)에는 고정 요금이 없으므로 운송업체가 그 국가에서 숨겨집니다. 잘못된 국가 코드이거나 가격이 없는 행은 저장할 때 삭제됩니다. 가격을 추가하기 전까지 표는 비어 있습니다.
Fixed price per: Order는 가격을 한 번만 청구합니다. Item (price × quantity)은 장바구니의 상품 수만큼 곱해 청구합니다. 이는 고정 가격에만 적용됩니다. 실시간 요금은 항상 소포 전체를 기준으로 계산됩니다.
조건
Min cart weight (kg): 장바구니 무게가 이 값보다 낮으면 운송업체를 숨깁니다. 0은 제한 없음을 뜻합니다.
Max cart weight (kg): 장바구니 무게가 이 값보다 높으면 운송업체를 숨깁니다. 기본값: 22. 0은 제한 없음을 뜻하고, 필드가 비어 있으면 22kg입니다. Australia Post 소포 제한은 국내 22kg, 국제 20kg입니다. Min cart weight (kg)이 최댓값보다 크면 운송업체가 전혀 표시되지 않습니다. 이때 경고가 표시되고 두 무게 값은 이전 값을 유지합니다.
Minimum order amount: 상품 소계(할인 후, 세금 제외)가 이 금액에 도달했을 때만 운송업체를 표시합니다. 금액은 쇼핑몰 기본 통화로 입력합니다. 항상 표시하려면 비워 두세요.
Free shipping: 아래 금액부터 무료 배송을 켭니다.
Free shipping from: 배송비가 무료가 되는 상품 소계(할인 후, 세금 제외)입니다. 이 경우 API 요청은 보내지 않습니다. Free shipping이 켜져 있을 때만 사용됩니다.
배송 지역 없이 사용하는 경우의 제공
보통 운송업체는 Shipping > Carriers에서 선택한 배송 지역에서 제공됩니다.
Ignore shipping zones: 어떤 배송 지역이 일치하든, 아래 국가에 운송업체를 제공합니다. 저장하면 운송업체가 모든 배송 지역에 연결되며, 나중에 만드는 배송 지역도 자동으로 연결됩니다. 이 옵션을 끄면 운송업체가 이전에 가졌던 배송 지역이 되돌아갑니다.
Countries: 이 모드의 배송 대상 국가입니다. 모든 활성 국가를 허용하려면 비워 두세요. Ctrl(Mac에서는 Cmd)을 누른 채 클릭하면 여러 국가를 선택할 수 있습니다. Ignore shipping zones와 함께 사용할 때만 쓰입니다.
고급
Debug log: 요금 계산을 modules/vfd_australia_post/logs/vfd_ap.log.php에 기록합니다. 이 파일은 웹에서 열 수 없습니다. API 오류는 항상 기록됩니다. API 키와 고객의 우편번호는 기록되지 않습니다. 작업이 끝나면 로그를 끄세요.
Log: 로그의 크기와 최신 항목을 보여 줍니다. Clear log를 클릭하면 로그가 비워집니다.
Remove data on uninstall: 켜져 있으면 모듈을 제거할 때 설정, 캐시된 요금, 로그가 삭제됩니다. 운송업체는 제거할 때 항상 삭제됩니다. 데이터가 보존되었다면 다시 설치할 때 운송업체가 복원됩니다.
체크아웃에서의 동작 방식
배송 단계에서 PrestaShop은 모듈에 Australia Post 가격을 요청합니다. 실물 상품만 계산에 포함됩니다. 가상 상품은 무게를 더하지 않으며 주문 금액에도 포함되지 않습니다. 모듈은 먼저 조건을 확인합니다. Countries 목록(Ignore shipping zones와 함께), 장바구니 무게, Minimum order amount를 확인합니다. 무료 배송이 적용되면 가격은 0이며 Australia Post에 요청을 보내지 않습니다.
고정 가격 모드에서는 가격을 표에서 가져옵니다. 실시간 요금 모드에서 모듈은 Australia Post에 소포 무게를 보내며, 호주 국내 배송이라면 발송지와 배송지 우편번호 및 소포 크기도 보냅니다. 국제 배송이라면 목적지 국가를 보냅니다. 국내 실시간 요금은 배송 주소에 4자리 우편번호가 있을 때만 요청합니다. 소포가 Australia Post 제한(국내 22kg 또는 105cm, 국제 20kg)을 초과하면 요청을 보내지 않습니다. AUD 가격은 설정한 환율로 변환되며, Remove GST가 켜져 있으면 국내 가격에서 GST를 뺍니다. 가격은 쇼핑몰의 기본 통화로 계산된 뒤 고객의 장바구니 통화로 표시됩니다.
성공한 응답은 각각 1시간 동안 캐시되므로 같은 장바구니가 새 요청을 일으키지 않습니다. 실패한 요청은 10분 동안 캐시되므로, 체크아웃을 새로 고칠 때마다 Australia Post를 기다리지 않습니다. API 제한 시간은 10초입니다. API 오류는 고객에게 절대 표시되지 않습니다. 운송업체가 숨겨지거나, 대체 모드에서는 고정 가격이 사용됩니다. 이유는 로그에 기록됩니다.
운송업체에 주문이 생긴 뒤 Shipping > Carriers에서 운송업체를 편집하면 PrestaShop은 이를 운송업체의 새 버전으로 저장합니다. 모듈은 새 버전을 자동으로 따릅니다.
모듈은 요금만 계산합니다. 배송 라벨, eParcel 또는 MyPost Business 발송 건이나 매니페스트를 만들지 않고, 소포를 추적하지도 않으며, 고객이 파셀 로커나 우체국을 선택하게 하지도 않습니다. 장바구니는 항상 하나의 소포로 계산됩니다. 편지, 우편 봉투, 계약 요금(eParcel)은 포함되지 않습니다.
라이선스 키
이 모듈은 vibefox.net에서 받은 VibeFox 라이선스 키로 작동합니다. License — VibeFox Australia Post 라이선스 블록은 Modules > Module Manager > VibeFox Australia Post > Configure에서 설정 위에 있는 첫 번째 블록입니다. 키를 License key에 입력하고 Activate를 클릭하세요. 그러면 블록에 마스킹된 키, 상태(예: 라이선스가 유효한 마감일과 도메인), 그리고 상태를 다시 확인하는 Check now, 다른 키를 입력하는 Change key, 이 쇼핑몰에서 키를 제거하는 Remove key 버튼이 표시됩니다. 그 아래에는 Product: presta-shipping-australia-post 줄과 vibefox.net 계정을 여는 Manage licenses and domains in your account 링크가 있습니다. 모듈의 Configure 권한이 있는 직원만 키를 변경할 수 있습니다. 블록의 문구는 백오피스 언어를 따릅니다(영어와 러시아어가 포함됩니다).
키가 승인되지 않으면 블록에 이유가 표시됩니다(예: Key not found, This key belongs to another product, Domain limit reached, 또는 날짜와 함께 License expired on). 쇼핑몰 주소를 변경한 후, 또는 계정에서 도메인 슬롯을 비운 후에는 Check now를 클릭하세요. 라이선스 서버에 연결할 수 없으면 모듈은 마지막으로 확인된 상태로 계속 작동합니다.
키 하나는 도메인 하나에서 작동합니다. 여기에는 멀티스토어 설정의 메인 쇼핑몰 도메인도 포함됩니다. 쇼핑몰에서 키를 제거해도 도메인 슬롯은 비워지지 않습니다. vibefox.net 계정에서 슬롯을 비우세요.
활성 키가 없으면 체크아웃에서 고객에게 Australia Post 운송업체가 표시되지 않으며 요금도 계산되지 않습니다. PrestaShop storefront는 백오피스에 로그인했는지 알지 못하므로, 운송업체는 관리자에게도 숨겨집니다. 키를 구매하기 전에 모듈을 설정할 수는 있지만 체크아웃에서 테스트할 수는 없습니다. Modules > Module Manager의 Alerts 탭에 알림이 표시됩니다. 기존 주문에는 영향이 없습니다.
라이선스가 만료되어도 모듈은 계속 작동하지만, 업데이트와 지원에는 갱신이 필요합니다. 백오피스에서 작업하는 동안 상태는 자동으로 다시 확인됩니다. 키를 입력한 후 처음 14일 동안은 하루에 한 번, 그 후에는 일주일에 한 번입니다. cron 작업은 필요하지 않습니다. 모듈을 제거하거나 초기화하면 라이선스 키와 라이선스 상태는 항상 삭제됩니다.
문제 해결
체크아웃에 Australia Post가 나타나지 않음: 라이선스가 활성 상태인지, Enable Australia Post가 켜져 있는지 확인하세요(운송업체가 Shipping > Carriers에서 활성 상태여야 합니다). Shipping > Carriers에서 운송업체가 고객 국가의 배송 지역과 고객 그룹을 포함하는지 확인하세요(또는 Ignore shipping zones가 켜져 있고 Countries에서 해당 국가가 허용되어 있어야 합니다). 장바구니 무게 제한과 Minimum order amount도 확인하세요. 고정 가격 모드에서는 해당 국가나 *에 가격이 있는지 확인하세요. 상품 페이지에서 특정 운송업체로만 제한되어 있을 수도 있습니다.
실시간 요금이 나타나지 않음: Debug log를 켜고 체크아웃을 새로 고친 다음, 모듈 페이지의 Log 필드를 확인하세요. 원인이 표시됩니다. API 키 또는 발송지 우편번호가 없음, 아직 4자리 배송지 우편번호가 없음, 소포가 제한을 초과함, AUD 환율이 없음, 또는 Australia Post 오류 메시지 중 하나입니다. Live rates, fixed price if the API gives no rate를 사용하면, 문제를 해결하는 동안에도 고객은 고정 가격을 보게 됩니다.
쇼핑몰이 AUD를 사용하지 않음: AUD → (your currency) rate 필드에 환율(1 AUD가 쇼핑몰 기본 통화로 몇 단위인지)을 입력하세요. 고정 가격은 항상 기본 통화로 입력됩니다.
배송비에 GST가 이중으로 부과됨: Australia Post의 국내 가격에는 10% GST가 포함되어 있습니다. Tax status가 Taxable이고 운송업체에 세금 규칙이 있다면 Remove GST를 켜거나, Tax status를 None으로 설정하세요.
배송비에 세금이 추가되지 않음: Tax status = Taxable이면 세금은 운송업체의 세금 규칙에서 나옵니다. Shipping > Carriers에서 해당 규칙을 선택하세요. 운송업체에 세금 규칙이 없는 동안 모듈 페이지에 경고가 표시됩니다.
가격이 너무 높거나 낮음: 상품의 무게와 치수, 그리고 Parcel for live rates의 기본값을 확인하세요. Item (price × quantity)을 사용하면 고정 가격에 상품 수가 곱해집니다.
변경 후 요금이 오래된 것처럼 보임: 모듈 페이지에서 Save를 클릭하세요. 캐시된 Australia Post 요금이 지워집니다.
페이지에 Australia Post 운송업체가 삭제되었다고 표시됨: Shipping > Carriers에서 운송업체가 삭제된 상태입니다. 모듈 페이지에서 Save를 클릭해 다시 만들거나, Modules > Module Manager에서 모듈을 초기화하세요.
제거
Modules > Module Manager로 이동하여 VibeFox Australia Post 옆의 메뉴를 연 다음 Uninstall을 선택하세요. 라이선스 키와 라이선스 상태는 항상 삭제됩니다. 운송업체는 항상 제거됩니다(주문은 기록을 유지합니다). 캐시된 요금도 지워집니다. Remove data on uninstall이 켜져 있으면 설정, 요금 캐시 테이블, 로그도 삭제됩니다. 꺼져 있으면 설정이 유지되고, 모듈을 다시 설치하면 배송 지역, 그룹, 로고가 포함된 운송업체가 복원됩니다.
Australia Post는 해당 소유자의 상표입니다. 이 모듈은 Australia Post와 제휴하거나 Australia Post의 승인을 받은 것이 아닙니다.
