-
Notifications
You must be signed in to change notification settings - Fork 200
/
Copy pathAccount.php
306 lines (302 loc) · 16.3 KB
/
Account.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
<?php
namespace Picqer\Financials\Exact;
/**
* Class Account.
*
* @see https://start.exactonline.nl/docs/HlpRestAPIResourcesDetails.aspx?name=CRMAccounts
*
* @property string $ID Primary key
* @property string $Accountant Reference to the accountant of the customer. Conditions: The referred accountant must have value > 0 in the field IsAccountant
* @property string $AccountManager ID of the account manager
* @property string $AccountManagerFullName Name of the account manager
* @property int $AccountManagerHID Number of the account manager
* @property string $ActivitySector Reference to Activity sector of the account
* @property string $ActivitySubSector Reference to Activity sub-sector of the account
* @property string $AddressLine1 Visit address first line
* @property string $AddressLine2 Visit address second line
* @property string $AddressLine3 Visit address third line
* @property int $AutomaticProcessProposedEntry Automatically create entries for complete entry proposals
* @property BankAccount[] $BankAccounts Collection of Bank accounts
* @property bool $Blocked Indicates if the account is blocked
* @property string $BSN Citizen Service Number for the Netherlands
* @property string $BusinessType Reference to the business type of the account
* @property bool $CanDropShip Indicates the default for the possibility to drop ship when an item is linked to a supplier
* @property string $ChamberOfCommerce Chamber of commerce number
* @property string $City Visit address City
* @property string $Classification1 Account classification 1
* @property string $Classification2 Account classification 2
* @property string $Classification3 Account classification 3
* @property string $Classification4 Account classification 4
* @property string $Classification5 Account classification 5
* @property string $Classification6 Account classification 6
* @property string $Classification7 Account classification 7
* @property string $Classification8 Account classification 8
* @property string $Code Unique key, fixed length numeric string with leading spaces, length 18. IMPORTANT: When you use OData $filter on this field you have to make sure the filter parameter contains the leading spaces
* @property string $CodeAtSupplier Code under which your own company is known at the account
* @property string $CompanySize Reference to Company size of the account
* @property int $ConsolidationScenario Consolidation scenario (Time & Billing). Values: 0 = No consolidation, 1 = Item, 2 = Item + Project, 3 = Item + Employee, 4 = Item + Employee + Project, 5 = Project + WBS + Item, 6 = Project + WBS + Item + Employee. Item means in this case including Unit and Price, these also have to be the same to consolidate
* @property string $ControlledDate Date of the latest control of account data with external web service
* @property string $Country Country code
* @property string $CountryName Country name
* @property string $Created Creation date
* @property string $Creator User ID of creator
* @property string $CreatorFullName Name of creator
* @property float $CreditLinePurchase Maximum amount of credit for Purchase. If no value has been defined, there is no credit limit
* @property float $CreditLineSales Maximum amount of credit for sales. If no value has been defined, there is no credit limit
* @property string $CustomField Custom field endpoint. Provided only for the Exact Online Premium users.
* @property string $DatevCreditorCode DATEV creditor code for Germany legislation
* @property string $DatevDebtorCode DATEV debtor code for Germany legislation
* @property float $DiscountPurchase Default discount percentage for purchase. This is stored as a fraction. ie 5.5% is stored as .055
* @property float $DiscountSales Default discount percentage for sales. This is stored as a fraction. ie 5.5% is stored as .055
* @property int $Division Division code
* @property string $Email E-Mail address of the account
* @property bool $EnableSalesPaymentLink Indicates whether payment link is activated for sales
* @property string $EndDate Determines in combination with the start date if the account is active. If the current date is > end date the account is inactive
* @property string $EORINumber EORI number
* @property string $EstablishedDate RegistrationDate
* @property string $Fax Fax number
* @property string $GLAccountPurchase Default (corporate) GL offset account for purchase (cost)
* @property string $GLAccountSales Default (corporate) GL offset account for sales (revenue)
* @property string $GLAP Default GL account for Accounts Payable
* @property string $GLAR Default GL account for Accounts Receivable
* @property string $GlnNumber Global Location Number can be used by companies to identify their locations, giving them complete flexibility to identify any type or level of location required
* @property bool $HasWithholdingTaxSales Indicates whether a customer has withholding tax on sales
* @property bool $IgnoreDatevWarningMessage Suppressed warning message when there is duplication on the DATEV code
* @property string $IncotermAddressPurchase Address of Incoterm for Purchase
* @property string $IncotermAddressSales Address of Incoterm for Sales
* @property string $IncotermCodePurchase Code of Incoterm for Purchase
* @property string $IncotermCodeSales Code of Incoterm for Sales
* @property int $IncotermVersionPurchase Version of Incoterm for Purchase Supported version for Incoterms : 2010, 2020
* @property int $IncotermVersionSales Version of Incoterm for Sales Supported version for Incoterms : 2010, 2020
* @property string $IntraStatArea Intrastat Area
* @property string $IntraStatDeliveryTerm Intrastat delivery method
* @property string $IntraStatSystem System for Intrastat
* @property string $IntraStatTransactionA Transaction type A for Intrastat
* @property string $IntraStatTransactionB Transaction type B for Intrastat
* @property string $IntraStatTransportMethod Transport method for Intrastat
* @property string $InvoiceAccount ID of account to be invoiced instead of this account
* @property string $InvoiceAccountCode Code of InvoiceAccount
* @property string $InvoiceAccountName Name of InvoiceAccount
* @property int $InvoiceAttachmentType Indicates which attachment types should be sent when a sales invoice is printed. Only values in related table with Invoice=1 are allowed
* @property int $InvoicingMethod Method of sending for sales invoices. Values: 1: Paper, 2: EMail, 4: Mailbox (electronic exchange), 8: Send and trackTake notes: To use the '4 - Mailbox (electronic exchange)' option, the 'Mailbox' feature set is required in the licence.
* @property int $IsAccountant Indicates whether the account is an accountant. Values: 0 = No accountant, 1 = True, but accountant doesn't want his name to be published in the list of accountants, 2 = True, and accountant is published in the list of accountants
* @property int $IsAgency Indicates whether the accounti is an agency
* @property int $IsAnonymised Indicates whtether the account is anonymised.
* @property int $IsCompetitor Indicates whether the account is a competitor
* @property bool $IsExtraDuty Indicates whether a customer is eligible for extra duty
* @property int $IsMailing Indicates if the account is excluded from mailing marketing information
* @property bool $IsPilot Indicates whether the account is a pilot account
* @property bool $IsReseller Indicates whether the account is a reseller
* @property bool $IsSales Indicates whether the account is allowed for sales
* @property bool $IsSupplier Indicates whether the account is a supplier
* @property string $Language Language code
* @property string $LanguageDescription Language description
* @property float $Latitude Latitude (used by Google maps)
* @property string $LeadPurpose Reference to Lead purpose of an account
* @property string $LeadSource Reference to Lead source of an account
* @property string $Logo Bytes of the logo image
* @property string $LogoFileName The file name (without path, but with extension) of the image
* @property string $LogoThumbnailUrl Thumbnail url of the logo
* @property string $LogoUrl Url to retrieve the logo
* @property float $Longitude Longitude (used by Google maps)
* @property string $MainContact Reference to main contact person
* @property string $Modified Last modified date
* @property string $Modifier User ID of modifier
* @property string $ModifierFullName Name of modifier
* @property string $Name Account name
* @property string $OINNumber Dutch government identification number
* @property string $Parent ID of the parent account
* @property string $PayAsYouEarn Indicates the loan repayment plan for UK legislation
* @property string $PaymentConditionPurchase Code of default payment condition for purchase
* @property string $PaymentConditionPurchaseDescription Description of PaymentConditionPurchase
* @property string $PaymentConditionSales Code of default payment condition for sales
* @property string $PaymentConditionSalesDescription Description of PaymentConditionSales
* @property string $PeppolIdentifier Peppol identifier user entered manually, corresponds to picked peppol adress
* @property int $PeppolIdentifierType Peppol identifier type that user picked manually - GLN, COC, etc
* @property string $Phone Phone number
* @property string $PhoneExtension Phone number extention
* @property string $Postcode Visit address postcode
* @property string $PriceList Default sales price list for account
* @property string $PurchaseCurrency Currency of purchaseTake notes: If the currency code input is not in the active currencies, the value will be set to empty.
* @property string $PurchaseCurrencyDescription Description of PurchaseCurrency
* @property int $PurchaseLeadDays Indicates number of days required to receive a purchase. Acts as a default
* @property string $PurchaseVATCode Default VAT code used for purchase entries
* @property string $PurchaseVATCodeDescription Description of PurchaseVATCode
* @property bool $RecepientOfCommissions Define the relation that should be taken in the official document of the rewarding fiscal fiches Belcotax
* @property string $Remarks Remarks
* @property string $Reseller ID of the reseller account. Conditions: the target account must have the property IsReseller turned on
* @property string $ResellerCode Code of Reseller
* @property string $ResellerName Name of Reseller
* @property string $RSIN Fiscal number for NL legislation
* @property string $SalesCurrency Currency of Sales used for Time & BillingTake notes: If the currency code input is not in the active currencies, the value will be set to empty.
* @property string $SalesCurrencyDescription Description of SalesCurrency
* @property string $SalesVATCode Default VAT code for a sales entry
* @property string $SalesVATCodeDescription Description of SalesVATCode
* @property string $SearchCode Search code
* @property int $SecurityLevel Security level (0 - 100)
* @property int $SeparateInvPerSubscription Indicates how invoices are generated from subscriptions. 0 = subscriptions belonging to the same customer are combined in a single invoice. 1 = each subscription results in one invoice. In both cases, each individual subscription line results in one invoice line
* @property int $ShippingLeadDays Indicates the number of days it takes to send goods to the customer. Acts as a default
* @property string $ShippingMethod Default shipping method
* @property bool $ShowRemarkForSales Indicates whether to display Ordered by account's remarks when creating a new sales order
* @property string $StartDate Indicates in combination with the end date if the account is active
* @property string $State State/Province/County code When changing the Country and the State is filled, the State must be assigned with a valid value from the selected country or set to empty
* @property string $StateName Name of State
* @property string $Status If the status field is filled this means the account is a customer. The value indicates the customer status. Possible values: A=None, S=Suspect, P=Prospect, C=Customer
* @property string $TradeName Trade name can be registered and shown with the client (for all legislations)
* @property string $Type Account type: Values: A = Relation, D = Division
* @property string $UniqueTaxpayerReference Unique taxpayer reference for UK legislation
* @property string $VATLiability Indicates the VAT status of an account to be able to identify the relation that should be selected in the VAT debtor listing in Belgium
* @property string $VATNumber The number under which the account is known at the Value Added Tax collection agency
* @property string $Website Website of the account
*/
class Account extends Model
{
use Query\Findable;
use Persistance\Storable;
protected $fillable = [
'ID',
'Accountant',
'AccountManager',
'AccountManagerFullName',
'AccountManagerHID',
'ActivitySector',
'ActivitySubSector',
'AddressLine1',
'AddressLine2',
'AddressLine3',
'AutomaticProcessProposedEntry',
'BankAccounts',
'Blocked',
'BSN',
'BusinessType',
'CanDropShip',
'ChamberOfCommerce',
'City',
'Classification1',
'Classification2',
'Classification3',
'Classification4',
'Classification5',
'Classification6',
'Classification7',
'Classification8',
'Code',
'CodeAtSupplier',
'CompanySize',
'ConsolidationScenario',
'ControlledDate',
'Country',
'CountryName',
'Created',
'Creator',
'CreatorFullName',
'CreditLinePurchase',
'CreditLineSales',
'CustomField',
'DatevCreditorCode',
'DatevDebtorCode',
'DiscountPurchase',
'DiscountSales',
'Division',
'Email',
'EnableSalesPaymentLink',
'EndDate',
'EORINumber',
'EstablishedDate',
'Fax',
'GLAccountPurchase',
'GLAccountSales',
'GLAP',
'GLAR',
'GlnNumber',
'HasWithholdingTaxSales',
'IgnoreDatevWarningMessage',
'IncotermAddressPurchase',
'IncotermAddressSales',
'IncotermCodePurchase',
'IncotermCodeSales',
'IncotermVersionPurchase',
'IncotermVersionSales',
'IntraStatArea',
'IntraStatDeliveryTerm',
'IntraStatSystem',
'IntraStatTransactionA',
'IntraStatTransactionB',
'IntraStatTransportMethod',
'InvoiceAccount',
'InvoiceAccountCode',
'InvoiceAccountName',
'InvoiceAttachmentType',
'InvoicingMethod',
'IsAccountant',
'IsAgency',
'IsAnonymised',
'IsCompetitor',
'IsExtraDuty',
'IsMailing',
'IsPilot',
'IsReseller',
'IsSales',
'IsSupplier',
'Language',
'LanguageDescription',
'Latitude',
'LeadPurpose',
'LeadSource',
'Logo',
'LogoFileName',
'LogoThumbnailUrl',
'LogoUrl',
'Longitude',
'MainContact',
'Modified',
'Modifier',
'ModifierFullName',
'Name',
'OINNumber',
'Parent',
'PayAsYouEarn',
'PaymentConditionPurchase',
'PaymentConditionPurchaseDescription',
'PaymentConditionSales',
'PaymentConditionSalesDescription',
'PeppolIdentifier',
'PeppolIdentifierType',
'Phone',
'PhoneExtension',
'Postcode',
'PriceList',
'PurchaseCurrency',
'PurchaseCurrencyDescription',
'PurchaseLeadDays',
'PurchaseVATCode',
'PurchaseVATCodeDescription',
'RecepientOfCommissions',
'Remarks',
'Reseller',
'ResellerCode',
'ResellerName',
'RSIN',
'SalesCurrency',
'SalesCurrencyDescription',
'SalesVATCode',
'SalesVATCodeDescription',
'SearchCode',
'SecurityLevel',
'SeparateInvPerSubscription',
'ShippingLeadDays',
'ShippingMethod',
'ShowRemarkForSales',
'StartDate',
'State',
'StateName',
'Status',
'TradeName',
'Type',
'UniqueTaxpayerReference',
'VATLiability',
'VATNumber',
'Website',
];
protected $url = 'crm/Accounts';
}