finvoice3 1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/CHANGELOG.md +0 -0
- data/README.md +46 -0
- data/Rakefile +8 -0
- data/lib/finvoice3/any_party_communication_details.rb +19 -0
- data/lib/finvoice3/any_party_details/any_party_communication_details.rb +19 -0
- data/lib/finvoice3/any_party_details/any_party_postal_address_details.rb +34 -0
- data/lib/finvoice3/any_party_details.rb +46 -0
- data/lib/finvoice3/attachment_message_details/attachment_message_identifier.rb +5 -0
- data/lib/finvoice3/attachment_message_details.rb +14 -0
- data/lib/finvoice3/buyer_communication_details.rb +19 -0
- data/lib/finvoice3/buyer_party_details/buyer_postal_address_details.rb +32 -0
- data/lib/finvoice3/buyer_party_details.rb +46 -0
- data/lib/finvoice3/country_code.rb +7 -0
- data/lib/finvoice3/delivery_communication_details.rb +19 -0
- data/lib/finvoice3/delivery_details/delivery_period_details.rb +19 -0
- data/lib/finvoice3/delivery_details/destination_name.rb +13 -0
- data/lib/finvoice3/delivery_details/package_details.rb +31 -0
- data/lib/finvoice3/delivery_details/shipment_party_details/shipment_postal_address_details.rb +34 -0
- data/lib/finvoice3/delivery_details/shipment_party_details.rb +34 -0
- data/lib/finvoice3/delivery_details.rb +112 -0
- data/lib/finvoice3/delivery_party_details/delivery_postal_address_details.rb +34 -0
- data/lib/finvoice3/delivery_party_details.rb +31 -0
- data/lib/finvoice3/direct_debit_info.rb +22 -0
- data/lib/finvoice3/electronic_addr_id.rb +14 -0
- data/lib/finvoice3/epi_account_id.rb +13 -0
- data/lib/finvoice3/epi_details/epi_identification_details/epi_reference.rb +7 -0
- data/lib/finvoice3/epi_details/epi_identification_details.rb +28 -0
- data/lib/finvoice3/epi_details/epi_party_details/epi_beneficiary_party_details.rb +22 -0
- data/lib/finvoice3/epi_details/epi_party_details/epi_bfi_party_details/epi_bfi_identifier.rb +14 -0
- data/lib/finvoice3/epi_details/epi_party_details/epi_bfi_party_details.rb +19 -0
- data/lib/finvoice3/epi_details/epi_party_details.rb +19 -0
- data/lib/finvoice3/epi_details/epi_payment_instruction_details/epi_amount.rb +7 -0
- data/lib/finvoice3/epi_details/epi_payment_instruction_details/epi_charge.rb +14 -0
- data/lib/finvoice3/epi_details/epi_payment_instruction_details/epi_remittance_info_identifier.rb +14 -0
- data/lib/finvoice3/epi_details/epi_payment_instruction_details.rb +40 -0
- data/lib/finvoice3/epi_details.rb +22 -0
- data/lib/finvoice3/factoring_agreement_details/factoring_party_postal_address_details.rb +34 -0
- data/lib/finvoice3/factoring_agreement_details.rb +37 -0
- data/lib/finvoice3/finvoice.rb +187 -0
- data/lib/finvoice3/invoice.rb +33 -0
- data/lib/finvoice3/invoice_details/definition_details/definition_header_text.rb +14 -0
- data/lib/finvoice3/invoice_details/definition_details.rb +19 -0
- data/lib/finvoice3/invoice_details/discount_details.rb +34 -0
- data/lib/finvoice3/invoice_details/invoice_charge_details.rb +32 -0
- data/lib/finvoice3/invoice_details/invoice_classification.rb +19 -0
- data/lib/finvoice3/invoice_details/invoice_type_code_fi.rb +13 -0
- data/lib/finvoice3/invoice_details/origin_code.rb +4 -0
- data/lib/finvoice3/invoice_details/payment_terms_details/cash_discount_vat_details.rb +19 -0
- data/lib/finvoice3/invoice_details/payment_terms_details/header_value.rb +16 -0
- data/lib/finvoice3/invoice_details/payment_terms_details/payment_over_due_fine_details.rb +22 -0
- data/lib/finvoice3/invoice_details/payment_terms_details.rb +46 -0
- data/lib/finvoice3/invoice_details/vat_point.rb +19 -0
- data/lib/finvoice3/invoice_details/vat_specification_details.rb +31 -0
- data/lib/finvoice3/invoice_details.rb +211 -0
- data/lib/finvoice3/invoice_recipient_communication_details.rb +19 -0
- data/lib/finvoice3/invoice_recipient_party_details/invoice_recipient_postal_address_details.rb +34 -0
- data/lib/finvoice3/invoice_recipient_party_details.rb +31 -0
- data/lib/finvoice3/invoice_row/article_group_identifier.rb +13 -0
- data/lib/finvoice3/invoice_row/customs_info.rb +28 -0
- data/lib/finvoice3/invoice_row/ean_code.rb +9 -0
- data/lib/finvoice3/invoice_row/row_any_party_details/row_any_party_postal_address_details.rb +34 -0
- data/lib/finvoice3/invoice_row/row_any_party_details.rb +40 -0
- data/lib/finvoice3/invoice_row/row_charge_details.rb +28 -0
- data/lib/finvoice3/invoice_row/row_definition_details/row_definition_header_text.rb +9 -0
- data/lib/finvoice3/invoice_row/row_definition_details.rb +14 -0
- data/lib/finvoice3/invoice_row/row_delivery_details/row_package_details.rb +34 -0
- data/lib/finvoice3/invoice_row/row_delivery_details.rb +97 -0
- data/lib/finvoice3/invoice_row/row_over_due_payment_details.rb +73 -0
- data/lib/finvoice3/invoice_row/row_progressive_discount_details.rb +28 -0
- data/lib/finvoice3/invoice_row/sub_invoice_row/sub_row_any_party_details/sub_row_any_party_postal_address_details.rb +34 -0
- data/lib/finvoice3/invoice_row/sub_invoice_row/sub_row_any_party_details.rb +40 -0
- data/lib/finvoice3/invoice_row/sub_invoice_row/sub_row_definition_details/sub_row_definition_header_text.rb +9 -0
- data/lib/finvoice3/invoice_row/sub_invoice_row/sub_row_definition_details.rb +19 -0
- data/lib/finvoice3/invoice_row/sub_invoice_row/sub_row_delivery_details/sub_row_package_details.rb +34 -0
- data/lib/finvoice3/invoice_row/sub_invoice_row/sub_row_delivery_details.rb +73 -0
- data/lib/finvoice3/invoice_row/sub_invoice_row/sub_row_over_due_payment_details.rb +73 -0
- data/lib/finvoice3/invoice_row/sub_invoice_row/sub_row_progressive_discount_details.rb +28 -0
- data/lib/finvoice3/invoice_row/sub_invoice_row.rb +250 -0
- data/lib/finvoice3/invoice_row/transaction_details.rb +22 -0
- data/lib/finvoice3/invoice_row.rb +255 -0
- data/lib/finvoice3/invoice_sender_party_details.rb +25 -0
- data/lib/finvoice3/invoiced_object_id.rb +13 -0
- data/lib/finvoice3/message_transmission_details/message_details.rb +29 -0
- data/lib/finvoice3/message_transmission_details/message_receiver_details.rb +19 -0
- data/lib/finvoice3/message_transmission_details/message_sender_details.rb +19 -0
- data/lib/finvoice3/message_transmission_details.rb +22 -0
- data/lib/finvoice3/original_invoice_reference.rb +19 -0
- data/lib/finvoice3/partial_payment_details.rb +43 -0
- data/lib/finvoice3/party_identifier.rb +17 -0
- data/lib/finvoice3/party_legal_reg_id.rb +13 -0
- data/lib/finvoice3/payment_card_info.rb +19 -0
- data/lib/finvoice3/payment_status_details/payment_status_code.rb +5 -0
- data/lib/finvoice3/payment_status_details.rb +19 -0
- data/lib/finvoice3/seller_communication_details.rb +19 -0
- data/lib/finvoice3/seller_information_details/invoice_recipient_details.rb +19 -0
- data/lib/finvoice3/seller_information_details/seller_account_details/seller_account_id.rb +15 -0
- data/lib/finvoice3/seller_information_details/seller_account_details/seller_bic.rb +14 -0
- data/lib/finvoice3/seller_information_details/seller_account_details.rb +22 -0
- data/lib/finvoice3/seller_information_details/seller_official_postal_address_details.rb +31 -0
- data/lib/finvoice3/seller_information_details.rb +61 -0
- data/lib/finvoice3/seller_party_details/seller_postal_address_details.rb +32 -0
- data/lib/finvoice3/seller_party_details.rb +46 -0
- data/lib/finvoice3/soap_envelope.rb +82 -0
- data/lib/finvoice3/specification_details/external_specification_details.rb +5 -0
- data/lib/finvoice3/specification_details.rb +19 -0
- data/lib/finvoice3/tag/complex.rb +22 -0
- data/lib/finvoice3/tag/simple.rb +13 -0
- data/lib/finvoice3/tag.rb +27 -0
- data/lib/finvoice3/templates/fi_b2b.rb +232 -0
- data/lib/finvoice3/vat_category_code.rb +4 -0
- data/lib/finvoice3/version.rb +5 -0
- data/lib/finvoice3.rb +135 -0
- metadata +225 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::RowDefinitionDetails < Tag::Complex
|
|
3
|
+
attr_accessor :row_definition_header_text
|
|
4
|
+
|
|
5
|
+
def initialize
|
|
6
|
+
super
|
|
7
|
+
@row_definition_header_text = RowDefinitionHeaderText.new
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def sub_tags
|
|
11
|
+
[@row_definition_header_text]
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::RowDeliveryDetails::RowPackageDetails < Tag::Complex
|
|
3
|
+
attr_accessor :row_package_length
|
|
4
|
+
attr_accessor :row_package_width
|
|
5
|
+
attr_accessor :row_package_height
|
|
6
|
+
attr_accessor :row_package_weight
|
|
7
|
+
attr_accessor :row_package_net_weight
|
|
8
|
+
attr_accessor :row_package_volume
|
|
9
|
+
attr_accessor :row_transport_carriage_quantity
|
|
10
|
+
|
|
11
|
+
def initialize
|
|
12
|
+
super
|
|
13
|
+
@row_package_length = Tag::Simple.new(name: "RowPackageLength")
|
|
14
|
+
@row_package_width = Tag::Simple.new(name: "RowPackageWidth")
|
|
15
|
+
@row_package_height = Tag::Simple.new(name: "RowPackageHeight")
|
|
16
|
+
@row_package_weight = Tag::Simple.new(name: "RowPackageWeight")
|
|
17
|
+
@row_package_net_weight = Tag::Simple.new(name: "RowPackageNetWeight")
|
|
18
|
+
@row_package_volume = Tag::Simple.new(name: "RowPackageVolume")
|
|
19
|
+
@row_transport_carriage_quantity = Tag::Simple.new(name: "RowTransportCarriageQuantity")
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def sub_tags
|
|
23
|
+
[
|
|
24
|
+
@row_package_length,
|
|
25
|
+
@row_package_width,
|
|
26
|
+
@row_package_height,
|
|
27
|
+
@row_package_weight,
|
|
28
|
+
@row_package_net_weight,
|
|
29
|
+
@row_package_volume,
|
|
30
|
+
@row_transport_carriage_quantity
|
|
31
|
+
]
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::RowDeliveryDetails < Tag::Complex
|
|
3
|
+
attr_accessor :row_terminal_address_text
|
|
4
|
+
attr_accessor :row_waybill_identifier
|
|
5
|
+
attr_accessor :row_waybill_type_code
|
|
6
|
+
attr_accessor :row_clearance_identifier
|
|
7
|
+
attr_accessor :row_delivery_note_identifier
|
|
8
|
+
attr_accessor :row_deliverer_name
|
|
9
|
+
attr_accessor :row_deliverer_country_subdivision
|
|
10
|
+
attr_accessor :row_deliverer_country_code
|
|
11
|
+
attr_accessor :row_deliverer_country_name
|
|
12
|
+
attr_accessor :row_mode_of_transport_identifier
|
|
13
|
+
attr_accessor :row_carrier_name
|
|
14
|
+
attr_accessor :row_vessel_name
|
|
15
|
+
attr_accessor :row_location_identifier
|
|
16
|
+
attr_accessor :row_transport_information_date
|
|
17
|
+
attr_accessor :row_country_of_origin
|
|
18
|
+
attr_accessor :row_country_of_destination_name
|
|
19
|
+
attr_accessor :row_destination_country_code
|
|
20
|
+
attr_accessor :row_place_of_discharge
|
|
21
|
+
attr_accessor :row_final_destination_name
|
|
22
|
+
attr_accessor :row_customs_info
|
|
23
|
+
attr_accessor :row_manufacturer_article_identifier
|
|
24
|
+
attr_accessor :row_manufacturer_identifier
|
|
25
|
+
attr_accessor :row_manufacturer_name
|
|
26
|
+
attr_accessor :row_manufacturer_country_subdivision
|
|
27
|
+
attr_accessor :row_manufacturer_country_code
|
|
28
|
+
attr_accessor :row_manufacturer_country_name
|
|
29
|
+
attr_accessor :row_manufacturer_order_identifier
|
|
30
|
+
attr_accessor :row_package_details
|
|
31
|
+
|
|
32
|
+
def initialize
|
|
33
|
+
super
|
|
34
|
+
@row_terminal_address_text = Tag::Simple.new(name: "RowTerminalAddressText")
|
|
35
|
+
@row_waybill_identifier = Tag::Simple.new(name: "RowWaybillIdentifier")
|
|
36
|
+
@row_waybill_type_code = Tag::Simple.new(name: "RowWaybillTypeCode")
|
|
37
|
+
@row_clearance_identifier = Tag::Simple.new(name: "RowClearanceIdentifier")
|
|
38
|
+
@row_delivery_note_identifier = Tag::Simple.new(name: "RowDeliveryNoteIdentifier")
|
|
39
|
+
@row_deliverer_name = Tag::Simple.new(name: "RowDelivererName")
|
|
40
|
+
@row_deliverer_country_subdivision = Tag::Simple.new(name: "RowDelivererCountrySubdivision")
|
|
41
|
+
@row_deliverer_country_code = CountryCode.new(name: "RowDelivererCountryCode")
|
|
42
|
+
@row_deliverer_country_name = Tag::Simple.new(name: "RowDelivererCountryName")
|
|
43
|
+
@row_mode_of_transport_identifier = Tag::Simple.new(name: "RowModeOfTransportIdentifier")
|
|
44
|
+
@row_carrier_name = Tag::Simple.new(name: "RowCarrierName")
|
|
45
|
+
@row_vessel_name = Tag::Simple.new(name: "RowVesselName")
|
|
46
|
+
@row_location_identifier = Tag::Simple.new(name: "RowLocationIdentifier")
|
|
47
|
+
@row_transport_information_date = Tag::Simple.new(name: "RowTransportInformationDate")
|
|
48
|
+
@row_country_of_origin = Tag::Simple.new(name: "RowCountryOfOrigin")
|
|
49
|
+
@row_country_of_destination_name = Tag::Simple.new(name: "RowCountryOfDestinationName")
|
|
50
|
+
@row_destination_country_code = CountryCode.new(name: "RowDestinationCountryCode")
|
|
51
|
+
@row_place_of_discharge = Tag::Simple.new(name: "RowPlaceOfDischarge")
|
|
52
|
+
@row_final_destination_name = Tag::Simple.new(name: "RowFinalDestinationName")
|
|
53
|
+
@row_customs_info = Finvoice3::InvoiceRow::CustomsInfo.new
|
|
54
|
+
@row_manufacturer_article_identifier = Tag::Simple.new(name: "RowManufacturerArticleIdentifier")
|
|
55
|
+
@row_manufacturer_identifier = Tag::Simple.new(name: "RowManufacturerIdentifier")
|
|
56
|
+
@row_manufacturer_name = Tag::Simple.new(name: "RowManufacturerName")
|
|
57
|
+
@row_manufacturer_country_subdivision = Tag::Simple.new(name: "RowManufacturerCountrySubdivision")
|
|
58
|
+
@row_manufacturer_country_code = CountryCode.new(name: "RowManufacturerCountryCode")
|
|
59
|
+
@row_manufacturer_country_name = Tag::Simple.new(name: "RowManufacturerCountryName")
|
|
60
|
+
@row_manufacturer_order_identifier = Tag::Simple.new(name: "RowManufacturerOrderIdentifier")
|
|
61
|
+
@row_package_details = RowPackageDetails.new
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def sub_tags
|
|
65
|
+
[
|
|
66
|
+
@row_terminal_address_text,
|
|
67
|
+
@row_waybill_identifier,
|
|
68
|
+
@row_waybill_type_code,
|
|
69
|
+
@row_clearance_identifier,
|
|
70
|
+
@row_delivery_note_identifier,
|
|
71
|
+
@row_deliverer_name,
|
|
72
|
+
@row_deliverer_country_subdivision,
|
|
73
|
+
@row_deliverer_country_code,
|
|
74
|
+
@row_deliverer_country_name,
|
|
75
|
+
@row_mode_of_transport_identifier,
|
|
76
|
+
@row_carrier_name,
|
|
77
|
+
@row_vessel_name,
|
|
78
|
+
@row_location_identifier,
|
|
79
|
+
@row_transport_information_date,
|
|
80
|
+
@row_country_of_origin,
|
|
81
|
+
@row_country_of_destination_name,
|
|
82
|
+
@row_destination_country_code,
|
|
83
|
+
@row_place_of_discharge,
|
|
84
|
+
@row_final_destination_name,
|
|
85
|
+
@row_customs_info,
|
|
86
|
+
@row_manufacturer_article_identifier,
|
|
87
|
+
@row_manufacturer_identifier,
|
|
88
|
+
@row_manufacturer_name,
|
|
89
|
+
@row_manufacturer_country_subdivision,
|
|
90
|
+
@row_manufacturer_country_code,
|
|
91
|
+
@row_manufacturer_country_name,
|
|
92
|
+
@row_manufacturer_order_identifier,
|
|
93
|
+
@row_package_details
|
|
94
|
+
]
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::RowOverDuePaymentDetails < Tag::Complex
|
|
3
|
+
attr_accessor :row_original_invoice_identifier
|
|
4
|
+
attr_accessor :row_original_invoice_date
|
|
5
|
+
attr_accessor :row_original_due_date
|
|
6
|
+
attr_accessor :row_original_invoice_total_amount
|
|
7
|
+
attr_accessor :row_original_epi_remittance_info_identifier
|
|
8
|
+
attr_accessor :row_paid_vat_excluded_amount
|
|
9
|
+
attr_accessor :row_paid_vat_included_amount
|
|
10
|
+
attr_accessor :row_paid_date
|
|
11
|
+
attr_accessor :row_un_paid_vat_excluded_amount
|
|
12
|
+
attr_accessor :row_un_paid_vat_included_amount
|
|
13
|
+
attr_accessor :row_collection_date
|
|
14
|
+
attr_accessor :row_collection_quantity
|
|
15
|
+
attr_accessor :row_collection_charge_amount
|
|
16
|
+
attr_accessor :row_interest_rate
|
|
17
|
+
attr_accessor :row_interest_start_date
|
|
18
|
+
attr_accessor :row_interest_end_date
|
|
19
|
+
attr_accessor :row_interest_period_text
|
|
20
|
+
attr_accessor :row_interest_date_number
|
|
21
|
+
attr_accessor :row_interest_charge_amount
|
|
22
|
+
attr_accessor :row_interest_charge_vat_amount
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def initialize
|
|
26
|
+
super
|
|
27
|
+
@row_original_invoice_identifier = Tag::Simple.new(name: "RowOriginalInvoiceIdentifier")
|
|
28
|
+
@row_original_invoice_date = Tag::Simple.new(name: "RowOriginalInvoiceDate")
|
|
29
|
+
@row_original_due_date = Tag::Simple.new(name: "RowOriginalDueDate")
|
|
30
|
+
@row_original_invoice_total_amount = Tag::Simple.new(name: "RowOriginalInvoiceTotalAmount")
|
|
31
|
+
@row_original_epi_remittance_info_identifier = Tag::Simple.new(name: "RowOriginalEpiRemittanceInfoIdentifier")
|
|
32
|
+
@row_paid_vat_excluded_amount = Tag::Simple.new(name: "RowPaidVatExcludedAmount")
|
|
33
|
+
@row_paid_vat_included_amount = Tag::Simple.new(name: "RowPaidVatIncludedAmount")
|
|
34
|
+
@row_paid_date = Tag::Simple.new(name: "RowPaidDate")
|
|
35
|
+
@row_un_paid_vat_excluded_amount = Tag::Simple.new(name: "RowUnPaidVatExcludedAmount")
|
|
36
|
+
@row_un_paid_vat_included_amount = Tag::Simple.new(name: "RowUnPaidVatIncludedAmount")
|
|
37
|
+
@row_collection_date = Tag::Simple.new(name: "RowCollectionDate")
|
|
38
|
+
@row_collection_quantity = Tag::Simple.new(name: "RowCollectionuQuantity")
|
|
39
|
+
@row_collection_charge_amount = Tag::Simple.new(name: "RowCollectionChargeAmount")
|
|
40
|
+
@row_interest_rate = Tag::Simple.new(name: "RowInterestRate")
|
|
41
|
+
@row_interest_start_date = Tag::Simple.new(name: "RowInterestStartDate")
|
|
42
|
+
@row_interest_end_date = Tag::Simple.new(name: "RowInterestEndDate")
|
|
43
|
+
@row_interest_period_text = Tag::Simple.new(name: "RowInterestPeriodText")
|
|
44
|
+
@row_interest_date_number = Tag::Simple.new(name: "RowInterestDateNumber")
|
|
45
|
+
@row_interest_charge_amount = Tag::Simple.new(name: "RowInterestChargeAmount")
|
|
46
|
+
@row_interest_charge_vat_amount = Tag::Simple.new(name: "RowInterestChargeVatAmount")
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def sub_tags
|
|
50
|
+
[
|
|
51
|
+
@row_original_invoice_identifier,
|
|
52
|
+
@row_original_invoice_date,
|
|
53
|
+
@row_original_due_date,
|
|
54
|
+
@row_original_invoice_total_amount,
|
|
55
|
+
@row_original_epi_remittance_info_identifier,
|
|
56
|
+
@row_paid_vat_excluded_amount,
|
|
57
|
+
@row_paid_vat_included_amount,
|
|
58
|
+
@row_paid_date,
|
|
59
|
+
@row_un_paid_vat_excluded_amount,
|
|
60
|
+
@row_un_paid_vat_included_amount,
|
|
61
|
+
@row_collection_date,
|
|
62
|
+
@row_collection_quantity,
|
|
63
|
+
@row_collection_charge_amount,
|
|
64
|
+
@row_interest_rate,
|
|
65
|
+
@row_interest_start_date,
|
|
66
|
+
@row_interest_end_date,
|
|
67
|
+
@row_interest_period_text,
|
|
68
|
+
@row_interest_date_number,
|
|
69
|
+
@row_interest_charge_amount,
|
|
70
|
+
@row_interest_charge_vat_amount
|
|
71
|
+
]
|
|
72
|
+
end
|
|
73
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::RowProgressiveDiscountDetails < Tag::Complex
|
|
3
|
+
attr_accessor :row_discount_percent
|
|
4
|
+
attr_accessor :row_discount_amount
|
|
5
|
+
attr_accessor :row_discount_base_amount
|
|
6
|
+
attr_accessor :row_discount_type_code
|
|
7
|
+
attr_accessor :row_discount_type_text
|
|
8
|
+
|
|
9
|
+
def initialize
|
|
10
|
+
super
|
|
11
|
+
@row_discount_percent = Tag::Simple.new(name: "RowDiscountPercent")
|
|
12
|
+
@row_discount_amount = Tag::Simple.new(name: "RowDiscountAmount")
|
|
13
|
+
@row_discount_base_amount = Tag::Simple.new(name: "RowDiscountBaseAmount")
|
|
14
|
+
@row_discount_type_code = Tag::Simple.new(name: "RowDiscountTypeCode")
|
|
15
|
+
@row_discount_type_text = Tag::Simple.new(name: "RowDiscountTypeText")
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def sub_tags
|
|
19
|
+
[
|
|
20
|
+
@row_discount_percent,
|
|
21
|
+
@row_discount_amount,
|
|
22
|
+
@row_discount_base_amount,
|
|
23
|
+
@row_discount_type_code,
|
|
24
|
+
@row_discount_type_text
|
|
25
|
+
]
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::SubInvoiceRow::SubRowAnyPartyDetails::SubRowAnyPartyPostalAddressDetails < Tag::Complex
|
|
3
|
+
attr_accessor :sub_row_any_party_street_name
|
|
4
|
+
attr_accessor :sub_row_any_party_town_name
|
|
5
|
+
attr_accessor :sub_row_any_party_post_code_identifier
|
|
6
|
+
attr_accessor :sub_row_any_party_country_subdivision
|
|
7
|
+
attr_accessor :country_code
|
|
8
|
+
attr_accessor :country_name
|
|
9
|
+
attr_accessor :sub_row_any_party_post_office_box_identifier
|
|
10
|
+
|
|
11
|
+
def initialize
|
|
12
|
+
super
|
|
13
|
+
@sub_row_any_party_street_name = Tag::Simple.new(name: "SubRowAnyPartyStreetName")
|
|
14
|
+
@sub_row_any_party_town_name = Tag::Simple.new(name: "SubRowAnyPartyTownName")
|
|
15
|
+
@sub_row_any_party_post_code_identifier = Tag::Simple.new(name: "SubRowAnyPartyPostCodeIdentifier")
|
|
16
|
+
@sub_row_any_party_country_subdivision = Tag::Simple.new(name: "SubRowAnyPartyCountrySubdivision")
|
|
17
|
+
@country_code = CountryCode.new
|
|
18
|
+
@country_name = Tag::Simple.new(name: "CountryName")
|
|
19
|
+
@sub_row_any_party_post_office_box_identifier = Tag::Simple.new(name: "SubRowAnyPartyPostOfficeBoxIdentifier")
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def sub_tags
|
|
23
|
+
[
|
|
24
|
+
@sub_row_any_party_street_name,
|
|
25
|
+
@sub_row_any_party_town_name,
|
|
26
|
+
@sub_row_any_party_post_code_identifier,
|
|
27
|
+
@sub_row_any_party_country_subdivision,
|
|
28
|
+
@country_code,
|
|
29
|
+
@country_name,
|
|
30
|
+
@sub_row_any_party_post_office_box_identifier
|
|
31
|
+
]
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::SubInvoiceRow::SubRowAnyPartyDetails < Tag::Complex
|
|
3
|
+
attr_accessor :sub_row_any_party_text
|
|
4
|
+
attr_accessor :sub_row_any_party_identifier
|
|
5
|
+
attr_accessor :sub_row_any_party_organisation_name
|
|
6
|
+
attr_accessor :sub_row_any_party_organisation_department
|
|
7
|
+
attr_accessor :sub_row_any_party_organisation_tax_code
|
|
8
|
+
attr_accessor :sub_row_any_party_code
|
|
9
|
+
attr_accessor :sub_row_any_party_postal_address_details
|
|
10
|
+
attr_accessor :sub_row_any_party_organisation_unit_number
|
|
11
|
+
attr_accessor :sub_row_any_party_site_code
|
|
12
|
+
|
|
13
|
+
def index
|
|
14
|
+
super
|
|
15
|
+
@sub_row_any_party_text = Tag::Simple.new(name: "SubRowAnyPartyText")
|
|
16
|
+
@sub_row_any_party_identifier = PartyLegalRegId.new(name: "SubRowAnyPartyIdentifier")
|
|
17
|
+
@sub_row_any_party_organisation_name = Tag::Simple.new(name: "SubRowAnyPartyOrganisationName")
|
|
18
|
+
@sub_row_any_party_organisation_department = Tag::Simple.new(name: "SubRowAnyPartyOrganisationDepartment")
|
|
19
|
+
@sub_row_any_party_organisation_tax_code = Tag::Simple.new(name: "SubRowAnyPartyOrganisationTaxCode")
|
|
20
|
+
@sub_row_any_party_code = PartyIdentifier.new(name: "SubRowAnyPartyCode")
|
|
21
|
+
@sub_row_any_party_postal_address_details = SubRowAnyPartyPostalAddressDetails.new
|
|
22
|
+
@sub_row_any_party_organisation_unit_number = Tag::Simple.new(name: "SubRowAnyPartyOrganisationUnitNumber")
|
|
23
|
+
@sub_row_any_party_site_code = Tag::Simple.new(name: "SubRowAnyPartySiteCode")
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def sub_tags
|
|
27
|
+
[
|
|
28
|
+
@sub_row_any_party_text,
|
|
29
|
+
@sub_row_any_party_identifier,
|
|
30
|
+
@sub_row_any_party_organisation_name,
|
|
31
|
+
@sub_row_any_party_organisation_department,
|
|
32
|
+
@sub_row_any_party_organisation_tax_code,
|
|
33
|
+
@sub_row_any_party_code,
|
|
34
|
+
@sub_row_any_party_postal_address_details,
|
|
35
|
+
@sub_row_any_party_organisation_unit_number,
|
|
36
|
+
@sub_row_any_party_site_code
|
|
37
|
+
]
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::SubInvoiceRow::SubRowDefinitionDetails < Tag::Complex
|
|
3
|
+
attr_accessor :sub_row_definition_header_text
|
|
4
|
+
attr_accessor :sub_row_definition_value
|
|
5
|
+
|
|
6
|
+
def initialize
|
|
7
|
+
super
|
|
8
|
+
@sub_row_definition_header_text = SubRowDefinitionHeaderText.new
|
|
9
|
+
@sub_row_definition_value = Tag::Simple.new(name: "SubRowDefinitionValue")
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def sub_tags
|
|
13
|
+
[
|
|
14
|
+
@sub_row_definition_header_text,
|
|
15
|
+
@sub_row_definition_value
|
|
16
|
+
]
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
data/lib/finvoice3/invoice_row/sub_invoice_row/sub_row_delivery_details/sub_row_package_details.rb
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::SubInvoiceRow::SubRowDeliveryDetails::SubRowPackageDetails < Tag::Complex
|
|
3
|
+
attr_accessor :sub_row_package_length
|
|
4
|
+
attr_accessor :sub_row_package_width
|
|
5
|
+
attr_accessor :sub_row_package_height
|
|
6
|
+
attr_accessor :sub_row_package_weight
|
|
7
|
+
attr_accessor :sub_row_package_net_weight
|
|
8
|
+
attr_accessor :sub_row_package_volume
|
|
9
|
+
attr_accessor :sub_row_transport_carriage_quantity
|
|
10
|
+
|
|
11
|
+
def index
|
|
12
|
+
super
|
|
13
|
+
@sub_row_package_length = Tag::Simple.new(name: "SubRowPackageLength")
|
|
14
|
+
@sub_row_package_width = Tag::Simple.new(name: "SubRowPackageWidth")
|
|
15
|
+
@sub_row_package_height = Tag::Simple.new(name: "SubRowPackageHeight")
|
|
16
|
+
@sub_row_package_weight = Tag::Simple.new(name: "SubRowPackageWeight")
|
|
17
|
+
@sub_row_package_net_weight = Tag::Simple.new(name: "SubRowPackageNetWeight")
|
|
18
|
+
@sub_row_package_volume = Tag::Simple.new(name: "SubRowPackageVolume")
|
|
19
|
+
@sub_row_transport_carriage_quantity = Tag::Simple.new(name: "SubRowTransportCarriageQuantity")
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def sub_tags
|
|
23
|
+
[
|
|
24
|
+
@sub_row_package_length,
|
|
25
|
+
@sub_row_package_width,
|
|
26
|
+
@sub_row_package_height,
|
|
27
|
+
@sub_row_package_weight,
|
|
28
|
+
@sub_row_package_net_weight,
|
|
29
|
+
@sub_row_package_volume,
|
|
30
|
+
@sub_row_transport_carriage_quantity
|
|
31
|
+
]
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::SubInvoiceRow::SubRowDeliveryDetails < Tag::Complex
|
|
3
|
+
attr_accessor :sub_row_terminal_address_text
|
|
4
|
+
attr_accessor :sub_row_waybill_identifier
|
|
5
|
+
attr_accessor :sub_row_waybill_type_code
|
|
6
|
+
attr_accessor :sub_row_clearance_identifier
|
|
7
|
+
attr_accessor :sub_row_delivery_note_identifier
|
|
8
|
+
attr_accessor :sub_row_deliverer_name
|
|
9
|
+
attr_accessor :sub_row_deliverer_country_subdivision
|
|
10
|
+
attr_accessor :sub_row_deliverer_country_code
|
|
11
|
+
attr_accessor :sub_row_deliverer_country_name
|
|
12
|
+
attr_accessor :sub_row_place_of_discharge
|
|
13
|
+
attr_accessor :sub_row_final_destination_name
|
|
14
|
+
attr_accessor :sub_row_customs_info
|
|
15
|
+
attr_accessor :sub_row_manufacturer_article_identifier
|
|
16
|
+
attr_accessor :sub_row_manufacturer_identifier
|
|
17
|
+
attr_accessor :sub_row_manufacturer_name
|
|
18
|
+
attr_accessor :sub_row_manufacturer_country_subdivision
|
|
19
|
+
attr_accessor :sub_row_manufacturer_country_code
|
|
20
|
+
attr_accessor :sub_row_manufacturer_country_name
|
|
21
|
+
attr_accessor :sub_row_manufacturer_order_identifier
|
|
22
|
+
attr_accessor :sub_row_package_details
|
|
23
|
+
|
|
24
|
+
def initialize
|
|
25
|
+
super
|
|
26
|
+
@sub_row_terminal_address_text = Tag::Simple.new(name: "SubRowTerminalAddressText")
|
|
27
|
+
@sub_row_waybill_identifier = Tag::Simple.new(name: "SubRowWaybillIdentifier")
|
|
28
|
+
@sub_row_waybill_type_code = Tag::Simple.new(name: "SubRowWaybillTypeCode")
|
|
29
|
+
@sub_row_clearance_identifier = Tag::Simple.new(name: "SubRowClearanceIdentifier")
|
|
30
|
+
@sub_row_delivery_note_identifier = Tag::Simple.new(name: "SubRowDeliveryNoteIdentifier")
|
|
31
|
+
@sub_row_deliverer_name = Tag::Simple.new(name: "SubRowDelivererName")
|
|
32
|
+
@sub_row_deliverer_country_subdivision = Tag::Simple.new(name: "SubRowDelivererCountrySubdivision")
|
|
33
|
+
@sub_row_deliverer_country_code = CountryCode.new(name: "SubRowDelivererCountryCode")
|
|
34
|
+
@sub_row_deliverer_country_name = Tag::Simple.new(name: "SubRowDelivererCountryName")
|
|
35
|
+
@sub_row_place_of_discharge = Tag::Simple.new(name: "SubRowPlaceOfDischarge")
|
|
36
|
+
@sub_row_final_destination_name = Tag::Simple.new(name: "SubRowFinalDestinationName")
|
|
37
|
+
@sub_row_customs_info = Finvoice3::InvoiceRow::CustomsInfo.new(name: "SubRowCustomsInfo")
|
|
38
|
+
@sub_row_manufacturer_article_identifier = Tag::Simple.new(name: "SubRowManufacturerArticleIdentifier")
|
|
39
|
+
@sub_row_manufacturer_identifier = Tag::Simple.new(name: "SubRowManufacturerIdentifier")
|
|
40
|
+
@sub_row_manufacturer_name = Tag::Simple.new(name: "SubRowManufacturerName")
|
|
41
|
+
@sub_row_manufacturer_country_subdivision = Tag::Simple.new(name: "SubRowManufacturerCountrySubdivision")
|
|
42
|
+
@sub_row_manufacturer_country_code = CountryCode.new(name: "SubRowManufacturerCountryCode")
|
|
43
|
+
@sub_row_manufacturer_country_name = Tag::Simple.new(name: "SubRowManufacturerCountryName")
|
|
44
|
+
@sub_row_manufacturer_order_identifier = Tag::Simple.new(name: "SubRowManufacturerOrderIdentifier")
|
|
45
|
+
@sub_row_package_details = SubRowPackageDetails.new
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def sub_tags
|
|
49
|
+
[
|
|
50
|
+
@sub_row_terminal_address_text,
|
|
51
|
+
@sub_row_waybill_identifier,
|
|
52
|
+
@sub_row_waybill_type_code,
|
|
53
|
+
@sub_row_clearance_identifier,
|
|
54
|
+
@sub_row_delivery_note_identifier,
|
|
55
|
+
@sub_row_deliverer_name,
|
|
56
|
+
@sub_row_deliverer_country_subdivision,
|
|
57
|
+
@sub_row_deliverer_country_code,
|
|
58
|
+
@sub_row_deliverer_country_name,
|
|
59
|
+
@sub_row_place_of_discharge,
|
|
60
|
+
@sub_row_final_destination_name,
|
|
61
|
+
@sub_row_customs_info,
|
|
62
|
+
@sub_row_manufacturer_article_identifier,
|
|
63
|
+
@sub_row_manufacturer_identifier,
|
|
64
|
+
@sub_row_manufacturer_name,
|
|
65
|
+
@sub_row_manufacturer_country_subdivision,
|
|
66
|
+
@sub_row_manufacturer_country_code,
|
|
67
|
+
@sub_row_manufacturer_country_name,
|
|
68
|
+
@sub_row_manufacturer_order_identifier,
|
|
69
|
+
@sub_row_package_details
|
|
70
|
+
]
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::SubInvoiceRow::SubRowOverDuePaymentDetails < Tag::Complex
|
|
3
|
+
attr_accessor :sub_row_original_invoice_identifier
|
|
4
|
+
attr_accessor :sub_row_original_invoice_date
|
|
5
|
+
attr_accessor :sub_row_original_due_date
|
|
6
|
+
attr_accessor :sub_row_original_invoice_total_amount
|
|
7
|
+
attr_accessor :sub_row_original_epi_remittance_info_identifier
|
|
8
|
+
attr_accessor :sub_row_paid_vat_excluded_amount
|
|
9
|
+
attr_accessor :sub_row_paid_vat_incldued_amount
|
|
10
|
+
attr_accessor :sub_row_paid_date
|
|
11
|
+
attr_accessor :sub_row_un_paid_vat_excluded_amount
|
|
12
|
+
attr_accessor :sub_row_un_paid_vat_included_amount
|
|
13
|
+
attr_accessor :sub_row_collection_date
|
|
14
|
+
attr_accessor :sub_row_collection_quantity
|
|
15
|
+
attr_accessor :sub_row_collection_charge_amount
|
|
16
|
+
attr_accessor :sub_row_interest_rate
|
|
17
|
+
attr_accessor :sub_row_interest_start_date
|
|
18
|
+
attr_accessor :sub_row_interest_end_date
|
|
19
|
+
attr_accessor :sub_row_interest_period_text
|
|
20
|
+
attr_accessor :sub_row_interest_date_number
|
|
21
|
+
attr_accessor :sub_row_interest_charge_amount
|
|
22
|
+
attr_accessor :sub_row_interest_charge_vat_amount
|
|
23
|
+
|
|
24
|
+
def index
|
|
25
|
+
super
|
|
26
|
+
@sub_row_original_invoice_identifier = Tag::Simple.new(name: "SubRowOriginalInvoiceIdentifier")
|
|
27
|
+
@sub_row_original_invoice_date = Tag::Simple.new(name: "SubRowOriginalInvoiceDate")
|
|
28
|
+
@sub_row_original_due_date = Tag::Simple.new(name: "SubRowOriginalDueDate")
|
|
29
|
+
@sub_row_original_invoice_total_amount = Tag::Simple.new(name: "SubRowOriginalInvoiceTotalAmount")
|
|
30
|
+
@sub_row_original_epi_remittance_info_identifier = Tag::Simple.new(name: "SubRowOriginalEpiRemittanceInfoIdentifier")
|
|
31
|
+
@sub_row_paid_vat_excluded_amount = Tag::Simple.new(name: "SubRowPaidVatExcludedAmount")
|
|
32
|
+
@sub_row_paid_vat_incldued_amount = Tag::Simple.new(name: "SubRowPaidVatIncludedAmount")
|
|
33
|
+
@sub_row_paid_date = Tag::Simple.new(name: "SubRowPaidDate")
|
|
34
|
+
@sub_row_un_paid_vat_excluded_amount = Tag::Simple.new(name: "SubRowUnPaidVatExcludedAmount")
|
|
35
|
+
@sub_row_un_paid_vat_included_amount = Tag::Simple.new(name: "SubRowUnPaidVatIncludedAmount")
|
|
36
|
+
@sub_row_collection_date = Tag::Simple.new(name: "SubRowCollectionDate")
|
|
37
|
+
@sub_row_collection_quantity = Tag::Simple.new(name: "SubRowCollectionQuantity")
|
|
38
|
+
@sub_row_collection_charge_amount = Tag::Simple.new(name: "SubRowCollectionChargeAmount")
|
|
39
|
+
@sub_row_interest_rate = Tag::Simple.new(name: "SubRowInterestRate")
|
|
40
|
+
@sub_row_interest_start_date = Tag::Simple.new(name: "SubRowInterestStartDate")
|
|
41
|
+
@sub_row_interest_end_date = Tag::Simple.new(name: "SubRowInterestEndDate")
|
|
42
|
+
@sub_row_interest_period_text = Tag::Simple.new(name: "SubRowInterestPeriodText")
|
|
43
|
+
@sub_row_interest_date_number = Tag::Simple.new(name: "SubRowInterestDateNumber")
|
|
44
|
+
@sub_row_interest_charge_amount = Tag::Simple.new(name: "SubRowInterestChargeAmount")
|
|
45
|
+
@sub_row_interest_charge_vat_amount = Tag::Simple.new(name: "SubRowInterestChargeVatAmount")
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def sub_tags
|
|
49
|
+
[
|
|
50
|
+
@sub_row_original_invoice_identifier,
|
|
51
|
+
@sub_row_original_invoice_date,
|
|
52
|
+
@sub_row_original_due_date,
|
|
53
|
+
@sub_row_original_invoice_total_amount,
|
|
54
|
+
@sub_row_original_epi_remittance_info_identifier,
|
|
55
|
+
@sub_row_paid_vat_excluded_amount,
|
|
56
|
+
@sub_row_paid_vat_incldued_amount,
|
|
57
|
+
@sub_row_paid_date,
|
|
58
|
+
@sub_row_un_paid_vat_excluded_amount,
|
|
59
|
+
@sub_row_un_paid_vat_included_amount,
|
|
60
|
+
@sub_row_collection_date,
|
|
61
|
+
@sub_row_collection_quantity,
|
|
62
|
+
@sub_row_collection_charge_amount,
|
|
63
|
+
@sub_row_interest_rate,
|
|
64
|
+
@sub_row_interest_start_date,
|
|
65
|
+
@sub_row_interest_end_date,
|
|
66
|
+
@sub_row_interest_period_text,
|
|
67
|
+
@sub_row_interest_date_number,
|
|
68
|
+
@sub_row_interest_charge_amount,
|
|
69
|
+
@sub_row_interest_charge_vat_amount
|
|
70
|
+
]
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
module Finvoice3
|
|
2
|
+
class InvoiceRow::SubInvoiceRow::SubRowProgressiveDiscountDetails < Tag::Complex
|
|
3
|
+
attr_accessor :sub_row_discount_percent
|
|
4
|
+
attr_accessor :sub_row_discount_amount
|
|
5
|
+
attr_accessor :sub_row_discount_base_amount
|
|
6
|
+
attr_accessor :sub_row_discount_type_code
|
|
7
|
+
attr_accessor :sub_row_discount_type_text
|
|
8
|
+
|
|
9
|
+
def index
|
|
10
|
+
super
|
|
11
|
+
@sub_row_discount_percent = Tag::Simple.new(name: "SubRowDiscountPercent")
|
|
12
|
+
@sub_row_discount_amount = Tag::Simple.new(name: "SubRowDiscountAmount")
|
|
13
|
+
@sub_row_discount_base_amount = Tag::Simple.new(name: "SubRowDiscountBaseAmount")
|
|
14
|
+
@sub_row_discount_type_code = Tag::Simple.new(name: "SubRowDiscountTypeCode")
|
|
15
|
+
@sub_row_discount_type_text = Tag::Simple.new(name: "SubRowDiscountTypeText")
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def sub_tags
|
|
19
|
+
[
|
|
20
|
+
@sub_row_discount_percent,
|
|
21
|
+
@sub_row_discount_amount,
|
|
22
|
+
@sub_row_discount_base_amount,
|
|
23
|
+
@sub_row_discount_type_code,
|
|
24
|
+
@sub_row_discount_type_text
|
|
25
|
+
]
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|