v15.6.0 - 2024-12-10
v15.5.1 - 2024-11-26
- [15.x] Supports PHP 8.4 by @crynobone in #1724
v15.5.0 - 2024-11-12
- Update logo to support dark/light theme by @milewski in #1717
- Bump stripe/stripe-php to v16 by @karkowg in #1721
- Fix repeated word "the" in code comment by @caendesilva in #1723
v15.4.3 - 2024-09-03
- [15.x] Prevent mass assignment issue by @driesvints in #1713
v15.4.2 - 2024-08-20
- Add missing docblocks by @u01jmg3 in #1694
- Fixes SQLite migration rollback by @crynobone in #1703
- [15.x] Catch missing payment intents by @shatterproof in #1704
v15.4.1 - 2024-07-09
- [15.x] Remove limitation from checkoutCharge by @driesvints in #1690
v15.4.0 - 2024-07-02
- [15.x] Indicate if invoice is paid by @driesvints in #1686
v15.3.2 - 2024-04-12
- Replace unpkg with jsdelivr by @driesvints in #1669
v15.3.1 - 2024-03-26
- [15.x] Make commands lazy by @timacdonald in #1667
v15.3.0 - 2024-03-05
- [15.x] Fix anchorBillingCycle for subscription checkout by @ybert in #1659
- [15.x] Better align items by @driesvints in #1662
- [15.x] Create stripe customer if not exists or update/sync by @arafatkn in #1661
v15.2.2 - 2024-02-13
v15.2.1 - 2024-01-30
- Carbon v3 by @driesvints in #1643
15.2.1 - 2024-01-30
- Carbon v3 by @driesvints in #1643
v15.2.0 - 2024-01-16
- [15.x] Merge Develop by @nunomaduro in #1635
v15.1.1 - 2024-01-12
- [15.x] Fix cancelation handling by @driesvints in #1633
v15.1.0 - 2024-01-09
- [15.x] Clear the generic trial upon subscription creation by @driesvints in #1628
- [15.x] Fix unset 'return_url' for embedded UI without redirection by @lowbits in #1631
v15.0.0 - 2023-12-22
- [15.x] Always end trial when subscription is cancelled by @driesvints in #1465
- [15.x] Remove isDeleted method by @driesvints in #1529
- Added expand option to Subscription latestInvoice() by @quantumwebco in #1549
- [15.x] Rename receipt to invoice by @driesvints in #1609
- [15.x] Stops using
loadMigrationsFrom
by @nunomaduro in #1613 - [15.x] Stripe API and SDK update by @driesvints in #1615
- [15.x] Bump Laravel and PHP versions by @driesvints in #1616
- [15.x] Fetch all payment methods by @driesvints in #1617
- [15.x] Change "name" column to "type" by @driesvints in #1620
- [14.x] Use container to resolve
StripeClient
by @orkhanahmadov in #1624
v14.14.0 - 2023-11-21
- Update PaymentMethod.php method return type by @jwjenkin in #1601
- [14.x] Allow creation of checkouts with ui_mode=embedded by @delassiter in #1605
v14.13.1 - 2023-11-08
- [14.x] Prevent confirm email when in Checkout by @driesvints in #1600
- [14.x] Fix soft deleted customers by @driesvints in #1599
v14.13.0 - 2023-11-07
- Add support for Payment cancelation by @jonathanroy in #1596
- Early return upcoming invoice by @driesvints in #1597
v14.12.12 - 2023-11-02
- Better cleanup for subscription items by @driesvints in #1595
v14.12.11 - 2023-10-31
- Remove unique index from items table by @driesvints in #1594
v14.12.10 - 2023-10-25
- Fix Tax ID collection requires updating business name on the customer by @stevebauman in #1586
v14.12.9 - 2023-10-24
- Log more info about invalid pm exception by @driesvints in #1582
v14.12.8 - 2023-10-03
- [14.x] Fix array merge for checkout by @driesvints in #1579
- [14.x] Fix default sync by @driesvints in #1580
v14.12.7 - 2023-09-26
- Add
Conditionable
trait to subscription builder by @maartenpaauw in #1573
v14.12.6 - 2023-09-08
- Prevent Sync From Deleting Existing Metadata by @toddstoker in #1565
v14.12.5 - 2023-09-05
- Fix: Invoke
static
method statically by @localheinz in #1557 - Fix: Remove reference to
CASHIER_MODEL
enviromment variable by @localheinz in #1563
14.12.4 - 2023-07-11
- Update ManagesCustomer to include optional metadata when creating or syncing a user by @dbhynds in #1543
- Update ManagesCustomer.php > createOrGetStripeCustomer() > allow "expand" when retrieving a Customer by @Ronan-Lenor in #1547
- createSetupIntent add customer stripe_id option by @clementmas in #1545
v14.12.3 - 2023-06-13
- Fix bug with customer_update in checkout by @driesvints in #1538
v14.12.2 - 2023-05-24
- Handle automatic payment method updates by @shatterproof in #1534
v14.12.1 - 2023-05-09
- Fallback for empty pm_type object on fillPaymentMethodDetails by @shatterproof in #1531
v14.12.0 - 2023-04-18
- Add ability to set a description on "one-off" charge checkouts by @AmrAb-05 in #1525
v14.11.0 - 2023-04-11
- Add ability to ignore incomplete payments by @driesvints in #1524
v14.10.0 - 2023-04-04
- Set payment confirm options by @driesvints in #1516
v14.9.0 - 2023-03-02
- Provide findSetupIntent method by @andycowan in #1505
- Fix deletion of subscription items in swap() by @glspdotnet in #1509
v14.8.2 - 2023-02-21
- Fix invoice line items by @driesvints in #1503
v14.8.1 - 2023-02-14
- Fix webhook command by @driesvints in #1499
v14.8.0 - 2023-02-09
- Add SyncCustomerDetails job by @driesvints in #1498
v14.7.2 - 2023-02-03
- Return null if attribute isn't found by @driesvints in #1496
v14.7.1 - 2023-01-31
- Fix wrong foreignKey on SubscriptionItem by @zofe in #1494
v14.7.0 - 2023-01-10
- Laravel v10 Support by @driesvints in #1486
v14.6.0 - 2023-01-03
- Adds types to database migrations and factories by @nunomaduro in #1472
v14.5.0 - 2022-12-06
- Cursor pagination for invoices by @driesvints in #1479
v14.4.0 - 2022-11-29
- Update Stripe API version and Stripe PHP SDK v10 support by @driesvints in #1478
v14.3.1 - 2022-11-15
- Modernize migrations by @driesvints in #1471
v14.3.0 - 2022-11-01
- Allow incomplete subscriptions as active by @driesvints in #1466
- Refactor dates property by @driesvints in #1462
- Pass pay options to pay method by @driesvints in #1464
v14.2.2 - 2022-10-25
- Fix undefined property id notice by @Lyrisbee in #1448
- fix minor typo by @owainjones74 in #1450
- Fix StripeObject values problem by @Lyrisbee in #1449
v14.2.1 - 2022-09-27
- Add fallback for null value in unitAmountExcludingTax method by @jayan-blutui in #1447
v14.2.0 - 2022-09-27
- Fresh receipt template by @driesvints in #1446
- Allow guest checkout by @alexgaal & @driesvints in #1438 & #1439
- Configurable Webhook Enabled Events by @yob-yob in #1435
- Add generic trial scopes by @lioneaglesolutions in #1436
- Add days until due to sends invoice by @driesvints in #1437
- Fix applied balance on invoices by @driesvints in #1445
v14.1.1 - 2022-09-06
- Fix subscription invoicing bug by @driesvints in #1434
v14.1.0 - 2022-08-30
- Add invoice.payment_succeeded event to WebhookCommand by @driesvints in #1428
- Fix applied balance on receipts by @driesvints in #1429
- Renders the invoice item dates on invoices when set by @nicko170 in #1432
v14.0.0 - 2022-08-23
- Sync preferred locales by @driesvints in #1408
- Add new balance transaction methods by @driesvints in #1423
- Cascade Stripe exceptions when invoicing by @driesvints in #1210
- Make invoice data optional by @driesvints in #1217
- Make dompdf optional by @driesvints in #1312
- Manage Checkout PM from Dashboard by @driesvints in #1400
- Improves console output by @nunomaduro in #1401
- Update to new Stripe version by @driesvints in #1417
- New subscription behavior by @driesvints in #1420
- Drop PHP 7.3 support by @driesvints in #1186
- Remove Checkout button by @driesvints in #1219
- Drop PHP 7.4 and Laravel v8 support by @driesvints in #1353
- Remove deprecated functionality by @driesvints in #1418
- Drop MoneyPHP 3.x by @driesvints in #1416
v13.16.0 - 2022-08-30
- Add new balance transaction methods by @driesvints in #1423
- Add invoice.payment_succeeded event to WebhookCommand by @driesvints in #1428
- Fix applied balance on receipts by @driesvints in #1429
v13.15.1 - 2022-08-16
- Fix Stripe key not found by @driesvints in #1421
v13.15.0 - 2022-08-09
- Allow Stripe SDK v9 by @driesvints in #1413
- Fix issue with overwriting behavior by @driesvints in #1410
v13.14.0 - 2022-08-02
- Create invoices separately by @driesvints in #1409
- Fix webhook command by @driesvints in #1407
v13.13.0 - 2022-07-13
- Allow dompdf v2 by @carlalexander in #1393
- Fix receipt totals and balance by @driesvints in #1388
v13.12.0 - 2022-06-28
- Update reference to Stripe SDK by @driesvints in #1383
- Re-add support for Sources API by @driesvints in #1384
v13.11.1 - 2022-06-21
- Fixed undefined quantity notice by @Lyrisbee in #1377
v13.11.0 - 2022-05-17
- Add new hasTrialExpired methods by @driesvints in #1366
- Allow Stripe SDK v8 by @ankurk91 in #1365
- Fix reference to billable by @driesvints in #1363
v13.10.1 - 2022-05-05
- Bump Dompdf by @driesvints in #1360
v13.10.0 - 2022-05-03
- Discount improvements by @driesvints in #1354
- Fix deprecation with Carbon on receipts by @driesvints in #1356
v13.9.0 - 2022-04-27
- Add pay method by @mozex in #1345
- Allow options with formatAmount by @driesvints in #1348
v13.8.6 - 2022-04-12
- Fix issue with zero tax on invoice by @driesvints in #1343
v13.8.5 - 2022-04-05
- Pass locale to custom format amount by @driesvints in #1340
v13.8.4 - 2022-03-15
- Make use of anonymous classes by @mmachatschek in #1329
- Allow normal and metered prices in builder by @driesvints in #1336
v13.8.3 - 2022-02-22
- Fix rawDiscountFor method by @driesvints in #1325
- Fix swapping metered price of subscription item by @pietrantonio91 in #1328
v13.8.2 - 2022-02-08
- Fallback to null quantity for metered price when swapping a subscription (#1319)
- Prevent duplicate subscription creation (#1308)
- Implement invoice renderer (#1304)
- Add deletePaymentMethod (#1298)
- Laravel 9 Support (#1299)
- Simplify cancelation check (#1283)
- Rename cancelled to canceled (#1284)
- Allow latest moneyphp version (#1280, #1286)
- Fix factory canceled state (#1282)
- Add
createAndSendInvoice
method (#1276)
- Allow the base url for the Stripe API to be customised (#1273)
- Fix enabling auto collecting in checkout (#1270)
- Fix confirming payments on the payment page (#1268)
- Handle Stripe Object lock timeout (#1259)
- Fix a stripe notice with SubscriptionBuilder and metered prices (#1261)
- Fallback to null quantity for metered price (#1255)
- Fix setting name on subscription (5d00c21)
- Add invoices methods to subscription (#1245)
- Fix webhook order issue (#1243)
- Send data when upcoming invoice is refreshed (#1244)
- Update customer details when tax id is collected (#1246)
- Add support for inline price data (#1235)
- Allow promo codes on subscription updates (#1230)
- Fix
asStripeCustomerBalanceTransaction
(#1234)
- Implement server side Checkout redirect (#1218)
- Implement customer balances (#1216)
- Add
invoicePrice
andtabPrice
methods (#1213)
- Fix collecting tax ids (#1209)
- Prevent tax calculation for one-off charges (#1206)
- Use correct method visibility (#1200)
- Fix adding metered plan to subscription (#1189)
- Support more payment method types (#1074)
- Cashier Stripe Factories (#1096)
- Multiple discounts on receipts (#1147)
- Preview upcoming invoice (#1146)
- Add new metered price methods (#1177)
- Allow customers to be synced with Stripe (#1178, #1183)
- Add
stripe_product
column tosubscriptions_items
table (#1185)
- Rename plans to prices (#1166)
- Stripe SDK refactor (#1169)
- Update stripe api version (#1001)
- Make plans optional for newSubscription (#1066)
- Drop PHP 7.2 support (#1065)
- Drop Laravel 6 & 7 support (#1064)
- Refactor payment exceptions (#1095)
- Refactor model config option (#1100)
- Billing portal arguments (#1104)
- Refactor receipts with more data from Stripe (#1136)
- Add array types (#1152)
- Throw payment exception for quantity methods (#1155)
- Throw payment exceptions on item swap (#1157)
- Payment page updates (#1120)
- Fix trialEndsAt more closely represents onTrial (#1129)
- Remove legacy sources support (#1077)
- Implement webhook command (#1202)
- Fix broken
unit_amount
withtab
(9246063)
- Add extra 10 seconds of trial time for checkout session (#1160)
- Fix adding invoice item with quantities (#1161)
- Fix coupons with Stripe Checkout sessions (#1165)
- Fix checkout owner (7bbfe23)
- Fix discount calculation (#1144)
- Add methods for managing TaxIDs (#1137)
- Fix receipt comments (#1131)
- Implement object serialization (#1116)
- Implement
cancelAt
method (#1106)
- Use DejaVu Sans for receipts (#1083)
- Allow model swapping (#1067)
- Fix styles overwriting checkout button when class is set (#1070)
- Add
endTrial
method (#1062)
- Fix removing tax rates (d803ae5)
- Fix removing tax rates (#1059)
- Metered billing (#1048)
- Allow Stripe dashboard subscriptions (#1058)
- Fix return type for invoice line items (#1053)
- Fix tax rates for subscription checkouts (#1050)
- Stripe Checkout Support (#1007)
- Fix proration behaviour being forced when syncing tax rates (#1028)
- Add
withPromotionCode
method (#1032)
- Refactor duplicated code (#1029)
- PHP 8 Support (#1020)
- Fix trial ends at check (#1015)
- Fix n+1 problem with subscription retrieval (#1009)
- Implement
trialEndsAt
(#1000)
- Simplify subscription method (#1003)
- Fix double payment method (#987)
- Support Laravel 8 (#985)
- Stripe SDK minimum version is now
^7.39
(#981)
- Fix url checking for invalid urls (#984)
- Apply prorate and invoice_now for cancelNow (#975)
- Add support for Stripe's Customer Portal (#966)
- Fix validating payment intent (#959)
- Implement new proration and pending updates (#949)
- Fail url checking when url is invalid (#1021)
- Add convenience methods to update stripe objects (#943)
- Fix undefined redirect error (0fc4c6e)
- Protect against host mismatch (#930)
- Fix add and remove plan (#926)
- Fix quantity prorating (#924)
- Fix multiplan subscription swapping (#925)
- Fix quantity methods (#919)
- Re-add tax percentage (#916)
- Multiplan swapping (#915)
- Update stripe api version (#905)
- Require PHP 7.2 (f0f8cd1)
- Dropped Laravel 5.8 support (b6256a2)
- Allow for subscription options (#868, #901)
- Use proper invoice number (#878)
- Loosen exception throwing (#882)
- Rename some exceptions (#881)
- Allow for custom filename with downloadInvoice method (#889)
- Split
Billable
trait into multiple concerns (#898)
- Send along status for payment page (#896)
- Add getters for owner instances to objects (#877)
- Implement extending trials (#884)
- Allow for custom email address attribute (#887)
- Re-enable proration (#886)
- Add @throws declaration to methods on Billable which can throw Payment exceptions (#872)
- Update payment page with new JS method (#879)
- Add
findBillable
method (#869)
- Prevent
createAsStripeCustomer
whenstripe_id
is set (#871)
- Fix
findInvoiceOrFail
behavior (#853)
- Symfony 5 support (#822)
- Webhook events (#810)
- Add language line for full name placeholder (#782)
- Update Stripe SDK to v7 (#784)
- Refactor handling of invalid webhook signatures (#791)
- Remove config repository dependency from webhook middleware (#793)
- Remove extra sign off from
ConfirmPayment
notification (#779)
- Ensure SVG icons are visible even with a long success or error message (#772)
- Add ability to ignore cashier routes (#763)
- Only mount card element if payment has not succeeded or been canceled (#765)
- Set off_session parameter to true when creating a new subscription (#764)
- Remove collation from migrations (#761)
- Multiple stripe accounts (#754)
- Set Stripe library info (#756)
- Paper size can be set in config file (#752, cb837d1)
- Update Stripe API version to
2019-08-14
(#749)
syncStripeStatus
trying to update incorrect status column (#748)
- Allow hasIncompletePayment() to check other subscriptions than “default” (#733)
- Add indexes to those columns used to lookup data in the database (#739)
- Fixed a label with an incorrect for attribute (#732)
- Improve stripe statuses (#707)
- Refactor active subscription state (#712)
- Return invoice object when applicable (#711)
- Refactor webhook responses (#722)
- Refactor confirm payment mail to notification (#727)
- Fix createSetupIntent (#704)
- Fix subscription invoicing (#710)
- Fix
null
return forlatestPayment
method (#730)
- Remove unused
$customer
parameter onupdateQuantity
method (#729)
Cashier 10.0 is a major release. Please review the upgrade guide thoroughly.
- Remove old 5.9 version constraints (c7664fc)
- Don't try and find a user when stripeId is null (#721)
- Updated version constraints for Laravel 6.0 (4a4c5c2)
- Fix hasStartingBalance and subtotal on
Invoice
(#684)
VerifyWebhookSignature
is no longerfinal
(260de04)- Remove strict type check for
trialUntil()
(#678)
- Fixing
defaultCard()
exception when user is not a Stripe customer (#660)
- Able to update a Stripe customer (#634)
- Use new created property on invoice (4714ba4)
- Add subscription state scopes (#609)
- Test latest Stripe API version (#611)
- Laravel 5.8 support (291f4b2)
- Allow Carbon 2 installs (a3b9d36)
- Test against latest Stripe API version (#603)
- Correct PHP Doc @return tag (#601)
- Removed support for PHP 7.0 (#595)
- Require Laravel 5.7 as minimum version (#595)
- Extract
updateCard
fromcreateAsStripeCustomer
method (#588) - Remove
CASHIER_ENV
and event checks and encourage usage ofVerifyWebhookSignature
middleware (#591) - The
invoice
method now accepts an$options
param (#598) - The
invoiceFor
method now accepts an$invoiceOptions
param (#598)
- Fixed some DocBlocks (#594)
- Fixed a bug where the
swap
andincrementAndInvoice
methods on theSubscription
model would sometimes invoice other pending invoice items (#598)
- Allow user to pass paramaters when fetching invoices.
- Added a method to get the current subscription period's end date.
- If a webhook endpoint is not defined for a given hook, an empty 200 response will be returned.
- Added space for extra / VAT information in receipts.
- Implemented missing method on web hook controller.
- Fixed how credit cards are updated.
- Renamed WebhookController's failed payment method to handleInvoicePaymentFailed.
- Added ability to webhook controller to automatically route all webhooks to appropriately named methods of they area available.