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
<?php
/**
* @copyright Vertex. All rights reserved. https://www.vertexinc.com/
* @author Mediotype Development <diveinto@mediotype.com>
*/
namespace Vertex\Data;
/**
* Represents a Customer
*
* @api
*/
interface CustomerInterface
{
/**
* Retrieve the administrative destination
*
* The benefit received location for certain service transactions
*
* @return AddressInterface|null
*/
public function getAdministrativeDestination();
/**
* Retrieve the code representing the customer
*
* @return string|null
*/
public function getCode();
/**
* Retrieve the destination
*
* Where the item is being shipped to, where the benefit is received, first used, where it is used, primary place of
* use, principal use location, location of property, or place of use.
*
* @return AddressInterface|null
*/
public function getDestination();
/**
* Retrieve the Tax Class for the customer
*
* @return string|null
*/
public function getTaxClass();
/**
* Retrieve the tax registrations held by the Customer
*
* @return TaxRegistrationInterface[]
*/
public function getTaxRegistrations();
/**
* Retrieve whether or not the customer is a business
*
* @return bool|null
*/
public function isBusiness();
/**
* Set the administrative destination
*
* The benefit received location for certain service transactions
*
* @param AddressInterface $destination
* @return CustomerInterface
*/
public function setAdministrativeDestination(AddressInterface $destination);
/**
* Set the code representing the customer
*
* @param string $customerCode
* @return CustomerInterface
*/
public function setCode($customerCode);
/**
* Set the destination
*
* Where the item is being shipped to, where the benefit is received, first used, where it is used, primary place of
* use, principal use location, location of property, or place of use.
*
* @param AddressInterface $destination
* @return CustomerInterface
*/
public function setDestination(AddressInterface $destination);
/**
* Set whether or not the customer is a business
*
* @param bool $isBusiness
* @return CustomerInterface
*/
public function setIsBusiness($isBusiness);
/**
* Set the Tax Class for the customer
*
* @param string $taxClass
* @return CustomerInterface
*/
public function setTaxClass($taxClass);
/**
* Set the tax registrations held by the Customer
*
* @param TaxRegistrationInterface[] $registrations
* @return CustomerInterface
*/
public function setTaxRegistrations(array $registrations);
}