> ## Documentation Index
> Fetch the complete documentation index at: https://docs.metronome.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get an invoice PDF

> Retrieve a PDF version of a specific invoice by its unique identifier. This endpoint generates a professionally formatted invoice document suitable for sharing with customers, accounting teams, or for record-keeping purposes.

### Use this endpoint to:
- Provide customers with downloadable or emailable copies of their invoices
- Support accounting and finance teams with official billing documents
- Maintain accurate records of billing transactions for audits and compliance

### Key response details:
- The response is a binary PDF file representing the full invoice
- The PDF includes all standard invoice information such as line items, totals, billing period, and customer details
- The document is formatted for clarity and professionalism, suitable for official use

### Usage guidelines:
- Ensure the `invoice_id` corresponds to an existing invoice for the specified `customer_id`
- The PDF is generated on-demand; frequent requests for the same invoice may impact performance
- Use appropriate headers to handle the binary response in your application (e.g., setting `Content-Type: application/pdf`)




## OpenAPI

````yaml /openapi.json get /v1/customers/{customer_id}/invoices/{invoice_id}/pdf
openapi: 3.0.1
info:
  title: Metronome
  version: 1.0.0
servers:
  - url: https://api.metronome.com
    description: Production server
security:
  - bearerAuth: []
tags:
  - name: Customers
    description: >-
      [Customers](https://docs.metronome.com/provisioning/create-customers/) in
      Metronome represent your users for all billing and reporting. Use these
      endpoints to create, retrieve, update, and archive customers and their
      billing configuration.
  - name: Billable metrics
    description: >-
      [Billable
      metrics](https://docs.metronome.com/understanding-metronome/how-metronome-works#billable-metrics)
      in Metronome represent the various consumption components that Metronome
      meters and aggregates.
  - name: Usage
    description: >-
      [Usage
      events](https://docs.metronome.com/connecting-metronome/send-usage-data/)
      are the basis for billable metrics. Use these endpoints to send usage
      events to Metronome and retrieve aggregated event data.
  - name: Products
    description: Products are the items that customers purchase.
  - name: Rate cards
    description: Rate cards are used to define default pricing for products.
  - name: Contracts
    description: >-
      A contract defines a customer’s products, pricing, discounts, commitments,
      and more. Use these endpoints to create and update contracts data.
  - name: Credits and commits
    description: Credits and commits are used to manage customer balances.
  - name: Invoices
    description: >-
      [Invoices](https://docs.metronome.com/invoicing/) reflect how much a
      customer spent during a period, which is the basis for billing. Metronome
      automatically generates invoices based upon your pricing, packaging, and
      usage events. Use these endpoints to retrieve invoices.
  - name: Alerts
    description: >-
      [Alerts](https://docs.metronome.com/connecting-metronome/alerts/) monitor
      customer spending, balances, and other billing factors. Use these
      endpoints to create, retrieve, and archive customer alerts. To view sample
      alert payloads by alert type, navigate
      [here.](https://docs.metronome.com/manage-product-access/create-manage-alerts/#webhook-notifications)
  - name: Custom fields
    description: >-
      [Custom fields](https://docs.metronome.com/integrations/custom-fields/)
      enable adding additional data to Metronome entities. Use these endpoints
      to create, retrieve, update, and delete custom fields.
  - name: Security
    description: >-
      [Security](https://docs.metronome.com/developer-resources/security/)
      endpoints allow you to retrieve security-related data.
  - name: Settings
    description: >-
      Use these endpoints to configure a billing API key, a webhook secret, or
      invoice finalization behavior.
  - name: Named schedules
    description: >-
      Named schedules are used for storing custom data that can change over
      time. Named schedules are often used in custom pricing logic.
paths:
  /v1/customers/{customer_id}/invoices/{invoice_id}/pdf:
    get:
      tags:
        - Invoices
      summary: Get an invoice PDF
      description: >
        Retrieve a PDF version of a specific invoice by its unique identifier.
        This endpoint generates a professionally formatted invoice document
        suitable for sharing with customers, accounting teams, or for
        record-keeping purposes.


        ### Use this endpoint to:

        - Provide customers with downloadable or emailable copies of their
        invoices

        - Support accounting and finance teams with official billing documents

        - Maintain accurate records of billing transactions for audits and
        compliance


        ### Key response details:

        - The response is a binary PDF file representing the full invoice

        - The PDF includes all standard invoice information such as line items,
        totals, billing period, and customer details

        - The document is formatted for clarity and professionalism, suitable
        for official use


        ### Usage guidelines:

        - Ensure the `invoice_id` corresponds to an existing invoice for the
        specified `customer_id`

        - The PDF is generated on-demand; frequent requests for the same invoice
        may impact performance

        - Use appropriate headers to handle the binary response in your
        application (e.g., setting `Content-Type: application/pdf`)
      operationId: getInvoicePdf-v1
      parameters:
        - $ref: '#/components/parameters/CustomerId'
        - $ref: '#/components/parameters/InvoiceId'
      responses:
        '200':
          description: Success
          content:
            application/pdf:
              schema:
                type: object
        '404':
          $ref: '#/components/responses/NotFound'
components:
  parameters:
    CustomerId:
      name: customer_id
      in: path
      required: true
      schema:
        type: string
        format: uuid
      example: d7abd0cd-4ae9-4db7-8676-e986a4ebd8dc
    InvoiceId:
      name: invoice_id
      in: path
      required: true
      schema:
        type: string
        format: uuid
      example: 6a37bb88-8538-48c5-b37b-a41c836328bd
  responses:
    NotFound:
      description: The specified resource was not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    Error:
      required:
        - message
      type: object
      properties:
        message:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````