Stripe Payments & SaaS Billing Systems · Lección

Generación y envío de facturas profesionales

Cree, personalice y envíe automáticamente facturas profesionales a sus clientes por pagos únicos y recurrentes.

Lección 2 de 411 pasos

Generación y envío de facturas profesionales es una lección gratuita de Stripe Payments & SaaS Billing Systems en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Stripe Payments & SaaS Billing Systems, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Stripe Payments & SaaS Billing Systems incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

Welcome to Stripe Invoicing

Invoices are formal requests for payment, crucial for businesses providing services or goods. They provide a clear record of transactions for both you and your customers.

Stripe Invoicing is a powerful tool that helps you create, send, and manage professional invoices efficiently, whether for one-time services or recurring subscriptions.

Why Use Stripe Invoicing?

Leveraging Stripe for invoicing brings many benefits, simplifying your financial operations:

  • Automation: Automatically generate invoices for subscriptions or send reminders for overdue payments.
  • Professionalism: Customize invoices with your branding for a consistent customer experience.
  • Tracking: Easily monitor invoice statuses (draft, open, paid) directly from your Stripe Dashboard.
  • Compliance: Helps with financial record-keeping and tax compliance (especially when combined with Stripe Tax).

Anatomy of a Stripe Invoice

A typical Stripe invoice includes several key elements:

  • Customer Details: Who is being billed.
  • Line Items: Descriptions of products or services, quantities, and prices.
  • Subtotal: The total cost before taxes and discounts.
  • Tax: Applicable sales tax (if configured with Stripe Tax).
  • Total Due: The final amount the customer needs to pay.
  • Due Date: When the payment is expected.
  • Payment Status: Indicates if the invoice is paid, due, or overdue.

Crafting One-Time Invoices

For one-off services or custom orders, you can create a single invoice. This often involves two main steps: creating invoice items and then creating the invoice itself.

Invoice items are specific charges that are added to a customer's pending invoice. When you create an invoice, these items are included.

Try this Python example to create an invoice item and a draft invoice:

import stripe

# In a real app, load this securely from environment variables
stripe.api_key = "sk_test_YOUR_SECRET_KEY"

try:
    # 1. Create an Invoice Item
    # This item will be added to the customer's next invoice
    invoice_item = stripe.InvoiceItem.create(
        customer="cus_Nxxxxxxxxx", # Replace with a real customer ID
        amount=2000, # $20.00
        currency="usd",
        description="Consulting Service (2 hours)"
    )
    print(f"Created Invoice Item: {invoice_item.id}")

    # 2. Create a Draft Invoice for the customer
    # This invoice will include the invoice item created above
    invoice = stripe.Invoice.create(
        customer="cus_Nxxxxxxxxx", # Same customer ID
        collection_method="send_invoice", # We'll send it manually later
        days_until_due=7
    )
    print(f"Created Draft Invoice: {invoice.id}")
    print("Invoice is in 'draft' status. Preview and send it!")

except stripe.error.StripeError as e:
    print(f"Error creating invoice: {e}")

Customizing Your Invoices

Make your invoices reflect your brand! Stripe allows extensive customization via the Dashboard settings (Settings > Branding) or through the API when creating invoices.

  • Logo & Color: Upload your logo and set a brand color.
  • Footer: Add custom text, like 'Thank you for your business!' or legal disclaimers.
  • Memo: Include a short note specific to each invoice.
  • Custom Fields: Add fields for purchase order numbers, vendor IDs, etc.

These customizations ensure a professional and consistent brand experience for your customers.

Delivering Your Invoices

Once you've created a draft invoice and confirmed its details, the next step is to send it to your customer. Stripe can do this automatically via email.

You can send invoices manually through the Dashboard, or programmatically using the API, which gives you more control over the timing.

Here's how to send an existing draft invoice using the Stripe API:

import stripe

stripe.api_key = "sk_test_YOUR_SECRET_KEY"

