Recued
Menu
← Back to recipes

Observe seller subscription payment event

by recued-core v4 38 views

Use “Observe seller subscription payment event” in Recued. It carries out the named workflow using the connections and settings you choose.

Complete workflow

Use Seller Subscription Payment Events in Recued for 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.

Observe seller subscription payment event
This recipe Background automation

Use “Observe seller subscription payment event” in Recued. It carries out the named workflow using the connections and settings you choose.

pack:seller-subscription-eventsrecipe-role:webhookpayment-observerprovider-source-truth
by recued-core pinned v4
Renew subscription access order
Background automation

Use “Renew subscription access order” in Recued. It carries out the named workflow using the connections and settings you choose.

pack:seller-subscription-eventsrecipe-role:webhookrenewalprovider-source-truth
by recued-core pinned v3

Use “Signal access on subscription payment failure” in Recued. When a Stripe subscription invoice fails to collect, report the subscription's provider-confirmed status against the paying customer's access on this door.

pack:seller-subscription-eventsrecipe-role:webhookpayment-observerprovider-source-truth
by recued-core pinned v2

Use “Close access on subscription cancellation” in Recued. When a Stripe subscription this server sold is deleted, close the paying customer's access on this door.

pack:seller-subscription-eventsrecipe-role:webhookpayment-observerprovider-source-truth
by recued-core pinned v2
Swap tier on subscription change
Background automation

Use “Swap tier on subscription change” in Recued. When a Stripe subscription this server sold changes, converge the customer onto the tier their entitlements now say they hold.

pack:seller-subscription-eventsrecipe-role:webhookpayment-observerprovider-source-truth
by recued-core pinned v2
Converge tier on entitlement change
Background automation

Use “Converge tier on entitlement change” in Recued. When a Stripe customer's active entitlement summary changes, converge their access onto the tier those entitlements now say they hold.

pack:seller-subscription-eventsrecipe-role:webhookpayment-observerprovider-source-truth
by recued-core pinned v2
View pack details, dependencies, and permissions →
How it works 58 steps

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

Process (58 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
■ payment_event_type compare
Check if webhook event event provider event type is one of checkout.session.completed,checkout.session.async_payment_succeeded
■ payment_resource_object_exact compare
Check if webhook event payload data object object is one of checkout.session
■ payment_session_id_exact compare
Check if webhook event payload data object id is one of webhook event event provider resource id
■ payment_session_id_prefix starts_with
Check if webhook event event provider resource id starts with cs_
■ payment_session_id_truncated truncate
Truncate webhook event event provider resource id to a max length
■ payment_session_id_bounded compare
Check if webhook event event provider resource id is one of payment session id truncated
■ order_handle_prefix starts_with
Check if webhook event payload data object client reference id starts with oh_
■ order_handle_truncated truncate
Truncate webhook event payload data object client reference id to a max length
■ order_handle_bounded compare
Check if webhook event payload data object client reference id is one of order handle truncated
■ payment_envelope_valid all
Check if all conditions are true
◆ payment_order_read core.seller.order.get
Get seller order
skip: step.payment_envelope_valid equal false
■ payment_order_found compare
Check if payment order read order exists
■ payment_phase_eligible compare
Check if payment order read order phase is one of awaiting_payment
■ payment_already_paid compare
Check if payment order read order phase is one of paid,fulfilling,approved,delivering,complete
■ payment_session_matches_order compare
Check if webhook event payload data object id is one of payment order read order provider session id
■ payment_order_kind_matches compare
Check if payment order read order pricing kind is one of recurring
■ payment_read_allowed all
Check if all conditions are true
◆ payment_session_read recued-core.seller-stripe.checkout.session.read
Read checkout session on seller stripe
skip: step.payment_read_allowed equal false
■ session_id_matches compare
Check if payment session read result id is one of payment order read order provider session id
■ session_status_complete compare
Check if payment session read result status is one of complete
■ session_paid compare
Check if payment session read result payment status is one of paid
■ session_mode_subscription compare
Check if payment session read result mode is one of subscription
■ session_reference_matches compare
Check if payment session read result client reference id is one of payment order read order order handle
■ session_metadata_matches compare
Check if payment session read result metadata recued workflow key is one of payment order read order order key
■ session_amount_matches compare
Check if payment session read result amount total equals payment order read order amount minor
■ payment_order_currency_lower lowercase
Convert payment order read order currency to lowercase
■ session_currency_matches compare
Check if payment session read result currency equals payment order currency lower
■ session_invoice_present compare
Check if payment session read result invoice exists
■ session_invoice_prefix starts_with
Check if payment session read result invoice starts with in_
■ invoice_read_allowed all
Check if all conditions are true
◆ invoice_payments_read recued-core.seller-stripe.invoice_payment.search
Search invoice payment on seller stripe
skip: step.invoice_read_allowed equal false
■ paid_invoice_payments filter
Filter by condition
■ paid_invoice_payment_count count
Count items in paid invoice payments
■ single_paid_invoice_payment compare
Check if paid invoice payment count equals 1
■ paid_payment_invoice_matches compare
Check if paid invoice payments 0 invoice is one of payment session read result invoice
■ paid_payment_type_exact compare
Check if paid invoice payments 0 payment type is one of payment_intent
■ payment_intent_present compare
Check if paid invoice payments 0 payment payment intent exists
■ payment_intent_prefix starts_with
Check if paid invoice payments 0 payment payment intent starts with pi_
■ payment_intent_truncated truncate
Truncate paid invoice payments 0 payment payment intent to a max length
■ payment_intent_bounded compare
Check if paid invoice payments 0 payment payment intent is one of payment intent truncated
■ payment_confirm_allowed all
Check if all conditions are true
◆ confirm_payment core.seller.order.confirm-payment
Confirm payment seller order
skip: step.payment_confirm_allowed equal false
■ payment_advanced compare
Check if confirm payment order phase is one of paid
■ payment_source_mismatch all
Check if all conditions are true
■ settling_payment_ambiguous all
Check if all conditions are true
■ payment_correlation_mismatch all
Check if all conditions are true
■ payment_phase_ineligible all
Check if all conditions are true
■ event_summary to_summary
Format results as a summary card
▼
Output
summary event_summary

Uses (5 operations)

Webhooks Get webhook event core.webhook.event.get
Selling Get seller order core.seller.order.get
Pack operation Read checkout session on seller stripe recued-core.seller-stripe.checkout.session.read
Pack operation Search invoice payment on seller stripe recued-core.seller-stripe.invoice_payment.search
Selling Confirm payment seller order core.seller.order.confirm-payment

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
Read Selling core.seller.order.get read-only
Write Selling core.seller.order.confirm-payment external change

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

Data it touches

SurfacesWebhooksSelling
Warehousedata.object

About

Tags

pack:seller-subscription-eventsrecipe-role:webhookpayment-observerprovider-source-truthsellersubscriptiond-196

Details

58 steps recipe_id: observe-seller-subscription-payment-event