diff --git a/lib/recurly/client.php b/lib/recurly/client.php index c3686834..3b2d8258 100644 --- a/lib/recurly/client.php +++ b/lib/recurly/client.php @@ -1242,6 +1242,7 @@ public function restoreCoupon(string $coupon_id, array $body, array $options = [ * **Note:** this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC. * - $options['params']['end_time'] (string): Inclusively filter by end_time when `sort=created_at` or `sort=updated_at`. * **Note:** this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC. + * - $options['params']['redeemed'] (string): Filter unique coupon codes by redemption status. `true` for redeemed, `false` for not redeemed. * * @return \Recurly\Pager A list of unique coupon codes that were generated * @link https://developers.recurly.com/api/v2021-02-25#operation/list_unique_coupon_codes diff --git a/lib/recurly/resources/billing_info.php b/lib/recurly/resources/billing_info.php index 66524841..6a97b1ea 100644 --- a/lib/recurly/resources/billing_info.php +++ b/lib/recurly/resources/billing_info.php @@ -22,6 +22,7 @@ class BillingInfo extends RecurlyResource private $_id; private $_last_name; private $_object; + private $_payment_gateway_references; private $_payment_method; private $_primary_payment_method; private $_updated_at; @@ -30,6 +31,7 @@ class BillingInfo extends RecurlyResource private $_vat_number; protected static $array_hints = [ + 'setPaymentGatewayReferences' => '\Recurly\Resources\PaymentGatewayReferences', ]; @@ -263,6 +265,29 @@ public function setObject(string $object): void $this->_object = $object; } + /** + * Getter method for the payment_gateway_references attribute. + * Array of Payment Gateway References, each a reference to a third-party gateway object of varying types. + * + * @return array + */ + public function getPaymentGatewayReferences(): array + { + return $this->_payment_gateway_references ?? [] ; + } + + /** + * Setter method for the payment_gateway_references attribute. + * + * @param array $payment_gateway_references + * + * @return void + */ + public function setPaymentGatewayReferences(array $payment_gateway_references): void + { + $this->_payment_gateway_references = $payment_gateway_references; + } + /** * Getter method for the payment_method attribute. * diff --git a/lib/recurly/resources/payment_gateway_references.php b/lib/recurly/resources/payment_gateway_references.php new file mode 100644 index 00000000..76607378 --- /dev/null +++ b/lib/recurly/resources/payment_gateway_references.php @@ -0,0 +1,67 @@ +_reference_type; + } + + /** + * Setter method for the reference_type attribute. + * + * @param string $reference_type + * + * @return void + */ + public function setReferenceType(string $reference_type): void + { + $this->_reference_type = $reference_type; + } + + /** + * Getter method for the token attribute. + * Reference value used when the external token was created. If Stripe gateway is used, this value will need to be accompanied by its reference_type. + * + * @return ?string + */ + public function getToken(): ?string + { + return $this->_token; + } + + /** + * Setter method for the token attribute. + * + * @param string $token + * + * @return void + */ + public function setToken(string $token): void + { + $this->_token = $token; + } +} \ No newline at end of file diff --git a/openapi/api.yaml b/openapi/api.yaml index 460dd35f..ea3982f5 100644 --- a/openapi/api.yaml +++ b/openapi/api.yaml @@ -6265,8 +6265,7 @@ paths: schema: "$ref": "#/components/schemas/UniqueCouponCodeParams" '400': - description: Invalid or unpermitted parameter; perhaps you tried to generate - more than 200 codes at a time? + description: Invalid or unpermitted parameter. content: application/json: schema: @@ -6348,6 +6347,7 @@ paths: - "$ref": "#/components/parameters/sort_dates" - "$ref": "#/components/parameters/filter_begin_time" - "$ref": "#/components/parameters/filter_end_time" + - "$ref": "#/components/parameters/filter_redeemed" responses: '200': description: A list of unique coupon codes that were generated @@ -17184,6 +17184,13 @@ components: - `type=legacy`, only legacy invoices will be returned. schema: "$ref": "#/components/schemas/FilterInvoiceTypeEnum" + filter_redeemed: + name: redeemed + in: query + description: Filter unique coupon codes by redemption status. `true` for redeemed, + `false` for not redeemed. + schema: + "$ref": "#/components/schemas/FilterRedeemedEnum" export_date: name: export_date in: path @@ -18733,6 +18740,12 @@ components: description: The `backup_payment_method` field is used to indicate a billing info as a backup on the account that will be tried if the initial billing info used for an invoice is declined. + payment_gateway_references: + type: array + description: Array of Payment Gateway References, each a reference to a + third-party gateway object of varying types. + items: + "$ref": "#/components/schemas/PaymentGatewayReferences" created_at: type: string format: date-time @@ -18815,9 +18828,21 @@ components: maxLength: 50 gateway_code: type: string - title: An identifier for a specific payment gateway. Must be used in conjunction - with `gateway_token`. + title: An identifier for a specific payment gateway. maxLength: 12 + payment_gateway_references: + type: array + description: Array of Payment Gateway References, each a reference to a + third-party gateway object of varying types. + items: + "$ref": "#/components/schemas/PaymentGatewayReferences" + properties: + token: + type: strings + maxLength: 50 + reference_type: + type: string + "$ref": "#/components/schemas/PaymentGatewayReferencesEnum" gateway_attributes: type: object description: Additional attributes to send to the gateway. @@ -19282,9 +19307,9 @@ components: number_of_unique_codes: type: integer title: Number of unique codes - description: The quantity of unique coupon codes to generate + description: The quantity of unique coupon codes to generate. A bulk coupon + can have up to 100,000 unique codes (or your site's configured limit). minimum: 1 - maximum: 200 CouponMini: type: object properties: @@ -21285,6 +21310,22 @@ components: - currency - unit_amount - type + PaymentGatewayReferences: + type: object + title: Payment Gateway References Object + description: Array of Payment Gateway References, each a reference to a third-party + gateway object of varying types. + properties: + token: + type: string + title: Token + description: Reference value used when the external token was created. If + Stripe gateway is used, this value will need to be accompanied by its + reference_type. + reference_type: + type: string + title: Reference Type + "$ref": "#/components/schemas/PaymentGatewayReferencesEnum" PlanMini: type: object title: Plan mini details @@ -26430,6 +26471,11 @@ components: - credit - legacy - non-legacy + FilterRedeemedEnum: + type: string + enum: + - true + - false ChannelEnum: type: string enum: @@ -26491,6 +26537,14 @@ components: enum: - email - post + PaymentGatewayReferencesEnum: + type: string + description: The type of reference token. Required if token is passed in for + Stripe Gateway. + enum: + - stripe_confirmation_token + - stripe_customer + - stripe_payment_method GatewayTransactionTypeEnum: type: string enum: