--- displayed_sidebar: servicesSidebar --- import ParameterTypes from "@site/src/components/ParameterTypes" # AbstractPaymentService This will be #### Deprecated in the near future use the AbstractPaymentProcessor instead ## Implements - ["medusa-interfaces"](../modules/medusa_interfaces_.mdx) ## Constructors ### constructor `Protected **new AbstractPaymentService**(container, config?)` #### Parameters `", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] } ]} /> ## Properties `", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "__container__", "type": "`any`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "__moduleDeclaration__", "type": "`Record`", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "manager_", "type": "EntityManager", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "transactionManager_", "type": "`undefined` \\| EntityManager", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "identifier", "type": "`string`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] } ]} /> ## Accessors ### activeManager\_ `Protected get**activeManager_**(): EntityManager` #### Returns EntityManager ## Methods ### atomicPhase\_ `Protected **atomicPhase_**(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. #### Parameters Promise<TResult>", "description": "the transactional work to be done", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "isolationOrErrorHandler", "type": "`IsolationLevel` \\| (`error`: `TError`) => Promise<void \\| TResult>", "description": "the isolation level to be used for the work.", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "maybeErrorHandlerOrDontFail", "type": "(`error`: `TError`) => Promise<void \\| TResult>", "description": "Potential error handler", "optional": true, "defaultValue": "", "expandable": false, "children": [] } ]} /> #### Returns Promise<TResult> ___ ### authorizePayment `Abstract **authorizePayment**(paymentSession, context): Promise<{ data: [Data](../types/Data.mdx) ; status: [PaymentSessionStatus](../enums/PaymentSessionStatus.mdx) }>` #### Parameters #### Returns Promise<{ data: [Data](../types/Data.mdx) ; status: [PaymentSessionStatus](../enums/PaymentSessionStatus.mdx) }> #### Deprecated ___ ### cancelPayment `Abstract **cancelPayment**(payment): Promise<[Data](../types/Data.mdx)>` This will be #### Parameters #### Returns Promise<[Data](../types/Data.mdx)> #### Deprecated in the near future ___ ### capturePayment `Abstract **capturePayment**(payment): Promise<[Data](../types/Data.mdx)>` This will be #### Parameters #### Returns Promise<[Data](../types/Data.mdx)> #### Deprecated in the near future ___ ### createPayment `Abstract **createPayment**(context): Promise<[PaymentSessionResponse](../types/PaymentSessionResponse.mdx)>` #### Parameters #### Returns Promise<[PaymentSessionResponse](../types/PaymentSessionResponse.mdx)> `Abstract **createPayment**(cart): Promise<[Data](../types/Data.mdx)>` This will be #### Parameters #### Returns Promise<[Data](../types/Data.mdx)> #### Deprecated in the near future use `createPayment(context: Cart & PaymentContext): Promise` instead ___ ### deletePayment `Abstract **deletePayment**(paymentSession): Promise<void>` This will be #### Parameters #### Returns Promise<void> #### Deprecated in the near future ___ ### getIdentifier `**getIdentifier**(): string` #### Returns `string` ___ ### getPaymentData `Abstract **getPaymentData**(paymentSession): Promise<[Data](../types/Data.mdx)>` #### Parameters #### Returns Promise<[Data](../types/Data.mdx)> #### Deprecated ___ ### getStatus `Abstract **getStatus**(data): Promise<[PaymentSessionStatus](../enums/PaymentSessionStatus.mdx)>` This will be #### Parameters #### Returns Promise<[PaymentSessionStatus](../enums/PaymentSessionStatus.mdx)> #### Deprecated in the near future ___ ### refundPayment `Abstract **refundPayment**(payment, refundAmount): Promise<[Data](../types/Data.mdx)>` This will be #### Parameters #### Returns Promise<[Data](../types/Data.mdx)> #### Deprecated in the near future ___ ### retrievePayment `Abstract **retrievePayment**(paymentData): Promise<[Data](../types/Data.mdx)>` #### Parameters #### Returns Promise<[Data](../types/Data.mdx)> #### Deprecated ___ ### retrieveSavedMethods `**retrieveSavedMethods**(customer): Promise<[Data](../types/Data.mdx)[]>` This will be #### Parameters #### Returns Promise<[Data](../types/Data.mdx)[]> #### Deprecated in the near future ___ ### shouldRetryTransaction\_ `Protected **shouldRetryTransaction_**(err): boolean` #### Parameters ` \\| `{ code: string }`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] } ]} /> #### Returns `boolean` ___ ### updatePayment `Abstract **updatePayment**(paymentSessionData, context): Promise<Record<string, unknown> \| [PaymentSessionResponse](../types/PaymentSessionResponse.mdx)>` #### Parameters #### Returns Promise<Record<string, unknown> \| [PaymentSessionResponse](../types/PaymentSessionResponse.mdx)> `Abstract **updatePayment**(paymentSessionData, cart): Promise<[Data](../types/Data.mdx)>` This will be #### Parameters #### Returns Promise<[Data](../types/Data.mdx)> #### Deprecated in the near future use `updatePayment(paymentSessionData: PaymentSessionData, context: Cart & PaymentContext): Promise` instead ___ ### updatePaymentData `Abstract **updatePaymentData**(paymentSessionData, data): Promise<[Data](../types/Data.mdx)>` #### Parameters #### Returns Promise<[Data](../types/Data.mdx)> #### Deprecated ___ ### withTransaction `**withTransaction**(transactionManager?): [AbstractPaymentService](AbstractPaymentService.mdx)` #### Parameters #### Returns [AbstractPaymentService](AbstractPaymentService.mdx)