Retrieve an invoice's line items
When retrieving an invoice, you’ll get a lines property containing the total count of line items and the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
API Endpoint: GET /v1/invoices/{invoice}/lines
from os import getenv
from sideko_stripe import Stripe
client = Stripe(token=getenv("API_TOKEN"))
res = client.invoice.line.list(invoice="string")from os import getenv
from sideko_stripe import AsyncStripe
client = AsyncStripe(token=getenv("API_TOKEN"))
res = await client.invoice.line.list(invoice="string")Bulk add invoice line items
Adds multiple line items to an invoice. This is only possible when an invoice is still a draft.
API Endpoint: POST /v1/invoices/{invoice}/add_lines
from os import getenv
from sideko_stripe import Stripe
client = Stripe(token=getenv("API_TOKEN"))
res = client.invoice.line.create_many(invoice="string", lines=[{}])from os import getenv
from sideko_stripe import AsyncStripe
client = AsyncStripe(token=getenv("API_TOKEN"))
res = await client.invoice.line.create_many(invoice="string", lines=[{}])Update an invoice's line item
Updates an invoice’s line item. Some fields, such as tax_amounts, only live on the invoice line item,
so they can only be updated through this endpoint. Other fields, such as amount, live on both the invoice
item and the invoice line item, so updates on this endpoint will propagate to the invoice item as well.
Updating an invoice’s line item is only possible before the invoice is finalized.
API Endpoint: POST /v1/invoices/{invoice}/lines/{line_item_id}
from os import getenv
from sideko_stripe import Stripe
client = Stripe(token=getenv("API_TOKEN"))
res = client.invoice.line.update(invoice="string", line_item_id="string")from os import getenv
from sideko_stripe import AsyncStripe
client = AsyncStripe(token=getenv("API_TOKEN"))
res = await client.invoice.line.update(invoice="string", line_item_id="string")Bulk remove invoice line items
Removes multiple line items from an invoice. This is only possible when an invoice is still a draft.
API Endpoint: POST /v1/invoices/{invoice}/remove_lines
from os import getenv
from sideko_stripe import Stripe
client = Stripe(token=getenv("API_TOKEN"))
res = client.invoice.line.remove_many(
invoice="string", lines=[{"behavior": "delete", "id": "string"}]
)from os import getenv
from sideko_stripe import AsyncStripe
client = AsyncStripe(token=getenv("API_TOKEN"))
res = await client.invoice.line.remove_many(
invoice="string", lines=[{"behavior": "delete", "id": "string"}]
)Bulk update invoice line items
Updates multiple line items on an invoice. This is only possible when an invoice is still a draft.
API Endpoint: POST /v1/invoices/{invoice}/update_lines
from os import getenv
from sideko_stripe import Stripe
client = Stripe(token=getenv("API_TOKEN"))
res = client.invoice.line.update_many(invoice="string", lines=[{"id": "string"}])from os import getenv
from sideko_stripe import AsyncStripe
client = AsyncStripe(token=getenv("API_TOKEN"))
res = await client.invoice.line.update_many(invoice="string", lines=[{"id": "string"}])