Let Customers Update Their Card from WhatsApp with Stripe

By Alva Chew 5 min read Updated November 11, 2026

Yes. AeroChat works directly with Stripe. When a subscriber needs to change the card on their subscription, AeroChat finds them in Stripe and sends a secure link to Stripe’s customer portal, opened straight on the page for updating their payment method. AeroChat never sees the card details.

Prefer payments built in? Airwallex is built into AeroChat, so payment links work without an API setup. See how it works. No Airwallex account yet? Open one through AeroChat.

This recipe fixes “my card expired” and “my payment failed” for subscriptions billed through Stripe, in the chat where the customer asked. Part of connecting Stripe to WhatsApp and AI chat.

What happens today

A subscriber’s card expires or gets replaced, and their next renewal fails. They message to ask how to change it, or to ask why their subscription box did not ship. Someone looks them up in Stripe and emails a link, or asks them to read their card number out in the chat, which should never happen. Meanwhile the renewal stays unpaid.

The flow that works

  1. The subscriber asks to change their card, or asks about a failed payment.
  2. AeroChat asks for the email on their subscription and finds them in Stripe.
  3. It creates a Stripe customer portal session that opens on updating the payment method.
  4. It sends the link in the chat and says it is short-lived and secure.
  5. The subscriber enters the new card on Stripe’s page.
  6. If they come back and say the link expired, AeroChat creates a new one.

What it looks like on WhatsApp

Customer: My card expired and I think my coffee subscription didn’t renew. Email is sam.ortiz@example.com (example)

AeroChat: Thanks, Sam. You can add your new card on this secure Stripe page: https://billing.stripe.com/p/session/example (example). The link works for a short time only. Please don’t send card details here.

Customer: Done, added the new one.

AeroChat: Thank you. Your new card is saved for your coffee subscription.

In Stripe: a customer portal session is created for Sam’s customer record, opened on updating the payment method. Sam saved a new card on Stripe’s page.

The recipe

Copy this into AeroChat

When a subscriber asks to change their card or payment method, or says a subscription payment failed, follow these steps.

  1. Ask for the email address on their subscription if we do not have it.
  2. Find the customer in Stripe with that email. If there is more than one, or none, hand over to a team member.
  3. Create a Stripe customer portal session for that customer that opens on updating the payment method, returning to our website at the end.
  4. Send the link and tell them it is secure, works for a short time only, and that they should never type card details in the chat.
  5. If they say the link no longer works, create a new session and send the new link.
  6. If they ask to cancel or pause the subscription instead, hand over to a team member.

Never ask for or repeat card numbers in the chat. Only send the link to the customer whose email matches. Reply in the customer’s language.

Change step 6 if you let customers cancel or pause in the customer portal too, before you paste it.

What to connect

  • Stripe. In your Stripe Dashboard, create a restricted API key that can read customers and create customer portal sessions. Paste it in when AeroChat asks. Start with a test-mode key, then switch to a live key.
  • Stripe customer portal. Turn on the customer portal in your Stripe Dashboard settings and allow customers to update their payment methods.

This recipe is for subscriptions and saved payment methods billed through your own Stripe account. AeroChat never sees the card details. They go straight to Stripe.

After you paste the recipe, AeroChat builds the workflow as a draft and shows a checklist: connect Stripe, add your knowledge base if the recipe uses one, then switch it on. If it built the connection from Stripe’s public documentation, the checklist asks you to check it once against the current docs.

Using a different system? If it has a public API, it connects to AeroChat the same way: describe what you want, paste in its key, and it runs.

Can’t find your tool? Message us in the chat on this page and we’ll tell you how it connects.

What you still decide

  • What customers can change in the Stripe customer portal.
  • Whether cancel and pause requests go to your team or to the portal.
  • Where the customer lands when they finish.

The result to expect

Subscribers with an expired card fix it in a minute from the chat, on Stripe’s own page. Fewer renewals stay unpaid, and nobody types a card number into WhatsApp.

Measure it with your own numbers: failed renewals that get paid after a card update, and card change requests handled by hand, for a month before and after.

Next: answer payment questions from Stripe.

Works on every chat channel

This workflow runs the same way on WhatsApp, Instagram, Facebook Messenger, TikTok, Telegram, the chat on your website and email, with the same Stripe connection behind it. See what each channel does on the Stripe integration page.

Send your first card update link

Paste the recipe, add a Stripe test key, and ask your own number to change the card on a test subscription.

Start your 7-day free trial. No credit card needed.

Sign up for an annual plan on Growth or above and we’ll set up your workflows and connect Stripe for you, free. See plans.

On Shopify? Install AeroChat from the Shopify App Store.