Recued
Menu
← Back to recipes

Revoke access on refund or dispute

by recued-core v2 40 views

Use “Revoke access on refund or dispute” in Recued. When a Stripe charge is fully refunded or disputed, close the paying customer's access on this door. The immediate-vs-grace decision is the seller's status policy (Settings - Seller); this recipe only signals the ended state with a supported close reason.

Complete workflow

Use Seller Refund & Dispute — Revoke Access in Recued for subscription, payment observer, and provider source truth. It includes 1 related pack in one install.

You are viewing one recipe in this workflow. Installing it opens the complete pack so its other recipes and background automations arrive together.

Revoke access on refund or dispute
This recipe Background automation

Use “Revoke access on refund or dispute” in Recued. When a Stripe charge is fully refunded or disputed, close the paying customer's access on this door. The immediate-vs-grace decision is the seller's status policy (Settings - Seller); this recipe only signals the ended state with a supported close reason.

pack:seller-refund-dispute-revokerecipe-role:webhooksellersubscription
by recued-core pinned v2
View pack details, dependencies, and permissions →
How it works 50 steps

Inspect the data fetches, transforms, gates, and output this recipe runs.

Process (50 steps)
◆ webhook_event core.webhook.event.get
Get webhook event
■ profile_exact compare
Check if webhook event delivery profile id is one of stripe.event.v1
■ decoded_schema_exact compare
Check if webhook event delivery decoded schema id is one of stripe.event.v1
■ transport_exact compare
Check if webhook event delivery transport assurance is one of authenticated
■ source_truth_policy_exact compare
Check if webhook event delivery minimum source truth policy is one of provider_readback_required
■ freshness_exact compare
Check if webhook event delivery freshness checked is one of true
■ payload_object_exact compare
Check if webhook event payload object is one of event
■ payload_event_id_exact compare
Check if webhook event payload id is one of webhook event event provider event id
■ payload_event_type_exact compare
Check if webhook event payload type is one of webhook event event provider event type
■ envelope_shared_valid all
Check if all conditions are true
■ door_id trim
Trim whitespace from setting door id
■ door_id_present compare
Check if door id has data
■ event_type_supported compare
Check if webhook event event provider event type is one of charge.refunded,charge.dispute.created
■ is_refund compare
Check if webhook event event provider event type is one of charge.refunded
■ is_dispute compare
Check if webhook event event provider event type is one of charge.dispute.created
■ refund_payload_object_exact compare
Check if webhook event payload data object object is one of charge
■ refund_resource_id_matches compare
Check if webhook event payload data object id is one of webhook event event provider resource id
■ charge_id_prefix starts_with
Check if webhook event event provider resource id starts with ch_
■ charge_id_truncated truncate
Truncate webhook event event provider resource id to a max length
■ charge_id_bounded compare
Check if webhook event event provider resource id is one of charge id truncated
◆ charge_read recued-core.seller-stripe.charge.read
Read charge on seller stripe
skip: step.is_refund equal false
■ charge_object_exact compare
Check if charge read result object is one of charge
■ charge_id_exact compare
Check if charge read result id is one of webhook event event provider resource id
■ charge_fully_refunded compare
Check if charge read result refunded is one of true
■ charge_customer default
Apply default
■ charge_customer_prefix starts_with
Check if charge customer starts with cus_
■ refund_proof all
Check if all conditions are true
■ dispute_payload_object_exact compare
Check if webhook event payload data object object is one of dispute
■ dispute_resource_id_matches compare
Check if webhook event payload data object id is one of webhook event event provider resource id
■ dispute_id_prefix starts_with
Check if webhook event event provider resource id starts with du_
■ dispute_id_truncated truncate
Truncate webhook event event provider resource id to a max length
■ dispute_id_bounded compare
Check if webhook event event provider resource id is one of dispute id truncated
◆ dispute_read recued-core.seller-stripe.dispute.read
Read dispute on seller stripe
skip: step.is_dispute equal false
■ dispute_object_exact compare
Check if dispute read result object is one of dispute
■ dispute_id_exact compare
Check if dispute read result id is one of webhook event event provider resource id
■ dispute_payment_intent default
Apply default
■ dispute_pi_prefix starts_with
Check if dispute payment intent starts with pi_
■ dispute_pi_truncated truncate
Truncate dispute payment intent to a max length
■ dispute_pi_bounded compare
Check if dispute payment intent is one of dispute pi truncated
◆ dispute_payment_read recued-core.seller-stripe.payment.read
Read payment on seller stripe
skip: step.is_dispute equal false
■ dispute_payment_object_exact compare
Check if dispute payment read result object is one of payment_intent
■ dispute_payment_id_exact compare
Check if dispute payment read result id is one of dispute payment intent
■ dispute_customer default
Apply default
■ dispute_customer_prefix starts_with
Check if dispute customer starts with cus_
■ dispute_proof all
Check if all conditions are true
■ refund_revoke_allowed all
Check if all conditions are true
◆ close_on_refund core.seller.customer-access.close
Close seller customer access
skip: step.refund_revoke_allowed equal false
■ dispute_revoke_allowed all
Check if all conditions are true
◆ close_on_dispute core.seller.customer-access.close
Close seller customer access
skip: step.dispute_revoke_allowed equal false
■ event_summary to_summary
Format results as a summary card
▼
Output
summary event_summary
Settings 1 configurable

Configurable at install. Defaults shown — change them anytime in Recued.

door id setting = main

Uses (5 operations)

Webhooks Get webhook event core.webhook.event.get
Pack operation Read charge on seller stripe recued-core.seller-stripe.charge.read
Pack operation Read dispute on seller stripe recued-core.seller-stripe.dispute.read
Pack operation Read payment on seller stripe recued-core.seller-stripe.payment.read
Selling Close seller customer access core.seller.customer-access.close

Trust & control

What installing this recipe would let it do. Recued grants these permissions at install — review them there before approving.

What it's allowed to do

Read Webhooks core.webhook.event.get read-only
Write Selling core.seller.customer-access.close external change

3 more aren't listed here. You'll see them at install.

Data it touches

SurfacesWebhooksSelling
Warehousedata.object

About

Tags

pack:seller-refund-dispute-revokerecipe-role:webhooksellersubscriptionrefunddisputepayment-observerprovider-source-truthd-196

Details

50 steps 1 configurable settings recipe_id: revoke-access-on-refund-or-dispute