Class: GOBL::Bill::Invoice
- Includes:
- Extensions::Bill::InvoiceHelper
- Defined in:
- lib/generated/gobl/bill/invoice.rb
Overview
Invoice represents a payment claim for goods or services supplied under conditions agreed between the supplier and the customer.
Constant Summary collapse
- SCHEMA_ID =
The Schema ID of the GOBL Invoice structure
'https://gobl.org/draft-0/bill/invoice'
- TYPE_ENUM =
Enumeration of possible values for #type with their corresponding descriptions
{ 'standard' => 'A regular commercial invoice document between a supplier and customer.', 'proforma' => 'For a clients validation before sending a final invoice.', 'corrective' => 'Corrected invoice that completely *replaces* the preceding document.', 'credit-note' => 'Reflects a refund either partial or complete of the preceding document. A credit note effectively *extends* the previous document.', 'debit-note' => 'An additional set of charges to be added to the preceding document.' }.freeze
Instance Attribute Summary collapse
-
#charges ⇒ Array<Charge>
readonly
Charges or surcharges applied to the complete invoice.
-
#code ⇒ String
readonly
Sequential code used to identify this invoice in tax declarations.
-
#complements ⇒ Array<GOBL::Schema::Object>
readonly
Additional complementary objects that add relevant information to the invoice.
-
#currency ⇒ GOBL::Currency::Code
readonly
Currency for all invoice totals.
-
#customer ⇒ GOBL::Org::Party
readonly
Legal entity receiving the goods or services, may be empty in certain circumstances such as simplified invoices.
-
#delivery ⇒ Delivery
readonly
Specific details on delivery of the goods referenced in the invoice.
-
#discounts ⇒ Array<Discount>
readonly
Discounts or allowances applied to the complete invoice.
-
#exchange_rates ⇒ Array<GOBL::Currency::ExchangeRate>
readonly
Exchange rates to be used when converting the invoices monetary values into other currencies.
-
#issue_date ⇒ GOBL::Cal::Date
readonly
When the invoice was created.
-
#lines ⇒ Array<Line>
readonly
List of invoice lines representing each of the items sold to the customer.
-
#meta ⇒ GOBL::CBC::Meta
readonly
Additional semi-structured data that doesn’t fit into the body of the invoice.
-
#notes ⇒ Array<GOBL::CBC::Note>
readonly
Unstructured information that is relevant to the invoice, such as correction or additional legal details.
-
#op_date ⇒ GOBL::Cal::Date
readonly
Date when the operation defined by the invoice became effective.
-
#ordering ⇒ Ordering
readonly
Ordering details including document references and buyer or seller parties.
-
#outlays ⇒ Array<Outlay>
readonly
Expenses paid for by the supplier but invoiced directly to the customer.
-
#payment ⇒ Payment
readonly
Information on when, how, and to whom the invoice should be paid.
-
#preceding ⇒ Array<Preceding>
readonly
Key information regarding previous invoices and potentially details as to why they were corrected.
-
#series ⇒ String
readonly
Used as a prefix to group codes.
-
#supplier ⇒ GOBL::Org::Party
readonly
The taxable entity supplying the goods or services.
-
#tax ⇒ Tax
readonly
Special tax configuration for billing.
-
#totals ⇒ Totals
readonly
Summary of all the invoice totals, including taxes (calculated).
-
#type ⇒ GOBL::CBC::Key
readonly
Type of invoice document subject to the requirements of the local tax regime.
-
#uuid ⇒ String
readonly
Universally Unique Identifier.
-
#value_date ⇒ GOBL::Cal::Date
readonly
When the taxes of this invoice become accountable, if none set, the issue date is used.
Method Summary
Methods included from Extensions::Bill::InvoiceHelper
Methods inherited from Object
Methods inherited from Struct
#as_json, from_data, from_json!, #to_json
Instance Attribute Details
#charges ⇒ Array<Charge> (readonly)
Charges or surcharges applied to the complete invoice
106 |
# File 'lib/generated/gobl/bill/invoice.rb', line 106 property :charges, [Charge] |
#code ⇒ String (readonly)
Sequential code used to identify this invoice in tax declarations.
44 |
# File 'lib/generated/gobl/bill/invoice.rb', line 44 property :code, String |
#complements ⇒ Array<GOBL::Schema::Object> (readonly)
Additional complementary objects that add relevant information to the invoice.
141 |
# File 'lib/generated/gobl/bill/invoice.rb', line 141 property :complements, [GOBL::Schema::Object] |
#currency ⇒ GOBL::Currency::Code (readonly)
Currency for all invoice totals.
65 |
# File 'lib/generated/gobl/bill/invoice.rb', line 65 property :currency, GOBL::Currency::Code |
#customer ⇒ GOBL::Org::Party (readonly)
Legal entity receiving the goods or services, may be empty in certain circumstances such as simplified invoices.
91 |
# File 'lib/generated/gobl/bill/invoice.rb', line 91 property :customer, GOBL::Org::Party |
#delivery ⇒ Delivery (readonly)
Specific details on delivery of the goods referenced in the invoice.
126 |
# File 'lib/generated/gobl/bill/invoice.rb', line 126 property :delivery, Delivery |
#discounts ⇒ Array<Discount> (readonly)
Discounts or allowances applied to the complete invoice
101 |
# File 'lib/generated/gobl/bill/invoice.rb', line 101 property :discounts, [Discount] |
#exchange_rates ⇒ Array<GOBL::Currency::ExchangeRate> (readonly)
Exchange rates to be used when converting the invoices monetary values into other currencies.
70 |
# File 'lib/generated/gobl/bill/invoice.rb', line 70 property :exchange_rates, [GOBL::Currency::ExchangeRate] |
#issue_date ⇒ GOBL::Cal::Date (readonly)
When the invoice was created.
50 |
# File 'lib/generated/gobl/bill/invoice.rb', line 50 property :issue_date, GOBL::Cal::Date |
#lines ⇒ Array<Line> (readonly)
List of invoice lines representing each of the items sold to the customer.
96 |
# File 'lib/generated/gobl/bill/invoice.rb', line 96 property :lines, [Line] |
#meta ⇒ GOBL::CBC::Meta (readonly)
Additional semi-structured data that doesn’t fit into the body of the invoice.
146 |
# File 'lib/generated/gobl/bill/invoice.rb', line 146 property :meta, GOBL::CBC::Meta |
#notes ⇒ Array<GOBL::CBC::Note> (readonly)
Unstructured information that is relevant to the invoice, such as correction or additional legal details.
136 |
# File 'lib/generated/gobl/bill/invoice.rb', line 136 property :notes, [GOBL::CBC::Note] |
#op_date ⇒ GOBL::Cal::Date (readonly)
Date when the operation defined by the invoice became effective.
55 |
# File 'lib/generated/gobl/bill/invoice.rb', line 55 property :op_date, GOBL::Cal::Date |
#ordering ⇒ Ordering (readonly)
Ordering details including document references and buyer or seller parties.
116 |
# File 'lib/generated/gobl/bill/invoice.rb', line 116 property :ordering, Ordering |
#outlays ⇒ Array<Outlay> (readonly)
Expenses paid for by the supplier but invoiced directly to the customer.
111 |
# File 'lib/generated/gobl/bill/invoice.rb', line 111 property :outlays, [Outlay] |
#payment ⇒ Payment (readonly)
Information on when, how, and to whom the invoice should be paid.
121 |
# File 'lib/generated/gobl/bill/invoice.rb', line 121 property :payment, Payment |
#preceding ⇒ Array<Preceding> (readonly)
Key information regarding previous invoices and potentially details as to why they were corrected.
75 |
# File 'lib/generated/gobl/bill/invoice.rb', line 75 property :preceding, [Preceding] |
#series ⇒ String (readonly)
Used as a prefix to group codes.
39 |
# File 'lib/generated/gobl/bill/invoice.rb', line 39 property :series, String |
#supplier ⇒ GOBL::Org::Party (readonly)
The taxable entity supplying the goods or services.
85 |
# File 'lib/generated/gobl/bill/invoice.rb', line 85 property :supplier, GOBL::Org::Party |
#tax ⇒ Tax (readonly)
Special tax configuration for billing.
80 |
# File 'lib/generated/gobl/bill/invoice.rb', line 80 property :tax, Tax |
#totals ⇒ Totals (readonly)
Summary of all the invoice totals, including taxes (calculated).
131 |
# File 'lib/generated/gobl/bill/invoice.rb', line 131 property :totals, Totals |
#type ⇒ GOBL::CBC::Key (readonly)
Type of invoice document subject to the requirements of the local tax regime.
33 |
# File 'lib/generated/gobl/bill/invoice.rb', line 33 property :type, GOBL::CBC::Key |
#uuid ⇒ String (readonly)
Universally Unique Identifier.
18 |
# File 'lib/generated/gobl/bill/invoice.rb', line 18 property :uuid, String |
#value_date ⇒ GOBL::Cal::Date (readonly)
When the taxes of this invoice become accountable, if none set, the issue date is used.
60 |
# File 'lib/generated/gobl/bill/invoice.rb', line 60 property :value_date, GOBL::Cal::Date |