sanmar_sdk.promostandards.invoices ================================== .. py:module:: sanmar_sdk.promostandards.invoices .. autoapi-nested-parse:: SanMar's PromoStandards Invoice service, version 1.0.0. Finds invoices by purchase order, by invoice number, by invoice date, or everything invoiced since a point in time. SanMar invoices once a day, after 9 p.m. Pacific, for what shipped that day, and asks that this service be called after 3 p.m. Pacific the next day. SanMar does not implement ``getVoidedInvoices``. Classes ------- .. autoapisummary:: sanmar_sdk.promostandards.invoices.AccountInfo sanmar_sdk.promostandards.invoices.InvoiceLine sanmar_sdk.promostandards.invoices.Tax sanmar_sdk.promostandards.invoices.Invoice sanmar_sdk.promostandards.invoices.InvoiceService Module Contents --------------- .. py:class:: AccountInfo(/, **data: Any) Bases: :py:obj:`sanmar_sdk.base.Record` The account and address an invoice is billed or sold to. .. py:attribute:: account_name :type: str | None :value: None .. py:attribute:: account_number :type: str | None :value: None .. py:attribute:: attention_to :type: str | None :value: None .. py:attribute:: address1 :type: str | None :value: None .. py:attribute:: address2 :type: str | None :value: None .. py:attribute:: address3 :type: str | None :value: None .. py:attribute:: city :type: str | None :value: None .. py:attribute:: region :type: str | None :value: None The state. .. py:attribute:: postal_code :type: str | None :value: None .. py:attribute:: country :type: str | None :value: None .. py:attribute:: email :type: str | None :value: None .. py:attribute:: phone :type: str | None :value: None .. py:class:: InvoiceLine(/, **data: Any) Bases: :py:obj:`sanmar_sdk.base.Record` One line of an invoice. .. py:attribute:: invoice_quantity :type: decimal.Decimal :value: None .. py:attribute:: uom :type: str :value: None .. py:attribute:: description :type: str :value: None .. py:attribute:: unit_price :type: decimal.Decimal :value: None .. py:attribute:: extended_price :type: decimal.Decimal :value: None .. py:attribute:: line_number :type: decimal.Decimal | None :value: None .. py:attribute:: product_id :type: str | None :value: None The style. .. py:attribute:: part_id :type: str | None :value: None SanMar's unique key for the style, color and size. .. py:attribute:: charge_id :type: str | None :value: None .. py:attribute:: po_line_number :type: decimal.Decimal | None :value: None .. py:attribute:: ordered_quantity :type: decimal.Decimal | None :value: None .. py:attribute:: back_ordered_quantity :type: decimal.Decimal | None :value: None .. py:attribute:: discount_amount :type: decimal.Decimal | None :value: None .. py:attribute:: distributor_product_id :type: str | None :value: None .. py:attribute:: distributor_part_id :type: str | None :value: None .. py:class:: Tax(/, **data: Any) Bases: :py:obj:`sanmar_sdk.base.Record` A tax charged on an invoice. .. py:attribute:: tax_type :type: str :value: None .. py:attribute:: jurisdiction :type: str :value: None .. py:attribute:: amount :type: decimal.Decimal :value: None .. py:class:: Invoice(/, **data: Any) Bases: :py:obj:`sanmar_sdk.base.Record` An invoice or credit memo. .. py:attribute:: invoice_number :type: str :value: None .. py:attribute:: invoice_type :type: str :value: None Whether this is an invoice or a credit memo, as SanMar spells it. .. py:attribute:: invoice_date :type: datetime.date :value: None .. py:attribute:: payment_due_date :type: datetime.date :value: None .. py:attribute:: currency :type: str .. py:attribute:: sales_amount :type: decimal.Decimal :value: None .. py:attribute:: shipping_amount :type: decimal.Decimal :value: None .. py:attribute:: handling_amount :type: decimal.Decimal :value: None .. py:attribute:: tax_amount :type: decimal.Decimal :value: None .. py:attribute:: invoice_amount :type: decimal.Decimal :value: None .. py:attribute:: advance_payment_amount :type: decimal.Decimal :value: None .. py:attribute:: amount_due :type: decimal.Decimal :value: None .. py:attribute:: po_number :type: str | None :value: None .. py:attribute:: po_version :type: str | None :value: None .. py:attribute:: bill_to :type: AccountInfo | None :value: None .. py:attribute:: sold_to :type: AccountInfo | None :value: None .. py:attribute:: comments :type: str | None :value: None .. py:attribute:: payment_terms :type: str | None :value: None .. py:attribute:: fob :type: str | None :value: None .. py:attribute:: document_url :type: str | None :value: None .. py:attribute:: payment_url :type: str | None :value: None .. py:attribute:: lines :type: list[InvoiceLine] :value: None .. py:attribute:: sales_order_numbers :type: list[str] :value: None .. py:attribute:: taxes :type: list[Tax] :value: None .. py:class:: InvoiceService(soap: SoapClient, credentials: Credentials) Bases: :py:obj:`sanmar_sdk.promostandards._common.PromoStandardsService` SanMar's PromoStandards Invoice service. .. py:attribute:: endpoint .. py:attribute:: version :value: '1.0.0' The PromoStandards version SanMar implements, sent as ``wsVersion``. .. py:method:: by_purchase_order(po_number: str) -> list[Invoice] Find the invoices for a purchase order. .. py:method:: get(invoice_number: str) -> Invoice Find one invoice by its number. :raises ~sanmar_sdk.exceptions.NotFoundError: If SanMar has no such invoice. .. py:method:: by_date(invoice_date: datetime.date) -> list[Invoice] Find every invoice dated a given day. .. py:method:: available_since(since: datetime.datetime) -> list[Invoice] Find every invoice issued after a point in time.