diff --git a/.changeset/seven-moose-scream.md b/.changeset/seven-moose-scream.md new file mode 100644 index 0000000000..96b91da7a0 --- /dev/null +++ b/.changeset/seven-moose-scream.md @@ -0,0 +1,5 @@ +--- +"@medusajs/medusa": patch +--- + +fix(medusa): cart completion payment sessions diff --git a/packages/medusa/src/strategies/__tests__/cart-completion.js b/packages/medusa/src/strategies/__tests__/cart-completion.js index a2db8ac922..da12054993 100644 --- a/packages/medusa/src/strategies/__tests__/cart-completion.js +++ b/packages/medusa/src/strategies/__tests__/cart-completion.js @@ -62,9 +62,7 @@ const toTest = [ expect(cartServiceMock.authorizePayment).toHaveBeenCalledTimes(1) expect(cartServiceMock.authorizePayment).toHaveBeenCalledWith( - expect.objectContaining({ - id: "test-cart", - }), + "test-cart", { idempotency_key: { idempotency_key: "ikey", diff --git a/packages/medusa/src/strategies/cart-completion.ts b/packages/medusa/src/strategies/cart-completion.ts index 48700febd8..6e4aa57545 100644 --- a/packages/medusa/src/strategies/cart-completion.ts +++ b/packages/medusa/src/strategies/cart-completion.ts @@ -2,13 +2,12 @@ import { IEventBusService, IInventoryService, ReservationItemDTO, - WithRequiredProperty, } from "@medusajs/types" import { AbstractCartCompletionStrategy, CartCompletionResponse, } from "../interfaces" -import { Cart, IdempotencyKey, Order } from "../models" +import { IdempotencyKey, Order } from "../models" import { PaymentProviderService, ProductVariantInventoryService, @@ -247,39 +246,10 @@ class CartCompletionStrategy extends AbstractCartCompletionStrategy { const txCartService = this.cartService_.withTransaction(manager) - let cart: Cart | WithRequiredProperty = - await txCartService.retrieveWithTotals(id, { - relations: [ - "items.variant.product.profiles", - "items.adjustments", - "discounts", - "discounts.rule", - "gift_cards", - "shipping_methods", - "shipping_methods.shipping_option", - "billing_address", - "shipping_address", - "region", - "region.tax_rates", - "region.payment_providers", - "payment_sessions", - "customer", - ], - }) - - if (cart.payment_sessions?.length) { - await txCartService.setPaymentSessions( - cart as WithRequiredProperty - ) - } - - cart = await txCartService.authorizePayment( - cart as WithRequiredProperty, - { - ...context, - idempotency_key: idempotencyKey, - } - ) + const cart = await txCartService.authorizePayment(id, { + ...context, + idempotency_key: idempotencyKey, + }) if (cart.payment_session) { if (