Lets the Zap issue refunds that sit inside policy and holds the rest — with the reason code attached to the record.
For: Support and ecommerce ops automating refunds in Zapier
Allows refunds under the threshold for customers in good standing.
Escalates a refund requested outside the published return window.
Blocks a refund on an order with an active chargeback.
# Zapier Refund-Within-Policy Gate
# Fork: set the threshold and return window from your published policy.
apiVersion: decionis.dev/v1
kind: PolicyPack
metadata:
name: zapier-refund-within-policy
surface: zapier
workflow_key: refund_approval
standards: [SOC2-CC8.1, ISO27001-A.8.34]
defaults:
mode: shadow
emit_dossier: true
rules:
- name: in_policy_auto_approval
when: "action == 'refund.issue'"
decision: |
ALLOW IF refund_amount < 1000 AND customer.standing == 'good'
ESCALATE OTHERWISE
reason_code: refund_over_threshold
- name: return_window_check
when: "action == 'refund.issue'"
decision: |
ESCALATE IF order.days_since_delivery > 30
ALLOW OTHERWISE
reason_code: outside_return_window
- name: chargeback_block
when: "action == 'refund.issue'"
decision: |
BLOCK IF chargeback == true
ALLOW OTHERWISE
reason_code: refund_on_active_chargeback
Fork it, change the thresholds to match your environment, and deploy in shadow mode first — it defaults to listen-only so nothing in your live pipeline changes.
Follow the install path for this surface, then paste the forked YAML as your policy config.
This recipe is one step in a path. The same five steps apply to every recipe in the exchange.
Run the policy against a realistic action in the browser. Push it past what the rules allow and watch the verdict come back. No account.
See exactly what was decided and why: the rule that fired, the evidence it read, the policy version in force, and an Ed25519 signature you can verify yourself.
Measure what the policy would have caught on your own traffic without touching the live path. Every recipe defaults to shadow, so the first deployment carries no execution risk.
Point the same policy at the system where the action actually originates — a checkout, an ERP posting, a Zap, an agent's tool call.
Publish the proof: a public verification link, an embeddable badge, a PR comment, or an anonymized shadow-mode finding. This is how the next person discovers Decionis.