BCard - Documentation technique

Payment
in package

Paiement effectué pour une commande de carte physique, un abonnement ou une carte virtuelle.

Un paiement peut se rattacher, indépendamment les uns des autres, à une carte Card, un utilisateur User, une entreprise Company, un abonnement Subscription ou une commande Order — toutes ces relations ManyToOne sont facultatives. En lecture du code appelant, un même paiement semble ne servir en pratique qu'un seul de ces cas d'usage à la fois, mais il s'agit d'une lecture déduite : rien dans l'entité ni dans le schéma (contrainte, validation applicative) ne l'impose ou ne le garantit. status prend l'une des valeurs PENDING, ACCEPTED, REJECTED ou COMPLETED (constantes *_STATUS). paymentMethod prend l'une des valeurs CREDIT_CARD, ORANGE_MONEY, DELIVERY_CASH, PRO_SUBSCRIPTION, COMPANY_FREE, MANUAL ou DJOMY. stripePaymentIntentId n'est renseigné que pour les paiements par carte bancaire passés par Stripe. provider, providerTransactionId et providerReference identifient le paiement chez une passerelle externe (aujourd'hui Djomy, avec provider = djomy) : identifiant de transaction du prestataire et référence marchande envoyée. providerReturnToken est un jeton aléatoire unique, intégré à l'URL de retour du client, qui évite d'exposer l'identifiant du paiement. getAmout()/setAmout() sont des alias historiques (faute de frappe conservée) de getAmount()/setAmount(), qui restent la forme à utiliser ; la colonne elle-même porte le nom amout en base.

Attributes
#[Entity]
$repositoryClass: \App\Repository\PaymentRepository::class
#[Index]
$name: 'idx_payment_status'
$columns: ['status']
#[Index]
$name: 'idx_payment_created_at'
$columns: ['created_at']
#[Index]
$name: 'idx_payment_provider_tx'
$columns: ['provider_transaction_id']
#[Index]
$name: 'idx_payment_provider_ref'
$columns: ['provider_reference']
#[Table]
$name: 'payment'
#[UniqueConstraint]
$name: 'uniq_payment_return_token'
$columns: ['provider_return_token']

Table of Contents

Constants

ACCEPTED_STATUS  : mixed = "ACCEPTED"
COMPANY_FREE  : mixed = "COMPANY_FREE"
COMPLETED_STATUS  : mixed = "COMPLETED"
CREDIT_CARD  : mixed = "CREDIT_CARD"
DELIVERY_CASH  : mixed = "DELIVERY_CASH"
DJOMY  : mixed = "DJOMY"
MANUAL  : mixed = "MANUAL"
ORANGE_MONEY  : mixed = "ORANGE_MONEY"
PENDING_STATUS  : mixed = "PENDING"
PRO_SUBSCRIPTION  : mixed = "PRO_SUBSCRIPTION"
PROVIDER_FAILED_STATUSES  : mixed = ['FAILED', 'CANCELLED', 'TIMEOUT']
Provider statuses meaning the online attempt did not succeed (the payment itself stays PENDING).
REJECTED_STATUS  : mixed = "REJECTED"

Properties

$amount  : string|null
$card  : Card|null
$company  : Company|null
$createdAt  : DateTimeImmutable|null
$id  : int|null
$order  : Order|null
$paymentMethod  : string|null
$provider  : string|null
$providerReference  : string|null
$providerReturnToken  : string|null
$providerStartedAt  : DateTimeImmutable|null
$providerStatus  : string|null
$providerStatusAt  : DateTimeImmutable|null
$providerTransactionId  : string|null
$status  : string|null
$stripePaymentIntentId  : string|null
$subscription  : Subscription|null
$updatedAt  : DateTimeImmutable|null
$user  : User|null

Methods

