안녕하세요, Hoda입니다.

여러 플랫폼에서 소셜 미디어 게시물을 관리하는 것으로 잘 알려진 Zernio가 이제 Shopify 스토어 연동을 지원합니다.

하지만 이번에 새롭게 추가된 연동 기능은 소셜 미디어 콘텐츠 발행용이 아닙니다. 대신 Zernio API를 통해 뉴스, 공지사항 및 기타 온라인 스토어 콘텐츠와 같은 Shopify의 기본 블로그 시스템 게시물을 생성, 수정, 삭제, 예약할 수 있도록 지원합니다.

Zernio Shopify integration

쇼파이 연동의 작동 방식: 연결 전용 플랫폼

가장 먼저 이해해야 할 점은 Shopify가 Zernio의 다른 소셜 미디어 연동 방식과 다르게 작동한다는 것입니다.

Shopify는 **연결 전용 플랫폼(connect-only platform)**으로 분류되며, 이는 Zernio의 멀티 플랫폼 소셜 발행 또는 분석 기능에 포함되지 않음을 의미합니다.

대신 이 연동 기능은 Shopify의 온라인 스토어 섹션 내에서 블로그와 블로그 게시물을 관리할 수 있도록 특별히 API 접근 권한을 제공합니다.

지원되는 기능과 지원되지 않는 기능

기능세부 정보
관리 가능한 콘텐츠Shopify 블로그 및 블로그 게시물
인증스토어 도메인을 사용하는 OAuth 2.0 또는 커스텀 앱의 Admin API 토큰
필수 권한 범위 (Scopes)read_contentwrite_content
소셜 미디어 발행지원되지 않음
분석 및 리포팅지원되지 않음
이미지URL 참조만 지원 (직접 업로드 불가)
예약 발행Shopify의 기본 publishDate 기능을 통해 지원 (Zernio는 별도의 발행 큐를 유지하지 않음)
임시글 (Drafts)isPublished: false을 사용하여 지원
아티클 콘텐츠bodyHtml를 사용하는 HTML
SEO 필드seo.titleseo.description을 통해 지원
페이지네이션요청당 1~50개의 결과(기본값 20)를 지원하는 커서 기반 페이지네이션

소셜 미디어 발행이나 분석 기능을 기대하고 Shopify를 연결한다면 기능이 제한적으로 느껴질 수 있습니다. 전용 Shopify 블로그 관리 연동 기능으로 이해하는 것이 더 정확합니다.

Shopify 스토어 연결 방법

연동에는 두 가지 방법이 있습니다.

방법 1: OAuth 연동 (권장)

Zernio의 Shopify 연결 엔드포인트를 호출하면 사용자를 자동으로 리디렉션하는 대신 authUrl이라는 인증 URL을 반환합니다.

그 후 스토어 소유자를 이 URL로 유도해야 합니다. 소유자가 설치를 승인하면 Shopify가 콜백을 처리하고 스토어를 Zernio에 연결합니다.

여기서 중요한 요구 사항은 스토어의 myshopify.com 도메인을 사전에 알고 있어야 한다는 것입니다.

Shopify는 이 인증 과정에서 스토어 선택 화면이나 이메일 주소를 사용해 스토어를 검색하는 방법을 제공하지 않습니다. 도메인이 없으면 Zernio는 올바른 인증 URL을 생성할 수 없습니다.

따라서 연동 프로세스를 시작하기 전에 스토어 소유자에게 myshopify.com 도메인을 요청해야 합니다.

Shopify 앱스토어를 통해 앱을 설치하는 경우, Shopify가 자동으로 스토어 도메인을 Zernio로 전달하므로 이 단계는 필요하지 않습니다.

방법 2: 커스텀 앱의 Admin 토큰

브라우저 기반의 OAuth 흐름을 피하고 싶다면, 스토어 소유자가 Shopify 관리자 페이지에서 직접 커스텀 앱을 만들 수 있습니다.

설정(Settings) → 앱 및 판매 채널(Apps and sales channels) → 앱 개발(Develop apps)

스토어 소유자는 커스텀 앱에 read_contentwrite_content 권한을 부여한 다음, Admin API 액세스 토큰을 생성하여 Zernio에 제공해야 합니다.

액세스 토큰 자체만으로는 어떤 스토어에 속해 있는지 식별할 수 없으므로, Shopify 스토어 도메인은 별도로 입력해야 합니다.

Shopify 블로그 및 게시물 관리

스토어를 연결한 후에는 기존 블로그 목록을 불러올 수 있습니다. Shopify 스토어에는 보통 “News”라는 기본 블로그가 포함되어 있습니다.

