github.com/stripe/stripe-go/v76@v76.25.0/tax_calculationlineitem.go (about) 1 // 2 // 3 // File generated from our OpenAPI spec 4 // 5 // 6 7 package stripe 8 9 // Specifies whether the `amount` includes taxes. If `tax_behavior=inclusive`, then the amount includes taxes. 10 type TaxCalculationLineItemTaxBehavior string 11 12 // List of values that TaxCalculationLineItemTaxBehavior can take 13 const ( 14 TaxCalculationLineItemTaxBehaviorExclusive TaxCalculationLineItemTaxBehavior = "exclusive" 15 TaxCalculationLineItemTaxBehaviorInclusive TaxCalculationLineItemTaxBehavior = "inclusive" 16 ) 17 18 // Indicates the level of the jurisdiction imposing the tax. 19 type TaxCalculationLineItemTaxBreakdownJurisdictionLevel string 20 21 // List of values that TaxCalculationLineItemTaxBreakdownJurisdictionLevel can take 22 const ( 23 TaxCalculationLineItemTaxBreakdownJurisdictionLevelCity TaxCalculationLineItemTaxBreakdownJurisdictionLevel = "city" 24 TaxCalculationLineItemTaxBreakdownJurisdictionLevelCountry TaxCalculationLineItemTaxBreakdownJurisdictionLevel = "country" 25 TaxCalculationLineItemTaxBreakdownJurisdictionLevelCounty TaxCalculationLineItemTaxBreakdownJurisdictionLevel = "county" 26 TaxCalculationLineItemTaxBreakdownJurisdictionLevelDistrict TaxCalculationLineItemTaxBreakdownJurisdictionLevel = "district" 27 TaxCalculationLineItemTaxBreakdownJurisdictionLevelState TaxCalculationLineItemTaxBreakdownJurisdictionLevel = "state" 28 ) 29 30 // Indicates whether the jurisdiction was determined by the origin (merchant's address) or destination (customer's address). 31 type TaxCalculationLineItemTaxBreakdownSourcing string 32 33 // List of values that TaxCalculationLineItemTaxBreakdownSourcing can take 34 const ( 35 TaxCalculationLineItemTaxBreakdownSourcingDestination TaxCalculationLineItemTaxBreakdownSourcing = "destination" 36 TaxCalculationLineItemTaxBreakdownSourcingOrigin TaxCalculationLineItemTaxBreakdownSourcing = "origin" 37 ) 38 39 // The tax type, such as `vat` or `sales_tax`. 40 type TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType string 41 42 // List of values that TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType can take 43 const ( 44 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeAmusementTax TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "amusement_tax" 45 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeCommunicationsTax TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "communications_tax" 46 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeGST TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "gst" 47 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeHST TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "hst" 48 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeIGST TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "igst" 49 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeJCT TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "jct" 50 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeLeaseTax TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "lease_tax" 51 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypePST TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "pst" 52 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeQST TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "qst" 53 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeRST TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "rst" 54 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeSalesTax TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "sales_tax" 55 TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxTypeVAT TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType = "vat" 56 ) 57 58 // The reasoning behind this tax, for example, if the product is tax exempt. The possible values for this field may be extended as new tax rules are supported. 59 type TaxCalculationLineItemTaxBreakdownTaxabilityReason string 60 61 // List of values that TaxCalculationLineItemTaxBreakdownTaxabilityReason can take 62 const ( 63 TaxCalculationLineItemTaxBreakdownTaxabilityReasonCustomerExempt TaxCalculationLineItemTaxBreakdownTaxabilityReason = "customer_exempt" 64 TaxCalculationLineItemTaxBreakdownTaxabilityReasonNotCollecting TaxCalculationLineItemTaxBreakdownTaxabilityReason = "not_collecting" 65 TaxCalculationLineItemTaxBreakdownTaxabilityReasonNotSubjectToTax TaxCalculationLineItemTaxBreakdownTaxabilityReason = "not_subject_to_tax" 66 TaxCalculationLineItemTaxBreakdownTaxabilityReasonNotSupported TaxCalculationLineItemTaxBreakdownTaxabilityReason = "not_supported" 67 TaxCalculationLineItemTaxBreakdownTaxabilityReasonPortionProductExempt TaxCalculationLineItemTaxBreakdownTaxabilityReason = "portion_product_exempt" 68 TaxCalculationLineItemTaxBreakdownTaxabilityReasonPortionReducedRated TaxCalculationLineItemTaxBreakdownTaxabilityReason = "portion_reduced_rated" 69 TaxCalculationLineItemTaxBreakdownTaxabilityReasonPortionStandardRated TaxCalculationLineItemTaxBreakdownTaxabilityReason = "portion_standard_rated" 70 TaxCalculationLineItemTaxBreakdownTaxabilityReasonProductExempt TaxCalculationLineItemTaxBreakdownTaxabilityReason = "product_exempt" 71 TaxCalculationLineItemTaxBreakdownTaxabilityReasonProductExemptHoliday TaxCalculationLineItemTaxBreakdownTaxabilityReason = "product_exempt_holiday" 72 TaxCalculationLineItemTaxBreakdownTaxabilityReasonProportionallyRated TaxCalculationLineItemTaxBreakdownTaxabilityReason = "proportionally_rated" 73 TaxCalculationLineItemTaxBreakdownTaxabilityReasonReducedRated TaxCalculationLineItemTaxBreakdownTaxabilityReason = "reduced_rated" 74 TaxCalculationLineItemTaxBreakdownTaxabilityReasonReverseCharge TaxCalculationLineItemTaxBreakdownTaxabilityReason = "reverse_charge" 75 TaxCalculationLineItemTaxBreakdownTaxabilityReasonStandardRated TaxCalculationLineItemTaxBreakdownTaxabilityReason = "standard_rated" 76 TaxCalculationLineItemTaxBreakdownTaxabilityReasonTaxableBasisReduced TaxCalculationLineItemTaxBreakdownTaxabilityReason = "taxable_basis_reduced" 77 TaxCalculationLineItemTaxBreakdownTaxabilityReasonZeroRated TaxCalculationLineItemTaxBreakdownTaxabilityReason = "zero_rated" 78 ) 79 80 type TaxCalculationLineItemTaxBreakdownJurisdiction struct { 81 // Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). 82 Country string `json:"country"` 83 // A human-readable name for the jurisdiction imposing the tax. 84 DisplayName string `json:"display_name"` 85 // Indicates the level of the jurisdiction imposing the tax. 86 Level TaxCalculationLineItemTaxBreakdownJurisdictionLevel `json:"level"` 87 // [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2:US), without country prefix. For example, "NY" for New York, United States. 88 State string `json:"state"` 89 } 90 91 // Details regarding the rate for this tax. This field will be `null` when the tax is not imposed, for example if the product is exempt from tax. 92 type TaxCalculationLineItemTaxBreakdownTaxRateDetails struct { 93 // A localized display name for tax type, intended to be human-readable. For example, "Local Sales and Use Tax", "Value-added tax (VAT)", or "Umsatzsteuer (USt.)". 94 DisplayName string `json:"display_name"` 95 // The tax rate percentage as a string. For example, 8.5% is represented as "8.5". 96 PercentageDecimal string `json:"percentage_decimal"` 97 // The tax type, such as `vat` or `sales_tax`. 98 TaxType TaxCalculationLineItemTaxBreakdownTaxRateDetailsTaxType `json:"tax_type"` 99 } 100 101 // Detailed account of taxes relevant to this line item. 102 type TaxCalculationLineItemTaxBreakdown struct { 103 // The amount of tax, in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). 104 Amount int64 `json:"amount"` 105 Jurisdiction *TaxCalculationLineItemTaxBreakdownJurisdiction `json:"jurisdiction"` 106 // Indicates whether the jurisdiction was determined by the origin (merchant's address) or destination (customer's address). 107 Sourcing TaxCalculationLineItemTaxBreakdownSourcing `json:"sourcing"` 108 // The reasoning behind this tax, for example, if the product is tax exempt. The possible values for this field may be extended as new tax rules are supported. 109 TaxabilityReason TaxCalculationLineItemTaxBreakdownTaxabilityReason `json:"taxability_reason"` 110 // The amount on which tax is calculated, in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). 111 TaxableAmount int64 `json:"taxable_amount"` 112 // Details regarding the rate for this tax. This field will be `null` when the tax is not imposed, for example if the product is exempt from tax. 113 TaxRateDetails *TaxCalculationLineItemTaxBreakdownTaxRateDetails `json:"tax_rate_details"` 114 } 115 type TaxCalculationLineItem struct { 116 // The line item amount in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). If `tax_behavior=inclusive`, then this amount includes taxes. Otherwise, taxes were calculated on top of this amount. 117 Amount int64 `json:"amount"` 118 // The amount of tax calculated for this line item, in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). 119 AmountTax int64 `json:"amount_tax"` 120 // Unique identifier for the object. 121 ID string `json:"id"` 122 // Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. 123 Livemode bool `json:"livemode"` 124 // String representing the object's type. Objects of the same type share the same value. 125 Object string `json:"object"` 126 // The ID of an existing [Product](https://stripe.com/docs/api/products/object). 127 Product string `json:"product"` 128 // The number of units of the item being purchased. For reversals, this is the quantity reversed. 129 Quantity int64 `json:"quantity"` 130 // A custom identifier for this line item. 131 Reference string `json:"reference"` 132 // Specifies whether the `amount` includes taxes. If `tax_behavior=inclusive`, then the amount includes taxes. 133 TaxBehavior TaxCalculationLineItemTaxBehavior `json:"tax_behavior"` 134 // Detailed account of taxes relevant to this line item. 135 TaxBreakdown []*TaxCalculationLineItemTaxBreakdown `json:"tax_breakdown"` 136 // The [tax code](https://stripe.com/docs/tax/tax-categories) ID used for this resource. 137 TaxCode string `json:"tax_code"` 138 } 139 140 // TaxCalculationLineItemList is a list of CalculationLineItems as retrieved from a list endpoint. 141 type TaxCalculationLineItemList struct { 142 APIResource 143 ListMeta 144 Data []*TaxCalculationLineItem `json:"data"` 145 }