Shopify Flow의 작업 이해하기

워크플로에서 작업은 워크플로의 조건이 충족될 때 Flow가 수행하는 작업입니다. 일반적인 작업에는 주문 또는 고객에게 태그 추가, 이메일 또는 Slack 알림 보내기, 재고 업데이트, 주문 처리 보류, 주문 취소, 발주 주문 생성 등이 있습니다. 또한 설치한 타사 커넥터 앱(예: Google Sheets, Klaviyo 또는 ShipStation으로 데이터 전송)의 작업을 자동화할 수도 있습니다.

작업은 트리거, 조건 또는 다른 작업과 같은 워크플로의 다른 유형의 단계에 연결할 수 있습니다. 워크플로에는 개수 제한 없이 작업을 포함할 수 있으며, 각 단계는 단일 결과에 대해 여러 작업에 연결할 수 있습니다. 예를 들어 조건이 충족될 경우, 워크플로가 5가지 작업을 동시에 수행하도록 하려면 5개의 개별 작업 단계를 연결할 수 있습니다.

워크플로에 대한 작업 선택

워크플로 중에 작업을 완료하기 위해 선택할 수 있는 다양한 작업이 있습니다. Shopify Flow에서 자동화할 수 있는 특정 작업을 이해하면 워크플로가 올바르게 작동하도록 보장하는 데 도움이 됩니다.

작업은 다음 범주로 분류됩니다.

  • 스토어 작업: 이 작업은 태그 추가, 재고 업데이트, 주문 취소 등 Shopify 스토어의 내용을 변경합니다.
  • 커뮤니케이션 작업: 이 작업은 자신이나 팀에 이메일 보내기, Slack에 메시지 게시, 고객에게 마케팅 이메일 보내기와 같이 선택한 플랫폼을 통해 사용자 지정 가능한 알림을 보냅니다.
  • 앱 작업: 이 작업은 연결된 앱에서 작업을 수행합니다. 사용 가능한 옵션은 스토어에 설치된 앱 커넥터에 따라 다릅니다. 모든 앱에 Shopify Flow 커넥터가 연결되어 있는 것은 아닙니다.
  • 고급 작업: 이 작업은 다음 유형을 포함하여 워크플로의 동작이나 데이터를 수정합니다.
    • 데이터 가져오기 작업: 이 작업은 워크플로 트리거에서 기본적으로 제공되지 않는 스토어의 추가 데이터 목록을 가져와 워크플로에서 사용합니다. 이 작업은 지난날에 업데이트된 제품 데이터 목록 가져오기와 같이 필터 세트로 쿼리를 호출합니다.
    • 집계 작업: 이 작업은 개수 또는 합계와 같이 워크플로의 목록 데이터에 대한 계산을 수행합니다.
    • For each 루프(반복) 작업: 이 작업을 사용하면 목록에서 반환된 모든 품목에 대해 루프 내에서 작업을 수행할 수 있습니다.
    • 요청 보내기 작업: 이 작업은 Shopify GraphQL Admin API 또는 외부 API에서 데이터를 보내고 받기 위한 것입니다.
    • 대기 작업: 설정된 기간이 지날 때까지 워크플로가 다음 단계를 수행하지 못하도록 중지하는 고유한 유형의 작업입니다.

워크플로를 빌드할 때 작업을 구현하는 방법을 결정하려면 워크플로로 자동화하려는 작업에 따라 다음 고려 사항을 검토하세요.

워크플로가 제공하는 데이터 확인

작업이 작동하려면 데이터가 필요하며, 데이터는 트리거를 통하거나 워크플로 중에 데이터 가져오기 작업을 포함하여 작업에 제공되어야 합니다. 필요한 데이터를 받지 못하는 작업을 선택하면 워크플로가 실행되지 않고 오류 메시지가 표시됩니다. 예를 들어 고객 생성됨 트리거로 시작하는 워크플로는 고객 데이터를 워크플로로 가져옵니다. 이 트리거 다음에 고객 데이터가 아닌 주문 데이터가 필요한 주문 태그 추가 작업이 오면 워크플로에서 데이터 누락 오류가 발생합니다.

