From 518e96c745203a2da8ef2a8ba38f4045b4dcc19c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Romain=20Semp=C3=A9?= Date: Mon, 14 Aug 2023 15:08:17 +0200 Subject: [PATCH] feat(tax): Add taxes to add ons (#114) * feat(tax): Add taxes to add ons * feat(tax): Add add_ons_count to tax * feat(tax): Add tax_codes to one-off invoice --- add_on.go | 4 ++++ invoice.go | 11 ++++++----- tax.go | 1 + 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/add_on.go b/add_on.go index 3790201..3ca01bb 100644 --- a/add_on.go +++ b/add_on.go @@ -24,6 +24,8 @@ type AddOnInput struct { AmountCents int `json:"amount_cents,omitempty"` AmountCurrency Currency `json:"amount_currency,omitempty"` + + TaxCodes []string `json:"tax_codes,omitempty"` } type AddOnListInput struct { @@ -46,6 +48,8 @@ type AddOn struct { AmountCents int `json:"amount_cents,omitempty"` AmountCurrency Currency `json:"amount_currency,omitempty"` + Taxes []Tax `json:"tax,omitempty"` + CreatedAt time.Time `json:"created_at,omitempty"` } diff --git a/invoice.go b/invoice.go index 1366e02..b5170aa 100644 --- a/invoice.go +++ b/invoice.go @@ -60,10 +60,11 @@ type InvoiceMetadataInput struct { } type InvoiceFeesInput struct { - AddOnCode string `json:"add_on_code,omitempty"` - UnitAmountCents int `json:"unit_amount_cents,omitempty"` - Description string `json:"description,omitempty"` - Units float32 `json:"units,omitempty"` + AddOnCode string `json:"add_on_code,omitempty"` + UnitAmountCents int `json:"unit_amount_cents,omitempty"` + Description string `json:"description,omitempty"` + Units float32 `json:"units,omitempty"` + TaxCodes []string `json:"tax_codes,omitempty"` } type InvoiceMetadataResponse struct { @@ -156,7 +157,7 @@ type Invoice struct { SubTotalIncludingTaxesAmountCents int `json:"sub_total_including_taxes_amount_cents,omitempty"` TotalAmountCents int `json:"total_amount_cents,omitempty"` PrepaidCreditAmountCents int `json:"prepaid_credit_amount_cents,omitempty"` - NetPaymentTerm int `json:"net_payment_term,omitempty"` + NetPaymentTerm int `json:"net_payment_term,omitempty"` FileURL string `json:"file_url,omitempty"` Metadata []InvoiceMetadataResponse `json:"metadata,omitempty"` diff --git a/tax.go b/tax.go index 583a734..71472ff 100644 --- a/tax.go +++ b/tax.go @@ -44,6 +44,7 @@ type Tax struct { Code string `json:"code,omitempty"` Rate float32 `json:"rate,omitempty"` Description string `json:"description,omitempty"` + AddOnsCount int `json:"add_ons_count,omitempty"` CustomersCount int `json:"customers_count,omitempty"` PlansCount int `json:"plans_count,omitempty"` ChargesCount int `json:"charges_count,omitempty"`