diff --git a/docs/accounts-billing/add_tax_id_to_account.md b/docs/accounts-billing/add_tax_id_to_account.md new file mode 100644 index 00000000..11500c8d --- /dev/null +++ b/docs/accounts-billing/add_tax_id_to_account.md @@ -0,0 +1,31 @@ +--- +keywords: ['account', 'billing', 'tax', 'vat'] +slug: /add-tax-id-to-account +title: Add Tax ID to Account +--- + +# Add Tax ID to Account + +You can add a tax identification number (VAT ID or other tax IDs) to your FlutterFlow account for billing and tax compliance. + +:::info[Prerequisites] +- An active FlutterFlow account. +::: + +**Steps to Add a Tax ID:** + +1. **Send an Email to Support** + Contact FlutterFlow support at [support@flutterflow.io](mailto:support@flutterflow.io) with the subject line “Add Tax ID to Account”. + +2. **Include the Following Information in Your Email:** + - **VAT ID** + - **Company Name** + - **Company Address** + +3. **Wait for Confirmation** + The FlutterFlow team will verify your tax information and confirm once it has been added to your account. + +:::note +- Tax ID changes only apply to future invoices. Due to Stripe limitations, past invoices cannot be updated. +- Ensure your account name and billing details match your registered business tax records. +::: diff --git a/docs/accounts-billing/check_stripe_payment_status.md b/docs/accounts-billing/check_stripe_payment_status.md new file mode 100644 index 00000000..1196e467 --- /dev/null +++ b/docs/accounts-billing/check_stripe_payment_status.md @@ -0,0 +1,52 @@ +--- +keywords: ['fails', 'payment', 'succeeds'] +slug: check-stripe-payment-status +title: Check Stripe Payment Status +--- + +# Check Stripe Payment Status + +This article explains how to use output variables in FlutterFlow to determine whether a Stripe payment has succeeded or failed. + +:::info[Prerequisites] +- You must have a working Stripe integration in your FlutterFlow project. +- A payment action must be configured in your workflow. +::: + +## Understanding Stripe Output Variables + +When a Stripe payment is initiated in FlutterFlow, an output variable named `paymentId` is generated by default. This variable holds the ID returned by Stripe after attempting the transaction. + +![Stripe paymentId output variable](imgs/20250430121315284187.png) + +**Steps to Check Payment Status:** + +1. **Access the Output Variable** + In your Stripe payment action, use the output variable `paymentId`. + +2. **Use Conditional Logic** + Add a condition to check if `paymentId` is not empty. + + - If `paymentId` is not empty, the payment was successful. + - If `paymentId` is empty, the payment failed. + + ![Checking paymentId is not empty](imgs/20250430121315556496.png) + + ![Condition block using paymentId](imgs/20250430121315814333.png) + +3. **Trigger Conditional Actions** + Based on the result of the payment, check: + + - **If Successful** + - Display a confirmation message. + - Navigate to a success screen. + - Update the database or send a confirmation email. + + - **If Failed** + - Prompt the user to retry. + - Clear payment input fields. + - Provide feedback to guide the user. + + ![Example of a successful payment flow](imgs/20250430121316063461.png) + + By implementing this logic, you can create a responsive and user-friendly Stripe payment flow in your FlutterFlow app. diff --git a/docs/accounts-billing/imgs/20250430121153659010.png b/docs/accounts-billing/imgs/20250430121153659010.png new file mode 100644 index 00000000..f99af59d Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121153659010.png differ diff --git a/docs/accounts-billing/imgs/20250430121153891955.png b/docs/accounts-billing/imgs/20250430121153891955.png new file mode 100644 index 00000000..382fe54b Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121153891955.png differ diff --git a/docs/accounts-billing/imgs/20250430121154120311.png b/docs/accounts-billing/imgs/20250430121154120311.png new file mode 100644 index 00000000..768dc546 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121154120311.png differ diff --git a/docs/accounts-billing/imgs/20250430121154645490.png b/docs/accounts-billing/imgs/20250430121154645490.png new file mode 100644 index 00000000..8165cd9e Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121154645490.png differ diff --git a/docs/accounts-billing/imgs/20250430121154913363.png b/docs/accounts-billing/imgs/20250430121154913363.png new file mode 100644 index 00000000..a0800789 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121154913363.png differ diff --git a/docs/accounts-billing/imgs/20250430121155202031.png b/docs/accounts-billing/imgs/20250430121155202031.png new file mode 100644 index 00000000..9319a533 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121155202031.png differ diff --git a/docs/accounts-billing/imgs/20250430121155482344.png b/docs/accounts-billing/imgs/20250430121155482344.png new file mode 100644 index 00000000..361331d7 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121155482344.png differ diff --git a/docs/accounts-billing/imgs/20250430121155700067.png b/docs/accounts-billing/imgs/20250430121155700067.png new file mode 100644 index 00000000..986db387 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121155700067.png differ diff --git a/docs/accounts-billing/imgs/20250430121155912037.png b/docs/accounts-billing/imgs/20250430121155912037.png new file mode 100644 index 00000000..cf6d4bfe Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121155912037.png differ diff --git a/docs/accounts-billing/imgs/20250430121156186230.png b/docs/accounts-billing/imgs/20250430121156186230.png new file mode 100644 index 00000000..b6568686 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121156186230.png differ diff --git a/docs/accounts-billing/imgs/20250430121156394370.png b/docs/accounts-billing/imgs/20250430121156394370.png new file mode 100644 index 00000000..e7b2caa0 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121156394370.png differ diff --git a/docs/accounts-billing/imgs/20250430121156553720.png b/docs/accounts-billing/imgs/20250430121156553720.png new file mode 100644 index 00000000..b22da8ed Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121156553720.png differ diff --git a/docs/accounts-billing/imgs/20250430121156726199.png b/docs/accounts-billing/imgs/20250430121156726199.png new file mode 100644 index 00000000..6a8f1929 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121156726199.png differ diff --git a/docs/accounts-billing/imgs/20250430121315284187.png b/docs/accounts-billing/imgs/20250430121315284187.png new file mode 100644 index 00000000..933e917d Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121315284187.png differ diff --git a/docs/accounts-billing/imgs/20250430121315556496.png b/docs/accounts-billing/imgs/20250430121315556496.png new file mode 100644 index 00000000..6922ab10 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121315556496.png differ diff --git a/docs/accounts-billing/imgs/20250430121315814333.png b/docs/accounts-billing/imgs/20250430121315814333.png new file mode 100644 index 00000000..9b849513 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121315814333.png differ diff --git a/docs/accounts-billing/imgs/20250430121316063461.png b/docs/accounts-billing/imgs/20250430121316063461.png new file mode 100644 index 00000000..7293d6c6 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121316063461.png differ diff --git a/docs/accounts-billing/imgs/20250430121445951298.png b/docs/accounts-billing/imgs/20250430121445951298.png new file mode 100644 index 00000000..a57fccc5 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121445951298.png differ diff --git a/docs/accounts-billing/imgs/20250430121446291042.png b/docs/accounts-billing/imgs/20250430121446291042.png new file mode 100644 index 00000000..80a2389e Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121446291042.png differ diff --git a/docs/accounts-billing/imgs/20250430121446674539.png b/docs/accounts-billing/imgs/20250430121446674539.png new file mode 100644 index 00000000..b228c56e Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121446674539.png differ diff --git a/docs/accounts-billing/imgs/20250430121447310219.png b/docs/accounts-billing/imgs/20250430121447310219.png new file mode 100644 index 00000000..f8d7ac40 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121447310219.png differ diff --git a/docs/accounts-billing/imgs/20250430121447630867.png b/docs/accounts-billing/imgs/20250430121447630867.png new file mode 100644 index 00000000..742b4232 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121447630867.png differ diff --git a/docs/accounts-billing/imgs/20250430121447869708.png b/docs/accounts-billing/imgs/20250430121447869708.png new file mode 100644 index 00000000..5b3a6422 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121447869708.png differ diff --git a/docs/accounts-billing/imgs/20250430121458849389.png b/docs/accounts-billing/imgs/20250430121458849389.png new file mode 100644 index 00000000..614585b9 Binary files /dev/null and b/docs/accounts-billing/imgs/20250430121458849389.png differ diff --git a/docs/accounts-billing/refund.md b/docs/accounts-billing/refund.md index b854f0f8..bad30d0f 100644 --- a/docs/accounts-billing/refund.md +++ b/docs/accounts-billing/refund.md @@ -8,6 +8,6 @@ sidebar_position: 4 # Refunds -If you're not happy with your FlutterFlow subscription, you can [cancel at any time](subscriptions/subscriptions.md#cancel-my-plan). +If you're not happy with your FlutterFlow subscription, you can [cancel at any time](/accounts-billing/subscriptions/manage-subscription#cancel-subscription). However, there are no refunds for cancellation. In the event that the Company suspends or terminates your Account or these Terms, you understand and agree that you shall receive no refund, whether for any unused time on a subscription, any license or subscription fees for any portion of the Service, any content or data associated with your User Account, or for anything else. \ No newline at end of file diff --git a/docs/accounts-billing/revenuecat_integration_troubleshooting.md b/docs/accounts-billing/revenuecat_integration_troubleshooting.md new file mode 100644 index 00000000..3f16e80d --- /dev/null +++ b/docs/accounts-billing/revenuecat_integration_troubleshooting.md @@ -0,0 +1,96 @@ +--- +keywords: ['testing', 'revenuecat', 'error'] +slug: revenuecat-integration-guide +title: Resolve RevenueCat Integration Errors +--- + +# Resolve RevenueCat Integration Errors + +This article outlines common issues encountered during RevenueCat integration and provides steps to ensure correct setup and testing of in-app subscriptions. + +:::info[Prerequisites] +- Your app must be registered in RevenueCat. +- A valid FlutterFlow project with RevenueCat integration enabled. +- Subscription products must be set up in Google Play Console and App Store Connect. +::: + +**Steps to Set Up and Verify RevenueCat Integration:** + +1. Publish App for Store-Based Testing + + RevenueCat in-app purchases require apps to be submitted to the app stores. + + - Google Play Store + + - Create and submit a release via **Google Play Console**. + - Use the **Internal Testing** track for quicker access. + - Upload the APK or App Bundle and submit it for review. + - Ensure testers are added to your internal test track. + + - Apple App Store + + - Submit the app using **App Store Connect**. + - Use **TestFlight** to test without a full App Store review. + - Ensure the app is built and uploaded using Xcode. + +2. **Configure Subscription Products** + + - Create unique product identifiers in Google Play Console and App Store Connect. + - Link these products to **Entitlements** and **Offerings** inside RevenueCat. + - Follow the **[RevenueCat Launch Checklist](https://docs.revenuecat.com/docs/launch-checklist)** for detailed setup. + +3. **Set Up RevenueCat Dashboard** + + - Register your app on the **RevenueCat dashboard**. + - Add product identifiers that match those in the app stores. + - Ensure correct **Entitlements**, **Products**, and **Offerings** are linked. + - Connect app store credentials (API access for App Store Connect, service account for Google Play). + +4. **Enable Integration in FlutterFlow** + + - Open **Settings & Integrations → RevenueCat** in FlutterFlow. + - Enter the correct **RevenueCat API keys** for both Android and iOS. + - Match the entitlement names and product IDs exactly. + +5. **Test in Native Environments Only** + + RevenueCat does **not** function in **FlutterFlow Test Mode** or **Run Mode**. + + - **Emulator or Simulator Testing** + + - **Android**: Use an emulator with Google Play Services and a signed-in tester account. + - **iOS**: Use a simulator with a sandbox Apple ID. + + - **Real Device Testing** + + - Test in **Google Play Internal Testing** or **TestFlight**. + - This provides the most accurate representation of production environments. + + - **Check Logs and Errors** + + - Use **TestFlight logs** or **Crashlytics** to debug errors. + - Enable **debug logging** in the `purchases_flutter` plugin for insights. + - Ensure product and entitlement identifiers are consistent. + +6. **Common Causes of Integration Errors** + + - Mismatched product identifiers between stores, RevenueCat, and FlutterFlow. + - Store credentials not linked or expired in RevenueCat. + - Testing in unsupported environments (e.g., web or preview mode). + + :::tip + For best results: + - Keep identifiers consistent across all platforms. + - Test only in environments that reflect production. + - Regularly update the `purchases_flutter` package. + ::: + +:::note +RevenueCat supports subscriptions only in published or store-signed environments. Web or test mode usage will not simulate purchases correctly. +::: + +:::info[Additional Resources] +- [**RevenueCat Integration Docs**](/integrations/payments/revenuecat/) +- [**In-App Subscriptions Using RevenueCat**](https://blog.flutterflow.io/in-app-subscriptions-using-revenue-cat/) +- [**RevenueCat Launch Checklist**](https://docs.revenuecat.com/docs/launch-checklist) +::: \ No newline at end of file diff --git a/docs/accounts-billing/subscriptions/flutterflow-for-teams.md b/docs/accounts-billing/subscriptions/flutterflow-for-teams.md index 536b2cd0..fc10f9b9 100644 --- a/docs/accounts-billing/subscriptions/flutterflow-for-teams.md +++ b/docs/accounts-billing/subscriptions/flutterflow-for-teams.md @@ -61,7 +61,7 @@ You can see how many seats you have used here ### 2. Inviting users to your Team :::warning -If you add an existing Flutterflow user to your Teams plan, they will need to manually cancel their subscription using these [**instructions**](subscriptions.md#cancel-my-plan). Once this is completed, please reach out to support@flutterflow.io or chat to process the refund for any remaining time on your monthly plan. We're working on automating this process soon! +If you add an existing Flutterflow user to your Teams plan, they will need to manually cancel their subscription using these [**instructions**](/accounts-billing/subscriptions/manage-subscription). Once this is completed, please reach out to support@flutterflow.io or chat to process the refund for any remaining time on your monthly plan. We're working on automating this process soon! ::: 1. After you've purchased your seats, this will be reflected in the **Seats** section under **My Organization** (example below). diff --git a/docs/accounts-billing/subscriptions/subscriptions.md b/docs/accounts-billing/subscriptions/subscriptions.md index 5f95d27a..9595b4b3 100644 --- a/docs/accounts-billing/subscriptions/subscriptions.md +++ b/docs/accounts-billing/subscriptions/subscriptions.md @@ -1,78 +1,199 @@ --- -slug: subscriptions -title: Subscriptions -tags: [] -toc_max_heading_level: 5 -sidebar_position: 3 +keywords: ['subscription', 'upgrade', 'cancel', 'downgrade', 'teams'] +slug: manage-subscription +title: Manage Subscription --- +# Manage Subscription -# Subscriptions -This section contains information on free trials, changing your plan, and other subscription questions. +This guide covers everything you need to know about managing your FlutterFlow subscription, including starting a trial, upgrading to a paid or Teams plan, downgrading to the free plan, and canceling your subscription. -## Free Trials -All paid plans come with a free 14-day trial. -### How do I Start A Free Trial? -To start a free trial, please follow these steps: +## Free Trial -1. From flutterflow.io select Create Account in the top right corner. -2. Enter your name, email address, and password and select Create Account. -3. Select Upgrade at the top of the screen. -4. Enter your billing and payment information and select Subscribe. +All **Personal** and **Pro** plans come with a 14-day free trial. -### What Happens At The End of The Trial Period? -At the end of your trial period, your payment method will be charged. You cancel at any time during the trial period. + - **Start a Free Trial** + Follow these steps to begin your trial: -## Upgrade Plan + 1. Visit **[flutterflow.io](https://flutterflow.io)** and click **Create Account**. + 2. Fill in your name, email, and password. + 3. After creating your account, click **Upgrade** at the top of the dashboard. + 4. Enter billing information and select **Subscribe**. + - **End of Trial Period** + When your 14-day trial ends, your saved payment method will be charged. You can cancel anytime during the trial to avoid being charged. -### How do I upgrade my plan? -To upgrade your plan type, please follow these steps: + :::note + The Teams Plan is not eligible for a free trial. + ::: -1. After logging into your FlutterFlow, select “Account” from the top right. -2. In the My Plan section, select Change Plan. -3. Select the button under the plan you would like to upgrade to. -4. Enter your payment information and select Subscribe. The main FlutterFlow page will open. -### How do I check what plan I am subscribed to? -To view your plan details, go to the [**FlutterFlow Account Page**](https://app.flutterflow.io/account) and select **Manage Billing.** +## Upgrade to a Paid Plan -The **Current Plan** section will show which plan you are subscribed to. + You can upgrade your FlutterFlow subscription directly within the platform. -:::warning[Teams Plan] -For information on the Teams plan, please use [**this link**](flutterflow-for-teams.md). -::: + :::info[Prerequisites] + You must be logged in to your FlutterFlow account. + ::: + - **Upgrade from Free Plan** -## Downgrade Plan -### How to downgrade? -If you wish to downgrade from Pro to Standard or from Teams to Pro or Standard, you should cancel your existing plan and then sign up for the new one after it expires. + 1. Go to **[app.flutterflow.io](https://app.flutterflow.io)** and log in. + 2. Click the **Upgrade** button in the bottom-right corner. -### What happens when I downgrade to the free plan? Will my apps be deleted? -You will still be able to access the apps you created and make changes inside FlutterFlow. + ![Upgrade button](../imgs/20250430121445951298.png) -However, you won't be able to access any premium features such as custom APIs, GitHub integration, and code downloads. Additionally, premium features will no longer work in Preview and Run Mode. + 3. Select your preferred plan and billing cycle (monthly or annual). + ![Select plan](../imgs/20250430121446291042.png) -## Cancel My Plan -You can cancel your plan at any time. You will have access to the paid features until your next billing cycle date. + 4. On the payment screen, enter your card details. If eligible, it will show **Total due today: $0**. -Please follow these steps to cancel your account: + ![Payment screen](../imgs/20250430121446674539.png) -1. Log in to FlutterFlow and go to the Account page. -2. Select **Change Plan** from My Plan. -3. Under your plan type, select **Cancel Plan.** -4. Complete the Cancellation Survey and select **Cancel Subscription.** -5. You will be taken to a new page. Under Current Plan select **Cancel**. A popup will appear, select Cancel. + 5. After confirming payment, you’ll return to the dashboard, and your active plan will appear in the corner. -:::note -When you cancel a paid plan, your account will be converted to a Free account. -::: + :::note + Annual billing offers up to 28% in savings. Subscriptions can be canceled anytime in **Account Settings**. + ::: -You can confirm your account has been canceled from the My Plan section of the **[Account Page](https://app.flutterflow.io/account)**. Your account will now say **ends at** vs. **renews at.** + - **View Current Plan** -![img_3.png](../imgs/img_3.png) + Go to the **[FlutterFlow Account Page](https://app.flutterflow.io/account)** and select **Manage Billing** to see your current subscription. + + +## Upgrade to Teams Plan + + The **Teams Plan** enables real-time collaboration, Git-style branching, and audit logs. + + :::info[Prerequisites] + - Must be logged into FlutterFlow + - Teams Plan requires at least 2 seats + ::: + + - **Steps to Upgrade to Teams** + + 1. Go to the dashboard and click **My Organization** from the left sidebar. + 2. Click **Create Team**, enter your company details, then select **Create Team**. + + ![Create Team](../imgs/20250430121154645490.png) + + ![Enter Team Details](../imgs/20250430121154913363.png) + + 3. In **My Organization**, click **Subscribe**. + + ![Subscribe](../imgs/20250430121155202031.png) + + 4. Select the number of seats and choose your billing cycle. + + ![Select Seats](../imgs/20250430121155482344.png) + + ![Checkout](../imgs/20250430121155700067.png) + + 5. After subscribing, you can monitor seat usage. + + ![Seat Usage](../imgs/20250430121155912037.png) + + 6. Invite team members by clicking **Invite User(s)** and entering their emails. + + ![Invite User](../imgs/20250430121156186230.png) + + ![Add User Email](../imgs/20250430121156394370.png) + + :::tip + If a user has a personal plan, they must cancel it before joining the team. Afterward, email [support@flutterflow.io](mailto:support@flutterflow.io) to request a refund. + ::: + + - **Remove Users from Your Team** + + 1. Click the red **Cancel** icon beside a team member. + 2. Confirm the removal in the popup. + + ![Remove User](../imgs/20250430121156553720.png) + + ![Confirm Removal](../imgs/20250430121156726199.png) + + :::info + - Teams Plans are billed annually. + - Up to 20 users per plan; contact [sales@flutterflow.io](mailto:sales@flutterflow.io) for more. + - Switching to Teams ends any active Pro/Standard trial. + ::: + + +## Cancel Subscription + + You can cancel your subscription at any time and continue to use paid features until the billing period ends. + + :::info[Prerequisites] + You must be logged into your FlutterFlow account. + ::: + + - **Cancel from Account Settings** + + 1. Log in and click your name in the bottom-right to open **My Account**. + + ![My Account](../imgs/20250430121447310219.png) + + 2. In the **My Plan** section, click **Cancel Subscription**. + + ![Cancel Subscription](../imgs/20250430121447630867.png) + + 3. Complete the cancellation survey and confirm. + + :::note + Your plan remains active until your billing cycle ends. After that, you’ll be switched to the Free plan. + ::: + + You’ll see a status like **Active until [date]** under your plan. + + ![Subscription status](../imgs/20250430121447869708.png) + +## Downgrade to Free Plan + + When you cancel a paid plan, your account is automatically downgraded to Free once your billing cycle ends. + + - **Changes After You Downgrade** + + - **Plan Change**: You switch to the Free tier automatically. + - **App Access**: You can still access and edit your projects. + - **Feature Restrictions**: + - No custom APIs + - No GitHub integration + - No Codemagic builds + - No code download/export + - No access to premium widgets + + - **Preview & Run Mode Limits**: Premium features won’t work in preview or run mode. + + :::note + Live apps in app stores remain unaffected. You can restore full access by upgrading your plan again. + ::: + + +## Downgrade from Teams Plan + + To leave the Teams Plan, cancel the subscription from your **My Account** page. + + - **Cancel Teams Plan** + + 1. In FlutterFlow, click your name at the bottom right. + + ![Account button](../imgs/20250430121153659010.png) + + 2. Go to **My Plan** and click **Cancel Subscription**. + + ![Cancel subscription](../imgs/20250430121153891955.png) + + 3. After cancellation, your Teams subscription will remain active until expiration. + + ![Plan expiration](../imgs/20250430121154120311.png) + + - **After Teams Plan Expires** + + Once expired, your account will be downgraded to the Free Plan automatically. + + To switch to another plan (e.g., Pro or Standard) **before** the Teams Plan expires, contact [support@flutterflow.io](mailto:support@flutterflow.io). diff --git a/docs/accounts-billing/update_payment_method_after_failed_payment.md b/docs/accounts-billing/update_payment_method_after_failed_payment.md new file mode 100644 index 00000000..02b36a28 --- /dev/null +++ b/docs/accounts-billing/update_payment_method_after_failed_payment.md @@ -0,0 +1,45 @@ +--- +keywords: ['failed', 'card', 'payment'] +slug: update-payment-method-after-failed-payment +title: Update Payment Method After Failed Payment +--- + +# Update Payment Method After Failed Payment + +This article explains how to update your credit card information when a payment fails, ensuring continued access to your FlutterFlow subscription. + +:::info[Prerequisites] +You must have an active FlutterFlow account with a failed payment notification. +::: + +:::tip[Common Reasons for Payment Failure] +The most common causes of failed payments include: + +- Insufficient funds in the account. +- Payment blocked by your credit card provider. +- Expired or invalid credit card. + + Contact your card issuer if the reason is unclear. +::: + +**Steps to Update Credit Card and Retry Payment:** + + 1. Open **My Account** in the FlutterFlow editor. + + 2. Select **Manage Billing**. + + 3. Scroll to the **Invoice History** section. + + 4. Locate the failed invoice at the top of the list and click the **payment icon**. + + ![Invoice payment icon](imgs/20250430121458849389.png) + + 5. Enter your updated credit card information. + + 6. Submit the form to retry the payment. + + Once the payment is successful, your subscription will be restored automatically. + +:::note +If the payment continues to fail after updating your card, contact support at [support@flutterflow.io](mailto:support@flutterflow.io) for further assistance. +:::