taxamo 1.0.5

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.
Files changed (82) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/LICENSE +11 -0
  4. data/README.md +120 -0
  5. data/Rakefile +7 -0
  6. data/lib/monkey.rb +90 -0
  7. data/lib/swagger.rb +93 -0
  8. data/lib/swagger/configuration.rb +21 -0
  9. data/lib/swagger/request.rb +198 -0
  10. data/lib/swagger/response.rb +87 -0
  11. data/lib/taxamo.rb +999 -0
  12. data/lib/taxamo/models/additionalcurrencies.rb +62 -0
  13. data/lib/taxamo/models/additionalcurrency.rb +82 -0
  14. data/lib/taxamo/models/bycountry.rb +77 -0
  15. data/lib/taxamo/models/bystatus.rb +69 -0
  16. data/lib/taxamo/models/bytaxationtype.rb +82 -0
  17. data/lib/taxamo/models/c.rb +77 -0
  18. data/lib/taxamo/models/calculatesimpletaxout.rb +62 -0
  19. data/lib/taxamo/models/calculatetaxin.rb +62 -0
  20. data/lib/taxamo/models/calculatetaxlocationout.rb +97 -0
  21. data/lib/taxamo/models/calculatetaxout.rb +62 -0
  22. data/lib/taxamo/models/canceltransactionout.rb +62 -0
  23. data/lib/taxamo/models/capturepaymentout.rb +62 -0
  24. data/lib/taxamo/models/confirmtransactionin.rb +62 -0
  25. data/lib/taxamo/models/confirmtransactionout.rb +62 -0
  26. data/lib/taxamo/models/countries.rb +112 -0
  27. data/lib/taxamo/models/country.rb +114 -0
  28. data/lib/taxamo/models/countryschema.rb +114 -0
  29. data/lib/taxamo/models/createpaymentin.rb +72 -0
  30. data/lib/taxamo/models/createpaymentout.rb +62 -0
  31. data/lib/taxamo/models/createrefundin.rb +77 -0
  32. data/lib/taxamo/models/createrefundout.rb +77 -0
  33. data/lib/taxamo/models/createsmstokenin.rb +67 -0
  34. data/lib/taxamo/models/createsmstokenout.rb +62 -0
  35. data/lib/taxamo/models/createtransactionin.rb +67 -0
  36. data/lib/taxamo/models/createtransactionout.rb +62 -0
  37. data/lib/taxamo/models/currencyschema.rb +82 -0
  38. data/lib/taxamo/models/customfields.rb +67 -0
  39. data/lib/taxamo/models/emailinvoicein.rb +62 -0
  40. data/lib/taxamo/models/emailinvoiceout.rb +62 -0
  41. data/lib/taxamo/models/evidence.rb +112 -0
  42. data/lib/taxamo/models/evidenceschema.rb +77 -0
  43. data/lib/taxamo/models/getcountriesdictout.rb +63 -0
  44. data/lib/taxamo/models/getcurrenciesdictout.rb +63 -0
  45. data/lib/taxamo/models/getdailysettlementstatsout.rb +63 -0
  46. data/lib/taxamo/models/getproducttypesdictout.rb +63 -0
  47. data/lib/taxamo/models/getrefundsout.rb +63 -0
  48. data/lib/taxamo/models/getsettlementout.rb +83 -0
  49. data/lib/taxamo/models/getsettlementstatsbycountryout.rb +63 -0
  50. data/lib/taxamo/models/getsettlementstatsbytaxationtypeout.rb +62 -0
  51. data/lib/taxamo/models/getsettlementsummaryout.rb +62 -0
  52. data/lib/taxamo/models/gettransactionout.rb +62 -0
  53. data/lib/taxamo/models/gettransactionsstatsout.rb +62 -0
  54. data/lib/taxamo/models/inputtransaction.rb +184 -0
  55. data/lib/taxamo/models/inputtransactionline.rb +133 -0
  56. data/lib/taxamo/models/inputtransactionupdate.rb +184 -0
  57. data/lib/taxamo/models/invoiceaddress.rb +97 -0
  58. data/lib/taxamo/models/listpaymentsout.rb +63 -0
  59. data/lib/taxamo/models/listtransactionsout.rb +63 -0
  60. data/lib/taxamo/models/locategivenipout.rb +72 -0
  61. data/lib/taxamo/models/locatemyipout.rb +72 -0
  62. data/lib/taxamo/models/n.rb +77 -0
  63. data/lib/taxamo/models/payments.rb +72 -0
  64. data/lib/taxamo/models/producttypeschema.rb +62 -0
  65. data/lib/taxamo/models/report.rb +92 -0
  66. data/lib/taxamo/models/settlementdailystatsschema.rb +102 -0
  67. data/lib/taxamo/models/summary.rb +87 -0
  68. data/lib/taxamo/models/transaction.rb +279 -0
  69. data/lib/taxamo/models/transactionlines.rb +163 -0
  70. data/lib/taxamo/models/transactions.rb +279 -0
  71. data/lib/taxamo/models/unconfirmtransactionin.rb +62 -0
  72. data/lib/taxamo/models/unconfirmtransactionout.rb +62 -0
  73. data/lib/taxamo/models/updatetransactionin.rb +62 -0
  74. data/lib/taxamo/models/updatetransactionout.rb +62 -0
  75. data/lib/taxamo/models/validatetaxnumberout.rb +77 -0
  76. data/lib/taxamo/models/verifysmstokenout.rb +62 -0
  77. data/lib/taxamo/version.rb +17 -0
  78. data/taxamo.gemspec +31 -0
  79. data/test/taxamo/connectivity_test.rb +55 -0
  80. data/test/taxamo/tax_test.rb +147 -0
  81. data/test/taxamo/transactions_api_test.rb +308 -0
  82. metadata +226 -0
