Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Cashier Laravel Package

laravel/cashier

Laravel Cashier offers a fluent Laravel interface for Stripe subscription billing. Manage subscriptions, coupons, plan swaps, quantities, and cancellation grace periods, with support for generating invoice PDFs—all while handling the boilerplate billing code.

View on GitHub
Deep Wiki
Context7
v16.5.1
v16.4.0
v16.3.0
v16.2.0
v16.1.0
v16.0.6
v16.0.5
v16.0.3
v16.0.1
v15.7.1
v15.6.0
v15.4.1
v15.3.0
v15.2.2
v15.1.0
v9.3.5

Changed

  • Remove old 5.9 version constraints (c7664fc)

Fixed

  • Don't try and find a user when stripeId is null (#721)
v9.3.4

Changed

  • Updated version constraints for Laravel 6.0 (4a4c5c2)
v9.3.3

Fixed

  • Fix hasStartingBalance and subtotal on Invoice (#684)
v9.3.2

Changed

  • VerifyWebhookSignature is no longer final (260de04)
  • Remove strict type check for trialUntil() (#678)
v9.3.1

Fixed

  • Fixing defaultCard() exception when user is not a Stripe customer (#660)
v9.3.0

Added

  • Able to update a Stripe customer (#634)

Fixed

  • Handle incomplete subscriptions upon creation (#631)
  • Handle card failure in plan swap (#641)
v9.2.1

Fixed

  • Use new created property on invoice (4714ba4)
v9.2.0

Added

  • Add subscription state scopes (#609)

Changed

  • Test latest Stripe API version (#611)
v9.1.0

Added

v9.0.1

Added

  • Allow Carbon 2 installs (a3b9d36)

Changed

  • Test against latest Stripe API version (#603)

Fixed

v9.0.0

Changed

  • Removed support for PHP 7.0 (#595)
  • Require Laravel 5.7 as minimum version (#595)
  • Extract updateCard from createAsStripeCustomer method (#588)
  • Remove CASHIER_ENV and event checks and encourage usage of VerifyWebhookSignature middleware (#591)
  • The invoice method now accepts an $options param (#598)
  • The invoiceFor method now accepts an $invoiceOptions param (#598)

Fixed

  • Fixed some DocBlocks (#594)
  • Fixed a bug where the swap and incrementAndInvoice methods on the Subscription model would sometimes invoice other pending invoice items (#598)
v14.9.0
v14.8.1
v14.8.0

Added

v14.7.2

Fixed

v14.7.1

Fixed

v14.7.0
v14.6.0

Changed

v14.5.0

Added

v14.4.0

Changed

v14.3.1
v14.3.0

Added

Changed

v14.2.1

Fixed

v14.14.0
v14.12.9
v14.12.7
v14.12.6
v14.12.5
v14.12.3
v14.12.2
v14.12.12
v14.12.10
v14.12.1
v14.12.0
v14.11.0
v14.10.0
v14.1.1

Fixed

v14.1.0

Changed

Fixed

v13.9.0
v13.8.6

Fixed

v13.8.5

Changed

v13.8.4

Changed

v13.8.3

Changed

v13.8.2

Fixed

  • Fallback to null quantity for metered price when swapping a subscription (#1319)
v13.8.1

Fixed

  • Prevent duplicate subscription creation (#1308)
v13.8.0

Added

  • Implement invoice renderer (#1304)
v13.7.0

Added

  • Add deletePaymentMethod (#1298)

Changed

  • Laravel 9 Support (#1299)
v13.6.1

Changed

  • Simplify cancelation check (#1283)
  • Rename cancelled to canceled (#1284)
  • Allow latest moneyphp version (#1280, #1286)

Fixed

  • Fix factory canceled state (#1282)
v13.6.0

Added

  • Add createAndSendInvoice method (#1276)

Changed

  • Allow the base url for the Stripe API to be customised (#1273)
v13.5.6

Fixed

  • Fix enabling auto collecting in checkout (#1270)
v13.5.5

Fixed

  • Fix confirming payments on the payment page (#1268)
v13.5.4

Fixed

  • Handle Stripe Object lock timeout (#1259)
v13.5.3

Fixed

  • Fix a stripe notice with SubscriptionBuilder and metered prices (#1261)
v13.5.2

Changed

  • Use default name for subscription factory (#1250)
  • PHP 8.1 compatibility (#1251)

Fixed

  • Fallback to null quantity for metered price (#1255)
v13.5.1

Fixed

  • Fix setting name on subscription (5d00c21)
v13.5.0

Added

  • Add invoices methods to subscription (#1245)

Fixed

  • Fix webhook order issue (#1243)
  • Send data when upcoming invoice is refreshed (#1244)
  • Update customer details when tax id is collected (#1246)
v13.4.5

Fixed

  • Fix quantity filling on subscriptions (#1238)
  • Fix unreachable status value (#1240)
v13.4.4

Changed

  • Add support for inline price data (#1235)
v13.4.3

Changed

  • Allow promo codes on subscription updates (#1230)

Fixed

  • Fix asStripeCustomerBalanceTransaction (#1234)
v13.4.2

Fixed

  • Fix issue with requires_action (#1226)
  • Fix async issue with webhooks (#1227)
v13.4.1

Changed

  • Implement server side Checkout redirect (#1218)
v13.4.0

Added

  • Implement customer balances (#1216)
v13.3.0

Added

  • Add invoicePrice and tabPrice methods (#1213)
v13.2.1

Fixed

  • Fix collecting tax ids (#1209)
v13.2.0

Added

  • Implement new calculateTaxes call (#1198)
  • Implement webhook command (#1202, 1d9cce8)

Changed

  • Prevent tax calculation for one-off charges (#1206)

Fixed

  • Use correct method visibility (#1200)
v13.16.0

Added

Changed

Fixed

v13.15.1
v13.15.0

Added

Fixed

v13.14.0
v13.13.0
v13.12.0

Changed

v13.11.1

Fixed

v13.11.0

Added

Changed

Fixed

v13.10.0

Added

Fixed

v13.1.0

Added

  • Implement support for Stripe Tax (#1190)
  • Collect Tax IDs in Checkout (#1191)

Fixed

  • Fix adding metered plan to subscription (#1189)
v13.0.0

Added

  • 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 to subscriptions_items table (#1185)

Changed

  • 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)

Fixed

  • Fix trialEndsAt more closely represents onTrial (#1129)

Removed

  • Remove legacy sources support (#1077)
v12.9.3

Changed

  • Use DejaVu Sans for receipts (#1083)

Fixed

v12.9.2

Fixed

  • Fix missing method on WebhookController (#1080)
  • Allow relative urls for redirect (#1082)
v12.9.1

Changed

  • Allow model swapping (#1067)

Fixed

  • Fix styles overwriting checkout button when class is set (#1070)
v12.9.0

Added

  • Add endTrial method (#1062)

Fixed

v12.8.1

Fixed

  • Fix removing tax rates (#1059)
v12.8.0

Added

  • Metered billing (#1048)

Changed

  • Allow Stripe dashboard subscriptions (#1058)

Fixed

  • Fix return type for invoice line items (#1053)
v12.7.1

Fixed

  • Fix tax rates for subscription checkouts (#1050)
v12.7.0

Added

  • Stripe Checkout Support (#1007)
v12.6.3

Fixed

v12.6.2

Changed

v12.6.1

Fixed

  • Fix proration behaviour being forced when syncing tax rates (#1028)
v12.6.0

Added

  • Add withPromotionCode method (#1032)

Changed

  • Refactor duplicated code (#1029)
v12.5.0

Added

v12.4.2

Fixed

  • Fix trial ends at check (#1015)
v12.4.1

Fixed

  • Fix n+1 problem with subscription retrieval (#1009)
v12.4.0

Added

  • Implement trialEndsAt (#1000)

Changed

  • Simplify subscription method (#1003)

Fixed

  • Fix quantity preserving (#999)
  • Fix Models namespace for Laravel 8 (9024107)
v12.3.1

Fixed

  • Fix double payment method (#987)
v12.3.0

Added

  • Support Laravel 8 (#985)

Changed

  • Stripe SDK minimum version is now ^7.39 (#981)

Fixed

  • Fix url checking for invalid urls (#984)
v12.2.0

Added

  • Apply prorate and invoice_now for cancelNow (#975)
v12.15.0

Added

  • Implement webhook command (#1202)
v12.14.1

Fixed

  • Fix broken unit_amount with tab (9246063)
v12.14.0

Added

  • Support prorations while extending trials (#1151)
  • Add extra methods to invoice object (#1167)

Fixed

  • 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)
v12.13.1

Fixed

  • Fix discount calculation (#1144)
v12.13.0

Added

  • Add methods for managing TaxIDs (#1137)

Fixed

  • Fix receipt comments (#1131)
v12.12.0

Added

  • Implement object serialization (#1116)

Changed

  • Replace symfony/intl dependency (#1114)
  • Extract creating subscription to a separate method (#1124)

Fixed

  • Fix latest_invoice retrieval (#1115)
  • Fix coupon label on receipts (#1118)
v12.11.0

Added

  • Implement cancelAt method (#1106)
v12.10.0

Added

  • Added new payment status helper methods (#1068)
  • Add capture method (#1099)

Changed

  • Update description on receipt (#1098)
  • Update payment page (#1094)
v12.1.0

Added

  • Add support for Stripe's Customer Portal (#966)
v12.0.1

Fixed

  • Fix validating payment intent (#959)
v12.0.0

Changed

  • Implement new proration and pending updates (#949)
v11.3.1

Fixed

  • Fail url checking when url is invalid (#1021)
v11.3.0

Added

  • Add convenience methods to update stripe objects (#943)

Fixed

  • Send invoice when charging automatically (#942)
  • Remove unnecessary if statement on receipt (#946)
v11.2.4

Fixed

  • Fix undefined redirect error (0fc4c6e)
v11.2.3

Security

  • Protect against host mismatch (#930)
v11.2.2

Fixed

  • Fix add and remove plan (#926)
  • Fix quantity prorating (#924)
  • Fix multiplan subscription swapping (#925)
v11.2.1

Fixed

  • Fix quantity methods (#919)
v11.2.0

Changed

  • Re-add tax percentage (#916)

Fixed

v11.1.0

Added

  • Multiplan swapping (#915)
v11.0.0

Added

  • Multiplan subscriptions (#900)
  • Tax Rates (#830)
  • Add new has payment method (#838)

Changed

  • 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)
v10.7.1

Fixed

  • Send along status for payment page (#896)
v10.7.0

Added

  • Add getters for owner instances to objects (#877)
  • Implement extending trials (#884)
  • Allow for custom email address attribute (#887)
  • Re-enable proration (#886)

Changed

  • Add @throws declaration to methods on Billable which can throw Payment exceptions (#872)
  • Update payment page with new JS method (#879)
v10.6.0

Added

  • Add findBillable method (#869)

Fixed

  • Prevent createAsStripeCustomer when stripe_id is set (#871)
v10.5.3

Fixed

  • Fix findInvoiceOrFail behavior (#853)
v10.5.2

Changed

  • Assert customer exists before retrieving (#834)
  • Simplify refund method (#837)

Fixed

  • Fix typo in exception message (#846)
  • Fix overriding notification subject translation (59faaf3)
v10.5.1

Added

  • Symfony 5 support (#822)
v10.5.0

Added

  • Webhook events (#810)

Fixed

  • Add missing [@throws](https://github.com/throws) tags (#813)
  • Properly return null for find methods (#817)
v10.4.0

Added

  • Add findPaymentMethod method (#801)
  • Allow to set past due as active (#802)
v10.3.0

Added

Changed

  • 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)

Fixed

  • Remove extra sign off from ConfirmPayment notification (#779)
v10.2.1

Fixed

  • Ensure SVG icons are visible even with a long success or error message (#772)
v10.2.0

Added

  • Add ability to ignore cashier routes (#763)

Fixed

  • 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)
v10.1.1

Fixed

  • Remove collation from migrations (#761)
v10.1.0

Added

  • Multiple stripe accounts (#754)
  • Set Stripe library info (#756)
  • Paper size can be set in config file (#752, cb837d1)

Changed

  • Update Stripe API version to 2019-08-14 (#749)

Fixed

  • syncStripeStatus trying to update incorrect status column (#748)
v10.0.0-beta.2

Added

  • Add latestPayment method on Subscription (#705)
  • Allow custom filename for invoice download (#723)

Changed

  • 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)

Fixed

  • Fix createSetupIntent (#704)
  • Fix subscription invoicing (#710)
  • Fix null return for latestPayment method (#730)

Removed

  • Remove unused $customer parameter on updateQuantity method (#729)
v10.0.0-beta

Cashier 10.0 is a major release. Please review the upgrade guide thoroughly.

v10.0.0

Added

  • Allow hasIncompletePayment() to check other subscriptions than “default” (#733)
  • Add indexes to those columns used to lookup data in the database (#739)

Fixed

  • Fixed a label with an incorrect for attribute (#732)
Version
  • 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.
14.12.4
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport