#ennio_best-practices

1 messages ยท Page 1 of 1 (latest)

azure nimbusBOT
#

๐Ÿ‘‹ Welcome to your new thread!

โฒ๏ธ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.

โฑ๏ธ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.

๐Ÿ”— This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1498675509247086744

๐Ÿ“ Have more to share? Add more details, code, screenshots, videos, etc. below.

rigid marsh
#

hey there

mild perch
#

hey

#

I am not super experience with Enterprise billing and tried to come up with the following E2E flow:

  1. Admin clicks "Send Invoice" in the CRM lead dialog -> Backend creates a Stripe Customer with the MD's email as primary and Accounting CC'd via additional_emails. Then creates a Subscription with: SEPA-only payment method, send_invoice collection, 14-day terms, the recurring seat price + quantity, and the one-time setup fee as an add_invoice_item. Mandate will be saved on first payment.

  2. Stripe finalizes the first invoice (~1 hour later) and emails it directly with the hosted invoice link to MD + Accounting automatically, with PDF attached.

  3. Customer clicks the link -> Lands on Stripe's hosted invoice page. Enters IBAN, accepts SEPA mandate. Stripe saves the mandate as the subscription's default payment method.

  4. Backend waits for settlement (~5 business days) -> Tenant stays in pending_first_settlement state. On invoice.payment_succeeded webhook: activate the MGPT tenant and switch the subscription to collection_method: 'charge_automatically'.

  5. Subsequent monthly invoices auto-debit
    Stripe generates the invoice, sends SEPA pre-notification, debits the saved mandate, emails the paid invoice PDF to MD + Accounting. No customer action required.

  6. Seat changes mid-cycle
    Admin updates quantity in CRM โ†’ backend calls Subscription.modify with proration_behavior: 'create_prorations'. Difference rolls into the next monthly invoice. Downgrades take effect at period end per contract.

  7. Failed payments
    On invoice.payment_failed: trigger dunning (Stripe Smart Retries), notify admin, optionally deactivate tenant after N failures.

#

Thank you for taking the time ๐Ÿ™Œ๐Ÿป Do you know best practices, or is there a manual/case study/... demonstrating how to best integrate Stripe with enterprise clients (SEPA debit)? I believe that quite a lot of SaaS startups are thinking about this

rigid marsh
#

Do you have particular questions about the above? This sounds like a reasonable plan, though you should test this flow thoroughly yourself to ensure it behaves like you need.

I will note a couple points:

Admin clicks "Send Invoice" in the CRM lead dialog -> Backend creates a Stripe Customer with the MD's email as primary and Accounting CC'd via additional_emails