주 콘텐츠로 건너뛰기
버전: 1.x

오프라인 기능

WCPOS는 각 기기의 로컬 데이터베이스에 상품 및 고객 데이터를 저장합니다. 따라서 POS의 일부 기능은 인터넷 연결 없이도 작동하지만, 일부 기능은 연결이 필요합니다.

오프라인에서 작동하는 기능

  • 상품 탐색 — 로컬 데이터에서 상품을 검색, 필터링하고 상품 세부 정보를 확인합니다
  • 고객 탐색 — 고객 이름, 이메일, 주소를 조회합니다
  • 장바구니 구성 — 항목 추가, 수량 변경, 가격 편집, POS 할인 적용을 할 수 있습니다
  • 쿠폰 적용(Pro) — 동기화된 쿠폰 데이터를 기준으로 코드가 로컬에서 검증되며, 대기 중이던 주문이 도달하면 서버가 다시 검증합니다
  • 오프라인 지원 결제 수단으로 판매 완료 — 현금 및 외부에서 처리하는 카드 판매는 로컬에 저장되어 WooCommerce 전송 대기열에 들어갑니다
  • 바코드 스캔 — 바코드를 스캔하여 로컬 데이터베이스에서 상품을 찾습니다
  • 보고서 보기 — 기본(오프라인) 보고서 유형은 로컬에 저장된 주문에서 보고서를 생성합니다

연결이 필요한 기능

  • 서버에 의존하는 결제 작업 — 웹 체크아웃, 통합 온라인 게이트웨이 또는 단말기 게이트웨이, 서버에 저장은 각 서비스에 연결할 수 있어야 합니다
  • 데이터 동기화 — WooCommerce에서 새 상품, 업데이트된 가격 또는 새 고객을 가져옵니다
  • 로그인 — 최초 인증에는 WordPress 사이트 연결이 필요합니다
  • 라이선스 활성화 — Pro 라이선스 확인은 WCPOS 라이선스 서버에 연결되어야 합니다
  • 환불 처리 — 환불은 오프라인에서 대기열에 넣을 수 없습니다. 게이트웨이와 매장 모두 연결 가능해야 합니다(환불 참조)

로컬 데이터베이스 작동 방식

WCPOS를 처음 열면 백그라운드에서 상품 카탈로그를 시드하고, 사용하는 과정에서 나머지 데이터를 가져옵니다. 첫 상품이 기기에 저장되는 즉시 판매를 시작할 수 있습니다. 이후에는 백그라운드 변경 확인(기본값 60초마다, 스토어 상태에서 조정 가능)이 서버에서 실제로 변경된 항목만 가져옵니다.

로컬 데이터베이스:

  • 세션 간 유지 — 브라우저를 다시 시작하거나 기기를 재부팅해도 데이터가 유지됩니다
  • 기기별(및 계산원별)로 관리 — 각 기기는 자체 로컬 사본을 유지하며, 계산원끼리 로컬 데이터를 공유하지 않습니다
  • 동기화 상태 유지 — 백그라운드 변경 확인이 업데이트를 가져오고, 사용자의 변경 사항은 로컬에 대기했다가 서버로 전송됩니다

기기에 무엇이 저장되어 있는지, 그리고 아직 전송 대기 중인 항목이 무엇인지는 스토어 상태 → 데이터베이스에서 정확히 확인할 수 있습니다. 더 자세한 기술 정보는 동기화 엔진 작동 방식을 참조하세요.

오프라인에서 변경한 내용은 대기열에 저장됩니다

POS에서 변경한 모든 내용(판매, 상품 편집, 고객 업데이트)은 먼저 기기에 저장된 뒤 전송 대기열에 들어갑니다. 오프라인 상태에서는 대기열이 그대로 대기하며, 근무 중 연결이 끊어져도 잃는 것은 없습니다.

연결이 복구되면 대기열이 자동으로 비워집니다. 서버가 변경 사항을 명시적으로 거부하는 경우(드물게, 예를 들어 서버가 유효하지 않다고 판단한 레코드) POS는 무한정 조용히 재시도하지 않습니다. 해당 변경 사항은 스토어 상태 → 데이터베이스"서버에 도달하지 못한 변경 사항" 항목에 서버가 알려준 사유와 함께 보관되며, 다시 전송 / 삭제 작업을 직접 선택할 수 있습니다. 스토어 상태를 참조하세요.

연결 상태 표시기

POS 헤더에는 연결 상태를 나타내는 색상 점이 표시됩니다:

  • 녹색 — 서버에 연결되어 있으며 모든 기능을 사용할 수 있음
  • 노란색 — 연결이 불안정하며 일부 작업이 느릴 수 있음
  • 빨간색 — 오프라인이며 로컬 데이터로만 제한됨

연결이 끊어졌을 때 발생하는 일

POS 사용 중 인터넷 연결이 끊어지면:

  1. 상품과 고객은 계속 탐색할 수 있습니다. 로컬 데이터에서 확인됩니다.
  2. 장바구니를 계속 구성하고 항목을 편집할 수 있습니다 — 모든 변경 사항이 로컬 대기열에 저장됩니다.
  3. 오프라인 지원 결제 수단으로 결제를 완료할 수 있습니다 — 해당 판매는 전송 대기열에 합류합니다. 서버에 의존하는 결제 게이트웨이는 해당 서비스에 연결될 때까지 사용할 수 없습니다.
  4. 열려 있는 주문은 보존됩니다. 연결이 복구될 때까지 로컬 데이터베이스에 저장됩니다.

연결이 복구되면

연결이 다시 복구되면:

  • 연결 상태 표시기가 녹색으로 바뀝니다.
  • 대기 중인 변경 사항이 자동으로 서버로 전송됩니다 — 오프라인 상태에서 처리한 판매와 편집이 별도의 수동 작업 없이 전송됩니다.
  • 서버에 의존하는 결제 게이트웨이와 서버에 저장 기능을 다시 사용할 수 있습니다.
  • 백그라운드 동기화가 재개되어 오프라인 상태였던 동안 발생한 상품 또는 고객 변경 사항을 가져옵니다.

불안정한 연결을 위한 팁

  • 중요한 주문에는 "서버에 저장"을 사용하세요 — 이렇게 하면 주문이 WooCommerce로 즉시 전송되므로 기기의 로컬 데이터베이스가 삭제되더라도 주문이 손실되지 않습니다.
  • 장애 후에는 스토어 상태를 확인하세요스토어 상태 → 데이터베이스전송 대기 중인 변경 사항 타일에서 모든 항목이 서버에 도달했는지 확인할 수 있습니다.
  • 신호가 좋을 때 동기화하세요 — 연결이 간헐적이라는 것을 알고 있다면, 연결 상태가 좋을 때 카탈로그 시드를 끝내 두세요.