twinfieldrb 0.3.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/.github/workflows/codeql-analysis.yml +70 -0
- data/.github/workflows/rspec.yml +33 -0
- data/.gitignore +6 -0
- data/.rspec +1 -0
- data/CHANGELOG.md +15 -0
- data/Gemfile +4 -0
- data/README.md +120 -0
- data/Rakefile +1 -0
- data/lib/twinfield/abstract_model.rb +7 -0
- data/lib/twinfield/api/base_api.rb +50 -0
- data/lib/twinfield/api/finder.rb +45 -0
- data/lib/twinfield/api/o_auth_session.rb +58 -0
- data/lib/twinfield/api/process.rb +44 -0
- data/lib/twinfield/api/session.rb +170 -0
- data/lib/twinfield/browse/transaction/cost_center.rb +145 -0
- data/lib/twinfield/browse/transaction/customer.rb +413 -0
- data/lib/twinfield/browse/transaction/general_ledger.rb +144 -0
- data/lib/twinfield/configuration.rb +49 -0
- data/lib/twinfield/create/cost_center.rb +39 -0
- data/lib/twinfield/create/creditor.rb +88 -0
- data/lib/twinfield/create/debtor.rb +88 -0
- data/lib/twinfield/create/error.rb +30 -0
- data/lib/twinfield/create/general_ledger.rb +39 -0
- data/lib/twinfield/create/transaction.rb +97 -0
- data/lib/twinfield/customer.rb +612 -0
- data/lib/twinfield/helpers/parsers.rb +23 -0
- data/lib/twinfield/helpers/transaction_match.rb +40 -0
- data/lib/twinfield/request/find.rb +149 -0
- data/lib/twinfield/request/list.rb +66 -0
- data/lib/twinfield/request/read.rb +111 -0
- data/lib/twinfield/sales_invoice.rb +409 -0
- data/lib/twinfield/transaction.rb +112 -0
- data/lib/twinfield/version.rb +5 -0
- data/lib/twinfield.rb +89 -0
- data/script/boot.rb +58 -0
- data/script/console +2 -0
- data/spec/fixtures/cluster/finder/ivt.xml +1 -0
- data/spec/fixtures/cluster/processxml/columns/sales_transactions.xml +312 -0
- data/spec/fixtures/cluster/processxml/customer/create_success.xml +100 -0
- data/spec/fixtures/cluster/processxml/customer/read_success.xml +93 -0
- data/spec/fixtures/cluster/processxml/customer/update_success.xml +1 -0
- data/spec/fixtures/cluster/processxml/invoice/create_error.xml +8 -0
- data/spec/fixtures/cluster/processxml/invoice/create_final_error.xml +67 -0
- data/spec/fixtures/cluster/processxml/invoice/create_success.xml +64 -0
- data/spec/fixtures/cluster/processxml/invoice/read_not_found.xml +1 -0
- data/spec/fixtures/cluster/processxml/invoice/read_success.xml +106 -0
- data/spec/fixtures/cluster/processxml/read/deb.xml +12 -0
- data/spec/fixtures/cluster/processxml/response.xml +8 -0
- data/spec/fixtures/login/session/wsdl.xml +210 -0
- data/spec/spec_helper.rb +17 -0
- data/spec/stubs/finder_stubs.rb +19 -0
- data/spec/stubs/processxml_stubs.rb +41 -0
- data/spec/stubs/session_stubs.rb +28 -0
- data/spec/twinfield/api/oauth_session_spec.rb +37 -0
- data/spec/twinfield/api/process_spec.rb +7 -0
- data/spec/twinfield/browse/transaction/cost_center_spec.rb +60 -0
- data/spec/twinfield/browse/transaction/general_ledger_spec.rb +60 -0
- data/spec/twinfield/browse/transaction/transaction_spec.rb +72 -0
- data/spec/twinfield/config_spec.rb +60 -0
- data/spec/twinfield/customer_spec.rb +326 -0
- data/spec/twinfield/request/find_spec.rb +24 -0
- data/spec/twinfield/request/list_spec.rb +58 -0
- data/spec/twinfield/request/read_spec.rb +26 -0
- data/spec/twinfield/sales_invoice_spec.rb +253 -0
- data/spec/twinfield/session_spec.rb +77 -0
- data/spec/twinfield/transaction_spec.rb +149 -0
- data/twinfieldrb.gemspec +24 -0
- data/wsdls/accounting/finder.wsdl +157 -0
- data/wsdls/accounting/process.wsdl +199 -0
- data/wsdls/accounting/session.wsdl +452 -0
- data/wsdls/accounting2/finder.wsdl +157 -0
- data/wsdls/accounting2/process.wsdl +199 -0
- data/wsdls/api.accounting/finder.wsdl +157 -0
- data/wsdls/api.accounting/process.wsdl +199 -0
- data/wsdls/session.wsdl +210 -0
- data/wsdls/update +10 -0
- metadata +196 -0
data/wsdls/session.wsdl
ADDED
@@ -0,0 +1,210 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://www.twinfield.com/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.twinfield.com/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
|
3
|
+
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Twinfield session web service methods.</wsdl:documentation>
|
4
|
+
<wsdl:types>
|
5
|
+
<s:schema elementFormDefault="qualified" targetNamespace="http://www.twinfield.com/">
|
6
|
+
<s:element name="Logon">
|
7
|
+
<s:complexType>
|
8
|
+
<s:sequence>
|
9
|
+
<s:element minOccurs="0" maxOccurs="1" name="user" type="s:string" />
|
10
|
+
<s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
|
11
|
+
<s:element minOccurs="0" maxOccurs="1" name="organisation" type="s:string" />
|
12
|
+
</s:sequence>
|
13
|
+
</s:complexType>
|
14
|
+
</s:element>
|
15
|
+
<s:element name="LogonResponse">
|
16
|
+
<s:complexType>
|
17
|
+
<s:sequence>
|
18
|
+
<s:element minOccurs="1" maxOccurs="1" name="LogonResult" type="tns:LogonResult" />
|
19
|
+
<s:element minOccurs="1" maxOccurs="1" name="nextAction" type="tns:LogonAction" />
|
20
|
+
<s:element minOccurs="0" maxOccurs="1" name="cluster" type="s:string" />
|
21
|
+
</s:sequence>
|
22
|
+
</s:complexType>
|
23
|
+
</s:element>
|
24
|
+
<s:simpleType name="LogonResult">
|
25
|
+
<s:restriction base="s:string">
|
26
|
+
<s:enumeration value="Ok" />
|
27
|
+
<s:enumeration value="Blocked" />
|
28
|
+
<s:enumeration value="Untrusted" />
|
29
|
+
<s:enumeration value="Invalid" />
|
30
|
+
<s:enumeration value="Deleted" />
|
31
|
+
<s:enumeration value="Disabled" />
|
32
|
+
<s:enumeration value="OrganisationInactive" />
|
33
|
+
<s:enumeration value="ClientInvalid" />
|
34
|
+
<s:enumeration value="Failed" />
|
35
|
+
<s:enumeration value="TokenInvalid" />
|
36
|
+
<s:enumeration value="NoAvailableCompanies" />
|
37
|
+
<s:enumeration value="OAuth2AuthenticationRequired" />
|
38
|
+
</s:restriction>
|
39
|
+
</s:simpleType>
|
40
|
+
<s:simpleType name="LogonAction">
|
41
|
+
<s:restriction base="s:string">
|
42
|
+
<s:enumeration value="None" />
|
43
|
+
<s:enumeration value="SMSLogon" />
|
44
|
+
<s:enumeration value="ChangePassword" />
|
45
|
+
</s:restriction>
|
46
|
+
</s:simpleType>
|
47
|
+
<s:element name="Header" type="tns:Header" />
|
48
|
+
<s:complexType name="Header">
|
49
|
+
<s:sequence>
|
50
|
+
<s:element minOccurs="0" maxOccurs="1" name="SessionID" type="s:string" />
|
51
|
+
<s:element minOccurs="0" maxOccurs="1" name="AccessToken" type="s:string" />
|
52
|
+
</s:sequence>
|
53
|
+
<s:anyAttribute />
|
54
|
+
</s:complexType>
|
55
|
+
<s:element name="OAuthLogon">
|
56
|
+
<s:complexType>
|
57
|
+
<s:sequence>
|
58
|
+
<s:element minOccurs="0" maxOccurs="1" name="clientToken" type="s:string" />
|
59
|
+
<s:element minOccurs="0" maxOccurs="1" name="clientSecret" type="s:string" />
|
60
|
+
<s:element minOccurs="0" maxOccurs="1" name="accessToken" type="s:string" />
|
61
|
+
<s:element minOccurs="0" maxOccurs="1" name="accessSecret" type="s:string" />
|
62
|
+
</s:sequence>
|
63
|
+
</s:complexType>
|
64
|
+
</s:element>
|
65
|
+
<s:element name="OAuthLogonResponse">
|
66
|
+
<s:complexType>
|
67
|
+
<s:sequence>
|
68
|
+
<s:element minOccurs="1" maxOccurs="1" name="OAuthLogonResult" type="tns:LogonResult" />
|
69
|
+
<s:element minOccurs="1" maxOccurs="1" name="nextAction" type="tns:LogonAction" />
|
70
|
+
<s:element minOccurs="0" maxOccurs="1" name="cluster" type="s:string" />
|
71
|
+
</s:sequence>
|
72
|
+
</s:complexType>
|
73
|
+
</s:element>
|
74
|
+
<s:element name="AccessTokenLogon">
|
75
|
+
<s:complexType>
|
76
|
+
<s:sequence>
|
77
|
+
<s:element minOccurs="0" maxOccurs="1" name="accessToken" type="s:string" />
|
78
|
+
</s:sequence>
|
79
|
+
</s:complexType>
|
80
|
+
</s:element>
|
81
|
+
<s:element name="AccessTokenLogonResponse">
|
82
|
+
<s:complexType>
|
83
|
+
<s:sequence>
|
84
|
+
<s:element minOccurs="1" maxOccurs="1" name="AccessTokenLogonResult" type="tns:LogonResult" />
|
85
|
+
<s:element minOccurs="0" maxOccurs="1" name="cluster" type="s:string" />
|
86
|
+
</s:sequence>
|
87
|
+
</s:complexType>
|
88
|
+
</s:element>
|
89
|
+
</s:schema>
|
90
|
+
</wsdl:types>
|
91
|
+
<wsdl:message name="LogonSoapIn">
|
92
|
+
<wsdl:part name="parameters" element="tns:Logon" />
|
93
|
+
</wsdl:message>
|
94
|
+
<wsdl:message name="LogonSoapOut">
|
95
|
+
<wsdl:part name="parameters" element="tns:LogonResponse" />
|
96
|
+
</wsdl:message>
|
97
|
+
<wsdl:message name="LogonHeader">
|
98
|
+
<wsdl:part name="Header" element="tns:Header" />
|
99
|
+
</wsdl:message>
|
100
|
+
<wsdl:message name="OAuthLogonSoapIn">
|
101
|
+
<wsdl:part name="parameters" element="tns:OAuthLogon" />
|
102
|
+
</wsdl:message>
|
103
|
+
<wsdl:message name="OAuthLogonSoapOut">
|
104
|
+
<wsdl:part name="parameters" element="tns:OAuthLogonResponse" />
|
105
|
+
</wsdl:message>
|
106
|
+
<wsdl:message name="OAuthLogonHeader">
|
107
|
+
<wsdl:part name="Header" element="tns:Header" />
|
108
|
+
</wsdl:message>
|
109
|
+
<wsdl:message name="AccessTokenLogonSoapIn">
|
110
|
+
<wsdl:part name="parameters" element="tns:AccessTokenLogon" />
|
111
|
+
</wsdl:message>
|
112
|
+
<wsdl:message name="AccessTokenLogonSoapOut">
|
113
|
+
<wsdl:part name="parameters" element="tns:AccessTokenLogonResponse" />
|
114
|
+
</wsdl:message>
|
115
|
+
<wsdl:message name="AccessTokenLogonHeader">
|
116
|
+
<wsdl:part name="Header" element="tns:Header" />
|
117
|
+
</wsdl:message>
|
118
|
+
<wsdl:portType name="SessionSoap">
|
119
|
+
<wsdl:operation name="Logon">
|
120
|
+
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Logs on with the user credentials.</wsdl:documentation>
|
121
|
+
<wsdl:input message="tns:LogonSoapIn" />
|
122
|
+
<wsdl:output message="tns:LogonSoapOut" />
|
123
|
+
</wsdl:operation>
|
124
|
+
<wsdl:operation name="OAuthLogon">
|
125
|
+
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Logs on with the OAuth credentials.</wsdl:documentation>
|
126
|
+
<wsdl:input message="tns:OAuthLogonSoapIn" />
|
127
|
+
<wsdl:output message="tns:OAuthLogonSoapOut" />
|
128
|
+
</wsdl:operation>
|
129
|
+
<wsdl:operation name="AccessTokenLogon">
|
130
|
+
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Creates session based on passed access token and returns its ID and external cluster URL</wsdl:documentation>
|
131
|
+
<wsdl:input message="tns:AccessTokenLogonSoapIn" />
|
132
|
+
<wsdl:output message="tns:AccessTokenLogonSoapOut" />
|
133
|
+
</wsdl:operation>
|
134
|
+
</wsdl:portType>
|
135
|
+
<wsdl:binding name="SessionSoap" type="tns:SessionSoap">
|
136
|
+
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
|
137
|
+
<wsdl:operation name="Logon">
|
138
|
+
<soap:operation soapAction="http://www.twinfield.com/Logon" style="document" />
|
139
|
+
<wsdl:input>
|
140
|
+
<soap:body use="literal" />
|
141
|
+
</wsdl:input>
|
142
|
+
<wsdl:output>
|
143
|
+
<soap:body use="literal" />
|
144
|
+
<soap:header message="tns:LogonHeader" part="Header" use="literal" />
|
145
|
+
</wsdl:output>
|
146
|
+
</wsdl:operation>
|
147
|
+
<wsdl:operation name="OAuthLogon">
|
148
|
+
<soap:operation soapAction="http://www.twinfield.com/OAuthLogon" style="document" />
|
149
|
+
<wsdl:input>
|
150
|
+
<soap:body use="literal" />
|
151
|
+
</wsdl:input>
|
152
|
+
<wsdl:output>
|
153
|
+
<soap:body use="literal" />
|
154
|
+
<soap:header message="tns:OAuthLogonHeader" part="Header" use="literal" />
|
155
|
+
</wsdl:output>
|
156
|
+
</wsdl:operation>
|
157
|
+
<wsdl:operation name="AccessTokenLogon">
|
158
|
+
<soap:operation soapAction="http://www.twinfield.com/AccessTokenLogon" style="document" />
|
159
|
+
<wsdl:input>
|
160
|
+
<soap:body use="literal" />
|
161
|
+
</wsdl:input>
|
162
|
+
<wsdl:output>
|
163
|
+
<soap:body use="literal" />
|
164
|
+
<soap:header message="tns:AccessTokenLogonHeader" part="Header" use="literal" />
|
165
|
+
</wsdl:output>
|
166
|
+
</wsdl:operation>
|
167
|
+
</wsdl:binding>
|
168
|
+
<wsdl:binding name="SessionSoap12" type="tns:SessionSoap">
|
169
|
+
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
|
170
|
+
<wsdl:operation name="Logon">
|
171
|
+
<soap12:operation soapAction="http://www.twinfield.com/Logon" style="document" />
|
172
|
+
<wsdl:input>
|
173
|
+
<soap12:body use="literal" />
|
174
|
+
</wsdl:input>
|
175
|
+
<wsdl:output>
|
176
|
+
<soap12:body use="literal" />
|
177
|
+
<soap12:header message="tns:LogonHeader" part="Header" use="literal" />
|
178
|
+
</wsdl:output>
|
179
|
+
</wsdl:operation>
|
180
|
+
<wsdl:operation name="OAuthLogon">
|
181
|
+
<soap12:operation soapAction="http://www.twinfield.com/OAuthLogon" style="document" />
|
182
|
+
<wsdl:input>
|
183
|
+
<soap12:body use="literal" />
|
184
|
+
</wsdl:input>
|
185
|
+
<wsdl:output>
|
186
|
+
<soap12:body use="literal" />
|
187
|
+
<soap12:header message="tns:OAuthLogonHeader" part="Header" use="literal" />
|
188
|
+
</wsdl:output>
|
189
|
+
</wsdl:operation>
|
190
|
+
<wsdl:operation name="AccessTokenLogon">
|
191
|
+
<soap12:operation soapAction="http://www.twinfield.com/AccessTokenLogon" style="document" />
|
192
|
+
<wsdl:input>
|
193
|
+
<soap12:body use="literal" />
|
194
|
+
</wsdl:input>
|
195
|
+
<wsdl:output>
|
196
|
+
<soap12:body use="literal" />
|
197
|
+
<soap12:header message="tns:AccessTokenLogonHeader" part="Header" use="literal" />
|
198
|
+
</wsdl:output>
|
199
|
+
</wsdl:operation>
|
200
|
+
</wsdl:binding>
|
201
|
+
<wsdl:service name="Session">
|
202
|
+
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Twinfield session web service methods.</wsdl:documentation>
|
203
|
+
<wsdl:port name="SessionSoap" binding="tns:SessionSoap">
|
204
|
+
<soap:address location="https://login.twinfield.com/webservices/session.asmx" />
|
205
|
+
</wsdl:port>
|
206
|
+
<wsdl:port name="SessionSoap12" binding="tns:SessionSoap12">
|
207
|
+
<soap12:address location="https://login.twinfield.com/webservices/session.asmx" />
|
208
|
+
</wsdl:port>
|
209
|
+
</wsdl:service>
|
210
|
+
</wsdl:definitions>
|
data/wsdls/update
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
|
3
|
+
curl https://accounting.twinfield.com/webservices/processxml.asmx?wsdl > accounting/process.wsdl
|
4
|
+
curl https://accounting.twinfield.com/webservices/session.asmx?wsdl > accounting/session.wsdl
|
5
|
+
curl https://accounting.twinfield.com/webservices/finder.asmx?wsdl > accounting/finder.wsdl
|
6
|
+
curl https://accounting2.twinfield.com/webservices/processxml.asmx?wsdl > accounting2/process.wsdl
|
7
|
+
curl https://accounting2.twinfield.com/webservices/finder.asmx?wsdl > accounting2/finder.wsdl
|
8
|
+
curl https://api.accounting.twinfield.com/webservices/processxml.asmx?wsdl > api.accounting/process.wsdl
|
9
|
+
curl https://api.accounting.twinfield.com/webservices/finder.asmx?wsdl > api.accounting/finder.wsdl
|
10
|
+
curl https://login.twinfield.com/webservices/session.asmx?wsdl > session.wsdl
|
metadata
ADDED
@@ -0,0 +1,196 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: twinfieldrb
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Ernst Rijsdijk
|
8
|
+
- Stephan van Diepen
|
9
|
+
- Joris Reijrink
|
10
|
+
- Maarten Brouwers
|
11
|
+
autorequire:
|
12
|
+
bindir: bin
|
13
|
+
cert_chain: []
|
14
|
+
date: 2024-12-08 00:00:00.000000000 Z
|
15
|
+
dependencies:
|
16
|
+
- !ruby/object:Gem::Dependency
|
17
|
+
name: savon
|
18
|
+
requirement: !ruby/object:Gem::Requirement
|
19
|
+
requirements:
|
20
|
+
- - "~>"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '2.10'
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - "~>"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '2.10'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: nokogiri
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
requirements:
|
34
|
+
- - "~>"
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '1.6'
|
37
|
+
type: :runtime
|
38
|
+
prerelease: false
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - "~>"
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '1.6'
|
44
|
+
- !ruby/object:Gem::Dependency
|
45
|
+
name: rspec
|
46
|
+
requirement: !ruby/object:Gem::Requirement
|
47
|
+
requirements:
|
48
|
+
- - ">="
|
49
|
+
- !ruby/object:Gem::Version
|
50
|
+
version: '0'
|
51
|
+
type: :development
|
52
|
+
prerelease: false
|
53
|
+
version_requirements: !ruby/object:Gem::Requirement
|
54
|
+
requirements:
|
55
|
+
- - ">="
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: '0'
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: standard
|
60
|
+
requirement: !ruby/object:Gem::Requirement
|
61
|
+
requirements:
|
62
|
+
- - ">="
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: '0'
|
65
|
+
type: :development
|
66
|
+
prerelease: false
|
67
|
+
version_requirements: !ruby/object:Gem::Requirement
|
68
|
+
requirements:
|
69
|
+
- - ">="
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '0'
|
72
|
+
- !ruby/object:Gem::Dependency
|
73
|
+
name: webmock
|
74
|
+
requirement: !ruby/object:Gem::Requirement
|
75
|
+
requirements:
|
76
|
+
- - ">="
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: '0'
|
79
|
+
type: :development
|
80
|
+
prerelease: false
|
81
|
+
version_requirements: !ruby/object:Gem::Requirement
|
82
|
+
requirements:
|
83
|
+
- - ">="
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0'
|
86
|
+
description: Twinfield is an international Web service for collaborative online accounting.
|
87
|
+
The Twinfield gem is a simple client for their SOAP-based API.
|
88
|
+
email:
|
89
|
+
- ernst.rijsdijk@holder.nl
|
90
|
+
- s.vandiepen@noxa.nl
|
91
|
+
- joris@sprintict.nl
|
92
|
+
- maarten@murb.nl
|
93
|
+
executables: []
|
94
|
+
extensions: []
|
95
|
+
extra_rdoc_files: []
|
96
|
+
files:
|
97
|
+
- ".github/workflows/codeql-analysis.yml"
|
98
|
+
- ".github/workflows/rspec.yml"
|
99
|
+
- ".gitignore"
|
100
|
+
- ".rspec"
|
101
|
+
- CHANGELOG.md
|
102
|
+
- Gemfile
|
103
|
+
- README.md
|
104
|
+
- Rakefile
|
105
|
+
- lib/twinfield.rb
|
106
|
+
- lib/twinfield/abstract_model.rb
|
107
|
+
- lib/twinfield/api/base_api.rb
|
108
|
+
- lib/twinfield/api/finder.rb
|
109
|
+
- lib/twinfield/api/o_auth_session.rb
|
110
|
+
- lib/twinfield/api/process.rb
|
111
|
+
- lib/twinfield/api/session.rb
|
112
|
+
- lib/twinfield/browse/transaction/cost_center.rb
|
113
|
+
- lib/twinfield/browse/transaction/customer.rb
|
114
|
+
- lib/twinfield/browse/transaction/general_ledger.rb
|
115
|
+
- lib/twinfield/configuration.rb
|
116
|
+
- lib/twinfield/create/cost_center.rb
|
117
|
+
- lib/twinfield/create/creditor.rb
|
118
|
+
- lib/twinfield/create/debtor.rb
|
119
|
+
- lib/twinfield/create/error.rb
|
120
|
+
- lib/twinfield/create/general_ledger.rb
|
121
|
+
- lib/twinfield/create/transaction.rb
|
122
|
+
- lib/twinfield/customer.rb
|
123
|
+
- lib/twinfield/helpers/parsers.rb
|
124
|
+
- lib/twinfield/helpers/transaction_match.rb
|
125
|
+
- lib/twinfield/request/find.rb
|
126
|
+
- lib/twinfield/request/list.rb
|
127
|
+
- lib/twinfield/request/read.rb
|
128
|
+
- lib/twinfield/sales_invoice.rb
|
129
|
+
- lib/twinfield/transaction.rb
|
130
|
+
- lib/twinfield/version.rb
|
131
|
+
- script/boot.rb
|
132
|
+
- script/console
|
133
|
+
- spec/fixtures/cluster/finder/ivt.xml
|
134
|
+
- spec/fixtures/cluster/processxml/columns/sales_transactions.xml
|
135
|
+
- spec/fixtures/cluster/processxml/customer/create_success.xml
|
136
|
+
- spec/fixtures/cluster/processxml/customer/read_success.xml
|
137
|
+
- spec/fixtures/cluster/processxml/customer/update_success.xml
|
138
|
+
- spec/fixtures/cluster/processxml/invoice/create_error.xml
|
139
|
+
- spec/fixtures/cluster/processxml/invoice/create_final_error.xml
|
140
|
+
- spec/fixtures/cluster/processxml/invoice/create_success.xml
|
141
|
+
- spec/fixtures/cluster/processxml/invoice/read_not_found.xml
|
142
|
+
- spec/fixtures/cluster/processxml/invoice/read_success.xml
|
143
|
+
- spec/fixtures/cluster/processxml/read/deb.xml
|
144
|
+
- spec/fixtures/cluster/processxml/response.xml
|
145
|
+
- spec/fixtures/login/session/wsdl.xml
|
146
|
+
- spec/spec_helper.rb
|
147
|
+
- spec/stubs/finder_stubs.rb
|
148
|
+
- spec/stubs/processxml_stubs.rb
|
149
|
+
- spec/stubs/session_stubs.rb
|
150
|
+
- spec/twinfield/api/oauth_session_spec.rb
|
151
|
+
- spec/twinfield/api/process_spec.rb
|
152
|
+
- spec/twinfield/browse/transaction/cost_center_spec.rb
|
153
|
+
- spec/twinfield/browse/transaction/general_ledger_spec.rb
|
154
|
+
- spec/twinfield/browse/transaction/transaction_spec.rb
|
155
|
+
- spec/twinfield/config_spec.rb
|
156
|
+
- spec/twinfield/customer_spec.rb
|
157
|
+
- spec/twinfield/request/find_spec.rb
|
158
|
+
- spec/twinfield/request/list_spec.rb
|
159
|
+
- spec/twinfield/request/read_spec.rb
|
160
|
+
- spec/twinfield/sales_invoice_spec.rb
|
161
|
+
- spec/twinfield/session_spec.rb
|
162
|
+
- spec/twinfield/transaction_spec.rb
|
163
|
+
- twinfieldrb.gemspec
|
164
|
+
- wsdls/accounting/finder.wsdl
|
165
|
+
- wsdls/accounting/process.wsdl
|
166
|
+
- wsdls/accounting/session.wsdl
|
167
|
+
- wsdls/accounting2/finder.wsdl
|
168
|
+
- wsdls/accounting2/process.wsdl
|
169
|
+
- wsdls/api.accounting/finder.wsdl
|
170
|
+
- wsdls/api.accounting/process.wsdl
|
171
|
+
- wsdls/session.wsdl
|
172
|
+
- wsdls/update
|
173
|
+
homepage: https://github.com/murb/twinfield
|
174
|
+
licenses: []
|
175
|
+
metadata: {}
|
176
|
+
post_install_message:
|
177
|
+
rdoc_options: []
|
178
|
+
require_paths:
|
179
|
+
- lib
|
180
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
181
|
+
requirements:
|
182
|
+
- - ">="
|
183
|
+
- !ruby/object:Gem::Version
|
184
|
+
version: '0'
|
185
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
186
|
+
requirements:
|
187
|
+
- - ">="
|
188
|
+
- !ruby/object:Gem::Version
|
189
|
+
version: '0'
|
190
|
+
requirements: []
|
191
|
+
rubygems_version: 3.5.21
|
192
|
+
signing_key:
|
193
|
+
specification_version: 4
|
194
|
+
summary: A simple client for the Twinfield SOAP-based API (continuation of the twinfield
|
195
|
+
gem)
|
196
|
+
test_files: []
|