Gate Code Deployment by Subscription Status
When a team's subscription activates, they automatically gain push access to protected branches; when it ends, access revokes. Code deployment permissions stay perfectly aligned with who paid, without manual branch protection updates.
Trigger
Subscription Added Trigger
Triggered when a subscription is added in Stripe
Action
Add team access restrictions
Overwrites the list of teams (and their child teams) granted push access to a protected branch; the list of team slugs must be provided in the http post request body.
Why this helps
A team's subscription ends, but they still have push access; code gets deployed by an unpaid team, security policy violated, you manually revoke access days later.
- Only subscribed teams can deploy—revenue status drives access automatically
- No manual branch protection updates needed
- Clear audit trail linking deployment access to subscription events
- Reduces complexity of managing separate access control systems
Setup
Build it in a few focused steps.
- 1Connect Stripe and GitHub to Notis.
- 2Create an automation: 'When a subscription is added for team [TeamName], add them to branch [branch-name] push access list'.
- 3Tell Notis the branch and team mapping: 'for production branch, add [TeamName]' and 'only add if subscription tier is Premium or above'.
- 4Set Slack notifications; test by adding a subscription in Stripe and confirming the team is added to branch push restrictions.
Questions about this workflow
Can different subscription tiers get different branch access?
Yes. Tell Notis: 'Pro teams get staging branch access, Enterprise teams get production'. Notis enforces tier-based restrictions.
What happens when the subscription ends?
Create a companion automation: 'when subscription is deleted, remove team from branch push access'. Notis handles both grant and revoke.
Will this affect teams with multiple subscriptions?
No. Notis is smart: if a team has multiple active subscriptions, they keep the highest access level. Access only revokes when all subscriptions end.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Stripe to GitHub. A trigger fires from one place; an action lands in another.
Stripe triggers
GitHub actions
Charge Failed Trigger
Triggered when a direct charge fails in Stripe's legacy Charges API
Accept a repository invitation
Accepts a pending repository invitation that has been issued to the authenticated user.
Checkout Session Completed Trigger
Triggered when a checkout session is completed in Stripe
List repositories starred by the authenticated user
Deprecated: lists repositories starred by the authenticated user, including star creation timestamps; use 'list repositories starred by the authenticated user' instead.
Invoice Payment Succeeded Trigger
Triggered when an invoice payment is successful in Stripe
List stargazers
Deprecated: lists users who have starred a repository; use `list stargazers` instead.
Payment Intent Failed Trigger
Triggered when a payment intent fails in Stripe
Star a repository for the authenticated user
Deprecated: stars a repository for the authenticated user; use `star a repository for the authenticated user` instead.
Product Created Trigger
Triggered when a product is created in Stripe
Add email for auth user
Adds one or more email addresses (which will be initially unverified) to the authenticated user's github account; use this to associate new emails, noting an email verified for another account will error, while an existing email for the current user is accepted.
Subscription Added Trigger
Triggered when a subscription is added in Stripe
Add app access restrictions
Replaces github app access restrictions for an existing protected branch; requires a json array of app slugs in the request body, where apps must be installed and have 'contents' write permissions.
Subscription Deleted Trigger
Triggered when a subscription is deleted in Stripe
Add a repository collaborator
Adds a github user as a repository collaborator, or updates their permission if already a collaborator; `permission` applies to organization-owned repositories (personal ones default to 'push' and ignore this field), and an invitation may be created or permissions updated directly.
Add a repository to an app installation
Adds a repository to a github app installation, granting the app access; requires authenticated user to have admin rights for the repository and access to the installation.
Connect any two apps with Notis in the middle.
Not just Stripe and GitHub. Any combination from 1,000+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7 days free trial with 20$ free usage included.
No card. Works with personal or business GitHub.