Skip to main content

Class: PaymentProviderService

Helps retrieve payment providers

Hierarchy

  • TransactionBaseService

    PaymentProviderService

Constructors

constructor

new PaymentProviderService(container)

Parameters

NameType
containerInjectedDependencies

Overrides

TransactionBaseService.constructor

Defined in

medusa/src/services/payment-provider.ts:70

Properties

__configModule__

Protected Optional Readonly __configModule__: Record<string, unknown>

Inherited from

TransactionBaseService.__configModule__

Defined in

medusa/src/interfaces/transaction-base-service.ts:14


__container__

Protected Readonly __container__: any

Inherited from

TransactionBaseService.__container__

Defined in

medusa/src/interfaces/transaction-base-service.ts:13


__moduleDeclaration__

Protected Optional Readonly __moduleDeclaration__: Record<string, unknown>

Inherited from

TransactionBaseService.__moduleDeclaration__

Defined in

medusa/src/interfaces/transaction-base-service.ts:15


container_

Protected Readonly container_: InjectedDependencies

Defined in

medusa/src/services/payment-provider.ts:55


customerService_

Protected Readonly customerService_: CustomerService

Defined in

medusa/src/services/payment-provider.ts:65


featureFlagRouter_

Protected Readonly featureFlagRouter_: FlagRouter

Defined in

medusa/src/services/payment-provider.ts:68


logger_

Protected Readonly logger_: Logger

Defined in

medusa/src/services/payment-provider.ts:66


manager_

Protected manager_: EntityManager

Inherited from

TransactionBaseService.manager_

Defined in

medusa/src/interfaces/transaction-base-service.ts:5


paymentProviderRepository_

Protected Readonly paymentProviderRepository_: Repository<PaymentProvider>

Defined in

medusa/src/services/payment-provider.ts:58


paymentRepository_

Protected Readonly paymentRepository_: Repository<Payment>

Defined in

medusa/src/services/payment-provider.ts:59


paymentSessionRepository_

Protected Readonly paymentSessionRepository_: Repository<PaymentSession>

Defined in

medusa/src/services/payment-provider.ts:56


refundRepository_

Protected Readonly refundRepository_: Repository<Refund>

Defined in

medusa/src/services/payment-provider.ts:64


transactionManager_

Protected transactionManager_: undefined | EntityManager

Inherited from

TransactionBaseService.transactionManager_

Defined in

medusa/src/interfaces/transaction-base-service.ts:6

Accessors

activeManager_

Protected get activeManager_(): EntityManager

Returns

EntityManager

Inherited from

TransactionBaseService.activeManager_

Defined in

medusa/src/interfaces/transaction-base-service.ts:8


paymentService_

Protected get paymentService_(): PaymentService

Returns

PaymentService

Defined in

medusa/src/services/payment-provider.ts:60

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

NameTypeDescription
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

medusa/src/interfaces/transaction-base-service.ts:56


authorizePayment

authorizePayment(paymentSession, context): Promise<undefined | PaymentSession>

Parameters

NameType
paymentSessionPaymentSession
contextRecord<string, unknown>

Returns

Promise<undefined | PaymentSession>

Defined in

medusa/src/services/payment-provider.ts:523


buildPaymentProcessorContext

Protected buildPaymentProcessorContext(cartOrData): Cart & PaymentContext

Build the create session context for both legacy and new API

Parameters

NameType
cartOrDataCart | PaymentSessionInput

Returns

Cart & PaymentContext

Defined in

medusa/src/services/payment-provider.ts:840


cancelPayment

cancelPayment(paymentObj): Promise<Payment>

Parameters

NameType
paymentObjPartial<Payment> & { id: string }

Returns

Promise<Payment>

Defined in

medusa/src/services/payment-provider.ts:597


capturePayment

capturePayment(paymentObj): Promise<Payment>

Parameters

NameType
paymentObjPartial<Payment> & { id: string }

Returns

Promise<Payment>

Defined in

medusa/src/services/payment-provider.ts:636


createPayment

createPayment(data): Promise<Payment>

Parameters

NameType
dataCreatePaymentInput

Returns

Promise<Payment>

Defined in

medusa/src/services/payment-provider.ts:471


createSession

createSession(providerId, cart): Promise<PaymentSession>

Deprecated

Parameters

NameType
providerIdstring
cartCart

Returns

Promise<PaymentSession>

Defined in

medusa/src/services/payment-provider.ts:205

createSession(sessionInput): Promise<PaymentSession>

Creates a payment session with the given provider.

Parameters

NameType
sessionInputPaymentSessionInput

Returns

Promise<PaymentSession>

Defined in

medusa/src/services/payment-provider.ts:211


deleteSession

deleteSession(paymentSession): Promise<undefined | PaymentSession>

Parameters

NameType
paymentSessionPaymentSession

Returns

Promise<undefined | PaymentSession>

Defined in

medusa/src/services/payment-provider.ts:402


getStatus

getStatus(payment): Promise<PaymentSessionStatus>

Parameters

NameType
paymentPayment

Returns

Promise<PaymentSessionStatus>

Defined in

medusa/src/services/payment-provider.ts:625


list

list(): Promise<PaymentProvider[]>

Returns

Promise<PaymentProvider[]>

Defined in

medusa/src/services/payment-provider.ts:102


listPayments

