diff --git a/packages/api-client/src/api/index.ts b/packages/api-client/src/api/index.ts index a35f45d6..68b000cb 100644 --- a/packages/api-client/src/api/index.ts +++ b/packages/api-client/src/api/index.ts @@ -12,3 +12,4 @@ export { default as updateAddressDetails } from './updateAddressDetails'; export { default as getShippingMethods } from './getShippingMethods'; export { default as setShippingMethod } from './setShippingMethod'; export { default as setPaymentMethod } from './setPaymentMethod'; +export { default as transitionOrderToState } from './transitionOrderToState'; diff --git a/packages/composables/src/composables/useBilling/index.ts b/packages/composables/src/composables/useBilling/index.ts index d30eede9..3aa9c5f6 100644 --- a/packages/composables/src/composables/useBilling/index.ts +++ b/packages/composables/src/composables/useBilling/index.ts @@ -29,7 +29,13 @@ const params: UseBillingParams = { // OrderAddress has one property optional which is required in CreateAddressInput. const response = await context.$vendure.api.updateAddressDetails({ input: billingDetails as CreateAddressInput, type: BILLING_TYPE }, customQuery); - return (response?.data?.setOrderBillingAddress as Order)?.billingAddress; + const newOrder = (response?.data?.setOrderBillingAddress as Order)?.billingAddress + + if (newOrder) { + await context.$vendure.api.transitionOrderToState({ state: 'ArrangingPayment' }); + } + + return newOrder; } };