diff --git a/CHANGELOG.md b/CHANGELOG.md
index 44edd0747..ffb9102aa 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,11 @@
* [#1683](https://github.com/stripe/stripe-php/pull/1683) Update generated code for beta
* Add support for `cancel_subscription_schedule` on `QuoteLine`
+## 14.4.0 - 2024-04-25
+* [#1684](https://github.com/stripe/stripe-php/pull/1684) Update generated code
+ * Change type of `Entitlements.ActiveEntitlement.feature` from `string` to `expandable($Entitlements.Feature)`
+ * Add support for `mobilepay` on `PaymentMethodConfiguration`
+
## 14.4.0-beta.1 - 2024-04-18
* [#1679](https://github.com/stripe/stripe-php/pull/1679) Update generated code for beta
diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION
index 6eb80deb2..b3010b439 100644
--- a/OPENAPI_VERSION
+++ b/OPENAPI_VERSION
@@ -1 +1 @@
-v992
\ No newline at end of file
+v1006
\ No newline at end of file
diff --git a/lib/GiftCards/Card.php b/lib/GiftCards/Card.php
index 506e62985..64e05ab99 100644
--- a/lib/GiftCards/Card.php
+++ b/lib/GiftCards/Card.php
@@ -18,7 +18,7 @@
* @property null|\Stripe\StripeObject $created_by The related Stripe objects that created this gift card.
* @property string $currency Three-letter ISO currency code, in lowercase. Must be a supported currency.
* @property null|\Stripe\StripeObject $metadata Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
- * @property \Stripe\Collection<\Stripe\GiftCards\Transaction> $transactions Transactions on this gift card.
+ * @property null|\Stripe\Collection<\Stripe\GiftCards\Transaction> $transactions Transactions on this gift card.
*/
class Card extends \Stripe\ApiResource
{
diff --git a/lib/Invoice.php b/lib/Invoice.php
index dcd021335..c8d0b71a3 100644
--- a/lib/Invoice.php
+++ b/lib/Invoice.php
@@ -96,8 +96,8 @@
* @property null|string|\Stripe\PaymentIntent $payment_intent The PaymentIntent associated with this invoice. The PaymentIntent is generated when the invoice is finalized, and can then be used to pay the invoice. Note that voiding an invoice will cancel the PaymentIntent.
* @property \Stripe\StripeObject $payment_settings
* @property null|\Stripe\Collection<\Stripe\InvoicePayment> $payments Payments for this invoice
- * @property int $period_end End of the usage period during which invoice items were added to this invoice.
- * @property int $period_start Start of the usage period during which invoice items were added to this invoice.
+ * @property int $period_end End of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the line item period to get the service period for each price.
+ * @property int $period_start Start of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the line item period to get the service period for each price.
* @property int $post_payment_credit_notes_amount Total amount of all post-payment credit notes issued for this invoice.
* @property int $pre_payment_credit_notes_amount Total amount of all pre-payment credit notes issued for this invoice.
* @property null|string|\Stripe\Quote $quote The quote this invoice was generated from.
diff --git a/lib/PaymentMethod.php b/lib/PaymentMethod.php
index 6a4066d7b..e4af793ac 100644
--- a/lib/PaymentMethod.php
+++ b/lib/PaymentMethod.php
@@ -51,6 +51,7 @@
* @property null|\Stripe\StripeObject $pix
* @property null|\Stripe\StripeObject $promptpay
* @property null|\Stripe\StripeObject $radar_options Options to configure Radar. See Radar Session for more information.
+ * @property null|\Stripe\StripeObject $rechnung
* @property null|\Stripe\StripeObject $revolut_pay
* @property null|\Stripe\StripeObject $sepa_debit
* @property null|\Stripe\StripeObject $sofort
@@ -102,6 +103,7 @@ class PaymentMethod extends ApiResource
const TYPE_PAYTO = 'payto';
const TYPE_PIX = 'pix';
const TYPE_PROMPTPAY = 'promptpay';
+ const TYPE_RECHNUNG = 'rechnung';
const TYPE_REVOLUT_PAY = 'revolut_pay';
const TYPE_SEPA_DEBIT = 'sepa_debit';
const TYPE_SOFORT = 'sofort';
diff --git a/lib/QuotePreviewInvoice.php b/lib/QuotePreviewInvoice.php
index 2ee0e3206..86591b668 100644
--- a/lib/QuotePreviewInvoice.php
+++ b/lib/QuotePreviewInvoice.php
@@ -92,8 +92,8 @@
* @property null|string|\Stripe\PaymentIntent $payment_intent The PaymentIntent associated with this invoice. The PaymentIntent is generated when the invoice is finalized, and can then be used to pay the invoice. Note that voiding an invoice will cancel the PaymentIntent.
* @property \Stripe\StripeObject $payment_settings
* @property null|\Stripe\Collection<\Stripe\InvoicePayment> $payments Payments for this invoice
- * @property int $period_end End of the usage period during which invoice items were added to this invoice.
- * @property int $period_start Start of the usage period during which invoice items were added to this invoice.
+ * @property int $period_end End of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the line item period to get the service period for each price.
+ * @property int $period_start Start of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the line item period to get the service period for each price.
* @property int $post_payment_credit_notes_amount Total amount of all post-payment credit notes issued for this invoice.
* @property int $pre_payment_credit_notes_amount Total amount of all pre-payment credit notes issued for this invoice.
* @property null|string|\Stripe\Quote $quote The quote this invoice was generated from.
diff --git a/lib/Service/InvoiceService.php b/lib/Service/InvoiceService.php
index 20edefda1..6070a0286 100644
--- a/lib/Service/InvoiceService.php
+++ b/lib/Service/InvoiceService.php
@@ -149,6 +149,11 @@ public function create($params = null, $opts = null)
* period[start]
is equal to the
* subscription_details.proration_date
value passed in the request.
*
+ * Note: Currency conversion calculations use the latest exchange rates. Exchange
+ * rates may vary between the time of the preview and the time of the actual
+ * invoice creation. Learn
+ * more
+ *
* @param null|array $params
* @param null|RequestOptionsArray|\Stripe\Util\RequestOptions $opts
*
@@ -350,6 +355,11 @@ public function sendInvoice($id, $params = null, $opts = null)
* period[start]
is equal to the
* subscription_details.proration_date
value passed in the request.
*
+ * Note: Currency conversion calculations use the latest exchange rates. Exchange
+ * rates may vary between the time of the preview and the time of the actual
+ * invoice creation. Learn
+ * more
+ *
* @param null|array $params
* @param null|RequestOptionsArray|\Stripe\Util\RequestOptions $opts
*