listPayments(selector, config?): Promise<Payment[]>

List all the payments according to the given selector and config.

Parameters

NameType
selectorSelector<Payment>
configFindConfig<Payment>

Returns

Promise<Payment[]>

Defined in

medusa/src/services/payment-provider.ts:154


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

NameType
dataObject
data.customer?Object
data.customer.id?string
paymentResponseRecord<string, unknown> | PaymentSessionResponse

Returns

Promise<void>

Defined in

medusa/src/services/payment-provider.ts:930


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

NameTypeDescription
paymentSessionObjectthe payment session object to update
paymentSession.dataRecord<string, unknown>-
paymentSession.idstring-
paymentSession.provider_idstring-
sessionInputPaymentSessionInput

Returns

Promise<PaymentSession>

the payment session

Defined in

medusa/src/services/payment-provider.ts:301


refundFromPayment

refundFromPayment(payment, amount, reason, note?): Promise<Refund>

Parameters

NameType
paymentPayment
amountnumber
reasonstring
note?string

Returns

Promise<Refund>

Defined in

medusa/src/services/payment-provider.ts:766


refundPayment

refundPayment(payObjs, amount, reason, note?): Promise<Refund>

Parameters

NameType
payObjsPayment[]
amountnumber
reasonstring
note?string

Returns

Promise<Refund>

Defined in

medusa/src/services/payment-provider.ts:667


registerInstalledProviders

registerInstalledProviders(providerIds): Promise<void>

Parameters

NameType
providerIdsstring[]

Returns

Promise<void>

Defined in

medusa/src/services/payment-provider.ts:83


retrievePayment

retrievePayment(paymentId, relations?): Promise<Payment>

Retrieve a payment entity with the given id.

Parameters

NameTypeDefault value
paymentIdstringundefined
relationsstring[][]

Returns

Promise<Payment>

Defined in

medusa/src/services/payment-provider.ts:114


retrieveProvider

retrieveProvider<TProvider>(providerId): TProvider extends AbstractPaymentService ? AbstractPaymentService : TProvider extends AbstractPaymentProcessor ? AbstractPaymentProcessor : any

Finds a provider given an id

Type parameters

NameType
TProviderextends unknown

Parameters

NameTypeDescription
providerIdstringthe id of the provider to get

Returns

TProvider extends AbstractPaymentService ? AbstractPaymentService : TProvider extends AbstractPaymentProcessor ? AbstractPaymentProcessor : any

the payment provider

Defined in

medusa/src/services/payment-provider.ts:442


retrieveRefund

retrieveRefund(id, config?): Promise<Refund>

Parameters

NameType
idstring
configFindConfig<Refund>

Returns

Promise<Refund>

Defined in

medusa/src/services/payment-provider.ts:817


retrieveSession

retrieveSession(paymentSessionId, relations?): Promise<PaymentSession>

Return the payment session for the given id.

Parameters

NameTypeDefault value
paymentSessionIdstringundefined
relationsstring[][]

Returns

Promise<PaymentSession>

Defined in

medusa/src/services/payment-provider.ts:172


saveSession

Protected saveSession(providerId, data): Promise<PaymentSession>

Create or update a Payment session data.

Parameters

NameType
providerIdstring
dataObject
data.amount?number
data.cartId?string
data.isInitiated?boolean
data.isSelected?boolean
data.payment_session_id?string
data.sessionDataRecord<string, unknown>
data.status?PaymentSessionStatus

Returns

Promise<PaymentSession>

Defined in

medusa/src/services/payment-provider.ts:882


shouldRetryTransaction_

Protected shouldRetryTransaction_(err): boolean

Parameters

NameType
errRecord<string, unknown> | { code: string }

Returns

boolean

Inherited from

TransactionBaseService.shouldRetryTransaction_

Defined in

medusa/src/interfaces/transaction-base-service.ts:37


throwFromPaymentProcessorError

Private throwFromPaymentProcessorError(errObj): void

Parameters

NameType
errObjPaymentProcessorError

Returns

void

Defined in

medusa/src/services/payment-provider.ts:949


updatePayment

updatePayment(paymentId, data): Promise<Payment>

Parameters

NameType
paymentIdstring
dataObject
data.order_id?string
data.swap_id?string

Returns

Promise<Payment>

Defined in

medusa/src/services/payment-provider.ts:512


updateSession

updateSession(paymentSession, sessionInput): Promise<PaymentSession>

Update a payment session with the given provider.

Parameters

NameTypeDescription
paymentSessionObjectThe paymentSession to update
paymentSession.dataRecord<string, unknown>-
paymentSession.idstring-
paymentSession.provider_idstring-
sessionInputCart | PaymentSessionInput

Returns

Promise<PaymentSession>

the payment session

Defined in

medusa/src/services/payment-provider.ts:342


updateSessionData

updateSessionData(paymentSession, data): Promise<PaymentSession>

Parameters

NameType
paymentSessionPaymentSession
dataRecord<string, unknown>

Returns

Promise<PaymentSession>

Defined in

medusa/src/services/payment-provider.ts:569


withTransaction

withTransaction(transactionManager?): PaymentProviderService

Parameters

NameType
transactionManager?EntityManager

Returns

PaymentProviderService

Inherited from

TransactionBaseService.withTransaction

Defined in

medusa/src/interfaces/transaction-base-service.ts:20

Was this page helpful?