Skip to content

Latest commit

 

History

History
142 lines (97 loc) · 3.8 KB

File metadata and controls

142 lines (97 loc) · 3.8 KB

list

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

Synchronous Client

from os import getenv
from sideko_stripe import Stripe

client = Stripe(token=getenv("API_TOKEN"))
res = client.invoice.line.list(invoice="string")

Asynchronous Client

from os import getenv
from sideko_stripe import AsyncStripe

client = AsyncStripe(token=getenv("API_TOKEN"))
res = await client.invoice.line.list(invoice="string")

create_many

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

Synchronous Client

from os import getenv
from sideko_stripe import Stripe

client = Stripe(token=getenv("API_TOKEN"))
res = client.invoice.line.create_many(invoice="string", lines=[{}])

Asynchronous Client

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

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}

Synchronous Client

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")

Asynchronous Client

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")

remove_many

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

Synchronous Client

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"}]
)

Asynchronous Client

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"}]
)

update_many

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

Synchronous Client

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"}])

Asynchronous Client

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"}])