블로그 ID를 획득하면 게시물에 대한 표준 CRUD 작업을 수행할 수 있습니다.

  • 게시물 목록 조회
  • 게시물 생성
  • 게시물 상세 조회
  • 게시물 수정
  • 게시물 삭제

또한 Zernio는 블로그 자체의 생성, 수정, 삭제도 지원합니다.

새 게시물을 만들 때 제목, HTML 콘텐츠, 태그, 작성자 이름, 요약(excerpt), 발행 상태를 지정할 수 있습니다.

  • isPublished: true → 즉시 발행
  • isPublished: false → 임시글(Draft)로 저장
  • publishDate를 사용하여 미래 날짜 설정 → Shopify가 지정된 시간에 자동으로 게시물을 발행함

예약 발행은 Shopify 자체의 네이티브 발행 기능을 사용합니다. Zernio가 별도의 예약 큐를 처리할 때까지 기다릴 필요가 없습니다.

seo.titleseo.description 값은 테마에서 페이지 제목과 메타DESCRIPTION에 주로 사용하는 Shopify의 title_tagdescription_tag 필드에 직접 적용됩니다.

반드시 알아두어야 할 주요 동작 방식

  • 제목이 변경되어도 URL은 자동으로 바뀌지 않습니다: 게시물 핸들(handle)은 게시물이 처음 생성될 때 생성됩니다. 나중에 제목을 변경해도 URL은 바뀌지 않습니다. 이는 발행된 아티클의 URL을 유지하고 싶을 때 유용하지만, 제목과 URL 간에 불일치가 발생할 수도 있습니다. URL을 정밀하게 제어해야 하는 경우 handle를 명시적으로 지정하세요.

  • 태그는 알파벳 순서로 반환됩니다: Shopify가 태그를 반환하기 전에 정렬하기 때문에, 원래 입력했던 순서와 다를 수 있습니다.

  • 삭제된 콘텐츠는 복구할 수 없습니다: 게시물을 삭제하면 204 응답이 반환되며, 이후 해당 게시물에 대한 요청은 404을 반환합니다. 블로그 전체를 삭제하면 그 안에 있는 모든 게시물도 함께 삭제됩니다. Zernio는 복구용 백업을 보관하지 않습니다.

  • blogId는 반드시 숫자여야 합니다: 숫자가 아닌 값을 입력하면 Zernio는 Shopify에 연락하기 전에 400 오류와 함께 요청을 거부합니다.

Shopify 연동에서 지원하지 않는 기능

Shopify 연동은 블로그 관리에만 국한됩니다.

다음 기능은 지원하지 않습니다.

  • 멀티 플랫폼 소셜 미디어 발행
  • 분석 또는 인사이트
  • 받은 편지함(Inbox) 또는 메시징 기능
  • 직접 이미지 업로드
  • 상품 데이터
  • 주문 데이터
  • 고객 데이터

이 연동 기능은 콘텐츠와 관련된 read_contentwrite_content 권한 범위만 요청합니다. 결제나 고객 정보에 대한 접근 권한은 필요로 하지 않습니다.

장점 4
  • 다른 발행 플랫폼에서 사용하는 것과 동일한 Zernio API 생태계를 통해 Shopify 블로그 콘텐츠 관리 가능

  • 발행 시점을 더욱 안정적으로 제어할 수 있도록 Shopify의 네이티브 예약 발행 기능 활용

  • API를 통해 SEO 제목 및 메타 설명 설정 가능

  • 결제나 고객 정보를 노출하지 않고, 콘텐츠 관련 권한으로만 접근이 제한됨

단점 4
  • Shopify는 연결 전용 연동 기능이며 Zernio의 소셜 발행 또는 분석 기능에 포함되지 않음

  • 이미지는 URL로만 참조할 수 있으며 Zernio를 통해 직접 업로드할 수 없음

  • 삭제된 블로그와 게시물은 복구할 수 없으므로 자동 삭제 구현 시 각별한 주의가 필요함

  • Shopify 앱스토어를 통해 앱을 설치하는 경우를 제외하고는, OAuth 연결 시 스토어의 `myshopify.com` 도메인을 사전에 알아야 함

최종 정리

이번 업데이트를 통해 Zernio는 소셜 미디어 관리 영역을 넘어 동일한 API 생태계를 통해 Shopify 블로그 운영까지 아우를 수 있게 되었습니다.

비교적 특화된 기능 추가일 수 있지만, 여러 스토어와 발행 채널에 걸쳐 콘텐츠 관리를 자동화하고자 하는 개발자와 에이전시에게는 유용할 것입니다.