이것이 중요한 이유: 이는 사용자 지정 워크플로가 중단되거나 애초에 작동하지 않는 일반적인 원인입니다. 워크플로를 확정하기 전에 작업에 필요한 정보가 무엇인지 생각해 보고, 이전 단계에서 가져온 데이터세트가 해당 데이터를 제공할 수 있는지 확인하세요.

워크플로의 작업 타이밍 확인

워크플로는 일련의 단계로 작동합니다. 끌어서 놓기 캔버스를 사용하여 여러 작업을 동시에 완료하는 워크플로를 설계하거나 작업이 차례대로 수행되도록 구성할 수 있습니다. 예를 들어 조건 A가 충족되면 워크플로에서 작업 X와 Y를 동시에 수행하게 하거나, 작업 X를 수행한 다음 작업 Y를 수행하게 할 수 있습니다. 이는 특정 조건이나 작업을 위해 워크플로에서 다른 작업이 먼저 수행되어야 하는 경우에 유용할 수 있습니다.

일반적으로 작업은 조건이 충족되고 워크플로의 다음 단계가 작업인 경우 즉시 발생하지만 대기 작업을 사용하여 작업 수행 시점을 제어할 수도 있습니다. 이는 신규 고객에게 마케팅 이메일을 보내기 전에 하루를 기다리는 등 고객 커뮤니케이션을 자동화하는 워크플로에 유용할 수 있습니다. 워크플로 중 작업이 수행되는 시점을 구성하는 방법은 판매자님이 자유롭게 결정할 수 있습니다.

중요한 이유: 작업 타이밍에 따라 워크플로에서 태스크가 수행되는 시점이 결정됩니다. 작업을 동시에 또는 순차적으로 수행하도록 구성하면 자동화된 태스크가 올바른 순서로 수행되고 요구 사항을 충족하게 됩니다. 예를 들어, 대기 작업을 사용하면 필요에 맞게 고객 알림 또는 기타 후속 태스크의 타이밍을 제어할 수 있습니다.

작업에서 변수를 사용하여 동적 데이터 반환

작업 단계에서 변수를 사용하여 고객 이메일과 같은 사용자 지정 텍스트에 동적 데이터를 삽입할 수 있습니다. 이러한 변수는 조건에 사용된 것과 동일한 GraphQL Admin API 점 표기법 형식을 사용하며 이중 대괄호 {{ }}로 래핑됩니다. 작업에 사용될 때 변수는 워크플로 중에 제공된 데이터를 기반으로 변수의 특정 값을 반환하는 플레이스 홀더 역할을 합니다.

예를 들어 주문 인보이스 보내기 작업에서 이메일의 제목 필드에는 기본적으로 order.name 변수가 포함되며, “인보이스 {{order.name}}”으로 서식이 지정됩니다. 즉, 이메일이 발송될 때 최종 이메일의 제목 줄은 해당 주문의 값에 따라 “인보이스 #1000” 또는 해당 주문 번호로 표시됩니다.

해당하는 경우 변수 추가를 클릭하여 작업의 필드에서 사용 가능한 변수를 검색할 수 있습니다. 이를 통해 Liquid를 사용하여 해당 작업에 사용할 수 있는 변수를 기반으로 필드 콘텐츠를 사용자 지정할 수 있습니다. 또한 변수를 사용하여 Liquid 코드에 조건문을 추가하여 콘텐츠가 표시되는 시점을 사용자 지정할 수 있습니다.

예를 들어, 동일한 주문 인보이스 보내기 작업의 사용자 지정 메시지 필드에 다음 콘텐츠를 추가할 수 있습니다. 이 콘텐츠에는 워크플로에서 제공한 데이터를 기반으로 동적 값을 포함하는 여러 변수가 포함됩니다.

Hello {{order.customer.firstName}}! This is the invoice for order {{order.name}}, which you placed on {{order.createdAt}}.

{% if order.fullyPaid = 'false' %}
     Please complete any outstanding payments in the next 5 business days.
{% endif %}

Shopify Flow에서 변수를 사용하여 데이터를 표시하거나 변환하는 방법에 대해 자세히 알아보세요.