@@ -0,0 +1,82 @@
1
+ # Copyright 2014-2015 Taxamo, Ltd.
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at [apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ class CurrencySchema
14
+ attr_accessor :code, :minorunits, :description, :isocode, :isonum
15
+
16
+ # :internal => :external
17
+ def self.attribute_map
18
+ {
19
+ :code => :code,
20
+ :minorunits => :minorunits,
21
+ :description => :description,
22
+ :isocode => :isocode,
23
+ :isonum => :isonum
24
+
25
+ }
26
+ end
27
+
28
+ def initialize(attributes = {})
29
+ return if attributes.empty?
30
+ # Morph attribute keys into undescored rubyish style
31
+ if attributes["code"]
32
+ @code = attributes["code"]
33
+
34
+ end
35
+ if attributes["minorunits"]
36
+ @minorunits = attributes["minorunits"]
37
+
38
+ end
39
+ if attributes["description"]
40
+ @description = attributes["description"]
41
+
42
+ end
43
+ if attributes["isocode"]
44
+ @isocode = attributes["isocode"]
45
+
46
+ end
47
+ if attributes["isonum"]
48
+ @isonum = attributes["isonum"]
49
+
50
+ end
51
+
52
+
53
+ end
54
+
55
+ def to_body
56
+ body = {}
57
+ self.class.attribute_map.each_pair do |key, value|
58
+ v = self.send(key)
59
+ unless v.nil?
60
+ if v.is_a?(Array)
61
+ array = Array.new
62
+ v.each do |item|
63
+ if item.respond_to?("to_body".to_sym)
64
+ array.push item.to_body
65
+ else
66
+ array.push item
67
+ end
68
+ end
69
+ body[value] = array
70
+ else
71
+ if v.respond_to?("to_body".to_sym)
72
+ body[value] = v.to_body
73
+ else
74
+ body[value] = v
75
+ end
76
+ end
77
+ end
78
+ end
79
+ body
80
+ end
81
+ end
82
+
@@ -0,0 +1,67 @@
1
+ # Copyright 2014-2015 Taxamo, Ltd.
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at [apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ class CustomFields
14
+ attr_accessor :key, :value
15
+
16
+ # :internal => :external
17
+ def self.attribute_map
18
+ {
19
+ :key => :key,
20
+ :value => :value
21
+
22
+ }
23
+ end
24
+
25
+ def initialize(attributes = {})
26
+ return if attributes.empty?
27
+ # Morph attribute keys into undescored rubyish style
28
+ if attributes["key"]
29
+ @key = attributes["key"]
30
+
31
+ end
32
+ if attributes["value"]
33
+ @value = attributes["value"]
34
+
35
+ end
36
+
37
+
38
+ end
39
+
40
+ def to_body
41
+ body = {}
42
+ self.class.attribute_map.each_pair do |key, value|
43
+ v = self.send(key)
44
+ unless v.nil?
45
+ if v.is_a?(Array)
46
+ array = Array.new
47
+ v.each do |item|
48
+ if item.respond_to?("to_body".to_sym)
49
+ array.push item.to_body
50
+ else
51
+ array.push item
52
+ end
53
+ end
54
+ body[value] = array
55
+ else
56
+ if v.respond_to?("to_body".to_sym)
57
+ body[value] = v.to_body
58
+ else
59
+ body[value] = v
60
+ end
61
+ end
62
+ end
63
+ end
64
+ body
65
+ end
66
+ end
67
+
@@ -0,0 +1,62 @@
1
+ # Copyright 2014-2015 Taxamo, Ltd.
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at [apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ class EmailInvoiceIn
14
+ attr_accessor :buyer_email
15
+
16
+ # :internal => :external
17
+ def self.attribute_map
18
+ {
19
+ :buyer_email => :buyer_email
20
+
21
+ }
22
+ end
23
+
24
+ def initialize(attributes = {})
25
+ return if attributes.empty?
26
+ # Morph attribute keys into undescored rubyish style
27
+ if attributes["buyer_email"]
28
+ @buyer_email = attributes["buyer_email"]
29
+
30
+ end
31
+
32
+
33
+ end
34
+
35
+ def to_body
36
+ body = {}
37
+ self.class.attribute_map.each_pair do |key, value|
38
+ v = self.send(key)
39
+ unless v.nil?
40
+ if v.is_a?(Array)
41
+ array = Array.new
42
+ v.each do |item|
43
+ if item.respond_to?("to_body".to_sym)
44
+ array.push item.to_body
45
+ else
46
+ array.push item
47
+ end
48
+ end
49
+ body[value] = array
50
+ else
51
+ if v.respond_to?("to_body".to_sym)
52
+ body[value] = v.to_body
53
+ else
54
+ body[value] = v
55
+ end
56
+ end
57
+ end
58
+ end
59
+ body
60
+ end
61
+ end
62
+
@@ -0,0 +1,62 @@
1
+ # Copyright 2014-2015 Taxamo, Ltd.
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at [apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ class EmailInvoiceOut
14
+ attr_accessor :success
15
+
16
+ # :internal => :external
17
+ def self.attribute_map
18
+ {
19
+ :success => :success
20
+
21
+ }
22
+ end
23
+
24
+ def initialize(attributes = {})
25
+ return if attributes.empty?
26
+ # Morph attribute keys into undescored rubyish style
27
+ if attributes["success"]
28
+ @success = attributes["success"]
29
+
30
+ end
31
+
32
+
33
+ end
34
+
35
+ def to_body
36
+ body = {}
37
+ self.class.attribute_map.each_pair do |key, value|
38
+ v = self.send(key)
39
+ unless v.nil?
40
+ if v.is_a?(Array)
41
+ array = Array.new
42
+ v.each do |item|
43
+ if item.respond_to?("to_body".to_sym)
44
+ array.push item.to_body
45
+ else
46
+ array.push item
47
+ end
48
+ end
49
+ body[value] = array
50
+ else
51
+ if v.respond_to?("to_body".to_sym)
52
+ body[value] = v.to_body
53
+ else
54
+ body[value] = v
55
+ end
56
+ end
57
+ end
58
+ end
59
+ body
60
+ end
61
+ end
62
+
@@ -0,0 +1,112 @@
1
+ # Copyright 2014-2015 Taxamo, Ltd.
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at [apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ class Evidence
14
+ attr_accessor :by_token, :by_cc, :by_2003_rules, :forced, :by_payment_method, :by_ip, :guessed_from_ip, :other_commercially_relevant_info, :by_billing, :by_tax_number, :self_declaration
15
+
16
+ # :internal => :external
17
+ def self.attribute_map
18
+ {
19
+ :by_token => :by_token,
20
+ :by_cc => :by_cc,
21
+ :by_2003_rules => :by_2003_rules,
22
+ :forced => :forced,
23
+ :by_payment_method => :by_payment_method,
24
+ :by_ip => :by_ip,
25
+ :guessed_from_ip => :guessed_from_ip,
26
+ :other_commercially_relevant_info => :other_commercially_relevant_info,
27
+ :by_billing => :by_billing,
28
+ :by_tax_number => :by_tax_number,
29
+ :self_declaration => :self_declaration
30
+
31
+ }
32
+ end
33
+
34
+ def initialize(attributes = {})
35
+ return if attributes.empty?
36
+ # Morph attribute keys into undescored rubyish style
37
+ if attributes["by_token"]
38
+ @by_token = EvidenceSchema.new(attributes["by_token"])
39
+
40
+ end
41
+ if attributes["by_cc"]
42
+ @by_cc = EvidenceSchema.new(attributes["by_cc"])
43
+
44
+ end
45
+ if attributes["by_2003_rules"]
46
+ @by_2003_rules = EvidenceSchema.new(attributes["by_2003_rules"])
47
+
48
+ end
49
+ if attributes["forced"]
50
+ @forced = EvidenceSchema.new(attributes["forced"])
51
+
52
+ end
53
+ if attributes["by_payment_method"]
54
+ @by_payment_method = EvidenceSchema.new(attributes["by_payment_method"])
55
+
56
+ end
57
+ if attributes["by_ip"]
58
+ @by_ip = EvidenceSchema.new(attributes["by_ip"])
59
+
60
+ end
61
+ if attributes["guessed_from_ip"]
62
+ @guessed_from_ip = EvidenceSchema.new(attributes["guessed_from_ip"])
63
+
64
+ end
65
+ if attributes["other_commercially_relevant_info"]
66
+ @other_commercially_relevant_info = EvidenceSchema.new(attributes["other_commercially_relevant_info"])
67
+
68
+ end
69
+ if attributes["by_billing"]
70
+ @by_billing = EvidenceSchema.new(attributes["by_billing"])
71
+
72
+ end
73
+ if attributes["by_tax_number"]
74
+ @by_tax_number = EvidenceSchema.new(attributes["by_tax_number"])
75
+
76
+ end
77
+ if attributes["self_declaration"]
78
+ @self_declaration = EvidenceSchema.new(attributes["self_declaration"])
79
+
80
+ end
81
+
82
+
83
+ end
84
+
85
+ def to_body
86
+ body = {}
87
+ self.class.attribute_map.each_pair do |key, value|
88
+ v = self.send(key)
89
+ unless v.nil?
90
+ if v.is_a?(Array)
91
+ array = Array.new
92
+ v.each do |item|
93
+ if item.respond_to?("to_body".to_sym)
94
+ array.push item.to_body
95
+ else
96
+ array.push item
97
+ end
98
+ end
99
+ body[value] = array
100
+ else
101
+ if v.respond_to?("to_body".to_sym)
102
+ body[value] = v.to_body
103
+ else
104
+ body[value] = v
105
+ end
106
+ end
107
+ end
108
+ end
109
+ body
110
+ end
111
+ end
112
+
@@ -0,0 +1,77 @@
1
+ # Copyright 2014-2015 Taxamo, Ltd.
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at [apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ class EvidenceSchema
14
+ attr_accessor :used, :resolved_country_code, :evidence_type, :evidence_value
15
+
16
+ # :internal => :external
17
+ def self.attribute_map
18
+ {
19
+ :used => :used,
20
+ :resolved_country_code => :resolved_country_code,
21
+ :evidence_type => :evidence_type,
22
+ :evidence_value => :evidence_value
23
+
24
+ }
25
+ end
26
+
27
+ def initialize(attributes = {})
28
+ return if attributes.empty?
29
+ # Morph attribute keys into undescored rubyish style
30
+ if attributes["used"]
31
+ @used = attributes["used"]
32
+
33
+ end
34
+ if attributes["resolved_country_code"]
35
+ @resolved_country_code = attributes["resolved_country_code"]
36
+
37
+ end
38
+ if attributes["evidence_type"]
39
+ @evidence_type = attributes["evidence_type"]
40
+
41
+ end
42
+ if attributes["evidence_value"]
43
+ @evidence_value = attributes["evidence_value"]
44
+
45
+ end
46
+
47
+
48
+ end
49
+
50
+ def to_body
51
+ body = {}
52
+ self.class.attribute_map.each_pair do |key, value|
53
+ v = self.send(key)
54
+ unless v.nil?
55
+ if v.is_a?(Array)
56
+ array = Array.new
57
+ v.each do |item|
58
+ if item.respond_to?("to_body".to_sym)
59
+ array.push item.to_body
60
+ else
61
+ array.push item
62
+ end
63
+ end
64
+ body[value] = array
65
+ else
66
+ if v.respond_to?("to_body".to_sym)
67
+ body[value] = v.to_body
68
+ else
69
+ body[value] = v
70
+ end
71
+ end
72
+ end
73
+ end
74
+ body
75
+ end
76
+ end
77
+