Class: PaymentProviderService
Helps retrieve payment providers
Hierarchy
TransactionBaseService↳
PaymentProviderService
Constructors
constructor
• new PaymentProviderService(container)
Parameters
| Name | Type |
|---|---|
container | InjectedDependencies |
Overrides
TransactionBaseService.constructor
Defined in
packages/medusa/src/services/payment-provider.ts:64
Properties
__configModule__
• Protected Optional Readonly __configModule__: Record<string, unknown>
Inherited from
TransactionBaseService.__configModule__
Defined in
packages/medusa/src/interfaces/transaction-base-service.ts:10
__container__
• Protected Readonly __container__: any
Inherited from
TransactionBaseService.__container__
Defined in
packages/medusa/src/interfaces/transaction-base-service.ts:9
__moduleDeclaration__
• Protected Optional Readonly __moduleDeclaration__: Record<string, unknown>
Inherited from
TransactionBaseService.__moduleDeclaration__
Defined in
packages/medusa/src/interfaces/transaction-base-service.ts:11
container_
• Protected Readonly container_: InjectedDependencies
Defined in
packages/medusa/src/services/payment-provider.ts:53
customerService_
• Protected Readonly customerService_: CustomerService
Defined in
packages/medusa/src/services/payment-provider.ts:59
featureFlagRouter_
• Protected Readonly featureFlagRouter_: FlagRouter
Defined in
packages/medusa/src/services/payment-provider.ts:62
logger_
• Protected Readonly logger_: Logger
Defined in
packages/medusa/src/services/payment-provider.ts:60
manager_
• Protected manager_: EntityManager
Overrides
TransactionBaseService.manager_
Defined in
packages/medusa/src/services/payment-provider.ts:51
paymentProviderRepository_
• Protected Readonly paymentProviderRepository_: typeof PaymentProviderRepository
Defined in
packages/medusa/src/services/payment-provider.ts:56
paymentRepository_
• Protected Readonly paymentRepository_: typeof PaymentRepository
Defined in
packages/medusa/src/services/payment-provider.ts:57
paymentSessionRepository_
• Protected Readonly paymentSessionRepository_: typeof PaymentSessionRepository
Defined in
packages/medusa/src/services/payment-provider.ts:54
refundRepository_
• Protected Readonly refundRepository_: typeof RefundRepository
Defined in
packages/medusa/src/services/payment-provider.ts:58
transactionManager_
• Protected transactionManager_: undefined | EntityManager
Overrides
TransactionBaseService.transactionManager_
Defined in
packages/medusa/src/services/payment-provider.ts:52
Methods
atomicPhase_
▸ Protected atomicPhase_<TResult, TError>(work, isolationOrErrorHandler?, maybeErrorHandlerOrDontFail?): Promise<TResult>
Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.
Type parameters
| Name |
|---|
TResult |
TError |
Parameters
| Name | Type | Description |
|---|---|---|
work | (transactionManager: EntityManager) => Promise<TResult> | the transactional work to be done |
isolationOrErrorHandler? | IsolationLevel | (error: TError) => Promise<void | TResult> | the isolation level to be used for the work. |
maybeErrorHandlerOrDontFail? | (error: TError) => Promise<void | TResult> | Potential error handler |
Returns
Promise<TResult>
the result of the transactional work
Inherited from
TransactionBaseService.atomicPhase_
Defined in
packages/medusa/src/interfaces/transaction-base-service.ts:50
authorizePayment
▸ authorizePayment(paymentSession, context): Promise<undefined | PaymentSession>
Parameters
| Name | Type |
|---|---|
paymentSession | PaymentSession |
context | Record<string, unknown> |
Returns
Promise<undefined | PaymentSession>
Defined in
packages/medusa/src/services/payment-provider.ts:395
buildPaymentProcessorContext
▸ Protected buildPaymentProcessorContext(cartOrData): Cart & PaymentContext
Build the create session context for both legacy and new API
Parameters
| Name | Type |
|---|---|
cartOrData | Cart | PaymentSessionInput |
Returns
Cart & PaymentContext
Defined in
packages/medusa/src/services/payment-provider.ts:641
cancelPayment
▸ cancelPayment(paymentObj): Promise<Payment>
Parameters
| Name | Type |
|---|---|
paymentObj | Partial<Payment> & { id: string } |
Returns
Promise<Payment>
Defined in
packages/medusa/src/services/payment-provider.ts:448
capturePayment
▸ capturePayment(paymentObj): Promise<Payment>
Parameters
| Name | Type |
|---|---|
paymentObj | Partial<Payment> & { id: string } |
Returns
Promise<Payment>
Defined in
packages/medusa/src/services/payment-provider.ts:473
createPayment
▸ createPayment(data): Promise<Payment>
Parameters
| Name | Type |
|---|---|
data | CreatePaymentInput |
Returns
Promise<Payment>
Defined in
packages/medusa/src/services/payment-provider.ts:357
createSession
▸ createSession<TInput>(providerIdOrSessionInput, ...cart): Promise<PaymentSession>
Creates a payment session with the given provider.
Type parameters
| Name | Type |
|---|---|
TInput | extends string | PaymentSessionInput = string | PaymentSessionInput |
Parameters
| Name | Type | Description |
|---|---|---|
providerIdOrSessionInput | TInput | the id of the provider to create payment with or the input data |
...cart | TInput extends string ? [Cart] : [undefined?] | a cart object used to calculate the amount, etc. from |
Returns
Promise<PaymentSession>
the payment session
Defined in
packages/medusa/src/services/payment-provider.ts:180
deleteSession
▸ deleteSession(paymentSession): Promise<undefined | PaymentSession>
Parameters
| Name | Type |
|---|---|
paymentSession | PaymentSession |
Returns
Promise<undefined | PaymentSession>
Defined in
packages/medusa/src/services/payment-provider.ts:303
getStatus
▸ getStatus(payment): Promise<PaymentSessionStatus>
Parameters
| Name | Type |
|---|---|
payment | Payment |
Returns
Promise<PaymentSessionStatus>
Defined in
packages/medusa/src/services/payment-provider.ts:468
list
▸ list(): Promise<PaymentProvider[]>
Returns
Promise<PaymentProvider[]>
Defined in
packages/medusa/src/services/payment-provider.ts:97
listPayments
▸ listPayments(selector, config?): Promise<Payment[]>
Parameters
| Name | Type |
|---|---|
selector | Selector<Payment> |
config | FindConfig<Payment> |
Returns
Promise<Payment[]>
Defined in
packages/medusa/src/services/payment-provider.ts:132
processUpdateRequestsData
▸ Protected processUpdateRequestsData(data?, paymentResponse): Promise<void>
Process the collected data. Can be used every time we need to process some collected data returned by the provider
Parameters
| Name | Type |
|---|---|
data | Object |
data.customer? | Object |
data.customer.id? | string |
paymentResponse | Record<string, unknown> | PaymentSessionResponse |
Returns
Promise<void>
Defined in
packages/medusa/src/services/payment-provider.ts:731
refreshSession
▸ refreshSession(paymentSession, sessionInput): Promise<PaymentSession>
Refreshes a payment session with the given provider. This means, that we delete the current one and create a new.
Parameters
| Name | Type | Description |
|---|---|---|
paymentSession | Object | the payment session object to update |
paymentSession.data | Record<string, unknown> | - |
paymentSession.id | string | - |
paymentSession.provider_id | string | - |
sessionInput | PaymentSessionInput |
Returns
Promise<PaymentSession>
the payment session
Defined in
packages/medusa/src/services/payment-provider.ts:238
refundFromPayment
▸ refundFromPayment(payment, amount, reason, note?): Promise<Refund>
Parameters
| Name | Type |
|---|---|
payment | Payment |
amount | number |
reason | string |
note? | string |
Returns
Promise<Refund>
Defined in
packages/medusa/src/services/payment-provider.ts:578
refundPayment
▸ refundPayment(payObjs, amount, reason, note?): Promise<Refund>
Parameters
| Name | Type |
|---|---|
payObjs | Payment[] |
amount | number |
reason | string |
note? | string |
Returns
Promise<Refund>
Defined in
packages/medusa/src/services/payment-provider.ts:493
registerInstalledProviders
▸ registerInstalledProviders(providerIds): Promise<void>
Parameters
| Name | Type |
|---|---|
providerIds | string[] |
Returns
Promise<void>
Defined in
packages/medusa/src/services/payment-provider.ts:78
retrievePayment
▸ retrievePayment(id, relations?): Promise<Payment>
Parameters
| Name | Type | Default value |
|---|---|---|
id | string | undefined |
relations | string[] | [] |
Returns
Promise<Payment>
Defined in
packages/medusa/src/services/payment-provider.ts:104
retrieveProvider
▸ retrieveProvider<TProvider>(providerId): TProvider extends AbstractPaymentService ? AbstractPaymentService : any
Finds a provider given an id
Type parameters
| Name | Type |
|---|---|
TProvider | extends unknown |
Parameters
| Name | Type | Description |
|---|---|---|
providerId | string | the id of the provider to get |
Returns
TProvider extends AbstractPaymentService ? AbstractPaymentService : any
the payment provider
Defined in
packages/medusa/src/services/payment-provider.ts:333
retrieveRefund
▸ retrieveRefund(id, config?): Promise<Refund>
Parameters
| Name | Type |
|---|---|
id | string |
config | FindConfig<Refund> |
Returns
Promise<Refund>
Defined in
packages/medusa/src/services/payment-provider.ts:618
retrieveSession
▸ retrieveSession(id, relations?): Promise<PaymentSession>
Parameters
| Name | Type | Default value |
|---|---|---|
id | string | undefined |
relations | string[] | [] |
Returns
Promise<PaymentSession>
Defined in
packages/medusa/src/services/payment-provider.ts:145
saveSession
▸ Protected saveSession(providerId, data): Promise<PaymentSession>
Create or update a Payment session data.
Parameters
| Name | Type |
|---|---|
providerId | string |
data | Object |
data.amount? | number |
data.cartId? | string |
data.isInitiated? | boolean |
data.isSelected? | boolean |
data.payment_session_id? | string |
data.sessionData | Record<string, unknown> |
data.status? | PaymentSessionStatus |
Returns
Promise<PaymentSession>
Defined in
packages/medusa/src/services/payment-provider.ts:681
shouldRetryTransaction_
▸ Protected shouldRetryTransaction_(err): boolean
Parameters
| Name | Type |
|---|---|
err | Record<string, unknown> | { code: string } |
Returns
boolean
Inherited from
TransactionBaseService.shouldRetryTransaction_
Defined in
packages/medusa/src/interfaces/transaction-base-service.ts:31
updatePayment
▸ updatePayment(paymentId, data): Promise<Payment>
Parameters
| Name | Type |
|---|---|
paymentId | string |
data | Object |
data.order_id? | string |
data.swap_id? | string |
Returns
Promise<Payment>
Defined in
packages/medusa/src/services/payment-provider.ts:383
updateSession
▸ updateSession(paymentSession, sessionInput): Promise<PaymentSession>
Update a payment session with the given provider.
Parameters
| Name | Type | Description |
|---|---|---|
paymentSession | Object | The paymentSession to update |
paymentSession.data | Record<string, unknown> | - |
paymentSession.id | string | - |
paymentSession.provider_id | string | - |
sessionInput | Cart | PaymentSessionInput |
Returns
Promise<PaymentSession>
the payment session
Defined in
packages/medusa/src/services/payment-provider.ts:268
updateSessionData
▸ updateSessionData(paymentSession, data): Promise<PaymentSession>
Parameters
| Name | Type |
|---|---|
paymentSession | PaymentSession |
data | Record<string, unknown> |
Returns
Promise<PaymentSession>
Defined in
packages/medusa/src/services/payment-provider.ts:427
withTransaction
▸ withTransaction(transactionManager?): PaymentProviderService
Parameters
| Name | Type |
|---|---|
transactionManager? | EntityManager |
Returns
Inherited from
TransactionBaseService.withTransaction
Defined in
packages/medusa/src/interfaces/transaction-base-service.ts:14