Skip to Content
DocumentationAPI Reference

Référence API

Cette page référence les briques publiques du bundle que vous pouvez considérer comme stables à intégrer côté application.

Services principaux

CashierBundle\Service\Cashier

Service principal et utilitaires de formatage. Voir Twig.

CashierBundle\Service\CustomerService

Création, mise à jour et synchronisation des customers Stripe. Voir Customers.

CashierBundle\Service\PaymentService

Paiements one-shot, refunds et payment intents. Voir Paiements.

CashierBundle\Service\PaymentIntentService

Service bas niveau pour créer et gérer les PaymentIntents:

  • create(array $options) — crée un PaymentIntent
  • capture(string $paymentIntentId, ?int $amount) — capture
  • cancel(string $paymentIntentId) — annule
  • confirm(string $paymentIntentId, array $options) — confirme

Voir Paiements.

CashierBundle\Service\PaymentMethodService

Gestion des méthodes de paiement. Voir Méthodes de paiement.

CashierBundle\Service\SetupIntentService

Service pour créer des SetupIntents (sauvegarde de PM sans paiement):

  • create(array $options = []) — crée un SetupIntent (défaut: payment_method_types: ['card'])
  • clientSecret() — retourne le secret pour le frontend

Voir Méthodes de paiement - Setup Intents.

CashierBundle\Service\SubscriptionService

Création et maintenance du cycle de vie des abonnements. Voir Abonnements.

CashierBundle\Service\CheckoutService

Création de sessions Stripe Checkout et Billing Portal. Voir Checkout.

CashierBundle\Service\InvoiceService

Lecture des invoices Stripe et opérations de facturation. Voir Factures.

CashierBundle\Service\InvoiceArchiveService

Archivage local des PDFs et persistance de GeneratedInvoice. Voir Factures - Archivage.

CashierBundle\Service\TaxService

Gestion des taxes. Voir Taxes.

Contrats extensibles

  • CashierBundle\Contract\InvoiceRendererInterface
  • CashierBundle\Contract\InvoiceStorageInterface
  • CashierBundle\Contract\InvoiceLocaleResolverInterface
  • CashierBundle\Contract\InvoiceTranslationProviderInterface
  • CashierBundle\Contract\WebhookHandlerInterface

Entités Doctrine du bundle

  • CashierBundle\Entity\StripeCustomer
  • CashierBundle\Entity\Subscription
  • CashierBundle\Entity\SubscriptionItem
  • CashierBundle\Entity\GeneratedInvoice
  • CashierBundle\Entity\CustomerBalanceTransaction

Modèles (Value Objects)

  • CashierBundle\Model\Invoice — invoice Stripe
  • CashierBundle\Model\InvoiceLineItem — ligne de facture
  • CashierBundle\Model\InvoicePayment — paiement d invoice
  • CashierBundle\Model\Tax — taxe
  • CashierBundle\Model\TaxRate — taux de taxe
  • CashierBundle\Model\PaymentMethod — méthode de paiement
  • CashierBundle\Model\Coupon — coupon Stripe
  • CashierBundle\Model\PromotionCode — code promotionnel
  • CashierBundle\Model\Checkout — session Checkout
  • CashierBundle\Model\StoredInvoice — invoice archivée ( voir Factures)

Événements publics

  • WebhookReceivedEvent
  • WebhookHandledEvent
  • SubscriptionCreatedEvent
  • SubscriptionUpdatedEvent
  • SubscriptionDeletedEvent
  • PaymentSucceededEvent
  • PaymentFailedEvent

Voir Événements.

Messages Messenger

Pour le traitement asynchrone (nécessite symfony/messenger):

  • CashierBundle\Message\CancelSubscriptionMessage
  • CashierBundle\Message\ProcessInvoiceMessage
  • CashierBundle\Message\RetryPaymentMessage
  • CashierBundle\Message\SyncCustomerDetailsMessage
  • CashierBundle\Message\UpdateSubscriptionQuantityMessage

Voir Événements - Messenger.

Politique de stabilité

Les services publics, interfaces, entités et événements documentés constituent l’API stable du bundle.

Les classes dans les répertoires suivants sont internes et peuvent changer sans préavis:

  • src/Webhook/Handler/
  • src/Infrastructure/
  • src/DependencyInjection/
Last updated on