Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
PaymentMethodData
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
 __construct
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3declare(strict_types=1);
4
5namespace App\Domain\Stripe\Data;
6
7/**
8 * Domain wrapper for a Stripe PaymentMethod (card type only for now).
9 *
10 * Only the metadata FlowState surfaces in UI is exposed — brand, last4,
11 * expiry, and whether the card is the customer's default. Card numbers and
12 * CVVs never leave Stripe.
13 */
14final readonly class PaymentMethodData
15{
16    public function __construct(
17        public string $id,
18        public string $brand,
19        public string $last4,
20        public int $expMonth,
21        public int $expYear,
22        public bool $isDefault,
23    ) {}
24}