getAmount()  : string|null
getAmout()  : string|null
getCard()  : Card|null
getCompany()  : Company|null
getCreatedAt()  : DateTimeImmutable|null
getId()  : int|null
getOrder()  : Order|null
getPaymentMethod()  : string|null
getProvider()  : string|null
getProviderReference()  : string|null
getProviderReturnToken()  : string|null
getProviderStartedAt()  : DateTimeImmutable|null
getProviderStatus()  : string|null
getProviderStatusAt()  : DateTimeImmutable|null
getProviderTransactionId()  : string|null
getStatus()  : string|null
getStripePaymentIntentId()  : string|null
getSubscription()  : Subscription|null
getUpdatedAt()  : DateTimeImmutable|null
getUser()  : User|null
setAmount()  : static
setAmout()  : static
setCard()  : static
setCompany()  : static
setCreatedAt()  : static
setOrder()  : static
setPaymentMethod()  : static
setProvider()  : static
setProviderReference()  : static
setProviderReturnToken()  : static
setProviderStartedAt()  : static
setProviderStatus()  : static
setProviderStatusAt()  : static
setProviderTransactionId()  : static
setStatus()  : static
setStripePaymentIntentId()  : static
setSubscription()  : static
setUpdatedAt()  : static
setUser()  : static

Constants

ACCEPTED_STATUS

public mixed ACCEPTED_STATUS = "ACCEPTED"

COMPANY_FREE

public mixed COMPANY_FREE = "COMPANY_FREE"

COMPLETED_STATUS

public mixed COMPLETED_STATUS = "COMPLETED"

CREDIT_CARD

public mixed CREDIT_CARD = "CREDIT_CARD"

DELIVERY_CASH

public mixed DELIVERY_CASH = "DELIVERY_CASH"

MANUAL

public mixed MANUAL = "MANUAL"

ORANGE_MONEY

public mixed ORANGE_MONEY = "ORANGE_MONEY"

PENDING_STATUS

public mixed PENDING_STATUS = "PENDING"

PRO_SUBSCRIPTION

public mixed PRO_SUBSCRIPTION = "PRO_SUBSCRIPTION"

PROVIDER_FAILED_STATUSES

Provider statuses meaning the online attempt did not succeed (the payment itself stays PENDING).

public mixed PROVIDER_FAILED_STATUSES = ['FAILED', 'CANCELLED', 'TIMEOUT']

REJECTED_STATUS

public mixed REJECTED_STATUS = "REJECTED"

Properties

$amount

private string|null $amount = null
Attributes
#[Column]
$name: 'amout'
$length: 100

$card

private Card|null $card = null
Attributes
#[ManyToOne]
$inversedBy: 'payments'

$company

private Company|null $company = null
Attributes
#[JoinColumn]
$nullable: true
#[ManyToOne]
$targetEntity: \App\Entity\Company::class
$inversedBy: 'payments'

$createdAt

private DateTimeImmutable|null $createdAt = null
Attributes
#[Column]
$name: 'created_at'

$id

private int|null $id = null
Attributes
#[Column]
#[GeneratedValue]
#[Id]

$order

private Order|null $order = null
Attributes
#[ManyToOne]
$inversedBy: 'payments'

$paymentMethod

private string|null $paymentMethod = null
Attributes
#[Column]
$length: 100
$nullable: true

$provider

private string|null $provider = null
Attributes
#[Column]
$length: 20
$nullable: true

$providerReference

private string|null $providerReference = null
Attributes
#[Column]
$length: 64
$nullable: true

$providerReturnToken

private string|null $providerReturnToken = null
Attributes
#[Column]
$length: 64
$nullable: true

$providerStartedAt

private DateTimeImmutable|null $providerStartedAt = null
Attributes
#[Column]
$type: 'datetime_immutable'
$nullable: true

$providerStatus

private string|null $providerStatus = null
Attributes
#[Column]
$length: 20
$nullable: true

$providerStatusAt

private DateTimeImmutable|null $providerStatusAt = null
Attributes
#[Column]
$type: 'datetime_immutable'
$nullable: true

$providerTransactionId

private string|null $providerTransactionId = null
Attributes
#[Column]
$length: 255
$nullable: true

$status

private string|null $status = null
Attributes
#[Column]
$length: 50

$stripePaymentIntentId

private string|null $stripePaymentIntentId = null
Attributes
#[Column]
$length: 255
$nullable: true

$subscription

private Subscription|null $subscription = null
Attributes
#[JoinColumn]
$nullable: true
#[ManyToOne]
$targetEntity: \App\Entity\Subscription::class

$updatedAt