try:
    # Replace with a real draft invoice ID from your Stripe account
    invoice_id = "in_1Nxxxxxxxxx"

    # Retrieve the invoice to check its status (optional, good practice)
    invoice = stripe.Invoice.retrieve(invoice_id)
    print(f"Retrieved Invoice {invoice.id} with status: {invoice.status}")

    if invoice.status == "draft":
        # Send the invoice to the customer
        sent_invoice = stripe.Invoice.send_invoice(invoice_id)
        print(f"Invoice {sent_invoice.id} sent successfully!")
        print(f"New status: {sent_invoice.status}")
    else:
        print(f"Invoice {invoice_id} is not in 'draft' status. Cannot send.")

except stripe.error.StripeError as e:
    print(f"Error sending invoice: {e}")

Automated Subscription Invoices

One of Stripe's most powerful features for SaaS businesses is its ability to automatically generate invoices for subscriptions.

When a customer subscribes to a plan (which has associated products and prices), Stripe automatically creates and finalizes invoices at each billing cycle. These invoices are then sent to the customer, and their payment method is charged.

This automation significantly reduces manual effort for recurring billing.

Tracking Invoice Status

Stripe provides clear statuses to help you manage the invoice lifecycle:

  • draft: Invoice has been created but not finalized or sent. You can still edit it.
  • open: Invoice has been finalized and sent, awaiting payment.
  • paid: Customer has paid the invoice in full.
  • void: Invoice was cancelled and will not be paid.
  • uncollectible: Invoice is past due and unlikely to be paid.

Monitoring these statuses is key for revenue tracking and follow-up.

Preview Before Sending

Before an invoice goes out to your customer, it's always a good idea to preview it to ensure everything is correct.

Stripe allows you to generate a preview of an invoice via the API or Dashboard. This lets you check line items, tax calculations, branding, and due dates without actually sending it.

Use the stripe.Invoice.upcoming() method in the API to see what an invoice would look like for a customer, especially useful for subscriptions.

Invoice Knowledge Check

Which of the following invoice statuses indicates that an invoice has been finalized and sent to the customer, but payment has not yet been received?

Recap: Invoice Mastery

Congratulations! You've learned how to generate and send professional invoices using Stripe.

  • We covered the benefits of Stripe Invoicing, from automation to compliance.
  • You saw how to create and customize one-time invoices via API.
  • We discussed how Stripe handles automated invoicing for subscriptions.
  • You learned to track invoices through their various lifecycle statuses.

Mastering invoicing ensures smooth financial operations and a professional experience for your customers. Next up, we'll dive into reporting and reconciliation!

Gratis para empezar

Aprende Stripe Payments & SaaS Billing Systems con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
12
Lecciones
48

Preguntas frecuentes

¿La lección «Generación y envío de facturas profesionales» es gratis?

Sí — el texto completo de «Generación y envío de facturas profesionales» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Stripe Payments & SaaS Billing Systems, actualiza a CoddyKit PRO. El curso de Stripe Payments & SaaS Billing Systems incluye 4 lecciones en total.

¿Qué aprenderé en «Generación y envío de facturas profesionales»?

Cree, personalice y envíe automáticamente facturas profesionales a sus clientes por pagos únicos y recurrentes. Practicas Stripe Payments & SaaS Billing Systems con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Stripe Payments & SaaS Billing Systems?

No se requiere experiencia previa. Stripe Payments & SaaS Billing Systems en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Generación y envío de facturas profesionales»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Stripe Payments & SaaS Billing Systems?

Sí. Cada lección de Stripe Payments & SaaS Billing Systems incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Automatización de impuestos sobre las ventas con Stripe Tax
  2. Generación y envío de facturas profesionales
  3. Informes y conciliación de la facturación
  4. Gestión de notas de crédito y reembolsos parciales en facturas
← Volver a Stripe Payments & SaaS Billing Systems