diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 00000000..409aab9c --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 00000000..15a15b21 --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml index c85edea9..852ce1f4 100644 --- a/.idea/inspectionProfiles/Project_Default.xml +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -5,6 +5,10 @@ + + diff --git a/src/Model/Generated/Endpoint/AttachmentUser.php b/src/Model/Generated/Endpoint/AttachmentUser.php new file mode 100644 index 00000000..3b9d565a --- /dev/null +++ b/src/Model/Generated/Endpoint/AttachmentUser.php @@ -0,0 +1,188 @@ +get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), $attachmentUserId] + ), + [], + $customHeaders + ); + + return BunqResponseAttachmentUser::castFromBunqResponse( + static::fromJson($responseRaw) + ); + } + + /** + * The id of the attachment. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The timestamp of the attachment's creation. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The timestamp of the attachment's last update. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The attachment. + * + * @return Attachment + */ + public function getAttachment() + { + return $this->attachment; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Attachment $attachment + */ + public function setAttachment($attachment) + { + $this->attachment = $attachment; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->attachment)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/BankSwitchServiceNetherlandsIncoming.php b/src/Model/Generated/Endpoint/BankSwitchServiceNetherlandsIncoming.php new file mode 100644 index 00000000..73f93346 --- /dev/null +++ b/src/Model/Generated/Endpoint/BankSwitchServiceNetherlandsIncoming.php @@ -0,0 +1,388 @@ +aliasFieldForRequest = $alias; + $this->counterpartyAliasFieldForRequest = $counterpartyAlias; + $this->statusFieldForRequest = $status; + $this->subStatusFieldForRequest = $subStatus; + $this->timeStartActualFieldForRequest = $timeStartActual; + } + + /** + * The label of the user creator of this switch service. + * + * @return LabelUser + */ + public function getUserAlias() + { + return $this->userAlias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelUser $userAlias + */ + public function setUserAlias($userAlias) + { + $this->userAlias = $userAlias; + } + + /** + * The label of the monetary of this switch service. + * + * @return LabelMonetaryAccount + */ + public function getAlias() + { + return $this->alias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelMonetaryAccount $alias + */ + public function setAlias($alias) + { + $this->alias = $alias; + } + + /** + * The IBAN alias that's displayed for this switch service. + * + * @return LabelMonetaryAccount + */ + public function getCounterpartyAlias() + { + return $this->counterpartyAlias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelMonetaryAccount $counterpartyAlias + */ + public function setCounterpartyAlias($counterpartyAlias) + { + $this->counterpartyAlias = $counterpartyAlias; + } + + /** + * The status of the switch service. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * The sub status of the switch service. + * + * @return string + */ + public function getSubStatus() + { + return $this->subStatus; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $subStatus + */ + public function setSubStatus($subStatus) + { + $this->subStatus = $subStatus; + } + + /** + * The timestamp when the switch service desired to be start. + * + * @return string + */ + public function getTimeStartDesired() + { + return $this->timeStartDesired; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $timeStartDesired + */ + public function setTimeStartDesired($timeStartDesired) + { + $this->timeStartDesired = $timeStartDesired; + } + + /** + * The timestamp when the switch service actually starts. + * + * @return string + */ + public function getTimeStartActual() + { + return $this->timeStartActual; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $timeStartActual + */ + public function setTimeStartActual($timeStartActual) + { + $this->timeStartActual = $timeStartActual; + } + + /** + * The timestamp when the switch service ends. + * + * @return string + */ + public function getTimeEnd() + { + return $this->timeEnd; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $timeEnd + */ + public function setTimeEnd($timeEnd) + { + $this->timeEnd = $timeEnd; + } + + /** + * Reference to the bank transfer form for this switch-service. + * + * @return Attachment + */ + public function getAttachment() + { + return $this->attachment; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Attachment $attachment + */ + public function setAttachment($attachment) + { + $this->attachment = $attachment; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->userAlias)) { + return false; + } + + if (!is_null($this->alias)) { + return false; + } + + if (!is_null($this->counterpartyAlias)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->subStatus)) { + return false; + } + + if (!is_null($this->timeStartDesired)) { + return false; + } + + if (!is_null($this->timeStartActual)) { + return false; + } + + if (!is_null($this->timeEnd)) { + return false; + } + + if (!is_null($this->attachment)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/BankSwitchServiceNetherlandsIncomingPayment.php b/src/Model/Generated/Endpoint/BankSwitchServiceNetherlandsIncomingPayment.php new file mode 100644 index 00000000..78165f40 --- /dev/null +++ b/src/Model/Generated/Endpoint/BankSwitchServiceNetherlandsIncomingPayment.php @@ -0,0 +1,127 @@ +get( + vsprintf( + self::ENDPOINT_URL_READ, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $bankSwitchServiceNetherlandsIncomingPaymentId, + ] + ), + [], + $customHeaders + ); + + return BunqResponseBankSwitchServiceNetherlandsIncomingPayment::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The bank switch service details. + * + * @return BankSwitchServiceNetherlandsIncoming + */ + public function getBankSwitchService() + { + return $this->bankSwitchService; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param BankSwitchServiceNetherlandsIncoming $bankSwitchService + */ + public function setBankSwitchService($bankSwitchService) + { + $this->bankSwitchService = $bankSwitchService; + } + + /** + * The payment made using bank switch service. + * + * @return Payment + */ + public function getPayment() + { + return $this->payment; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Payment $payment + */ + public function setPayment($payment) + { + $this->payment = $payment; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->bankSwitchService)) { + return false; + } + + if (!is_null($this->payment)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/BunqMeFundraiserProfileUser.php b/src/Model/Generated/Endpoint/BunqMeFundraiserProfileUser.php new file mode 100644 index 00000000..201e32c5 --- /dev/null +++ b/src/Model/Generated/Endpoint/BunqMeFundraiserProfileUser.php @@ -0,0 +1,451 @@ +monetaryAccountIdFieldForRequest = $monetaryAccountId; + $this->colorFieldForRequest = $color; + $this->descriptionFieldForRequest = $description; + $this->attachmentPublicUuidFieldForRequest = $attachmentPublicUuid; + $this->pointerFieldForRequest = $pointer; + $this->redirectUrlFieldForRequest = $redirectUrl; + $this->statusFieldForRequest = $status; + } + + /** + * @param int $bunqMeFundraiserProfileUserId + * @param string[] $customHeaders + * + * @return BunqResponseBunqMeFundraiserProfileUser + */ + public static function get( + int $bunqMeFundraiserProfileUserId, + array $customHeaders = [] + ): BunqResponseBunqMeFundraiserProfileUser { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), $bunqMeFundraiserProfileUserId] + ), + [], + $customHeaders + ); + + return BunqResponseBunqMeFundraiserProfileUser::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseBunqMeFundraiserProfileUserList + */ + public static function listing( + array $params = [], + array $customHeaders = [] + ): BunqResponseBunqMeFundraiserProfileUserList { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId()] + ), + $params, + $customHeaders + ); + + return BunqResponseBunqMeFundraiserProfileUserList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * Id of the monetary account on which you want to receive bunq.me payments. + * + * @return int + */ + public function getMonetaryAccountId() + { + return $this->monetaryAccountId; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $monetaryAccountId + */ + public function setMonetaryAccountId($monetaryAccountId) + { + $this->monetaryAccountId = $monetaryAccountId; + } + + /** + * The color chosen for the bunq.me fundraiser profile in hexadecimal + * format. + * + * @return string + */ + public function getColor() + { + return $this->color; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $color + */ + public function setColor($color) + { + $this->color = $color; + } + + /** + * The LabelMonetaryAccount with the public information of the User and the + * MonetaryAccount that created the bunq.me fundraiser profile. + * + * @return LabelMonetaryAccount + */ + public function getAlias() + { + return $this->alias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelMonetaryAccount $alias + */ + public function setAlias($alias) + { + $this->alias = $alias; + } + + /** + * The description of the bunq.me fundraiser profile. + * + * @return string + */ + public function getDescription() + { + return $this->description; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $description + */ + public function setDescription($description) + { + $this->description = $description; + } + + /** + * The attachment used for the background of the bunq.me fundraiser profile. + * + * @return AttachmentPublic + */ + public function getAttachment() + { + return $this->attachment; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param AttachmentPublic $attachment + */ + public function setAttachment($attachment) + { + $this->attachment = $attachment; + } + + /** + * The pointer (url) which will be used to access the bunq.me fundraiser + * profile. + * + * @return Pointer + */ + public function getPointer() + { + return $this->pointer; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Pointer $pointer + */ + public function setPointer($pointer) + { + $this->pointer = $pointer; + } + + /** + * The URL which the user is sent to when a payment is completed. + * + * @return string + */ + public function getRedirectUrl() + { + return $this->redirectUrl; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $redirectUrl + */ + public function setRedirectUrl($redirectUrl) + { + $this->redirectUrl = $redirectUrl; + } + + /** + * The status of the bunq.me fundraiser profile, can be ACTIVE or + * DEACTIVATED. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->monetaryAccountId)) { + return false; + } + + if (!is_null($this->color)) { + return false; + } + + if (!is_null($this->alias)) { + return false; + } + + if (!is_null($this->description)) { + return false; + } + + if (!is_null($this->attachment)) { + return false; + } + + if (!is_null($this->pointer)) { + return false; + } + + if (!is_null($this->redirectUrl)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/BunqMeFundraiserResult.php b/src/Model/Generated/Endpoint/BunqMeFundraiserResult.php index c9e4eb6d..6c3d3d56 100644 --- a/src/Model/Generated/Endpoint/BunqMeFundraiserResult.php +++ b/src/Model/Generated/Endpoint/BunqMeFundraiserResult.php @@ -1,6 +1,7 @@ get( + vsprintf( + self::ENDPOINT_URL_READ, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $bunqMeFundraiserResultId, + ] + ), + [], + $customHeaders + ); + + return BunqResponseBunqMeFundraiserResult::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + /** * The id of the bunq.me. * diff --git a/src/Model/Generated/Endpoint/BunqMeTabResultResponse.php b/src/Model/Generated/Endpoint/BunqMeTabResultResponse.php index c9305463..e746ca62 100644 --- a/src/Model/Generated/Endpoint/BunqMeTabResultResponse.php +++ b/src/Model/Generated/Endpoint/BunqMeTabResultResponse.php @@ -1,6 +1,7 @@ get( + vsprintf( + self::ENDPOINT_URL_READ, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $bunqMeTabResultResponseId, + ] + ), + [], + $customHeaders + ); + + return BunqResponseBunqMeTabResultResponse::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + /** * The payment made for the bunq.me tab. * diff --git a/src/Model/Generated/Endpoint/BunqResponseAttachmentUser.php b/src/Model/Generated/Endpoint/BunqResponseAttachmentUser.php new file mode 100644 index 00000000..7bd40ab2 --- /dev/null +++ b/src/Model/Generated/Endpoint/BunqResponseAttachmentUser.php @@ -0,0 +1,17 @@ +pinCodeFieldForRequest = $pinCode; @@ -353,6 +366,7 @@ public function __construct( $this->magStripePermissionFieldForRequest = $magStripePermission; $this->countryPermissionFieldForRequest = $countryPermission; $this->pinCodeAssignmentFieldForRequest = $pinCodeAssignment; + $this->primaryAccountNumbersVirtualFieldForRequest = $primaryAccountNumbersVirtual; $this->monetaryAccountIdFallbackFieldForRequest = $monetaryAccountIdFallback; } @@ -365,10 +379,9 @@ public function __construct( * @param int $cardId * @param string|null $pinCode The plaintext pin code. Requests require * encryption to be enabled. - * @param string|null $activationCode The activation code required to set - * status to ACTIVE initially. Can only set status to - * ACTIVE using activation code when order_status is - * ACCEPTED_FOR_PRODUCTION and status is DEACTIVATED. + * @param string|null $activationCode DEPRECATED: Activate a card by setting + * status to ACTIVE when the order_status is + * ACCEPTED_FOR_PRODUCTION. * @param string|null $status The status to set for the card. Can be ACTIVE, * DEACTIVATED, LOST, STOLEN or CANCELLED, and can only be * set to LOST/STOLEN/CANCELLED when order status is @@ -386,12 +399,16 @@ public function __construct( * CARD_LIMIT_DIPPING and CARD_LIMIT_POS_ICC (e.g. 25 EUR * for CARD_LIMIT_CONTACTLESS). All the limits must be * provided on update. - * @param CardMagStripePermission|null $magStripePermission Whether or not - * it is allowed to use the mag stripe for the card. + * @param CardMagStripePermission|null $magStripePermission DEPRECATED: + * Whether or not it is allowed to use the mag stripe for + * the card. * @param CardCountryPermission[]|null $countryPermission The countries for * which to grant (temporary) permissions to use the card. * @param CardPinAssignment[]|null $pinCodeAssignment Array of Types, PINs, * account IDs assigned to the card. + * @param CardVirtualPrimaryAccountNumber[]|null + * $primaryAccountNumbersVirtual Array of PANs, status, + * description and account id for online cards. * @param int|null $monetaryAccountIdFallback ID of the MA to be used as * fallback for this card if insufficient balance. * Fallback account is removed if not supplied. @@ -410,6 +427,7 @@ public static function update( CardMagStripePermission $magStripePermission = null, array $countryPermission = null, array $pinCodeAssignment = null, + array $primaryAccountNumbersVirtual = null, int $monetaryAccountIdFallback = null, array $customHeaders = [] ): BunqResponseCard { @@ -430,6 +448,7 @@ public static function update( self::FIELD_MAG_STRIPE_PERMISSION => $magStripePermission, self::FIELD_COUNTRY_PERMISSION => $countryPermission, self::FIELD_PIN_CODE_ASSIGNMENT => $pinCodeAssignment, + self::FIELD_PRIMARY_ACCOUNT_NUMBERS_VIRTUAL => $primaryAccountNumbersVirtual, self::FIELD_MONETARY_ACCOUNT_ID_FALLBACK => $monetaryAccountIdFallback, ], $customHeaders @@ -769,6 +788,27 @@ public function setPrimaryAccountNumberFourDigit($primaryAccountNumberFourDigit) $this->primaryAccountNumberFourDigit = $primaryAccountNumberFourDigit; } + /** + * Array of PANs, status, description and account id for online cards. + * + * @return CardVirtualPrimaryAccountNumber[] + */ + public function getPrimaryAccountNumbersVirtual() + { + return $this->primaryAccountNumbersVirtual; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param CardVirtualPrimaryAccountNumber[] $primaryAccountNumbersVirtual + */ + public function setPrimaryAccountNumbersVirtual($primaryAccountNumbersVirtual) + { + $this->primaryAccountNumbersVirtual = $primaryAccountNumbersVirtual; + } + /** * The spending limit for the card. * @@ -834,27 +874,6 @@ public function setLimit($limit) $this->limit = $limit; } - /** - * The countries for which to grant (temporary) permissions to use the card. - * - * @return CardMagStripePermission - */ - public function getMagStripePermission() - { - return $this->magStripePermission; - } - - /** - * @deprecated User should not be able to set values via setters, use - * constructor. - * - * @param CardMagStripePermission $magStripePermission - */ - public function setMagStripePermission($magStripePermission) - { - $this->magStripePermission = $magStripePermission; - } - /** * The countries for which to grant (temporary) permissions to use the card. * @@ -1042,19 +1061,19 @@ public function isAllFieldNull() return false; } - if (!is_null($this->cardLimit)) { + if (!is_null($this->primaryAccountNumbersVirtual)) { return false; } - if (!is_null($this->cardLimitAtm)) { + if (!is_null($this->cardLimit)) { return false; } - if (!is_null($this->limit)) { + if (!is_null($this->cardLimitAtm)) { return false; } - if (!is_null($this->magStripePermission)) { + if (!is_null($this->limit)) { return false; } diff --git a/src/Model/Generated/Endpoint/Customer.php b/src/Model/Generated/Endpoint/Customer.php index 2ba64f5f..1aeceedd 100644 --- a/src/Model/Generated/Endpoint/Customer.php +++ b/src/Model/Generated/Endpoint/Customer.php @@ -1,7 +1,6 @@ invoiceNotificationPreferenceFieldForRequest = $invoiceNotificationPreference; } - /** - * This method is called "listing" because "list" is a restricted PHP word - * and cannot be used as constants, class names, function or method names. - * - * @param string[] $params - * @param string[] $customHeaders - * - * @return BunqResponseCustomerList - */ - public static function listing(array $params = [], array $customHeaders = []): BunqResponseCustomerList - { - $apiClient = new ApiClient(static::getApiContext()); - $responseRaw = $apiClient->get( - vsprintf( - self::ENDPOINT_URL_LISTING, - [static::determineUserId()] - ), - $params, - $customHeaders - ); - - return BunqResponseCustomerList::castFromBunqResponse( - static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) - ); - } - - /** - * @param int $customerId - * @param string[] $customHeaders - * - * @return BunqResponseCustomer - */ - public static function get(int $customerId, array $customHeaders = []): BunqResponseCustomer - { - $apiClient = new ApiClient(static::getApiContext()); - $responseRaw = $apiClient->get( - vsprintf( - self::ENDPOINT_URL_READ, - [static::determineUserId(), $customerId] - ), - [], - $customHeaders - ); - - return BunqResponseCustomer::castFromBunqResponse( - static::fromJson($responseRaw, self::OBJECT_TYPE_GET) - ); - } - - /** - * @param int $customerId - * @param string|null $billingAccountId The primary billing account - * account's id. - * @param string|null $invoiceNotificationPreference The preferred - * notification type for invoices - * @param string[] $customHeaders - * - * @return BunqResponseInt - */ - public static function update( - int $customerId, - string $billingAccountId = null, - string $invoiceNotificationPreference = null, - array $customHeaders = [] - ): BunqResponseInt { - $apiClient = new ApiClient(static::getApiContext()); - $responseRaw = $apiClient->put( - vsprintf( - self::ENDPOINT_URL_UPDATE, - [static::determineUserId(), $customerId] - ), - [ - self::FIELD_BILLING_ACCOUNT_ID => $billingAccountId, - self::FIELD_INVOICE_NOTIFICATION_PREFERENCE => $invoiceNotificationPreference, - ], - $customHeaders - ); - - return BunqResponseInt::castFromBunqResponse( - static::processForId($responseRaw) - ); - } - /** * The id of the customer. * diff --git a/src/Model/Generated/Endpoint/CustomerLimit.php b/src/Model/Generated/Endpoint/CustomerLimit.php index db3294d8..f5947d9a 100644 --- a/src/Model/Generated/Endpoint/CustomerLimit.php +++ b/src/Model/Generated/Endpoint/CustomerLimit.php @@ -29,6 +29,13 @@ class CustomerLimit extends BunqModel */ protected $limitMonetaryAccount; + /** + * The amount of additional monetary accounts you can create. + * + * @var int + */ + protected $limitMonetaryAccountRemaining; + /** * The limit of Maestro cards. * @@ -127,6 +134,27 @@ public function setLimitMonetaryAccount($limitMonetaryAccount) $this->limitMonetaryAccount = $limitMonetaryAccount; } + /** + * The amount of additional monetary accounts you can create. + * + * @return int + */ + public function getLimitMonetaryAccountRemaining() + { + return $this->limitMonetaryAccountRemaining; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $limitMonetaryAccountRemaining + */ + public function setLimitMonetaryAccountRemaining($limitMonetaryAccountRemaining) + { + $this->limitMonetaryAccountRemaining = $limitMonetaryAccountRemaining; + } + /** * The limit of Maestro cards. * @@ -283,6 +311,10 @@ public function isAllFieldNull() return false; } + if (!is_null($this->limitMonetaryAccountRemaining)) { + return false; + } + if (!is_null($this->limitCardDebitMaestro)) { return false; } diff --git a/src/Model/Generated/Endpoint/ExportRib.php b/src/Model/Generated/Endpoint/ExportRib.php new file mode 100644 index 00000000..fb5b1d1b --- /dev/null +++ b/src/Model/Generated/Endpoint/ExportRib.php @@ -0,0 +1,242 @@ +post( + vsprintf( + self::ENDPOINT_URL_CREATE, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId)] + ), + [], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * Get a RIB for a monetary account by its id. + * + * @param int $exportRibId + * @param int|null $monetaryAccountId + * @param string[] $customHeaders + * + * @return BunqResponseExportRib + */ + public static function get( + int $exportRibId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseExportRib { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId), $exportRibId] + ), + [], + $customHeaders + ); + + return BunqResponseExportRib::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * @param string[] $customHeaders + * @param int $exportRibId + * + * @return BunqResponseNull + */ + public static function delete( + int $exportRibId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseNull { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->delete( + vsprintf( + self::ENDPOINT_URL_DELETE, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId), $exportRibId] + ), + $customHeaders + ); + + return BunqResponseNull::castFromBunqResponse( + new BunqResponse(null, $responseRaw->getHeaders()) + ); + } + + /** + * List all the RIBs for a monetary account. + * + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param int|null $monetaryAccountId + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseExportRibList + */ + public static function listing( + int $monetaryAccountId = null, + array $params = [], + array $customHeaders = [] + ): BunqResponseExportRibList { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId)] + ), + $params, + $customHeaders + ); + + return BunqResponseExportRibList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The id of the rib as created on the server. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The timestamp of the RIB's creation. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The timestamp of the RIB's last update. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/ExportRibContent.php b/src/Model/Generated/Endpoint/ExportRibContent.php new file mode 100644 index 00000000..c8e27301 --- /dev/null +++ b/src/Model/Generated/Endpoint/ExportRibContent.php @@ -0,0 +1,64 @@ +get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId), $exportRibId] + ), + [], + $customHeaders + ); + + return BunqResponseString::castFromBunqResponse( + new BunqResponse($responseRaw->getBodyString(), $responseRaw->getHeaders()) + ); + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + return true; + } +} diff --git a/src/Model/Generated/Endpoint/InvoiceExportPdfContent.php b/src/Model/Generated/Endpoint/InvoiceExportPdfContent.php new file mode 100644 index 00000000..b741b543 --- /dev/null +++ b/src/Model/Generated/Endpoint/InvoiceExportPdfContent.php @@ -0,0 +1,58 @@ +get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId(), $invoiceId] + ), + [], + $customHeaders + ); + + return BunqResponseString::castFromBunqResponse( + new BunqResponse($responseRaw->getBodyString(), $responseRaw->getHeaders()) + ); + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + return true; + } +} diff --git a/src/Model/Generated/Endpoint/MonetaryAccountSavings.php b/src/Model/Generated/Endpoint/MonetaryAccountSavings.php index 9717d65f..6095e3ec 100644 --- a/src/Model/Generated/Endpoint/MonetaryAccountSavings.php +++ b/src/Model/Generated/Endpoint/MonetaryAccountSavings.php @@ -5,6 +5,7 @@ use bunq\Model\Core\BunqModel; use bunq\Model\Generated\Object\Amount; use bunq\Model\Generated\Object\Avatar; +use bunq\Model\Generated\Object\CoOwner; use bunq\Model\Generated\Object\MonetaryAccountSetting; use bunq\Model\Generated\Object\NotificationFilter; use bunq\Model\Generated\Object\Pointer; @@ -35,6 +36,7 @@ class MonetaryAccountSavings extends BunqModel const FIELD_SUB_STATUS = 'sub_status'; const FIELD_REASON = 'reason'; const FIELD_REASON_DESCRIPTION = 'reason_description'; + const FIELD_ALL_CO_OWNER = 'all_co_owner'; const FIELD_NOTIFICATION_FILTERS = 'notification_filters'; const FIELD_SETTING = 'setting'; const FIELD_SAVINGS_GOAL = 'savings_goal'; @@ -167,6 +169,13 @@ class MonetaryAccountSavings extends BunqModel */ protected $reasonDescription; + /** + * The users the account will be joint with. + * + * @var CoOwner[] + */ + protected $allCoOwner; + /** * The id of the User who owns the MonetaryAccountSavings. * @@ -284,6 +293,13 @@ class MonetaryAccountSavings extends BunqModel */ protected $reasonDescriptionFieldForRequest; + /** + * The users the account will be joint with. + * + * @var CoOwner[]|null + */ + protected $allCoOwnerFieldForRequest; + /** * The types of notifications that will result in a push notification or URL * callback for this MonetaryAccountSavings. @@ -342,6 +358,8 @@ class MonetaryAccountSavings extends BunqModel * MonetaryAccountSavings. Can be any user provided message. * Should only be specified if updating the status to * CANCELLED. + * @param CoOwner[]|null $allCoOwner The users the account will be joint + * with. * @param NotificationFilter[]|null $notificationFilters The types of * notifications that will result in a push notification or * URL callback for this MonetaryAccountSavings. @@ -358,6 +376,7 @@ public function __construct( string $subStatus = null, string $reason = null, string $reasonDescription = null, + array $allCoOwner = null, array $notificationFilters = null, MonetaryAccountSetting $setting = null ) { @@ -369,6 +388,7 @@ public function __construct( $this->subStatusFieldForRequest = $subStatus; $this->reasonFieldForRequest = $reason; $this->reasonDescriptionFieldForRequest = $reasonDescription; + $this->allCoOwnerFieldForRequest = $allCoOwner; $this->notificationFiltersFieldForRequest = $notificationFilters; $this->settingFieldForRequest = $setting; $this->savingsGoalFieldForRequest = $savingsGoal; @@ -412,6 +432,8 @@ public function __construct( * MonetaryAccountSavings. Can be any user provided message. * Should only be specified if updating the status to * CANCELLED. + * @param CoOwner[]|null $allCoOwner The users the account will be joint + * with. * @param NotificationFilter[]|null $notificationFilters The types of * notifications that will result in a push notification or * URL callback for this MonetaryAccountSavings. @@ -431,6 +453,7 @@ public static function create( string $subStatus = null, string $reason = null, string $reasonDescription = null, + array $allCoOwner = null, array $notificationFilters = null, MonetaryAccountSetting $setting = null, array $customHeaders = [] @@ -450,6 +473,7 @@ public static function create( self::FIELD_SUB_STATUS => $subStatus, self::FIELD_REASON => $reason, self::FIELD_REASON_DESCRIPTION => $reasonDescription, + self::FIELD_ALL_CO_OWNER => $allCoOwner, self::FIELD_NOTIFICATION_FILTERS => $notificationFilters, self::FIELD_SETTING => $setting, self::FIELD_SAVINGS_GOAL => $savingsGoal, @@ -952,6 +976,27 @@ public function setReasonDescription($reasonDescription) $this->reasonDescription = $reasonDescription; } + /** + * The users the account will be joint with. + * + * @return CoOwner[] + */ + public function getAllCoOwner() + { + return $this->allCoOwner; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param CoOwner[] $allCoOwner + */ + public function setAllCoOwner($allCoOwner) + { + $this->allCoOwner = $allCoOwner; + } + /** * The id of the User who owns the MonetaryAccountSavings. * @@ -1149,6 +1194,10 @@ public function isAllFieldNull() return false; } + if (!is_null($this->allCoOwner)) { + return false; + } + if (!is_null($this->userId)) { return false; } diff --git a/src/Model/Generated/Endpoint/NoteAttachmentSchedulePayment.php b/src/Model/Generated/Endpoint/NoteAttachmentSchedulePayment.php new file mode 100644 index 00000000..73283918 --- /dev/null +++ b/src/Model/Generated/Endpoint/NoteAttachmentSchedulePayment.php @@ -0,0 +1,432 @@ +descriptionFieldForRequest = $description; + $this->attachmentIdFieldForRequest = $attachmentId; + } + + /** + * @param int $schedulePaymentId + * @param int $attachmentId The reference to the uploaded file to attach to + * this note. + * @param int|null $monetaryAccountId + * @param string|null $description Optional description of the attachment. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function create( + int $schedulePaymentId, + int $attachmentId, + int $monetaryAccountId = null, + string $description = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->post( + vsprintf( + self::ENDPOINT_URL_CREATE, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId), $schedulePaymentId] + ), + [ + self::FIELD_DESCRIPTION => $description, + self::FIELD_ATTACHMENT_ID => $attachmentId, + ], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param int $schedulePaymentId + * @param int $noteAttachmentSchedulePaymentId + * @param int|null $monetaryAccountId + * @param string|null $description Optional description of the attachment. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function update( + int $schedulePaymentId, + int $noteAttachmentSchedulePaymentId, + int $monetaryAccountId = null, + string $description = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->put( + vsprintf( + self::ENDPOINT_URL_UPDATE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentId, + $noteAttachmentSchedulePaymentId, + ] + ), + [self::FIELD_DESCRIPTION => $description], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param string[] $customHeaders + * @param int $schedulePaymentId + * @param int $noteAttachmentSchedulePaymentId + * + * @return BunqResponseNull + */ + public static function delete( + int $schedulePaymentId, + int $noteAttachmentSchedulePaymentId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseNull { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->delete( + vsprintf( + self::ENDPOINT_URL_DELETE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentId, + $noteAttachmentSchedulePaymentId, + ] + ), + $customHeaders + ); + + return BunqResponseNull::castFromBunqResponse( + new BunqResponse(null, $responseRaw->getHeaders()) + ); + } + + /** + * Manage the notes for a given user. + * + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param int $schedulePaymentId + * @param int|null $monetaryAccountId + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseNoteAttachmentSchedulePaymentList + */ + public static function listing( + int $schedulePaymentId, + int $monetaryAccountId = null, + array $params = [], + array $customHeaders = [] + ): BunqResponseNoteAttachmentSchedulePaymentList { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId), $schedulePaymentId] + ), + $params, + $customHeaders + ); + + return BunqResponseNoteAttachmentSchedulePaymentList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * @param int $schedulePaymentId + * @param int $noteAttachmentSchedulePaymentId + * @param int|null $monetaryAccountId + * @param string[] $customHeaders + * + * @return BunqResponseNoteAttachmentSchedulePayment + */ + public static function get( + int $schedulePaymentId, + int $noteAttachmentSchedulePaymentId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseNoteAttachmentSchedulePayment { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentId, + $noteAttachmentSchedulePaymentId, + ] + ), + [], + $customHeaders + ); + + return BunqResponseNoteAttachmentSchedulePayment::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The id of the note. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The timestamp of the note's creation. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The timestamp of the note's last update. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The label of the user who created this note. + * + * @return LabelUser + */ + public function getLabelUserCreator() + { + return $this->labelUserCreator; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelUser $labelUserCreator + */ + public function setLabelUserCreator($labelUserCreator) + { + $this->labelUserCreator = $labelUserCreator; + } + + /** + * Optional description of the attachment. + * + * @return string + */ + public function getDescription() + { + return $this->description; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $description + */ + public function setDescription($description) + { + $this->description = $description; + } + + /** + * The attachment attached to the note. + * + * @return AttachmentMonetaryAccountPayment[] + */ + public function getAttachment() + { + return $this->attachment; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param AttachmentMonetaryAccountPayment[] $attachment + */ + public function setAttachment($attachment) + { + $this->attachment = $attachment; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->labelUserCreator)) { + return false; + } + + if (!is_null($this->description)) { + return false; + } + + if (!is_null($this->attachment)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/NoteAttachmentSchedulePaymentBatch.php b/src/Model/Generated/Endpoint/NoteAttachmentSchedulePaymentBatch.php new file mode 100644 index 00000000..720d8b46 --- /dev/null +++ b/src/Model/Generated/Endpoint/NoteAttachmentSchedulePaymentBatch.php @@ -0,0 +1,440 @@ +descriptionFieldForRequest = $description; + $this->attachmentIdFieldForRequest = $attachmentId; + } + + /** + * @param int $schedulePaymentBatchId + * @param int $attachmentId The reference to the uploaded file to attach to + * this note. + * @param int|null $monetaryAccountId + * @param string|null $description Optional description of the attachment. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function create( + int $schedulePaymentBatchId, + int $attachmentId, + int $monetaryAccountId = null, + string $description = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->post( + vsprintf( + self::ENDPOINT_URL_CREATE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + ] + ), + [ + self::FIELD_DESCRIPTION => $description, + self::FIELD_ATTACHMENT_ID => $attachmentId, + ], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param int $schedulePaymentBatchId + * @param int $noteAttachmentSchedulePaymentBatchId + * @param int|null $monetaryAccountId + * @param string|null $description Optional description of the attachment. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function update( + int $schedulePaymentBatchId, + int $noteAttachmentSchedulePaymentBatchId, + int $monetaryAccountId = null, + string $description = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->put( + vsprintf( + self::ENDPOINT_URL_UPDATE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + $noteAttachmentSchedulePaymentBatchId, + ] + ), + [self::FIELD_DESCRIPTION => $description], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param string[] $customHeaders + * @param int $schedulePaymentBatchId + * @param int $noteAttachmentSchedulePaymentBatchId + * + * @return BunqResponseNull + */ + public static function delete( + int $schedulePaymentBatchId, + int $noteAttachmentSchedulePaymentBatchId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseNull { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->delete( + vsprintf( + self::ENDPOINT_URL_DELETE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + $noteAttachmentSchedulePaymentBatchId, + ] + ), + $customHeaders + ); + + return BunqResponseNull::castFromBunqResponse( + new BunqResponse(null, $responseRaw->getHeaders()) + ); + } + + /** + * Manage the notes for a given user. + * + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param int $schedulePaymentBatchId + * @param int|null $monetaryAccountId + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseNoteAttachmentSchedulePaymentBatchList + */ + public static function listing( + int $schedulePaymentBatchId, + int $monetaryAccountId = null, + array $params = [], + array $customHeaders = [] + ): BunqResponseNoteAttachmentSchedulePaymentBatchList { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + ] + ), + $params, + $customHeaders + ); + + return BunqResponseNoteAttachmentSchedulePaymentBatchList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * @param int $schedulePaymentBatchId + * @param int $noteAttachmentSchedulePaymentBatchId + * @param int|null $monetaryAccountId + * @param string[] $customHeaders + * + * @return BunqResponseNoteAttachmentSchedulePaymentBatch + */ + public static function get( + int $schedulePaymentBatchId, + int $noteAttachmentSchedulePaymentBatchId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseNoteAttachmentSchedulePaymentBatch { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + $noteAttachmentSchedulePaymentBatchId, + ] + ), + [], + $customHeaders + ); + + return BunqResponseNoteAttachmentSchedulePaymentBatch::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The id of the note. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The timestamp of the note's creation. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The timestamp of the note's last update. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The label of the user who created this note. + * + * @return LabelUser + */ + public function getLabelUserCreator() + { + return $this->labelUserCreator; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelUser $labelUserCreator + */ + public function setLabelUserCreator($labelUserCreator) + { + $this->labelUserCreator = $labelUserCreator; + } + + /** + * Optional description of the attachment. + * + * @return string + */ + public function getDescription() + { + return $this->description; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $description + */ + public function setDescription($description) + { + $this->description = $description; + } + + /** + * The attachment attached to the note. + * + * @return AttachmentMonetaryAccountPayment[] + */ + public function getAttachment() + { + return $this->attachment; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param AttachmentMonetaryAccountPayment[] $attachment + */ + public function setAttachment($attachment) + { + $this->attachment = $attachment; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->labelUserCreator)) { + return false; + } + + if (!is_null($this->description)) { + return false; + } + + if (!is_null($this->attachment)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/NoteTextSchedulePayment.php b/src/Model/Generated/Endpoint/NoteTextSchedulePayment.php new file mode 100644 index 00000000..f045e964 --- /dev/null +++ b/src/Model/Generated/Endpoint/NoteTextSchedulePayment.php @@ -0,0 +1,382 @@ +contentFieldForRequest = $content; + } + + /** + * @param int $schedulePaymentId + * @param int|null $monetaryAccountId + * @param string|null $content The content of the note. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function create( + int $schedulePaymentId, + int $monetaryAccountId = null, + string $content = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->post( + vsprintf( + self::ENDPOINT_URL_CREATE, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId), $schedulePaymentId] + ), + [self::FIELD_CONTENT => $content], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param int $schedulePaymentId + * @param int $noteTextSchedulePaymentId + * @param int|null $monetaryAccountId + * @param string|null $content The content of the note. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function update( + int $schedulePaymentId, + int $noteTextSchedulePaymentId, + int $monetaryAccountId = null, + string $content = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->put( + vsprintf( + self::ENDPOINT_URL_UPDATE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentId, + $noteTextSchedulePaymentId, + ] + ), + [self::FIELD_CONTENT => $content], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param string[] $customHeaders + * @param int $schedulePaymentId + * @param int $noteTextSchedulePaymentId + * + * @return BunqResponseNull + */ + public static function delete( + int $schedulePaymentId, + int $noteTextSchedulePaymentId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseNull { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->delete( + vsprintf( + self::ENDPOINT_URL_DELETE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentId, + $noteTextSchedulePaymentId, + ] + ), + $customHeaders + ); + + return BunqResponseNull::castFromBunqResponse( + new BunqResponse(null, $responseRaw->getHeaders()) + ); + } + + /** + * Manage the notes for a given user. + * + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param int $schedulePaymentId + * @param int|null $monetaryAccountId + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseNoteTextSchedulePaymentList + */ + public static function listing( + int $schedulePaymentId, + int $monetaryAccountId = null, + array $params = [], + array $customHeaders = [] + ): BunqResponseNoteTextSchedulePaymentList { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId), $schedulePaymentId] + ), + $params, + $customHeaders + ); + + return BunqResponseNoteTextSchedulePaymentList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * @param int $schedulePaymentId + * @param int $noteTextSchedulePaymentId + * @param int|null $monetaryAccountId + * @param string[] $customHeaders + * + * @return BunqResponseNoteTextSchedulePayment + */ + public static function get( + int $schedulePaymentId, + int $noteTextSchedulePaymentId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseNoteTextSchedulePayment { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentId, + $noteTextSchedulePaymentId, + ] + ), + [], + $customHeaders + ); + + return BunqResponseNoteTextSchedulePayment::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The id of the note. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The timestamp of the note's creation. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The timestamp of the note's last update. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The label of the user who created this note. + * + * @return LabelUser + */ + public function getLabelUserCreator() + { + return $this->labelUserCreator; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelUser $labelUserCreator + */ + public function setLabelUserCreator($labelUserCreator) + { + $this->labelUserCreator = $labelUserCreator; + } + + /** + * The content of the note. + * + * @return string + */ + public function getContent() + { + return $this->content; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $content + */ + public function setContent($content) + { + $this->content = $content; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->labelUserCreator)) { + return false; + } + + if (!is_null($this->content)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/NoteTextSchedulePaymentBatch.php b/src/Model/Generated/Endpoint/NoteTextSchedulePaymentBatch.php new file mode 100644 index 00000000..1d9793c4 --- /dev/null +++ b/src/Model/Generated/Endpoint/NoteTextSchedulePaymentBatch.php @@ -0,0 +1,390 @@ +contentFieldForRequest = $content; + } + + /** + * @param int $schedulePaymentBatchId + * @param int|null $monetaryAccountId + * @param string|null $content The content of the note. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function create( + int $schedulePaymentBatchId, + int $monetaryAccountId = null, + string $content = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->post( + vsprintf( + self::ENDPOINT_URL_CREATE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + ] + ), + [self::FIELD_CONTENT => $content], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param int $schedulePaymentBatchId + * @param int $noteTextSchedulePaymentBatchId + * @param int|null $monetaryAccountId + * @param string|null $content The content of the note. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function update( + int $schedulePaymentBatchId, + int $noteTextSchedulePaymentBatchId, + int $monetaryAccountId = null, + string $content = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->put( + vsprintf( + self::ENDPOINT_URL_UPDATE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + $noteTextSchedulePaymentBatchId, + ] + ), + [self::FIELD_CONTENT => $content], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param string[] $customHeaders + * @param int $schedulePaymentBatchId + * @param int $noteTextSchedulePaymentBatchId + * + * @return BunqResponseNull + */ + public static function delete( + int $schedulePaymentBatchId, + int $noteTextSchedulePaymentBatchId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseNull { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->delete( + vsprintf( + self::ENDPOINT_URL_DELETE, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + $noteTextSchedulePaymentBatchId, + ] + ), + $customHeaders + ); + + return BunqResponseNull::castFromBunqResponse( + new BunqResponse(null, $responseRaw->getHeaders()) + ); + } + + /** + * Manage the notes for a given user. + * + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param int $schedulePaymentBatchId + * @param int|null $monetaryAccountId + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseNoteTextSchedulePaymentBatchList + */ + public static function listing( + int $schedulePaymentBatchId, + int $monetaryAccountId = null, + array $params = [], + array $customHeaders = [] + ): BunqResponseNoteTextSchedulePaymentBatchList { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + ] + ), + $params, + $customHeaders + ); + + return BunqResponseNoteTextSchedulePaymentBatchList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * @param int $schedulePaymentBatchId + * @param int $noteTextSchedulePaymentBatchId + * @param int|null $monetaryAccountId + * @param string[] $customHeaders + * + * @return BunqResponseNoteTextSchedulePaymentBatch + */ + public static function get( + int $schedulePaymentBatchId, + int $noteTextSchedulePaymentBatchId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseNoteTextSchedulePaymentBatch { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $schedulePaymentBatchId, + $noteTextSchedulePaymentBatchId, + ] + ), + [], + $customHeaders + ); + + return BunqResponseNoteTextSchedulePaymentBatch::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The id of the note. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The timestamp of the note's creation. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The timestamp of the note's last update. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The label of the user who created this note. + * + * @return LabelUser + */ + public function getLabelUserCreator() + { + return $this->labelUserCreator; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelUser $labelUserCreator + */ + public function setLabelUserCreator($labelUserCreator) + { + $this->labelUserCreator = $labelUserCreator; + } + + /** + * The content of the note. + * + * @return string + */ + public function getContent() + { + return $this->content; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $content + */ + public function setContent($content) + { + $this->content = $content; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->labelUserCreator)) { + return false; + } + + if (!is_null($this->content)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/OauthCallbackUrl.php b/src/Model/Generated/Endpoint/OauthCallbackUrl.php new file mode 100644 index 00000000..82ebdbec --- /dev/null +++ b/src/Model/Generated/Endpoint/OauthCallbackUrl.php @@ -0,0 +1,224 @@ +urlFieldForRequest = $url; + } + + /** + * @param int $oauthClientId + * @param int $oauthCallbackUrlId + * @param string[] $customHeaders + * + * @return BunqResponseOauthCallbackUrl + */ + public static function get( + int $oauthClientId, + int $oauthCallbackUrlId, + array $customHeaders = [] + ): BunqResponseOauthCallbackUrl { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), $oauthClientId, $oauthCallbackUrlId] + ), + [], + $customHeaders + ); + + return BunqResponseOauthCallbackUrl::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * @param int $oauthClientId + * @param string $url The URL for this callback. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function create(int $oauthClientId, string $url, array $customHeaders = []): BunqResponseInt + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->post( + vsprintf( + self::ENDPOINT_URL_CREATE, + [static::determineUserId(), $oauthClientId] + ), + [self::FIELD_URL => $url], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param int $oauthClientId + * @param int $oauthCallbackUrlId + * @param string|null $url The URL for this callback. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function update( + int $oauthClientId, + int $oauthCallbackUrlId, + string $url = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->put( + vsprintf( + self::ENDPOINT_URL_UPDATE, + [static::determineUserId(), $oauthClientId, $oauthCallbackUrlId] + ), + [self::FIELD_URL => $url], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param int $oauthClientId + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseOauthCallbackUrlList + */ + public static function listing( + int $oauthClientId, + array $params = [], + array $customHeaders = [] + ): BunqResponseOauthCallbackUrlList { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId(), $oauthClientId] + ), + $params, + $customHeaders + ); + + return BunqResponseOauthCallbackUrlList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * @param string[] $customHeaders + * @param int $oauthClientId + * @param int $oauthCallbackUrlId + * + * @return BunqResponseNull + */ + public static function delete( + int $oauthClientId, + int $oauthCallbackUrlId, + array $customHeaders = [] + ): BunqResponseNull { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->delete( + vsprintf( + self::ENDPOINT_URL_DELETE, + [static::determineUserId(), $oauthClientId, $oauthCallbackUrlId] + ), + $customHeaders + ); + + return BunqResponseNull::castFromBunqResponse( + new BunqResponse(null, $responseRaw->getHeaders()) + ); + } + + /** + * The URL for this callback. + * + * @return string + */ + public function getUrl() + { + return $this->url; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $url + */ + public function setUrl($url) + { + $this->url = $url; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->url)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/OauthClient.php b/src/Model/Generated/Endpoint/OauthClient.php new file mode 100644 index 00000000..fd3159ef --- /dev/null +++ b/src/Model/Generated/Endpoint/OauthClient.php @@ -0,0 +1,284 @@ +statusFieldForRequest = $status; + } + + /** + * @param int $oauthClientId + * @param string[] $customHeaders + * + * @return BunqResponseOauthClient + */ + public static function get(int $oauthClientId, array $customHeaders = []): BunqResponseOauthClient + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), $oauthClientId] + ), + [], + $customHeaders + ); + + return BunqResponseOauthClient::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * @param string|null $status The status of the Oauth Client, can be ACTIVE + * or CANCELLED. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function create(string $status = null, array $customHeaders = []): BunqResponseInt + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->post( + vsprintf( + self::ENDPOINT_URL_CREATE, + [static::determineUserId()] + ), + [self::FIELD_STATUS => $status], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param int $oauthClientId + * @param string|null $status The status of the Oauth Client, can be ACTIVE + * or CANCELLED. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function update(int $oauthClientId, string $status = null, array $customHeaders = []): BunqResponseInt + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->put( + vsprintf( + self::ENDPOINT_URL_UPDATE, + [static::determineUserId(), $oauthClientId] + ), + [self::FIELD_STATUS => $status], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseOauthClientList + */ + public static function listing(array $params = [], array $customHeaders = []): BunqResponseOauthClientList + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId()] + ), + $params, + $customHeaders + ); + + return BunqResponseOauthClientList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The status of the pack group, can be ACTIVE, CANCELLED or + * CANCELLED_PENDING. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * The Client ID associated with this Oauth Client + * + * @return string + */ + public function getClientId() + { + return $this->clientId; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $clientId + */ + public function setClientId($clientId) + { + $this->clientId = $clientId; + } + + /** + * Secret associated with this Oauth Client + * + * @return string + */ + public function getSecret() + { + return $this->secret; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $secret + */ + public function setSecret($secret) + { + $this->secret = $secret; + } + + /** + * The callback URLs which are bound to this Oauth Client + * + * @return OauthCallbackUrl + */ + public function getCallbackUrl() + { + return $this->callbackUrl; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param OauthCallbackUrl $callbackUrl + */ + public function setCallbackUrl($callbackUrl) + { + $this->callbackUrl = $callbackUrl; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->clientId)) { + return false; + } + + if (!is_null($this->secret)) { + return false; + } + + if (!is_null($this->callbackUrl)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/PaymentServiceProviderCredential.php b/src/Model/Generated/Endpoint/PaymentServiceProviderCredential.php new file mode 100644 index 00000000..cea26be6 --- /dev/null +++ b/src/Model/Generated/Endpoint/PaymentServiceProviderCredential.php @@ -0,0 +1,377 @@ +clientPaymentServiceProviderCertificateFieldForRequest = $clientPaymentServiceProviderCertificate; + $this->clientPaymentServiceProviderCertificateChainFieldForRequest = + $clientPaymentServiceProviderCertificateChain; + $this->clientPublicKeySignatureFieldForRequest = $clientPublicKeySignature; + } + + /** + * @param int $paymentServiceProviderCredentialId + * @param string[] $customHeaders + * + * @return BunqResponsePaymentServiceProviderCredential + */ + public static function get( + int $paymentServiceProviderCredentialId, + array $customHeaders = [] + ): BunqResponsePaymentServiceProviderCredential { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [$paymentServiceProviderCredentialId] + ), + [], + $customHeaders + ); + + return BunqResponsePaymentServiceProviderCredential::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * @param string $clientPaymentServiceProviderCertificate Payment Services + * Directive 2 compatible QSEAL certificate + * @param string $clientPaymentServiceProviderCertificateChain Intermediate + * and root certificate belonging to the provided + * certificate. + * @param string $clientPublicKeySignature The Base64 encoded signature of + * the public key provided during installation and with + * the installation token appended as a nonce. Signed + * with the private key belonging to the QSEAL + * certificate. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function create( + string $clientPaymentServiceProviderCertificate, + string $clientPaymentServiceProviderCertificateChain, + string $clientPublicKeySignature, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->post( + vsprintf( + self::ENDPOINT_URL_CREATE, + [] + ), + [ + self::FIELD_CLIENT_PAYMENT_SERVICE_PROVIDER_CERTIFICATE => $clientPaymentServiceProviderCertificate, + self::FIELD_CLIENT_PAYMENT_SERVICE_PROVIDER_CERTIFICATE_CHAIN => $clientPaymentServiceProviderCertificateChain, + self::FIELD_CLIENT_PUBLIC_KEY_SIGNATURE => $clientPublicKeySignature, + ], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * The id of the credential. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The timestamp of the credential object's creation. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The timestamp of the credential object's last update. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The status of the credential. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * When the status is PENDING_FIRST_USE: when the credential expires. + * + * @return string + */ + public function getExpiryTime() + { + return $this->expiryTime; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $expiryTime + */ + public function setExpiryTime($expiryTime) + { + $this->expiryTime = $expiryTime; + } + + /** + * When the status is PENDING_FIRST_USE: the value of the token. + * + * @return string + */ + public function getTokenValue() + { + return $this->tokenValue; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $tokenValue + */ + public function setTokenValue($tokenValue) + { + $this->tokenValue = $tokenValue; + } + + /** + * When the status is ACTIVE: the details of the device that may use the + * credential. + * + * @return PermittedDevice + */ + public function getPermittedDevice() + { + return $this->permittedDevice; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param PermittedDevice $permittedDevice + */ + public function setPermittedDevice($permittedDevice) + { + $this->permittedDevice = $permittedDevice; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->expiryTime)) { + return false; + } + + if (!is_null($this->tokenValue)) { + return false; + } + + if (!is_null($this->permittedDevice)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/Reward.php b/src/Model/Generated/Endpoint/Reward.php new file mode 100644 index 00000000..6cd7df74 --- /dev/null +++ b/src/Model/Generated/Endpoint/Reward.php @@ -0,0 +1,339 @@ +get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), $rewardId] + ), + [], + $customHeaders + ); + + return BunqResponseReward::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseRewardList + */ + public static function listing(array $params = [], array $customHeaders = []): BunqResponseRewardList + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId()] + ), + $params, + $customHeaders + ); + + return BunqResponseRewardList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The id of the reward. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The time the reward was created. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The time the reward was last updated. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The status of the reward. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * The subStatus of the reward. + * + * @return string + */ + public function getSubStatus() + { + return $this->subStatus; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $subStatus + */ + public function setSubStatus($subStatus) + { + $this->subStatus = $subStatus; + } + + /** + * The type of the reward. + * + * @return string + */ + public function getType() + { + return $this->type; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $type + */ + public function setType($type) + { + $this->type = $type; + } + + /** + * The alias of the other user eligible for the reward award. + * + * @return LabelUser + */ + public function getCounterpartyAlias() + { + return $this->counterpartyAlias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelUser $counterpartyAlias + */ + public function setCounterpartyAlias($counterpartyAlias) + { + $this->counterpartyAlias = $counterpartyAlias; + } + + /** + * The amount that will be/was awarded as reward for the reward. + * + * @return Amount + */ + public function getAmountReward() + { + return $this->amountReward; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountReward + */ + public function setAmountReward($amountReward) + { + $this->amountReward = $amountReward; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->subStatus)) { + return false; + } + + if (!is_null($this->type)) { + return false; + } + + if (!is_null($this->counterpartyAlias)) { + return false; + } + + if (!is_null($this->amountReward)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/RewardRecipient.php b/src/Model/Generated/Endpoint/RewardRecipient.php new file mode 100644 index 00000000..641f85b1 --- /dev/null +++ b/src/Model/Generated/Endpoint/RewardRecipient.php @@ -0,0 +1,339 @@ +get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), $rewardRecipientId] + ), + [], + $customHeaders + ); + + return BunqResponseRewardRecipient::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseRewardRecipientList + */ + public static function listing(array $params = [], array $customHeaders = []): BunqResponseRewardRecipientList + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId()] + ), + $params, + $customHeaders + ); + + return BunqResponseRewardRecipientList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The id of the reward. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The time the reward was created. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The time the reward was last updated. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The status of the reward. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * The subStatus of the reward. + * + * @return string + */ + public function getSubStatus() + { + return $this->subStatus; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $subStatus + */ + public function setSubStatus($subStatus) + { + $this->subStatus = $subStatus; + } + + /** + * The type of the reward. + * + * @return string + */ + public function getType() + { + return $this->type; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $type + */ + public function setType($type) + { + $this->type = $type; + } + + /** + * The alias of the other user eligible for the reward award. + * + * @return LabelUser + */ + public function getCounterpartyAlias() + { + return $this->counterpartyAlias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelUser $counterpartyAlias + */ + public function setCounterpartyAlias($counterpartyAlias) + { + $this->counterpartyAlias = $counterpartyAlias; + } + + /** + * The amount that will be/was awarded as reward for the reward. + * + * @return Amount + */ + public function getAmountReward() + { + return $this->amountReward; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountReward + */ + public function setAmountReward($amountReward) + { + $this->amountReward = $amountReward; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->subStatus)) { + return false; + } + + if (!is_null($this->type)) { + return false; + } + + if (!is_null($this->counterpartyAlias)) { + return false; + } + + if (!is_null($this->amountReward)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/RewardSender.php b/src/Model/Generated/Endpoint/RewardSender.php new file mode 100644 index 00000000..01ddade3 --- /dev/null +++ b/src/Model/Generated/Endpoint/RewardSender.php @@ -0,0 +1,339 @@ +get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), $rewardSenderId] + ), + [], + $customHeaders + ); + + return BunqResponseRewardSender::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseRewardSenderList + */ + public static function listing(array $params = [], array $customHeaders = []): BunqResponseRewardSenderList + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId()] + ), + $params, + $customHeaders + ); + + return BunqResponseRewardSenderList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The id of the reward. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The time the reward was created. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The time the reward was last updated. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The status of the reward. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * The subStatus of the reward. + * + * @return string + */ + public function getSubStatus() + { + return $this->subStatus; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $subStatus + */ + public function setSubStatus($subStatus) + { + $this->subStatus = $subStatus; + } + + /** + * The type of the reward. + * + * @return string + */ + public function getType() + { + return $this->type; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $type + */ + public function setType($type) + { + $this->type = $type; + } + + /** + * The alias of the other user eligible for the reward award. + * + * @return LabelUser + */ + public function getCounterpartyAlias() + { + return $this->counterpartyAlias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelUser $counterpartyAlias + */ + public function setCounterpartyAlias($counterpartyAlias) + { + $this->counterpartyAlias = $counterpartyAlias; + } + + /** + * The amount that will be/was awarded as reward for the reward. + * + * @return Amount + */ + public function getAmountReward() + { + return $this->amountReward; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountReward + */ + public function setAmountReward($amountReward) + { + $this->amountReward = $amountReward; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->subStatus)) { + return false; + } + + if (!is_null($this->type)) { + return false; + } + + if (!is_null($this->counterpartyAlias)) { + return false; + } + + if (!is_null($this->amountReward)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/SofortMerchantTransaction.php b/src/Model/Generated/Endpoint/SofortMerchantTransaction.php new file mode 100644 index 00000000..65dab617 --- /dev/null +++ b/src/Model/Generated/Endpoint/SofortMerchantTransaction.php @@ -0,0 +1,448 @@ +amountRequestedFieldForRequest = $amountRequested; + $this->issuerFieldForRequest = $issuer; + } + + /** + * @param int $sofortMerchantTransactionId + * @param int|null $monetaryAccountId + * @param string[] $customHeaders + * + * @return BunqResponseSofortMerchantTransaction + */ + public static function get( + int $sofortMerchantTransactionId, + int $monetaryAccountId = null, + array $customHeaders = [] + ): BunqResponseSofortMerchantTransaction { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [ + static::determineUserId(), + static::determineMonetaryAccountId($monetaryAccountId), + $sofortMerchantTransactionId, + ] + ), + [], + $customHeaders + ); + + return BunqResponseSofortMerchantTransaction::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param int|null $monetaryAccountId + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseSofortMerchantTransactionList + */ + public static function listing( + int $monetaryAccountId = null, + array $params = [], + array $customHeaders = [] + ): BunqResponseSofortMerchantTransactionList { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId(), static::determineMonetaryAccountId($monetaryAccountId)] + ), + $params, + $customHeaders + ); + + return BunqResponseSofortMerchantTransactionList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The id of the monetary account this sofort merchant transaction links to. + * + * @return int + */ + public function getMonetaryAccountId() + { + return $this->monetaryAccountId; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $monetaryAccountId + */ + public function setMonetaryAccountId($monetaryAccountId) + { + $this->monetaryAccountId = $monetaryAccountId; + } + + /** + * The alias of the monetary account to add money to. + * + * @return LabelMonetaryAccount + */ + public function getAlias() + { + return $this->alias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelMonetaryAccount $alias + */ + public function setAlias($alias) + { + $this->alias = $alias; + } + + /** + * The alias of the monetary account the money comes from. + * + * @return LabelMonetaryAccount + */ + public function getCounterpartyAlias() + { + return $this->counterpartyAlias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelMonetaryAccount $counterpartyAlias + */ + public function setCounterpartyAlias($counterpartyAlias) + { + $this->counterpartyAlias = $counterpartyAlias; + } + + /** + * In case of a successful transaction, the amount of money that will be + * transferred. + * + * @return Amount + */ + public function getAmountGuaranteed() + { + return $this->amountGuaranteed; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountGuaranteed + */ + public function setAmountGuaranteed($amountGuaranteed) + { + $this->amountGuaranteed = $amountGuaranteed; + } + + /** + * The requested amount of money to add. + * + * @return Amount + */ + public function getAmountRequested() + { + return $this->amountRequested; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountRequested + */ + public function setAmountRequested($amountRequested) + { + $this->amountRequested = $amountRequested; + } + + /** + * The BIC of the issuer. + * + * @return string + */ + public function getIssuer() + { + return $this->issuer; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $issuer + */ + public function setIssuer($issuer) + { + $this->issuer = $issuer; + } + + /** + * The URL to visit to + * + * @return string + */ + public function getIssuerAuthenticationUrl() + { + return $this->issuerAuthenticationUrl; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $issuerAuthenticationUrl + */ + public function setIssuerAuthenticationUrl($issuerAuthenticationUrl) + { + $this->issuerAuthenticationUrl = $issuerAuthenticationUrl; + } + + /** + * The status of the transaction. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * The error message of the transaction. + * + * @return Error[] + */ + public function getErrorMessage() + { + return $this->errorMessage; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Error[] $errorMessage + */ + public function setErrorMessage($errorMessage) + { + $this->errorMessage = $errorMessage; + } + + /** + * The 'transaction ID' of the Sofort transaction. + * + * @return string + */ + public function getTransactionIdentifier() + { + return $this->transactionIdentifier; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $transactionIdentifier + */ + public function setTransactionIdentifier($transactionIdentifier) + { + $this->transactionIdentifier = $transactionIdentifier; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->monetaryAccountId)) { + return false; + } + + if (!is_null($this->alias)) { + return false; + } + + if (!is_null($this->counterpartyAlias)) { + return false; + } + + if (!is_null($this->amountGuaranteed)) { + return false; + } + + if (!is_null($this->amountRequested)) { + return false; + } + + if (!is_null($this->issuer)) { + return false; + } + + if (!is_null($this->issuerAuthenticationUrl)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->errorMessage)) { + return false; + } + + if (!is_null($this->transactionIdentifier)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/TransferwiseQuote.php b/src/Model/Generated/Endpoint/TransferwiseQuote.php new file mode 100644 index 00000000..fe62474c --- /dev/null +++ b/src/Model/Generated/Endpoint/TransferwiseQuote.php @@ -0,0 +1,398 @@ +currencySourceFieldForRequest = $currencySource; + $this->currencyTargetFieldForRequest = $currencyTarget; + $this->amountSourceFieldForRequest = $amountSource; + $this->amountTargetFieldForRequest = $amountTarget; + } + + /** + * The id of the quote. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The timestamp of the quote's creation. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The timestamp of the quote's last update. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * The expiration timestamp of the quote. + * + * @return string + */ + public function getTimeExpiry() + { + return $this->timeExpiry; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $timeExpiry + */ + public function setTimeExpiry($timeExpiry) + { + $this->timeExpiry = $timeExpiry; + } + + /** + * The quote id Transferwise needs. + * + * @return string + */ + public function getQuoteId() + { + return $this->quoteId; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $quoteId + */ + public function setQuoteId($quoteId) + { + $this->quoteId = $quoteId; + } + + /** + * The source amount. + * + * @return Amount + */ + public function getAmountSource() + { + return $this->amountSource; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountSource + */ + public function setAmountSource($amountSource) + { + $this->amountSource = $amountSource; + } + + /** + * The target amount. + * + * @return Amount + */ + public function getAmountTarget() + { + return $this->amountTarget; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountTarget + */ + public function setAmountTarget($amountTarget) + { + $this->amountTarget = $amountTarget; + } + + /** + * The fee amount. + * + * @return Amount + */ + public function getAmountFee() + { + return $this->amountFee; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountFee + */ + public function setAmountFee($amountFee) + { + $this->amountFee = $amountFee; + } + + /** + * The rate. + * + * @return string + */ + public function getRate() + { + return $this->rate; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $rate + */ + public function setRate($rate) + { + $this->rate = $rate; + } + + /** + * The estimated delivery time. + * + * @return string + */ + public function getTimeDeliveryEstimate() + { + return $this->timeDeliveryEstimate; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $timeDeliveryEstimate + */ + public function setTimeDeliveryEstimate($timeDeliveryEstimate) + { + $this->timeDeliveryEstimate = $timeDeliveryEstimate; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + if (!is_null($this->timeExpiry)) { + return false; + } + + if (!is_null($this->quoteId)) { + return false; + } + + if (!is_null($this->amountSource)) { + return false; + } + + if (!is_null($this->amountTarget)) { + return false; + } + + if (!is_null($this->amountFee)) { + return false; + } + + if (!is_null($this->rate)) { + return false; + } + + if (!is_null($this->timeDeliveryEstimate)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/TransferwiseTransfer.php b/src/Model/Generated/Endpoint/TransferwiseTransfer.php new file mode 100644 index 00000000..10a2a81c --- /dev/null +++ b/src/Model/Generated/Endpoint/TransferwiseTransfer.php @@ -0,0 +1,513 @@ +monetaryAccountIdFieldForRequest = $monetaryAccountId; + $this->recipientIdFieldForRequest = $recipientId; + } + + /** + * @param int $transferwiseQuoteId + * @param int $transferwiseTransferId + * @param string[] $customHeaders + * + * @return BunqResponseTransferwiseTransfer + */ + public static function get( + int $transferwiseQuoteId, + int $transferwiseTransferId, + array $customHeaders = [] + ): BunqResponseTransferwiseTransfer { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), $transferwiseQuoteId, $transferwiseTransferId] + ), + [], + $customHeaders + ); + + return BunqResponseTransferwiseTransfer::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The LabelMonetaryAccount containing the public information of 'this' + * (party) side of the Payment. + * + * @return LabelMonetaryAccount + */ + public function getAlias() + { + return $this->alias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelMonetaryAccount $alias + */ + public function setAlias($alias) + { + $this->alias = $alias; + } + + /** + * The LabelMonetaryAccount containing the public information of the other + * (counterparty) side of the Payment. + * + * @return LabelMonetaryAccount + */ + public function getCounterpartyAlias() + { + return $this->counterpartyAlias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelMonetaryAccount $counterpartyAlias + */ + public function setCounterpartyAlias($counterpartyAlias) + { + $this->counterpartyAlias = $counterpartyAlias; + } + + /** + * The status. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * The subStatus. + * + * @return string + */ + public function getSubStatus() + { + return $this->subStatus; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $subStatus + */ + public function setSubStatus($subStatus) + { + $this->subStatus = $subStatus; + } + + /** + * The status as Transferwise reports it. + * + * @return string + */ + public function getStatusTransferwise() + { + return $this->statusTransferwise; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $statusTransferwise + */ + public function setStatusTransferwise($statusTransferwise) + { + $this->statusTransferwise = $statusTransferwise; + } + + /** + * A status to indicatie if Transferwise has an issue with this payment and + * requires more information. + * + * @return string + */ + public function getStatusTransferwiseIssue() + { + return $this->statusTransferwiseIssue; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $statusTransferwiseIssue + */ + public function setStatusTransferwiseIssue($statusTransferwiseIssue) + { + $this->statusTransferwiseIssue = $statusTransferwiseIssue; + } + + /** + * The source amount. + * + * @return Amount + */ + public function getAmountSource() + { + return $this->amountSource; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountSource + */ + public function setAmountSource($amountSource) + { + $this->amountSource = $amountSource; + } + + /** + * The target amount. + * + * @return Amount + */ + public function getAmountTarget() + { + return $this->amountTarget; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $amountTarget + */ + public function setAmountTarget($amountTarget) + { + $this->amountTarget = $amountTarget; + } + + /** + * The rate of the payment. + * + * @return string + */ + public function getRate() + { + return $this->rate; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $rate + */ + public function setRate($rate) + { + $this->rate = $rate; + } + + /** + * The reference of the payment. + * + * @return string + */ + public function getReference() + { + return $this->reference; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $reference + */ + public function setReference($reference) + { + $this->reference = $reference; + } + + /** + * The Pay-In reference of the payment. + * + * @return string + */ + public function getPayInReference() + { + return $this->payInReference; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $payInReference + */ + public function setPayInReference($payInReference) + { + $this->payInReference = $payInReference; + } + + /** + * The estimated delivery time. + * + * @return string + */ + public function getTimeDeliveryEstimate() + { + return $this->timeDeliveryEstimate; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $timeDeliveryEstimate + */ + public function setTimeDeliveryEstimate($timeDeliveryEstimate) + { + $this->timeDeliveryEstimate = $timeDeliveryEstimate; + } + + /** + * The quote details used to created the payment. + * + * @return TransferwiseQuote + */ + public function getQuote() + { + return $this->quote; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param TransferwiseQuote $quote + */ + public function setQuote($quote) + { + $this->quote = $quote; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->alias)) { + return false; + } + + if (!is_null($this->counterpartyAlias)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->subStatus)) { + return false; + } + + if (!is_null($this->statusTransferwise)) { + return false; + } + + if (!is_null($this->statusTransferwiseIssue)) { + return false; + } + + if (!is_null($this->amountSource)) { + return false; + } + + if (!is_null($this->amountTarget)) { + return false; + } + + if (!is_null($this->rate)) { + return false; + } + + if (!is_null($this->reference)) { + return false; + } + + if (!is_null($this->payInReference)) { + return false; + } + + if (!is_null($this->timeDeliveryEstimate)) { + return false; + } + + if (!is_null($this->quote)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/UserCompany.php b/src/Model/Generated/Endpoint/UserCompany.php index 6c97497e..954a597e 100644 --- a/src/Model/Generated/Endpoint/UserCompany.php +++ b/src/Model/Generated/Endpoint/UserCompany.php @@ -42,6 +42,7 @@ class UserCompany extends BunqModel const FIELD_COUNTRY = 'country'; const FIELD_UBO = 'ubo'; const FIELD_CHAMBER_OF_COMMERCE_NUMBER = 'chamber_of_commerce_number'; + const FIELD_LEGAL_FORM = 'legal_form'; const FIELD_STATUS = 'status'; const FIELD_SUB_STATUS = 'sub_status'; const FIELD_SESSION_TIMEOUT = 'session_timeout'; @@ -116,6 +117,13 @@ class UserCompany extends BunqModel */ protected $chamberOfCommerceNumber; + /** + * The company's legal form. + * + * @var string + */ + protected $legalForm; + /** * The type of business entity. * @@ -350,6 +358,13 @@ class UserCompany extends BunqModel */ protected $chamberOfCommerceNumberFieldForRequest; + /** + * The company's legal form. + * + * @var string|null + */ + protected $legalFormFieldForRequest; + /** * The user status. Can be: ACTIVE, SIGNUP, RECOVERY. * @@ -406,6 +421,7 @@ class UserCompany extends BunqModel * ultimate beneficiary owners. Minimum zero, maximum four. * @param string|null $chamberOfCommerceNumber The company's chamber of * commerce number. + * @param string|null $legalForm The company's legal form. * @param string|null $status The user status. Can be: ACTIVE, SIGNUP, * RECOVERY. * @param string|null $subStatus The user sub-status. Can be: NONE, @@ -431,6 +447,7 @@ public function __construct( string $country = null, array $ubo = null, string $chamberOfCommerceNumber = null, + string $legalForm = null, string $status = null, string $subStatus = null, int $sessionTimeout = null, @@ -447,6 +464,7 @@ public function __construct( $this->countryFieldForRequest = $country; $this->uboFieldForRequest = $ubo; $this->chamberOfCommerceNumberFieldForRequest = $chamberOfCommerceNumber; + $this->legalFormFieldForRequest = $legalForm; $this->statusFieldForRequest = $status; $this->subStatusFieldForRequest = $subStatus; $this->sessionTimeoutFieldForRequest = $sessionTimeout; @@ -499,6 +517,7 @@ public static function get(array $customHeaders = []): BunqResponseUserCompany * ultimate beneficiary owners. Minimum zero, maximum four. * @param string|null $chamberOfCommerceNumber The company's chamber of * commerce number. + * @param string|null $legalForm The company's legal form. * @param string|null $status The user status. Can be: ACTIVE, SIGNUP, * RECOVERY. * @param string|null $subStatus The user sub-status. Can be: NONE, @@ -527,6 +546,7 @@ public static function update( string $country = null, array $ubo = null, string $chamberOfCommerceNumber = null, + string $legalForm = null, string $status = null, string $subStatus = null, int $sessionTimeout = null, @@ -551,6 +571,7 @@ public static function update( self::FIELD_COUNTRY => $country, self::FIELD_UBO => $ubo, self::FIELD_CHAMBER_OF_COMMERCE_NUMBER => $chamberOfCommerceNumber, + self::FIELD_LEGAL_FORM => $legalForm, self::FIELD_STATUS => $status, self::FIELD_SUB_STATUS => $subStatus, self::FIELD_SESSION_TIMEOUT => $sessionTimeout, @@ -754,6 +775,27 @@ public function setChamberOfCommerceNumber($chamberOfCommerceNumber) $this->chamberOfCommerceNumber = $chamberOfCommerceNumber; } + /** + * The company's legal form. + * + * @return string + */ + public function getLegalForm() + { + return $this->legalForm; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $legalForm + */ + public function setLegalForm($legalForm) + { + $this->legalForm = $legalForm; + } + /** * The type of business entity. * @@ -1264,6 +1306,10 @@ public function isAllFieldNull() return false; } + if (!is_null($this->legalForm)) { + return false; + } + if (!is_null($this->typeOfBusinessEntity)) { return false; } diff --git a/src/Model/Generated/Endpoint/UserCompanyName.php b/src/Model/Generated/Endpoint/UserCompanyName.php new file mode 100644 index 00000000..8ea74387 --- /dev/null +++ b/src/Model/Generated/Endpoint/UserCompanyName.php @@ -0,0 +1,97 @@ +get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId()] + ), + $params, + $customHeaders + ); + + return BunqResponseUserCompanyNameList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * All known (trade) names for a user company. + * + * @return string[] + */ + public function getNameArray() + { + return $this->nameArray; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string[] $nameArray + */ + public function setNameArray($nameArray) + { + $this->nameArray = $nameArray; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->nameArray)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/UserLegalName.php b/src/Model/Generated/Endpoint/UserLegalName.php new file mode 100644 index 00000000..cf2ac9a4 --- /dev/null +++ b/src/Model/Generated/Endpoint/UserLegalName.php @@ -0,0 +1,89 @@ +get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId()] + ), + $params, + $customHeaders + ); + + return BunqResponseUserLegalNameList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * All legal names that can be used by the user + * + * @return string[] + */ + public function getLegalNames() + { + return $this->legalNames; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string[] $legalNames + */ + public function setLegalNames($legalNames) + { + $this->legalNames = $legalNames; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->legalNames)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Endpoint/WhitelistSdd.php b/src/Model/Generated/Endpoint/WhitelistSdd.php new file mode 100644 index 00000000..c43feea4 --- /dev/null +++ b/src/Model/Generated/Endpoint/WhitelistSdd.php @@ -0,0 +1,554 @@ +monetaryAccountPayingIdFieldForRequest = $monetaryAccountPayingId; + $this->requestIdFieldForRequest = $requestId; + $this->maximumAmountPerMonthFieldForRequest = $maximumAmountPerMonth; + } + + /** + * Get a specific SDD whitelist entry. + * + * @param int $whitelistSddId + * @param string[] $customHeaders + * + * @return BunqResponseWhitelistSdd + */ + public static function get(int $whitelistSddId, array $customHeaders = []): BunqResponseWhitelistSdd + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_READ, + [static::determineUserId(), $whitelistSddId] + ), + [], + $customHeaders + ); + + return BunqResponseWhitelistSdd::castFromBunqResponse( + static::fromJson($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * Create a new SDD whitelist entry. + * + * @param int $monetaryAccountPayingId ID of the monetary account of which + * you want to pay from. + * @param int $requestId ID of the request for which you want to whitelist + * the originating SDD. + * @param Amount $maximumAmountPerMonth The maximum amount of money that is + * allowed to be deducted based on the whitelist. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function create( + int $monetaryAccountPayingId, + int $requestId, + Amount $maximumAmountPerMonth, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->post( + vsprintf( + self::ENDPOINT_URL_CREATE, + [static::determineUserId()] + ), + [ + self::FIELD_MONETARY_ACCOUNT_PAYING_ID => $monetaryAccountPayingId, + self::FIELD_REQUEST_ID => $requestId, + self::FIELD_MAXIMUM_AMOUNT_PER_MONTH => $maximumAmountPerMonth, + ], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param int $whitelistSddId + * @param int|null $monetaryAccountPayingId ID of the monetary account of + * which you want to pay from. + * @param Amount|null $maximumAmountPerMonth The maximum amount of money + * that is allowed to be deducted based on the whitelist. + * @param string[] $customHeaders + * + * @return BunqResponseInt + */ + public static function update( + int $whitelistSddId, + int $monetaryAccountPayingId = null, + Amount $maximumAmountPerMonth = null, + array $customHeaders = [] + ): BunqResponseInt { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->put( + vsprintf( + self::ENDPOINT_URL_UPDATE, + [static::determineUserId(), $whitelistSddId] + ), + [ + self::FIELD_MONETARY_ACCOUNT_PAYING_ID => $monetaryAccountPayingId, + self::FIELD_MAXIMUM_AMOUNT_PER_MONTH => $maximumAmountPerMonth, + ], + $customHeaders + ); + + return BunqResponseInt::castFromBunqResponse( + static::processForId($responseRaw) + ); + } + + /** + * @param string[] $customHeaders + * @param int $whitelistSddId + * + * @return BunqResponseNull + */ + public static function delete(int $whitelistSddId, array $customHeaders = []): BunqResponseNull + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->delete( + vsprintf( + self::ENDPOINT_URL_DELETE, + [static::determineUserId(), $whitelistSddId] + ), + $customHeaders + ); + + return BunqResponseNull::castFromBunqResponse( + new BunqResponse(null, $responseRaw->getHeaders()) + ); + } + + /** + * Get a listing of all SDD whitelist entries for a target monetary account. + * + * This method is called "listing" because "list" is a restricted PHP word + * and cannot be used as constants, class names, function or method names. + * + * @param string[] $params + * @param string[] $customHeaders + * + * @return BunqResponseWhitelistSddList + */ + public static function listing(array $params = [], array $customHeaders = []): BunqResponseWhitelistSddList + { + $apiClient = new ApiClient(static::getApiContext()); + $responseRaw = $apiClient->get( + vsprintf( + self::ENDPOINT_URL_LISTING, + [static::determineUserId()] + ), + $params, + $customHeaders + ); + + return BunqResponseWhitelistSddList::castFromBunqResponse( + static::fromJsonList($responseRaw, self::OBJECT_TYPE_GET) + ); + } + + /** + * The ID of the whitelist entry. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The account to which payments will come in before possibly being + * 'redirected' by the whitelist. + * + * @return int + */ + public function getMonetaryAccountIncomingId() + { + return $this->monetaryAccountIncomingId; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $monetaryAccountIncomingId + */ + public function setMonetaryAccountIncomingId($monetaryAccountIncomingId) + { + $this->monetaryAccountIncomingId = $monetaryAccountIncomingId; + } + + /** + * The account from which payments will be deducted when a transaction is + * matched with this whitelist. + * + * @return int + */ + public function getMonetaryAccountPayingId() + { + return $this->monetaryAccountPayingId; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $monetaryAccountPayingId + */ + public function setMonetaryAccountPayingId($monetaryAccountPayingId) + { + $this->monetaryAccountPayingId = $monetaryAccountPayingId; + } + + /** + * The type of the SDD whitelist, can be CORE or B2B. + * + * @return string + */ + public function getType() + { + return $this->type; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $type + */ + public function setType($type) + { + $this->type = $type; + } + + /** + * The status of the whitelist. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * The credit scheme ID provided by the counterparty. + * + * @return string + */ + public function getCreditSchemeIdentifier() + { + return $this->creditSchemeIdentifier; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $creditSchemeIdentifier + */ + public function setCreditSchemeIdentifier($creditSchemeIdentifier) + { + $this->creditSchemeIdentifier = $creditSchemeIdentifier; + } + + /** + * The mandate ID provided by the counterparty. + * + * @return string + */ + public function getMandateIdentifier() + { + return $this->mandateIdentifier; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $mandateIdentifier + */ + public function setMandateIdentifier($mandateIdentifier) + { + $this->mandateIdentifier = $mandateIdentifier; + } + + /** + * The account to which payments will be paid. + * + * @return LabelMonetaryAccount + */ + public function getCounterpartyAlias() + { + return $this->counterpartyAlias; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelMonetaryAccount $counterpartyAlias + */ + public function setCounterpartyAlias($counterpartyAlias) + { + $this->counterpartyAlias = $counterpartyAlias; + } + + /** + * The monthly maximum amount that can be deducted from the target account. + * + * @return Amount + */ + public function getMaximumAmountPerMonth() + { + return $this->maximumAmountPerMonth; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param Amount $maximumAmountPerMonth + */ + public function setMaximumAmountPerMonth($maximumAmountPerMonth) + { + $this->maximumAmountPerMonth = $maximumAmountPerMonth; + } + + /** + * The user who created the whitelist entry. + * + * @return LabelUser + */ + public function getUserAliasCreated() + { + return $this->userAliasCreated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param LabelUser $userAliasCreated + */ + public function setUserAliasCreated($userAliasCreated) + { + $this->userAliasCreated = $userAliasCreated; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->monetaryAccountIncomingId)) { + return false; + } + + if (!is_null($this->monetaryAccountPayingId)) { + return false; + } + + if (!is_null($this->type)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->creditSchemeIdentifier)) { + return false; + } + + if (!is_null($this->mandateIdentifier)) { + return false; + } + + if (!is_null($this->counterpartyAlias)) { + return false; + } + + if (!is_null($this->maximumAmountPerMonth)) { + return false; + } + + if (!is_null($this->userAliasCreated)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Object/CardBatchEntry.php b/src/Model/Generated/Object/CardBatchEntry.php index 68e9a944..66ef6a08 100644 --- a/src/Model/Generated/Object/CardBatchEntry.php +++ b/src/Model/Generated/Object/CardBatchEntry.php @@ -40,19 +40,26 @@ class CardBatchEntry extends BunqModel protected $statusFieldForRequest; /** - * The limits to define for the card, among CARD_LIMIT_ATM and - * CARD_LIMIT_POS_ICC. All the limits must be provided on update. + * The spending limit for the card. * - * @var CardLimit[]|null + * @var Amount|null */ - protected $limitFieldForRequest; + protected $cardLimitFieldForRequest; + + /** + * The ATM spending limit for the card. + * + * @var Amount|null + */ + protected $cardLimitAtmFieldForRequest; /** - * Whether or not it is allowed to use the mag stripe for the card. + * DEPRECATED: The limits to define for the card, among CARD_LIMIT_ATM and + * CARD_LIMIT_POS_ICC. All the limits must be provided on update. * - * @var CardMagStripePermission|null + * @var CardLimit[]|null */ - protected $magStripePermissionFieldForRequest; + protected $limitFieldForRequest; /** * The countries for which to grant (temporary) permissions to use the card. @@ -70,46 +77,47 @@ class CardBatchEntry extends BunqModel protected $monetaryAccountIdFallbackFieldForRequest; /** - * @param int $id The ID of the card that needs to be updated. - * @param string|null $activationCode The activation code required to set - * status to ACTIVE initially. Can only set status to - * ACTIVE using activation code when order_status is - * ACCEPTED_FOR_PRODUCTION and status is DEACTIVATED. - * @param string|null $status The status to set for the card. Can be ACTIVE, - * DEACTIVATED, LOST, STOLEN or CANCELLED, and can only be - * set to LOST/STOLEN/CANCELLED when order status is - * ACCEPTED_FOR_PRODUCTION/DELIVERED_TO_CUSTOMER/CARD_UPDATE_REQUESTED/CARD_UPDATE_SENT/CARD_UPDATE_ACCEPTED. - * Can only be set to DEACTIVATED after initial - * activation, i.e. order_status is - * DELIVERED_TO_CUSTOMER/CARD_UPDATE_REQUESTED/CARD_UPDATE_SENT/CARD_UPDATE_ACCEPTED. - * Mind that all the possible choices (apart from ACTIVE - * and DEACTIVATED) are permanent and cannot be changed - * after. - * @param CardLimit[]|null $limit The limits to define for the card, among - * CARD_LIMIT_ATM and CARD_LIMIT_POS_ICC. All the limits - * must be provided on update. - * @param CardMagStripePermission|null $magStripePermission Whether or not - * it is allowed to use the mag stripe for the card. - * @param CardCountryPermission[]|null $countryPermission The countries for - * which to grant (temporary) permissions to use the card. - * @param int|null $monetaryAccountIdFallback ID of the MA to be used as - * fallback for this card if insufficient balance. - * Fallback account is removed if not supplied. + * @param int $id The ID of the card that needs to be updated. + * @param string|null $activationCode The activation code required to set + * status to ACTIVE initially. Can only set status to ACTIVE + * using activation code when order_status is + * ACCEPTED_FOR_PRODUCTION and status is DEACTIVATED. + * @param string|null $status The status to set for the card. Can be ACTIVE, + * DEACTIVATED, LOST, STOLEN or CANCELLED, and can only be + * set to LOST/STOLEN/CANCELLED when order status is + * ACCEPTED_FOR_PRODUCTION/DELIVERED_TO_CUSTOMER/CARD_UPDATE_REQUESTED/CARD_UPDATE_SENT/CARD_UPDATE_ACCEPTED. + * Can only be set to DEACTIVATED after initial activation, + * i.e. order_status is + * DELIVERED_TO_CUSTOMER/CARD_UPDATE_REQUESTED/CARD_UPDATE_SENT/CARD_UPDATE_ACCEPTED. + * Mind that all the possible choices (apart from ACTIVE and + * DEACTIVATED) are permanent and cannot be changed after. + * @param Amount|null $cardLimit The spending limit for the card. + * @param Amount|null $cardLimitAtm The ATM spending limit for the card. + * @param CardLimit[]|null $limit DEPRECATED: The limits to define for the + * card, among CARD_LIMIT_ATM and CARD_LIMIT_POS_ICC. All + * the limits must be provided on update. + * @param CardCountryPermission[]|null $countryPermission The countries for + * which to grant (temporary) permissions to use the card. + * @param int|null $monetaryAccountIdFallback ID of the MA to be used as + * fallback for this card if insufficient balance. Fallback + * account is removed if not supplied. */ public function __construct( int $id, string $activationCode = null, string $status = null, + Amount $cardLimit = null, + Amount $cardLimitAtm = null, array $limit = null, - CardMagStripePermission $magStripePermission = null, array $countryPermission = null, int $monetaryAccountIdFallback = null ) { $this->idFieldForRequest = $id; $this->activationCodeFieldForRequest = $activationCode; $this->statusFieldForRequest = $status; + $this->cardLimitFieldForRequest = $cardLimit; + $this->cardLimitAtmFieldForRequest = $cardLimitAtm; $this->limitFieldForRequest = $limit; - $this->magStripePermissionFieldForRequest = $magStripePermission; $this->countryPermissionFieldForRequest = $countryPermission; $this->monetaryAccountIdFallbackFieldForRequest = $monetaryAccountIdFallback; } diff --git a/src/Model/Generated/Object/CardVirtualPrimaryAccountNumber.php b/src/Model/Generated/Object/CardVirtualPrimaryAccountNumber.php new file mode 100644 index 00000000..4e212300 --- /dev/null +++ b/src/Model/Generated/Object/CardVirtualPrimaryAccountNumber.php @@ -0,0 +1,257 @@ +idFieldForRequest = $id; + $this->descriptionFieldForRequest = $description; + $this->statusFieldForRequest = $status; + $this->monetaryAccountIdFieldForRequest = $monetaryAccountId; + } + + /** + * The ID for this Virtual PAN. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The UUID for this Virtual PAN. + * + * @return string + */ + public function getUuid() + { + return $this->uuid; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $uuid + */ + public function setUuid($uuid) + { + $this->uuid = $uuid; + } + + /** + * The description for this Virtual PAN. + * + * @return string + */ + public function getDescription() + { + return $this->description; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $description + */ + public function setDescription($description) + { + $this->description = $description; + } + + /** + * The status for this Virtual PAN. + * + * @return string + */ + public function getStatus() + { + return $this->status; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $status + */ + public function setStatus($status) + { + $this->status = $status; + } + + /** + * The ID of the monetary account to assign to this Virtual PAN. + * + * @return int + */ + public function getMonetaryAccountId() + { + return $this->monetaryAccountId; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $monetaryAccountId + */ + public function setMonetaryAccountId($monetaryAccountId) + { + $this->monetaryAccountId = $monetaryAccountId; + } + + /** + * The last four digits of the Virtual PAN. + * + * @return string + */ + public function getFourDigit() + { + return $this->fourDigit; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $fourDigit + */ + public function setFourDigit($fourDigit) + { + $this->fourDigit = $fourDigit; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->uuid)) { + return false; + } + + if (!is_null($this->description)) { + return false; + } + + if (!is_null($this->status)) { + return false; + } + + if (!is_null($this->monetaryAccountId)) { + return false; + } + + if (!is_null($this->fourDigit)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Object/EventObject.php b/src/Model/Generated/Object/EventObject.php index 73e526e0..42506fe7 100644 --- a/src/Model/Generated/Object/EventObject.php +++ b/src/Model/Generated/Object/EventObject.php @@ -4,11 +4,15 @@ use bunq\exception\BunqException; use bunq\Model\Core\AnchorObjectInterface; use bunq\Model\Core\BunqModel; +use bunq\Model\Generated\Endpoint\BankSwitchServiceNetherlandsIncomingPayment; +use bunq\Model\Generated\Endpoint\BunqMeFundraiserResult; use bunq\Model\Generated\Endpoint\BunqMeTab; +use bunq\Model\Generated\Endpoint\BunqMeTabResultResponse; use bunq\Model\Generated\Endpoint\Card; use bunq\Model\Generated\Endpoint\CardDebit; use bunq\Model\Generated\Endpoint\DraftPayment; use bunq\Model\Generated\Endpoint\FeatureAnnouncement; +use bunq\Model\Generated\Endpoint\IdealMerchantTransaction; use bunq\Model\Generated\Endpoint\Invoice; use bunq\Model\Generated\Endpoint\MasterCardAction; use bunq\Model\Generated\Endpoint\Payment; @@ -16,14 +20,18 @@ use bunq\Model\Generated\Endpoint\RequestInquiry; use bunq\Model\Generated\Endpoint\RequestInquiryBatch; use bunq\Model\Generated\Endpoint\RequestResponse; +use bunq\Model\Generated\Endpoint\RewardRecipient; +use bunq\Model\Generated\Endpoint\RewardSender; use bunq\Model\Generated\Endpoint\ScheduleInstance; use bunq\Model\Generated\Endpoint\SchedulePayment; use bunq\Model\Generated\Endpoint\SchedulePaymentBatch; use bunq\Model\Generated\Endpoint\ShareInviteBankInquiry; use bunq\Model\Generated\Endpoint\ShareInviteBankInquiryBatch; use bunq\Model\Generated\Endpoint\ShareInviteBankResponse; +use bunq\Model\Generated\Endpoint\SofortMerchantTransaction; use bunq\Model\Generated\Endpoint\TabResultInquiry; use bunq\Model\Generated\Endpoint\TabResultResponse; +use bunq\Model\Generated\Endpoint\TransferwiseTransfer; /** * @generated @@ -40,6 +48,16 @@ class EventObject extends BunqModel implements AnchorObjectInterface */ protected $bunqMeTab; + /** + * @var BunqMeTabResultResponse + */ + protected $bunqMeTabResultResponse; + + /** + * @var BunqMeFundraiserResult + */ + protected $bunqMeFundraiserResult; + /** * @var Card */ @@ -60,6 +78,11 @@ class EventObject extends BunqModel implements AnchorObjectInterface */ protected $featureAnnouncement; + /** + * @var IdealMerchantTransaction + */ + protected $idealMerchantTransaction; + /** * @var Invoice */ @@ -85,6 +108,11 @@ class EventObject extends BunqModel implements AnchorObjectInterface */ protected $masterCardAction; + /** + * @var BankSwitchServiceNetherlandsIncomingPayment + */ + protected $bankSwitchServiceNetherlandsIncomingPayment; + /** * @var Payment */ @@ -110,6 +138,16 @@ class EventObject extends BunqModel implements AnchorObjectInterface */ protected $requestResponse; + /** + * @var RewardRecipient + */ + protected $rewardRecipient; + + /** + * @var RewardSender + */ + protected $rewardSender; + /** * @var ShareInviteBankInquiryBatch */ @@ -125,6 +163,11 @@ class EventObject extends BunqModel implements AnchorObjectInterface */ protected $shareInviteBankResponse; + /** + * @var SofortMerchantTransaction + */ + protected $sofortMerchantTransaction; + /** * @var TabResultInquiry */ @@ -135,6 +178,11 @@ class EventObject extends BunqModel implements AnchorObjectInterface */ protected $tabResultResponse; + /** + * @var TransferwiseTransfer + */ + protected $transferwiseTransfer; + /** * @return BunqMeTab */ @@ -154,6 +202,44 @@ public function setBunqMeTab($bunqMeTab) $this->bunqMeTab = $bunqMeTab; } + /** + * @return BunqMeTabResultResponse + */ + public function getBunqMeTabResultResponse() + { + return $this->bunqMeTabResultResponse; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param BunqMeTabResultResponse $bunqMeTabResultResponse + */ + public function setBunqMeTabResultResponse($bunqMeTabResultResponse) + { + $this->bunqMeTabResultResponse = $bunqMeTabResultResponse; + } + + /** + * @return BunqMeFundraiserResult + */ + public function getBunqMeFundraiserResult() + { + return $this->bunqMeFundraiserResult; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param BunqMeFundraiserResult $bunqMeFundraiserResult + */ + public function setBunqMeFundraiserResult($bunqMeFundraiserResult) + { + $this->bunqMeFundraiserResult = $bunqMeFundraiserResult; + } + /** * @return Card */ @@ -230,6 +316,25 @@ public function setFeatureAnnouncement($featureAnnouncement) $this->featureAnnouncement = $featureAnnouncement; } + /** + * @return IdealMerchantTransaction + */ + public function getIdealMerchantTransaction() + { + return $this->idealMerchantTransaction; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param IdealMerchantTransaction $idealMerchantTransaction + */ + public function setIdealMerchantTransaction($idealMerchantTransaction) + { + $this->idealMerchantTransaction = $idealMerchantTransaction; + } + /** * @return Invoice */ @@ -325,6 +430,26 @@ public function setMasterCardAction($masterCardAction) $this->masterCardAction = $masterCardAction; } + /** + * @return BankSwitchServiceNetherlandsIncomingPayment + */ + public function getBankSwitchServiceNetherlandsIncomingPayment() + { + return $this->bankSwitchServiceNetherlandsIncomingPayment; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param BankSwitchServiceNetherlandsIncomingPayment + * $bankSwitchServiceNetherlandsIncomingPayment + */ + public function setBankSwitchServiceNetherlandsIncomingPayment($bankSwitchServiceNetherlandsIncomingPayment) + { + $this->bankSwitchServiceNetherlandsIncomingPayment = $bankSwitchServiceNetherlandsIncomingPayment; + } + /** * @return Payment */ @@ -420,6 +545,44 @@ public function setRequestResponse($requestResponse) $this->requestResponse = $requestResponse; } + /** + * @return RewardRecipient + */ + public function getRewardRecipient() + { + return $this->rewardRecipient; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param RewardRecipient $rewardRecipient + */ + public function setRewardRecipient($rewardRecipient) + { + $this->rewardRecipient = $rewardRecipient; + } + + /** + * @return RewardSender + */ + public function getRewardSender() + { + return $this->rewardSender; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param RewardSender $rewardSender + */ + public function setRewardSender($rewardSender) + { + $this->rewardSender = $rewardSender; + } + /** * @return ShareInviteBankInquiryBatch */ @@ -477,6 +640,25 @@ public function setShareInviteBankResponse($shareInviteBankResponse) $this->shareInviteBankResponse = $shareInviteBankResponse; } + /** + * @return SofortMerchantTransaction + */ + public function getSofortMerchantTransaction() + { + return $this->sofortMerchantTransaction; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param SofortMerchantTransaction $sofortMerchantTransaction + */ + public function setSofortMerchantTransaction($sofortMerchantTransaction) + { + $this->sofortMerchantTransaction = $sofortMerchantTransaction; + } + /** * @return TabResultInquiry */ @@ -515,6 +697,25 @@ public function setTabResultResponse($tabResultResponse) $this->tabResultResponse = $tabResultResponse; } + /** + * @return TransferwiseTransfer + */ + public function getTransferwiseTransfer() + { + return $this->transferwiseTransfer; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param TransferwiseTransfer $transferwiseTransfer + */ + public function setTransferwiseTransfer($transferwiseTransfer) + { + $this->transferwiseTransfer = $transferwiseTransfer; + } + /** * @return BunqModel * @throws BunqException @@ -525,6 +726,14 @@ public function getReferencedObject() return $this->bunqMeTab; } + if (!is_null($this->bunqMeTabResultResponse)) { + return $this->bunqMeTabResultResponse; + } + + if (!is_null($this->bunqMeFundraiserResult)) { + return $this->bunqMeFundraiserResult; + } + if (!is_null($this->card)) { return $this->card; } @@ -541,6 +750,10 @@ public function getReferencedObject() return $this->featureAnnouncement; } + if (!is_null($this->idealMerchantTransaction)) { + return $this->idealMerchantTransaction; + } + if (!is_null($this->invoice)) { return $this->invoice; } @@ -561,6 +774,10 @@ public function getReferencedObject() return $this->masterCardAction; } + if (!is_null($this->bankSwitchServiceNetherlandsIncomingPayment)) { + return $this->bankSwitchServiceNetherlandsIncomingPayment; + } + if (!is_null($this->payment)) { return $this->payment; } @@ -581,6 +798,14 @@ public function getReferencedObject() return $this->requestResponse; } + if (!is_null($this->rewardRecipient)) { + return $this->rewardRecipient; + } + + if (!is_null($this->rewardSender)) { + return $this->rewardSender; + } + if (!is_null($this->shareInviteBankInquiryBatch)) { return $this->shareInviteBankInquiryBatch; } @@ -593,6 +818,10 @@ public function getReferencedObject() return $this->shareInviteBankResponse; } + if (!is_null($this->sofortMerchantTransaction)) { + return $this->sofortMerchantTransaction; + } + if (!is_null($this->tabResultInquiry)) { return $this->tabResultInquiry; } @@ -601,6 +830,10 @@ public function getReferencedObject() return $this->tabResultResponse; } + if (!is_null($this->transferwiseTransfer)) { + return $this->transferwiseTransfer; + } + throw new BunqException(self::ERROR_NULL_FIELDS); } @@ -613,6 +846,14 @@ public function isAllFieldNull() return false; } + if (!is_null($this->bunqMeTabResultResponse)) { + return false; + } + + if (!is_null($this->bunqMeFundraiserResult)) { + return false; + } + if (!is_null($this->card)) { return false; } @@ -629,6 +870,10 @@ public function isAllFieldNull() return false; } + if (!is_null($this->idealMerchantTransaction)) { + return false; + } + if (!is_null($this->invoice)) { return false; } @@ -649,6 +894,10 @@ public function isAllFieldNull() return false; } + if (!is_null($this->bankSwitchServiceNetherlandsIncomingPayment)) { + return false; + } + if (!is_null($this->payment)) { return false; } @@ -669,6 +918,14 @@ public function isAllFieldNull() return false; } + if (!is_null($this->rewardRecipient)) { + return false; + } + + if (!is_null($this->rewardSender)) { + return false; + } + if (!is_null($this->shareInviteBankInquiryBatch)) { return false; } @@ -681,6 +938,10 @@ public function isAllFieldNull() return false; } + if (!is_null($this->sofortMerchantTransaction)) { + return false; + } + if (!is_null($this->tabResultInquiry)) { return false; } @@ -689,6 +950,10 @@ public function isAllFieldNull() return false; } + if (!is_null($this->transferwiseTransfer)) { + return false; + } + return true; } } diff --git a/src/Model/Generated/Object/OauthCallbackUrl.php b/src/Model/Generated/Object/OauthCallbackUrl.php new file mode 100644 index 00000000..7395cfeb --- /dev/null +++ b/src/Model/Generated/Object/OauthCallbackUrl.php @@ -0,0 +1,146 @@ +url; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $url + */ + public function setUrl($url) + { + $this->url = $url; + } + + /** + * The id of the callback URL. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param int $id + */ + public function setId($id) + { + $this->id = $id; + } + + /** + * The timestamp of the callback URL's creation. + * + * @return string + */ + public function getCreated() + { + return $this->created; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $created + */ + public function setCreated($created) + { + $this->created = $created; + } + + /** + * The timestamp of the callback URL's last update. + * + * @return string + */ + public function getUpdated() + { + return $this->updated; + } + + /** + * @deprecated User should not be able to set values via setters, use + * constructor. + * + * @param string $updated + */ + public function setUpdated($updated) + { + $this->updated = $updated; + } + + /** + * @return bool + */ + public function isAllFieldNull() + { + if (!is_null($this->url)) { + return false; + } + + if (!is_null($this->id)) { + return false; + } + + if (!is_null($this->created)) { + return false; + } + + if (!is_null($this->updated)) { + return false; + } + + return true; + } +} diff --git a/src/Model/Generated/Object/ShareDetail.php b/src/Model/Generated/Object/ShareDetail.php index 5462f6c0..334ba663 100644 --- a/src/Model/Generated/Object/ShareDetail.php +++ b/src/Model/Generated/Object/ShareDetail.php @@ -35,8 +35,8 @@ class ShareDetail extends BunqModel protected $readOnly; /** - * The share details for a draft payment share. Remember to replace - * 'draft_payment' with 'ShareDetailDraftPayment' before sending a request. + * The share details for a draft payment share. In the response + * 'draft_payment' is replaced by 'ShareDetailDraftPayment'. * * @var ShareDetailDraftPayment */ @@ -132,8 +132,8 @@ public function setReadOnly($readOnly) } /** - * The share details for a draft payment share. Remember to replace - * 'draft_payment' with 'ShareDetailDraftPayment' before sending a request. + * The share details for a draft payment share. In the response + * 'draft_payment' is replaced by 'ShareDetailDraftPayment'. * * @return ShareDetailDraftPayment */