Zonos는 rule을 통해 계정에서 calculation이 수행되는 방식을 고급으로 사용자 지정할 수 있습니다. Rule은 calculation의 여러 부분에 buffer를 추가하고 fee를 사용자 지정하는 데 사용할 수 있습니다. 가능한 모든 rule 유형 목록을 포함해 Zonos가 rule을 처리하는 방법에 대한 전체 설명은 rules breakdown 문서를 참조하세요. Rule은 Zonos Dashboard 또는 GraphQL API를 통해 관리할 수 있습니다.
중요: Rule은 고급 기능이며 오용 시 Zonos 동작 및 calculation에 의도하지 않은 결과가 발생할 수 있습니다.
나중에 식별할 수 있도록 rule 이름을 추가합니다. Organization의 team member에게만 표시됩니다.
Rule에 condition을 추가하려면 아래 “Rule condition 지정” 섹션의 단계를 따르세요.
Rule에 action을 추가하려면 아래 “Rule action 지정” 섹션의 단계를 따르세요.
선택적으로 추가 context를 위한 comment를 추가할 수 있습니다. Organization의 team member에게만 표시됩니다.
아래 단계를 따라 rule에 특정 start 및/또는 end date를 추가합니다(선택 사항).
Rule을 Enabled 또는 Disabled.로 설정합니다.
Save를 클릭합니다.
Start 및 end date 지정
Rule에는 선택적으로 start date, end date 또는 둘 다 있을 수 있습니다. Start 및 end date는 rule이 활성화되는 시점과 방식을 제어하며, seasonal discount 또는 기타 특정 기간에만 적용되는 상황과 같이 특정 기간에만 활성 상태인 rule을 만들 때 사용할 수 있습니다.
Rule 동작
날짜↕
동작↕
Start 및 end date 모두
지정한 start 및 end date 사이에 rule이 활성화됩니다.
Start date만 있고 end date 없음
지정한 start date 이후 rule이 활성화되며 수동으로 비활성화해야 합니다.
Start 또는 end date 없음
수동으로 비활성화하지 않는 한 rule이 항상 활성 상태입니다.
Rule condition 지정
모든 rule에는 적용 대상과 rule 실행 시 사용 가능한 variable을 결정하는 condition이 필요합니다. 즉 condition은 rule이 실행되어야 하는지 및 언제 실행되는지를 결정합니다. Condition마다 사용 가능한 option이 다릅니다.
예를 들어 condition으로 “Shipping carrier”를 선택하면 condition에 포함할 특정 carrier를 추가로 선택할 수 있으며, 특정 carrier에만 buffer를 설정하려는 경우에 사용할 수 있습니다.
Rule은 각각 하나의 condition만 지원하며 “else if”, “and/or”와 같은 복잡한 logic은 지원하지 않습니다. Rule을 연결하려면 하나의 거대하고 복잡한 rule보다 여러 rule로 동일한 logic을 구현하는 방법을 고려하는 것이 좋습니다.
Rule action 지정
Rule의 action은 condition이 충족되었을 때 발생하는 일입니다. Condition과 마찬가지로 다양한 action이 가능하며 각각 서로 다른 option을 제공합니다.
예를 들어 특정 shipping carrier에만 buffer를 추가하려면 action을 “apply a buffer”로 설정하고 buffer 금액과 적용 대상을 입력합니다. 그런 다음 rule의 condition에 지정하여 buffer가 정확히 어떤 carrier에 적용될지 제어할 수 있습니다.
Condition과 마찬가지로 rule은 각각 하나의 action만 지원합니다. 여러 action이 필요하면 하나의 거대하고 복잡한 rule 대신 여러 rule로 동일 logic을 달성하는 방법을 고려하는 것이 좋습니다.
Rule 업데이트
시스템 구조상 rule을 그 자리에서 업데이트할 수는 없습니다. 어떤 상황에 어떤 rule이 적용되었고 rule이 실행될 때 무엇을 했는지 추적 가능한 history를 유지해야 하기 때문입니다. 대신 변경된 값을 전달하여 rule을 archive한 뒤 다시 생성함으로써 rule을 실질적으로 “업데이트”할 수 있습니다.
이 예시 mutation은 ruleArchive와 ruleCreate mutation을 결합하여 이 동작을 달성하는 방법을 보여 줍니다:
1mutation ruleUpdate(
2$ruleId: ID!
3$action: String!
4$condition: String!
5$context: String!
6$description: String!
7$name: String!
8){
9 ruleArchive(id:$ruleId)
10 ruleCreate(
11input:{
12action:$action
13condition:$condition
14context:$context
15name:$name
16description:$description
17}
18){
19 id
20 action
21 context
22 condition
23}
24}
Rule 아카이브
추가된 rule은 calculation에 영향을 줄지 여부를 결정하기 위해 쉽게 활성화 또는 비활성화할 수 있습니다. Rule을 수동으로 활성화 또는 비활성화하면 rule 내 start 및 end date 기반 logic을 override합니다.
Rule은 “Edit a rule” 화면에서 하나씩 활성화하거나 비활성화할 수 있으며, “All rules” 화면에서 각 rule 옆의 checkbox를 사용해 일괄로 처리할 수도 있습니다.
가능한 모든 rule context 나열
Rule 처리, rule 위 UI 생성 등에 유용한 rule 관련 global query를 제공합니다. 모든 user에 적용되며 organization별이 아니며 편의를 위해 제공됩니다. 이 query는 rule이 속할 수 있는 모든 가능한 context 목록을 반환합니다. Rule context는 rule 실행 시점과 사용 가능한 variable을 결정합니다.
Rules
고급 rule
COMING SOON
Zonos는 rule을 통해 계정에서 calculation이 수행되는 방식을 고급으로 사용자 지정할 수 있습니다. Rule은 calculation의 여러 부분에 buffer를 추가하고 fee를 사용자 지정하는 데 사용할 수 있습니다. 가능한 모든 rule 유형 목록을 포함해 Zonos가 rule을 처리하는 방법에 대한 전체 설명은 rules breakdown 문서를 참조하세요. Rule은 Zonos Dashboard 또는 GraphQL API를 통해 관리할 수 있습니다.
Rule 보기
Dashboard에서 rule을 관리하려면:
“Rules” 페이지에서 Zonos 계정과 연결된 모든 rule을 확인하고, rule을 filter하고, rule을 빠르게 활성화하거나 비활성화할 수 있습니다.
Rule 생성
Dashboard에서 새 rule을 생성하려면:
Start 및 end date 지정
Rule에는 선택적으로 start date, end date 또는 둘 다 있을 수 있습니다. Start 및 end date는 rule이 활성화되는 시점과 방식을 제어하며, seasonal discount 또는 기타 특정 기간에만 적용되는 상황과 같이 특정 기간에만 활성 상태인 rule을 만들 때 사용할 수 있습니다.
Rule 동작
Rule condition 지정
모든 rule에는 적용 대상과 rule 실행 시 사용 가능한 variable을 결정하는 condition이 필요합니다. 즉 condition은 rule이 실행되어야 하는지 및 언제 실행되는지를 결정합니다. Condition마다 사용 가능한 option이 다릅니다.
예를 들어 condition으로 “Shipping carrier”를 선택하면 condition에 포함할 특정 carrier를 추가로 선택할 수 있으며, 특정 carrier에만 buffer를 설정하려는 경우에 사용할 수 있습니다.
Rule은 각각 하나의 condition만 지원하며 “else if”, “and/or”와 같은 복잡한 logic은 지원하지 않습니다. Rule을 연결하려면 하나의 거대하고 복잡한 rule보다 여러 rule로 동일한 logic을 구현하는 방법을 고려하는 것이 좋습니다.
Rule action 지정
Rule의 action은 condition이 충족되었을 때 발생하는 일입니다. Condition과 마찬가지로 다양한 action이 가능하며 각각 서로 다른 option을 제공합니다.
예를 들어 특정 shipping carrier에만 buffer를 추가하려면 action을 “apply a buffer”로 설정하고 buffer 금액과 적용 대상을 입력합니다. 그런 다음 rule의 condition에 지정하여 buffer가 정확히 어떤 carrier에 적용될지 제어할 수 있습니다.
Condition과 마찬가지로 rule은 각각 하나의 action만 지원합니다. 여러 action이 필요하면 하나의 거대하고 복잡한 rule 대신 여러 rule로 동일 logic을 달성하는 방법을 고려하는 것이 좋습니다.
Rule 업데이트
시스템 구조상 rule을 그 자리에서 업데이트할 수는 없습니다. 어떤 상황에 어떤 rule이 적용되었고 rule이 실행될 때 무엇을 했는지 추적 가능한 history를 유지해야 하기 때문입니다. 대신 변경된 값을 전달하여 rule을 archive한 뒤 다시 생성함으로써 rule을 실질적으로 “업데이트”할 수 있습니다.
이 예시 mutation은
ruleArchive와ruleCreatemutation을 결합하여 이 동작을 달성하는 방법을 보여 줍니다:mutation ruleUpdate($ruleId: ID!$action: String!$condition: String!$context: String!$description: String!$name: String!) {ruleArchive(id: $ruleId)ruleCreate(input: {action: $actioncondition: $conditioncontext: $contextname: $namedescription: $description}) {idactioncontextcondition}}Rule 아카이브
추가된 rule은 calculation에 영향을 줄지 여부를 결정하기 위해 쉽게 활성화 또는 비활성화할 수 있습니다. Rule을 수동으로 활성화 또는 비활성화하면 rule 내 start 및 end date 기반 logic을 override합니다.
Rule은 “Edit a rule” 화면에서 하나씩 활성화하거나 비활성화할 수 있으며, “All rules” 화면에서 각 rule 옆의 checkbox를 사용해 일괄로 처리할 수도 있습니다.
가능한 모든 rule context 나열
Rule 처리, rule 위 UI 생성 등에 유용한 rule 관련 global query를 제공합니다. 모든 user에 적용되며 organization별이 아니며 편의를 위해 제공됩니다. 이 query는 rule이 속할 수 있는 모든 가능한 context 목록을 반환합니다. Rule context는 rule 실행 시점과 사용 가능한 variable을 결정합니다.
query {ruleContexts {namecontextvariables {ruleTokenTypevalue}}}이 페이지가 도움이 되었나요?