private DateTimeImmutable|null $updatedAt = null
Attributes
#[Column]

$user

private User|null $user = null
Attributes
#[ManyToOne]
$inversedBy: 'payments'

Methods

getAmount()

public getAmount() : string|null
Return values
string|null

getAmout()

public getAmout() : string|null
Return values
string|null

getCreatedAt()

public getCreatedAt() : DateTimeImmutable|null
Return values
DateTimeImmutable|null

getId()

public getId() : int|null
Return values
int|null

getPaymentMethod()

public getPaymentMethod() : string|null
Return values
string|null

getProvider()

public getProvider() : string|null
Return values
string|null

getProviderReference()

public getProviderReference() : string|null
Return values
string|null

getProviderReturnToken()

public getProviderReturnToken() : string|null
Return values
string|null

getProviderStartedAt()

public getProviderStartedAt() : DateTimeImmutable|null
Return values
DateTimeImmutable|null —

Moment où la dernière transaction du prestataire a été créée.

getProviderStatus()

public getProviderStatus() : string|null
Return values
string|null —

Dernier statut connu côté prestataire, en majuscules (CREATED, PENDING, SUCCESS, FAILED, CANCELLED, TIMEOUT…). Purement informatif : n'influence pas status.

getProviderStatusAt()

public getProviderStatusAt() : DateTimeImmutable|null
Return values
DateTimeImmutable|null —

Moment où providerStatus a été enregistré pour la dernière fois.

getProviderTransactionId()

public getProviderTransactionId() : string|null
Return values
string|null

getStatus()

public getStatus() : string|null
Return values
string|null

getStripePaymentIntentId()

public getStripePaymentIntentId() : string|null
Return values
string|null

getUpdatedAt()

public getUpdatedAt() : DateTimeImmutable|null
Return values
DateTimeImmutable|null

setAmount()

public setAmount(string $amount) : static
Parameters
$amount : string
Return values
static

setAmout()

public setAmout(string $amout) : static
Parameters
$amout : string
Return values
static

setCard()

public setCard(Card|null $card) : static
Parameters
$card : Card|null
Return values
static

setCompany()

public setCompany(Company|null $company) : static
Parameters
$company : Company|null
Return values
static

setCreatedAt()

public setCreatedAt(DateTimeImmutable $createdAt) : static
Parameters
$createdAt : DateTimeImmutable
Return values
static

setOrder()

public setOrder(Order|null $order) : static
Parameters
$order : Order|null
Return values
static

setPaymentMethod()

public setPaymentMethod(string|null $paymentMethod) : static
Parameters
$paymentMethod : string|null
Return values
static

setProvider()

public setProvider(string|null $provider) : static
Parameters
$provider : string|null
Return values
static

setProviderReference()

public setProviderReference(string|null $providerReference) : static
Parameters
$providerReference : string|null
Return values
static

setProviderReturnToken()

public setProviderReturnToken(string|null $providerReturnToken) : static
Parameters
$providerReturnToken : string|null
Return values
static

setProviderStartedAt()

public setProviderStartedAt(DateTimeImmutable|null $providerStartedAt) : static
Parameters
$providerStartedAt : DateTimeImmutable|null
Return values
static

setProviderStatus()

public setProviderStatus(string|null $providerStatus) : static
Parameters
$providerStatus : string|null
Return values
static

setProviderStatusAt()

public setProviderStatusAt(DateTimeImmutable|null $providerStatusAt) : static
Parameters
$providerStatusAt : DateTimeImmutable|null
Return values
static

setProviderTransactionId()

public setProviderTransactionId(string|null $providerTransactionId) : static
Parameters
$providerTransactionId : string|null
Return values
static

setStatus()

public setStatus(string $status) : static
Parameters
$status : string
Return values
static

setStripePaymentIntentId()

public setStripePaymentIntentId(string|null $stripePaymentIntentId) : static
Parameters
$stripePaymentIntentId : string|null
Return values
static

setUpdatedAt()

public setUpdatedAt(DateTimeImmutable $updatedAt) : static
Parameters
$updatedAt : DateTimeImmutable
Return values
static

setUser()

public setUser(User|null $user) : static
Parameters
$user : User|null
Return values
static

        
On this page

Search results