Machine update stuck on "We require your billing information" despite valid, default card on file

Org: ec.gabrielalvarez@gmail.com (personal)
App: trads-saas
Machine: 48e779db1537e8 (region gru)

Summary

I can’t deploy a new image to my existing machine. Every attempt fails with:

Error: failed to update VM 48e779db1537e8: We require your billing information,
please add it at https://fly.io/dashboard/ec-gabrielalvarez-gmail-com/billing

This happens on both the remote builder path and --local-only builds — the image
builds and pushes to the registry successfully every time, it’s specifically the
“update machine” step that’s rejected. A plain fly machine restart on the same
machine works fine, so it seems isolated to machine update operations.

Billing status on my end

  • Had an overdue invoice; paid it. Dashboard now shows “Good standing” (green).
  • Added a credit card; it’s confirmed as marked default.
  • Waited several hours between attempts in case of propagation delay — no change.

The error message and my actual account state are inconsistent, so this looks like
a stale/incorrect billing flag on the account or org rather than something I can
fix from the billing page.

Timeline / reproductions (all same app + machine)

  1. fly secrets set PUBLIC_BASE_URL=... (before invoice was paid) → rejected with
    “Your account has overdue invoices.”
  2. Paid the invoice. Retried the same fly secrets set → secret saved successfully,
    but the automatic rolling machine update failed:
    Request ID: 01M0ZBE8XHY4218BXHKV89680K-gru
    → Worked around it with fly machine restart 48e779db1537e8, which succeeded
    and picked up the new secret.
  3. fly deploy -a trads-saas (remote builder) → remote builder VM itself failed to
    launch with the same billing message:
    Request ID: 01M0ZCFASSQ0KYSS8EM5GY0JQZ-gru
    Trace ID: 187ccfec39954db9cdd17974439ad14c
  4. fly deploy -a trads-saas --local-only (build locally with Docker, bypassing the
    remote builder) → image built and pushed fine, but the machine update step
    failed with the same error:
    Request ID: 01M0ZCJT2VDCXMN4V9H5GD76MG-gru
    Trace ID: b50aaacac6fb860a71a57420f2a0c7cd
  5. Added a credit card, retried the same --local-only deploy → same error:
    Request ID: 01M0ZCN9BP9JHQ4VHZCTTECHH5-gru
    Trace ID: de80ef90621c84682d597871f2d17a0f
  6. Confirmed the card shows as default in the billing dashboard, waited a few hours,
    retried again → same error, still on machine 48e779db1537e8:
    Request ID: 01M0ZNTR9KMA5D0XV2QS6X8TSK-gru
    Trace ID: 8843419042c3a9ca98c3e46c661403a7

Also updated flyctl from v0.2.72 (June 2024) to the latest (v0.4.93) in case it was a
stale-client issue — haven’t been able to fully test with it yet (separate auth
storage needs a fresh flyctl auth login), but given the error is consistent across
both the remote builder and local-only paths, and across CLI versions used for the
secrets set vs deploy calls, this doesn’t look like a client-side bug.

Ask

Could you check the billing/account state for org ec.gabrielalvarez@gmail.com
and app trads-saas? Given the invoice is paid and a default card is on file, I’d
expect machine update operations to succeed. The already-built image is waiting in
the registry (registry.fly.io/trads-saas:deployment-01M0ZNTCG9N3BJVT5VV0BRPCYF),
so once this is cleared up I just need to re-run fly deploy.

Thanks!

Hi… You can email billing@fly.io for help with this, :green_shaded_lamp:. That way, you don’t have to post your account details here in the community forum, etc.

https://fly.io/docs/about/support/#billing-and-account-support

Hi @gabferal - I noticed you’ve since been able to deploy your app so it looks like you’re all set! As was mentioned above, if you are still having any trouble, please reach out to us at the billing address so we can continue discussing your account privately.