1: <?php
2:
3: declare(strict_types=1);
4:
5: /*
6: * This file has been auto generated by Jane,
7: *
8: * Do no edit it directly.
9: */
10:
11: namespace NxSys\Library\Clients\Brex\API\Payments\Model;
12:
13: class CreateTransferRequest extends \ArrayObject
14: {
15: /**
16: * @var array
17: */
18: protected $initialized = [];
19:
20: public function isInitialized($property): bool
21: {
22: return array_key_exists($property, $this->initialized);
23: }
24: /**
25: * Counterparty Details for the transfer.
26: *
27: * @var mixed[]
28: */
29: protected $counterparty;
30: /**
31: Money fields can be signed or unsigned. Fields are signed (an unsigned value will be interpreted as positive). The amount of money will be represented in the smallest denomination
32: of the currency indicated. For example, USD 7.00 will be represented in cents with an amount of 700.
33:
34: *
35: * @var Money
36: */
37: protected $amount;
38: /**
39: * Description of the transfer for internal use. Not exposed externally.
40: *
41: * @var string
42: */
43: protected $description;
44: /**
45: * External memo for the transfer. `Payment Instructions` for Wires and the `Entry Description` for ACH payments.
46: *
47: * @var string
48: */
49: protected $externalMemo;
50: /**
51: * Originating account details for the transfer.
52: *
53: * @var mixed[]
54: */
55: protected $originatingAccount;
56: /**
57: * @var string
58: */
59: protected $approvalType;
60:
61: /**
62: * Counterparty Details for the transfer.
63: *
64: * @return mixed[]
65: */
66: public function getCounterparty(): iterable
67: {
68: return $this->counterparty;
69: }
70:
71: /**
72: * Counterparty Details for the transfer.
73: *
74: * @param mixed[] $counterparty
75: */
76: public function setCounterparty(iterable $counterparty): self
77: {
78: $this->initialized['counterparty'] = true;
79: $this->counterparty = $counterparty;
80:
81: return $this;
82: }
83:
84: /**
85: Money fields can be signed or unsigned. Fields are signed (an unsigned value will be interpreted as positive). The amount of money will be represented in the smallest denomination
86: of the currency indicated. For example, USD 7.00 will be represented in cents with an amount of 700.
87: */
88: public function getAmount(): Money
89: {
90: return $this->amount;
91: }
92:
93: /**
94: Money fields can be signed or unsigned. Fields are signed (an unsigned value will be interpreted as positive). The amount of money will be represented in the smallest denomination
95: of the currency indicated. For example, USD 7.00 will be represented in cents with an amount of 700.
96: */
97: public function setAmount(Money $amount): self
98: {
99: $this->initialized['amount'] = true;
100: $this->amount = $amount;
101:
102: return $this;
103: }
104:
105: /**
106: * Description of the transfer for internal use. Not exposed externally.
107: */
108: public function getDescription(): string
109: {
110: return $this->description;
111: }
112:
113: /**
114: * Description of the transfer for internal use. Not exposed externally.
115: */
116: public function setDescription(string $description): self
117: {
118: $this->initialized['description'] = true;
119: $this->description = $description;
120:
121: return $this;
122: }
123:
124: /**
125: * External memo for the transfer. `Payment Instructions` for Wires and the `Entry Description` for ACH payments.
126: and at most 40 characters for `CHEQUES`
127: */
128: public function getExternalMemo(): string
129: {
130: return $this->externalMemo;
131: }
132:
133: /**
134: * External memo for the transfer. `Payment Instructions` for Wires and the `Entry Description` for ACH payments.
135: and at most 40 characters for `CHEQUES`
136: */
137: public function setExternalMemo(string $externalMemo): self
138: {
139: $this->initialized['externalMemo'] = true;
140: $this->externalMemo = $externalMemo;
141:
142: return $this;
143: }
144:
145: /**
146: * Originating account details for the transfer.
147: *
148: * @return mixed[]
149: */
150: public function getOriginatingAccount(): iterable
151: {
152: return $this->originatingAccount;
153: }
154:
155: /**
156: * Originating account details for the transfer.
157: *
158: * @param mixed[] $originatingAccount
159: */
160: public function setOriginatingAccount(iterable $originatingAccount): self
161: {
162: $this->initialized['originatingAccount'] = true;
163: $this->originatingAccount = $originatingAccount;
164:
165: return $this;
166: }
167:
168: public function getApprovalType(): string
169: {
170: return $this->approvalType;
171: }
172:
173: public function setApprovalType(string $approvalType): self
174: {
175: $this->initialized['approvalType'] = true;
176: $this->approvalType = $approvalType;
177:
178: return $this;
179: }
180: }
181: