@mercurjs/core 2.3.9-canary.3 → 2.3.9-canary.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.medusa/server/src/api/admin/middlewares.js +41 -39
- package/.medusa/server/src/api/admin/payout-accounts/[id]/refresh-link/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/payout-accounts/[id]/refresh-link/route.js +14 -0
- package/.medusa/server/src/api/admin/payout-accounts/[id]/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/payout-accounts/[id]/route.js +18 -0
- package/.medusa/server/src/api/admin/payout-accounts/[id]/sync/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/payout-accounts/[id]/sync/route.js +14 -0
- package/.medusa/server/src/api/admin/payout-accounts/helpers.d.ts +2 -0
- package/.medusa/server/src/api/admin/payout-accounts/helpers.js +7 -0
- package/.medusa/server/src/api/admin/payout-accounts/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/admin/payout-accounts/middlewares.js +45 -0
- package/.medusa/server/src/api/admin/payout-accounts/query-config.d.ts +11 -0
- package/.medusa/server/src/api/admin/payout-accounts/query-config.js +26 -0
- package/.medusa/server/src/api/admin/payout-accounts/route.d.ts +5 -0
- package/.medusa/server/src/api/admin/payout-accounts/route.js +31 -0
- package/.medusa/server/src/api/admin/payout-accounts/validators.d.ts +51 -0
- package/.medusa/server/src/api/admin/payout-accounts/validators.js +22 -0
- package/.medusa/server/src/api/admin/payouts/[id]/retry/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/payouts/[id]/retry/route.js +14 -0
- package/.medusa/server/src/api/admin/payouts/helpers.d.ts +2 -0
- package/.medusa/server/src/api/admin/payouts/helpers.js +7 -0
- package/.medusa/server/src/api/admin/payouts/middlewares.js +16 -1
- package/.medusa/server/src/api/admin/payouts/query-config.js +10 -1
- package/.medusa/server/src/api/admin/payouts/validators.d.ts +2 -0
- package/.medusa/server/src/api/admin/payouts/validators.js +3 -1
- package/.medusa/server/src/api/admin/products/validators.d.ts +1 -0
- package/.medusa/server/src/api/admin/products/validators.js +6 -2
- package/.medusa/server/src/api/hooks/payout/route.js +4 -6
- package/.medusa/server/src/api/middlewares.js +5 -1
- package/.medusa/server/src/api/payout/onboarding/refresh/route.d.ts +6 -0
- package/.medusa/server/src/api/payout/onboarding/refresh/route.js +21 -0
- package/.medusa/server/src/api/store/carts/middlewares.js +11 -1
- package/.medusa/server/src/api/utils/ensure-seller-middleware.js +2 -2
- package/.medusa/server/src/api/vendor/offers/batch/route.js +6 -2
- package/.medusa/server/src/api/vendor/offers/validators.d.ts +1 -0
- package/.medusa/server/src/api/vendor/offers/validators.js +2 -1
- package/.medusa/server/src/api/vendor/payout-accounts/[id]/onboarding/route.js +2 -8
- package/.medusa/server/src/api/vendor/payout-accounts/helpers.d.ts +2 -0
- package/.medusa/server/src/api/vendor/payout-accounts/helpers.js +7 -2
- package/.medusa/server/src/api/vendor/payout-accounts/me/route.d.ts +3 -0
- package/.medusa/server/src/api/vendor/payout-accounts/me/route.js +15 -0
- package/.medusa/server/src/api/vendor/payout-accounts/middlewares.js +9 -1
- package/.medusa/server/src/api/vendor/payout-accounts/query-config.d.ts +11 -0
- package/.medusa/server/src/api/vendor/payout-accounts/query-config.js +30 -2
- package/.medusa/server/src/api/vendor/payout-accounts/route.js +4 -9
- package/.medusa/server/src/api/vendor/payout-accounts/validators.d.ts +3 -1
- package/.medusa/server/src/api/vendor/payout-accounts/validators.js +5 -2
- package/.medusa/server/src/api/vendor/payouts/query-config.d.ts +2 -0
- package/.medusa/server/src/api/vendor/payouts/query-config.js +12 -2
- package/.medusa/server/src/api/vendor/payouts/validators.d.ts +1 -0
- package/.medusa/server/src/api/vendor/payouts/validators.js +2 -1
- package/.medusa/server/src/api/vendor/products/validators.d.ts +1 -0
- package/.medusa/server/src/api/vendor/products/validators.js +6 -2
- package/.medusa/server/src/api/vendor/sellers/select/route.js +2 -2
- package/.medusa/server/src/modules/payout/index.d.ts +1 -45
- package/.medusa/server/src/modules/payout/loaders/provider.js +7 -3
- package/.medusa/server/src/modules/payout/migrations/Migration20261028120000.d.ts +5 -0
- package/.medusa/server/src/modules/payout/migrations/Migration20261028120000.js +97 -0
- package/.medusa/server/src/modules/payout/models/index.d.ts +1 -0
- package/.medusa/server/src/modules/payout/models/index.js +4 -2
- package/.medusa/server/src/modules/payout/models/onboarding.d.ts +22 -1
- package/.medusa/server/src/modules/payout/models/payout-account.d.ts +23 -2
- package/.medusa/server/src/modules/payout/models/payout-account.js +33 -7
- package/.medusa/server/src/modules/payout/models/payout-reversal.d.ts +48 -0
- package/.medusa/server/src/modules/payout/models/payout-reversal.js +37 -0
- package/.medusa/server/src/modules/payout/models/payout.d.ts +22 -1
- package/.medusa/server/src/modules/payout/models/payout.js +18 -2
- package/.medusa/server/src/modules/payout/providers/system.d.ts +11 -5
- package/.medusa/server/src/modules/payout/providers/system.js +33 -14
- package/.medusa/server/src/modules/payout/services/payout-module-service.d.ts +94 -100
- package/.medusa/server/src/modules/payout/services/payout-module-service.js +316 -109
- package/.medusa/server/src/modules/payout/services/provider-service.d.ts +11 -7
- package/.medusa/server/src/modules/payout/services/provider-service.js +33 -13
- package/.medusa/server/src/modules/payout/utils/abstract-payout-provider.d.ts +20 -0
- package/.medusa/server/src/modules/payout/utils/abstract-payout-provider.js +19 -0
- package/.medusa/server/src/modules/payout/utils/index.d.ts +1 -0
- package/.medusa/server/src/modules/payout/utils/index.js +18 -0
- package/.medusa/server/src/modules/telemetry/index.d.ts +21 -0
- package/.medusa/server/src/modules/telemetry/index.js +12 -0
- package/.medusa/server/src/modules/telemetry/migrations/Migration20261029000000.d.ts +5 -0
- package/.medusa/server/src/modules/telemetry/migrations/Migration20261029000000.js +27 -0
- package/.medusa/server/src/modules/telemetry/models/index.d.ts +1 -0
- package/.medusa/server/src/modules/telemetry/models/index.js +10 -0
- package/.medusa/server/src/modules/telemetry/models/installation.d.ts +9 -0
- package/.medusa/server/src/modules/telemetry/models/installation.js +14 -0
- package/.medusa/server/src/modules/telemetry/repositories/index.d.ts +1 -0
- package/.medusa/server/src/modules/telemetry/repositories/index.js +18 -0
- package/.medusa/server/src/modules/telemetry/repositories/telemetry-heartbeat.d.ts +10 -0
- package/.medusa/server/src/modules/telemetry/repositories/telemetry-heartbeat.js +28 -0
- package/.medusa/server/src/modules/telemetry/service.d.ts +25 -0
- package/.medusa/server/src/modules/telemetry/service.js +54 -0
- package/.medusa/server/src/subscribers/payout-webhook.d.ts +2 -2
- package/.medusa/server/src/subscribers/payout-webhook.js +9 -5
- package/.medusa/server/src/subscribers/telemetry-first-member-invited.d.ts +3 -0
- package/.medusa/server/src/subscribers/telemetry-first-member-invited.js +14 -0
- package/.medusa/server/src/subscribers/telemetry-first-offer.d.ts +3 -0
- package/.medusa/server/src/subscribers/telemetry-first-offer.js +14 -0
- package/.medusa/server/src/subscribers/telemetry-first-order.d.ts +3 -0
- package/.medusa/server/src/subscribers/telemetry-first-order.js +14 -0
- package/.medusa/server/src/subscribers/telemetry-first-payout-account.d.ts +5 -0
- package/.medusa/server/src/subscribers/telemetry-first-payout-account.js +24 -0
- package/.medusa/server/src/subscribers/telemetry-first-product-published.d.ts +3 -0
- package/.medusa/server/src/subscribers/telemetry-first-product-published.js +14 -0
- package/.medusa/server/src/subscribers/telemetry-first-seller-approved.d.ts +3 -0
- package/.medusa/server/src/subscribers/telemetry-first-seller-approved.js +14 -0
- package/.medusa/server/src/subscribers/telemetry-first-seller.d.ts +3 -0
- package/.medusa/server/src/subscribers/telemetry-first-seller.js +14 -0
- package/.medusa/server/src/utils/telemetry/boot.d.ts +7 -0
- package/.medusa/server/src/utils/telemetry/boot.js +117 -0
- package/.medusa/server/src/utils/telemetry/buckets.d.ts +2 -0
- package/.medusa/server/src/utils/telemetry/buckets.js +22 -0
- package/.medusa/server/src/utils/telemetry/config.d.ts +19 -0
- package/.medusa/server/src/utils/telemetry/config.js +60 -0
- package/.medusa/server/src/utils/telemetry/first-party.d.ts +11 -0
- package/.medusa/server/src/utils/telemetry/first-party.js +33 -0
- package/.medusa/server/src/utils/telemetry/identity.d.ts +6 -0
- package/.medusa/server/src/utils/telemetry/identity.js +32 -0
- package/.medusa/server/src/utils/telemetry/index.d.ts +8 -0
- package/.medusa/server/src/utils/telemetry/index.js +27 -0
- package/.medusa/server/src/utils/telemetry/milestones.d.ts +20 -0
- package/.medusa/server/src/utils/telemetry/milestones.js +60 -0
- package/.medusa/server/src/utils/telemetry/sender.d.ts +17 -0
- package/.medusa/server/src/utils/telemetry/sender.js +48 -0
- package/.medusa/server/src/utils/telemetry/snapshot.d.ts +13 -0
- package/.medusa/server/src/utils/telemetry/snapshot.js +193 -0
- package/.medusa/server/src/with-mercur.d.ts +6 -0
- package/.medusa/server/src/with-mercur.js +1 -1
- package/.medusa/server/src/workflows/offer/workflows/create-offers.d.ts +3 -0
- package/.medusa/server/src/workflows/offer/workflows/create-offers.js +11 -1
- package/.medusa/server/src/workflows/payment/utils/split-order-payment-group.js +11 -3
- package/.medusa/server/src/workflows/payment/workflows/process-payment.js +10 -5
- package/.medusa/server/src/workflows/payout/steps/create-onboarding.d.ts +8 -2
- package/.medusa/server/src/workflows/payout/steps/create-onboarding.js +10 -4
- package/.medusa/server/src/workflows/payout/steps/create-payout-account.d.ts +3 -2
- package/.medusa/server/src/workflows/payout/steps/create-payout-account.js +9 -3
- package/.medusa/server/src/workflows/payout/steps/create-payout-accounts.d.ts +11 -0
- package/.medusa/server/src/workflows/payout/steps/create-payout-accounts.js +22 -0
- package/.medusa/server/src/workflows/payout/steps/create-payout-reversals.d.ts +4 -0
- package/.medusa/server/src/workflows/payout/steps/create-payout-reversals.js +23 -0
- package/.medusa/server/src/workflows/payout/steps/create-payouts.d.ts +4 -0
- package/.medusa/server/src/workflows/payout/steps/create-payouts.js +23 -0
- package/.medusa/server/src/workflows/payout/steps/index.d.ts +12 -5
- package/.medusa/server/src/workflows/payout/steps/index.js +13 -6
- package/.medusa/server/src/workflows/payout/steps/process-payout-reversals.d.ts +6 -0
- package/.medusa/server/src/workflows/payout/steps/process-payout-reversals.js +17 -0
- package/.medusa/server/src/workflows/payout/steps/process-payouts.d.ts +6 -0
- package/.medusa/server/src/workflows/payout/steps/process-payouts.js +17 -0
- package/.medusa/server/src/workflows/payout/steps/sync-payout-account.d.ts +8 -0
- package/.medusa/server/src/workflows/payout/steps/sync-payout-account.js +33 -0
- package/.medusa/server/src/workflows/payout/steps/update-payout-reversals.d.ts +4 -0
- package/.medusa/server/src/workflows/payout/steps/update-payout-reversals.js +29 -0
- package/.medusa/server/src/workflows/payout/steps/update-payouts.d.ts +4 -0
- package/.medusa/server/src/workflows/payout/steps/update-payouts.js +34 -0
- package/.medusa/server/src/workflows/payout/steps/validate-onboarding-token.d.ts +12 -0
- package/.medusa/server/src/workflows/payout/steps/validate-onboarding-token.js +23 -0
- package/.medusa/server/src/workflows/payout/steps/validate-payout-retry.d.ts +10 -0
- package/.medusa/server/src/workflows/payout/steps/validate-payout-retry.js +15 -0
- package/.medusa/server/src/workflows/payout/steps/validate-seller-without-payout-account.d.ts +10 -0
- package/.medusa/server/src/workflows/payout/steps/validate-seller-without-payout-account.js +13 -0
- package/.medusa/server/src/workflows/payout/utils/fulfillment-status.d.ts +26 -0
- package/.medusa/server/src/workflows/payout/utils/fulfillment-status.js +64 -0
- package/.medusa/server/src/workflows/payout/utils/index.d.ts +3 -0
- package/.medusa/server/src/workflows/payout/utils/index.js +20 -0
- package/.medusa/server/src/workflows/payout/utils/payout-amounts.d.ts +173 -0
- package/.medusa/server/src/workflows/payout/utils/payout-amounts.js +304 -0
- package/.medusa/server/src/workflows/payout/utils/sent-to-provider.d.ts +11 -0
- package/.medusa/server/src/workflows/payout/utils/sent-to-provider.js +15 -0
- package/.medusa/server/src/workflows/payout/workflows/create-onboarding.d.ts +5 -0
- package/.medusa/server/src/workflows/payout/workflows/create-onboarding.js +8 -3
- package/.medusa/server/src/workflows/payout/workflows/create-or-refresh-seller-payout-account.d.ts +16 -0
- package/.medusa/server/src/workflows/payout/workflows/create-or-refresh-seller-payout-account.js +38 -0
- package/.medusa/server/src/workflows/payout/workflows/create-order-payouts.d.ts +28 -0
- package/.medusa/server/src/workflows/payout/workflows/create-order-payouts.js +82 -0
- package/.medusa/server/src/workflows/payout/workflows/create-payout-account.d.ts +11 -5
- package/.medusa/server/src/workflows/payout/workflows/create-payout-account.js +42 -17
- package/.medusa/server/src/workflows/payout/workflows/create-payout-reversals.d.ts +14 -0
- package/.medusa/server/src/workflows/payout/workflows/create-payout-reversals.js +61 -0
- package/.medusa/server/src/workflows/payout/workflows/index.d.ts +11 -2
- package/.medusa/server/src/workflows/payout/workflows/index.js +12 -3
- package/.medusa/server/src/workflows/payout/workflows/link-payout-account.d.ts +11 -0
- package/.medusa/server/src/workflows/payout/workflows/link-payout-account.js +35 -0
- package/.medusa/server/src/workflows/payout/workflows/process-payout-for-webhook.d.ts +7 -3
- package/.medusa/server/src/workflows/payout/workflows/process-payout-for-webhook.js +50 -57
- package/.medusa/server/src/workflows/payout/workflows/process-payout-reversal.d.ts +9 -0
- package/.medusa/server/src/workflows/payout/workflows/process-payout-reversal.js +19 -0
- package/.medusa/server/src/workflows/payout/workflows/process-payout.d.ts +13 -0
- package/.medusa/server/src/workflows/payout/workflows/process-payout.js +23 -0
- package/.medusa/server/src/workflows/payout/workflows/refresh-onboarding.d.ts +13 -0
- package/.medusa/server/src/workflows/payout/workflows/refresh-onboarding.js +26 -0
- package/.medusa/server/src/workflows/payout/workflows/refresh-payout-account-link.d.ts +9 -0
- package/.medusa/server/src/workflows/payout/workflows/refresh-payout-account-link.js +15 -0
- package/.medusa/server/src/workflows/payout/workflows/retry-payout.d.ts +10 -0
- package/.medusa/server/src/workflows/payout/workflows/retry-payout.js +36 -0
- package/.medusa/server/src/workflows/payout/workflows/sync-payout-account.d.ts +9 -0
- package/.medusa/server/src/workflows/payout/workflows/sync-payout-account.js +24 -0
- package/.medusa/server/src/workflows/product/workflows/create-products.js +30 -10
- package/package.json +3 -3
- package/.medusa/server/src/workflows/payout/steps/create-payout.d.ts +0 -3
- package/.medusa/server/src/workflows/payout/steps/create-payout.js +0 -12
- package/.medusa/server/src/workflows/payout/steps/update-payout-account.d.ts +0 -35
- package/.medusa/server/src/workflows/payout/steps/update-payout-account.js +0 -27
- package/.medusa/server/src/workflows/payout/steps/update-payout.d.ts +0 -35
- package/.medusa/server/src/workflows/payout/steps/update-payout.js +0 -27
- package/.medusa/server/src/workflows/payout/steps/validate-seller-payout-account.d.ts +0 -5
- package/.medusa/server/src/workflows/payout/steps/validate-seller-payout-account.js +0 -21
- package/.medusa/server/src/workflows/payout/workflows/create-payout.d.ts +0 -9
- package/.medusa/server/src/workflows/payout/workflows/create-payout.js +0 -87
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createOrderPayoutsWorkflow = exports.createOrderPayoutsWorkflowId = void 0;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
7
|
+
const types_1 = require("@mercurjs/types");
|
|
8
|
+
const steps_1 = require("../steps");
|
|
9
|
+
const payout_amounts_1 = require("../utils/payout-amounts");
|
|
10
|
+
const process_payout_1 = require("./process-payout");
|
|
11
|
+
exports.createOrderPayoutsWorkflowId = "create-order-payouts";
|
|
12
|
+
/**
|
|
13
|
+
* Pays each order's seller their share: the order total minus commission,
|
|
14
|
+
* net of refunds that landed before the payout. An order that is not ready
|
|
15
|
+
* (no active payout account, not fulfilled, payment not captured) gets a
|
|
16
|
+
* payout on hold, which the next run re-decides; a canceled one is aborted.
|
|
17
|
+
*/
|
|
18
|
+
exports.createOrderPayoutsWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.createOrderPayoutsWorkflowId, function (input) {
|
|
19
|
+
const loaded = (0, workflows_sdk_1.when)("orders-to-pay-out", { input }, ({ input }) => input.order_ids.length > 0).then(() => {
|
|
20
|
+
const { data: orders } = (0, core_flows_1.useQueryGraphStep)({
|
|
21
|
+
entity: "order",
|
|
22
|
+
fields: payout_amounts_1.PAYOUT_ORDER_FIELDS,
|
|
23
|
+
filters: { id: input.order_ids },
|
|
24
|
+
}).config({ name: "payout-orders-query" });
|
|
25
|
+
const { data: payouts } = (0, core_flows_1.useQueryGraphStep)({
|
|
26
|
+
entity: "payout",
|
|
27
|
+
fields: ["*"],
|
|
28
|
+
filters: { order_id: input.order_ids },
|
|
29
|
+
}).config({ name: "existing-payouts-query" });
|
|
30
|
+
return (0, workflows_sdk_1.transform)({ orders, payouts }, ({ orders, payouts }) => ({
|
|
31
|
+
orders: orders,
|
|
32
|
+
payouts: payouts,
|
|
33
|
+
}));
|
|
34
|
+
});
|
|
35
|
+
const commissionFilters = (0, workflows_sdk_1.transform)({ loaded }, ({ loaded }) => (0, payout_amounts_1.commissionLineFilters)(loaded?.orders ?? []));
|
|
36
|
+
const commissionLines = (0, workflows_sdk_1.when)("orders-with-commission-lines", { commissionFilters }, ({ commissionFilters }) => commissionFilters.$or.length > 0).then(() => {
|
|
37
|
+
const { data } = (0, core_flows_1.useQueryGraphStep)({
|
|
38
|
+
entity: "commission_line",
|
|
39
|
+
fields: ["amount", "item_id", "shipping_method_id"],
|
|
40
|
+
filters: commissionFilters,
|
|
41
|
+
}).config({ name: "payout-commission-lines-query" });
|
|
42
|
+
return data;
|
|
43
|
+
});
|
|
44
|
+
const plan = (0, workflows_sdk_1.transform)({ input, loaded, commissionLines }, ({ input, loaded, commissionLines }) => (0, payout_amounts_1.planOrderPayouts)({
|
|
45
|
+
orders: loaded?.orders ?? [],
|
|
46
|
+
payouts: loaded?.payouts ?? [],
|
|
47
|
+
commission_lines: (commissionLines ?? []),
|
|
48
|
+
required_fulfillment_status: input.required_fulfillment_status ?? "fulfilled",
|
|
49
|
+
}));
|
|
50
|
+
const created = (0, steps_1.createPayoutsStep)((0, workflows_sdk_1.transform)({ plan }, ({ plan }) => plan.create.map(({ seller_id: _seller, ...payout }) => payout)));
|
|
51
|
+
const updated = (0, steps_1.updatePayoutsStep)((0, workflows_sdk_1.transform)({ plan }, ({ plan }) => plan.update));
|
|
52
|
+
const links = (0, workflows_sdk_1.transform)({ plan, created }, ({ plan, created }) => {
|
|
53
|
+
const sellerByOrder = new Map(plan.create.map((row) => [row.order_id, row.seller_id]));
|
|
54
|
+
return created.flatMap((payout) => [
|
|
55
|
+
{
|
|
56
|
+
[types_1.MercurModules.PAYOUT]: { payout_id: payout.id },
|
|
57
|
+
[types_1.MercurModules.SELLER]: { seller_id: sellerByOrder.get(payout.order_id) },
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
[utils_1.Modules.ORDER]: { order_id: payout.order_id },
|
|
61
|
+
[types_1.MercurModules.PAYOUT]: { payout_id: payout.id },
|
|
62
|
+
},
|
|
63
|
+
]);
|
|
64
|
+
});
|
|
65
|
+
(0, core_flows_1.createRemoteLinkStep)(links);
|
|
66
|
+
const pendingIds = (0, workflows_sdk_1.transform)({ created, updated }, ({ created, updated }) => [...created, ...updated].filter((payout) => payout.status === types_1.PayoutStatus.PENDING).map((payout) => payout.id));
|
|
67
|
+
const payouts = (0, steps_1.processPayoutsStep)({ ids: pendingIds });
|
|
68
|
+
(0, core_flows_1.emitEventStep)({
|
|
69
|
+
eventName: types_1.PayoutModuleEvents.PAYOUT_FAILED,
|
|
70
|
+
data: (0, workflows_sdk_1.transform)({ payouts }, ({ payouts }) => (0, process_payout_1.failedPayoutEvents)(payouts)),
|
|
71
|
+
});
|
|
72
|
+
const output = (0, workflows_sdk_1.transform)({ plan, payouts }, ({ plan, payouts }) => ({
|
|
73
|
+
counts: plan.counts,
|
|
74
|
+
payouts,
|
|
75
|
+
}));
|
|
76
|
+
const payoutsCreated = (0, workflows_sdk_1.createHook)("payoutsCreated", {
|
|
77
|
+
order_ids: input.order_ids,
|
|
78
|
+
payouts: output.payouts,
|
|
79
|
+
});
|
|
80
|
+
return new workflows_sdk_1.WorkflowResponse(output, { hooks: [payoutsCreated] });
|
|
81
|
+
});
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW9yZGVyLXBheW91dHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3BheW91dC93b3JrZmxvd3MvY3JlYXRlLW9yZGVyLXBheW91dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EscURBQW1EO0FBQ25ELHFFQVEwQztBQUMxQyw0REFBb0c7QUFDcEcsMkNBQTRGO0FBRTVGLG9DQUFtRjtBQUNuRiw0REFNZ0M7QUFDaEMscURBQXFEO0FBZ0J4QyxRQUFBLDRCQUE0QixHQUFHLHNCQUFzQixDQUFBO0FBRWxFOzs7OztHQUtHO0FBQ1UsUUFBQSwwQkFBMEIsR0FJbkMsSUFBQSw4QkFBYyxFQUFDLG9DQUE0QixFQUFFLFVBQVUsS0FBc0M7SUFDL0YsTUFBTSxNQUFNLEdBQUcsSUFBQSxvQkFBSSxFQUFDLG1CQUFtQixFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ3ZHLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztZQUN6QyxNQUFNLEVBQUUsT0FBTztZQUNmLE1BQU0sRUFBRSxvQ0FBbUI7WUFDM0IsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUU7U0FDakMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxxQkFBcUIsRUFBRSxDQUFDLENBQUE7UUFFMUMsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFBLDhCQUFpQixFQUFDO1lBQzFDLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQztZQUNiLE9BQU8sRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFO1NBQ3ZDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQyxDQUFBO1FBRTdDLE9BQU8sSUFBQSx5QkFBUyxFQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUQsTUFBTSxFQUFFLE1BQWtDO1lBQzFDLE9BQU8sRUFBRSxPQUFpQztTQUMzQyxDQUFDLENBQUMsQ0FBQTtJQUNMLENBQUMsQ0FBQyxDQUFBO0lBRUYsTUFBTSxpQkFBaUIsR0FBRyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUEsc0NBQXFCLEVBQUMsTUFBTSxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBRTVHLE1BQU0sZUFBZSxHQUFHLElBQUEsb0JBQUksRUFDMUIsOEJBQThCLEVBQzlCLEVBQUUsaUJBQWlCLEVBQUUsRUFDckIsQ0FBQyxFQUFFLGlCQUFpQixFQUFFLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUM1RCxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDVixNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztZQUNqQyxNQUFNLEVBQUUsaUJBQWlCO1lBQ3pCLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsb0JBQW9CLENBQUM7WUFDbkQsT0FBTyxFQUFFLGlCQUFpQjtTQUMzQixDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLCtCQUErQixFQUFFLENBQUMsQ0FBQTtRQUVwRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUMsQ0FBQyxDQUFBO0lBRUYsTUFBTSxJQUFJLEdBQUcsSUFBQSx5QkFBUyxFQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLENBQ2hHLElBQUEsaUNBQWdCLEVBQUM7UUFDZixNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sSUFBSSxFQUFFO1FBQzVCLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxJQUFJLEVBQUU7UUFDOUIsZ0JBQWdCLEVBQUUsQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFnQztRQUN4RSwyQkFBMkIsRUFBRSxLQUFLLENBQUMsMkJBQTJCLElBQUksV0FBVztLQUM5RSxDQUFDLENBQ0gsQ0FBQTtJQUVELE1BQU0sT0FBTyxHQUFHLElBQUEseUJBQWlCLEVBQy9CLElBQUEseUJBQVMsRUFBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FDbEcsQ0FBQTtJQUNELE1BQU0sT0FBTyxHQUFHLElBQUEseUJBQWlCLEVBQUMsSUFBQSx5QkFBUyxFQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtJQUVqRixNQUFNLEtBQUssR0FBRyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO1FBQy9ELE1BQU0sYUFBYSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUV0RixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQW9CLEVBQUUsQ0FBQztZQUNuRDtnQkFDRSxDQUFDLHFCQUFhLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRTtnQkFDaEQsQ0FBQyxxQkFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLGFBQWEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQWtCLENBQVcsRUFBRTthQUM5RjtZQUNEO2dCQUNFLENBQUMsZUFBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFrQixFQUFFO2dCQUN4RCxDQUFDLHFCQUFhLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRTthQUNqRDtTQUNGLENBQUMsQ0FBQTtJQUNKLENBQUMsQ0FBQyxDQUFBO0lBQ0YsSUFBQSxpQ0FBb0IsRUFBQyxLQUFLLENBQUMsQ0FBQTtJQUUzQixNQUFNLFVBQVUsR0FBRyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQzFFLENBQUMsR0FBRyxPQUFPLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssb0JBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FDL0csQ0FBQTtJQUNELE1BQU0sT0FBTyxHQUFHLElBQUEsMEJBQWtCLEVBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQTtJQUV2RCxJQUFBLDBCQUFhLEVBQUM7UUFDWixTQUFTLEVBQUUsMEJBQWtCLENBQUMsYUFBYTtRQUMzQyxJQUFJLEVBQUUsSUFBQSx5QkFBUyxFQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFBLG1DQUFrQixFQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQzNFLENBQUMsQ0FBQTtJQUVGLE1BQU0sTUFBTSxHQUFHLElBQUEseUJBQVMsRUFBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFvQyxFQUFFLENBQUMsQ0FBQztRQUNwRyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07UUFDbkIsT0FBTztLQUNSLENBQUMsQ0FBQyxDQUFBO0lBRUgsTUFBTSxjQUFjLEdBQUcsSUFBQSwwQkFBVSxFQUFDLGdCQUFnQixFQUFFO1FBQ2xELFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztRQUMxQixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87S0FDeEIsQ0FBQyxDQUFBO0lBRUYsT0FBTyxJQUFJLGdDQUFnQixDQUFDLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQTtBQUNsRSxDQUFDLENBQUMsQ0FBQSJ9
|
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { PayoutProviderInput } from "@mercurjs/types";
|
|
2
|
+
export type CreatePayoutAccountWorkflowInput = PayoutProviderInput & {
|
|
3
3
|
seller_id: string;
|
|
4
|
-
}
|
|
5
|
-
export declare const
|
|
6
|
-
|
|
4
|
+
};
|
|
5
|
+
export declare const createPayoutAccountWorkflowId = "create-payout-account-workflow";
|
|
6
|
+
/**
|
|
7
|
+
* Creates the seller's account at the payout provider, prefilled from the
|
|
8
|
+
* seller's profile, links it to the seller and publishes the onboarding link.
|
|
9
|
+
*/
|
|
10
|
+
export declare const createPayoutAccountWorkflow: import("@medusajs/framework/workflows-sdk").ReturnWorkflow<PayoutProviderInput & {
|
|
11
|
+
seller_id: string;
|
|
12
|
+
}, import("@mercurjs/types").PayoutAccountDTO, []>;
|
|
@@ -1,28 +1,53 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createPayoutAccountWorkflow = void 0;
|
|
4
|
-
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
3
|
+
exports.createPayoutAccountWorkflow = exports.createPayoutAccountWorkflowId = void 0;
|
|
5
4
|
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
6
|
const types_1 = require("@mercurjs/types");
|
|
7
7
|
const steps_1 = require("../steps");
|
|
8
|
-
exports.
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
exports.createPayoutAccountWorkflowId = "create-payout-account-workflow";
|
|
9
|
+
/**
|
|
10
|
+
* Creates the seller's account at the payout provider, prefilled from the
|
|
11
|
+
* seller's profile, links it to the seller and publishes the onboarding link.
|
|
12
|
+
*/
|
|
13
|
+
exports.createPayoutAccountWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.createPayoutAccountWorkflowId, function (input) {
|
|
14
|
+
const { data: seller } = (0, core_flows_1.useQueryGraphStep)({
|
|
15
|
+
entity: "seller",
|
|
16
|
+
fields: [
|
|
17
|
+
"id",
|
|
18
|
+
"name",
|
|
19
|
+
"email",
|
|
20
|
+
"phone",
|
|
21
|
+
"website_url",
|
|
22
|
+
"address.country_code",
|
|
23
|
+
"professional_details.corporate_name",
|
|
24
|
+
"payout_account.id",
|
|
25
|
+
],
|
|
26
|
+
filters: { id: input.seller_id },
|
|
27
|
+
options: { isList: false, throwIfKeyNotFound: true },
|
|
28
|
+
}).config({ name: "payout-account-seller-query" });
|
|
29
|
+
(0, steps_1.validateSellerWithoutPayoutAccountStep)({ seller });
|
|
30
|
+
const accountInput = (0, workflows_sdk_1.transform)({ input, seller }, ({ input, seller }) => ({
|
|
31
|
+
data: input.data ?? {},
|
|
32
|
+
context: input.context ?? {},
|
|
33
|
+
seller: {
|
|
34
|
+
id: seller.id,
|
|
35
|
+
name: seller.name ?? null,
|
|
36
|
+
email: seller.email ?? null,
|
|
37
|
+
phone: seller.phone ?? null,
|
|
38
|
+
website_url: seller.website_url ?? null,
|
|
39
|
+
country_code: seller.address?.country_code ?? null,
|
|
40
|
+
is_company: !!seller.professional_details?.corporate_name,
|
|
41
|
+
},
|
|
42
|
+
}));
|
|
43
|
+
const payoutAccount = (0, steps_1.createPayoutAccountStep)(accountInput);
|
|
16
44
|
(0, core_flows_1.createRemoteLinkStep)([
|
|
17
45
|
{
|
|
18
|
-
[types_1.MercurModules.SELLER]: {
|
|
19
|
-
|
|
20
|
-
},
|
|
21
|
-
[types_1.MercurModules.PAYOUT]: {
|
|
22
|
-
payout_account_id: payoutAccount.id,
|
|
23
|
-
},
|
|
46
|
+
[types_1.MercurModules.SELLER]: { seller_id: input.seller_id },
|
|
47
|
+
[types_1.MercurModules.PAYOUT]: { payout_account_id: payoutAccount.id },
|
|
24
48
|
},
|
|
25
49
|
]);
|
|
50
|
+
(0, steps_1.createOnboardingStep)((0, workflows_sdk_1.transform)({ payoutAccount }, ({ payoutAccount }) => ({ account_id: payoutAccount.id })));
|
|
26
51
|
return new workflows_sdk_1.WorkflowResponse(payoutAccount);
|
|
27
52
|
});
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXBheW91dC1hY2NvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9wYXlvdXQvd29ya2Zsb3dzL2NyZWF0ZS1wYXlvdXQtYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFBK0Y7QUFDL0YsNERBQXFGO0FBQ3JGLDJDQUE0RjtBQUU1RixvQ0FBZ0g7QUFNbkcsUUFBQSw2QkFBNkIsR0FBRyxnQ0FBZ0MsQ0FBQTtBQUU3RTs7O0dBR0c7QUFDVSxRQUFBLDJCQUEyQixHQUFHLElBQUEsOEJBQWMsRUFDdkQscUNBQTZCLEVBQzdCLFVBQVUsS0FBdUM7SUFDL0MsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFBLDhCQUFpQixFQUFDO1FBQ3pDLE1BQU0sRUFBRSxRQUFRO1FBQ2hCLE1BQU0sRUFBRTtZQUNOLElBQUk7WUFDSixNQUFNO1lBQ04sT0FBTztZQUNQLE9BQU87WUFDUCxhQUFhO1lBQ2Isc0JBQXNCO1lBQ3RCLHFDQUFxQztZQUNyQyxtQkFBbUI7U0FDcEI7UUFDRCxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRTtRQUNoQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRTtLQUNyRCxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLDZCQUE2QixFQUFFLENBQUMsQ0FBQTtJQUVsRCxJQUFBLDhDQUFzQyxFQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQTtJQUVsRCxNQUFNLFlBQVksR0FBRyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBMEIsRUFBRSxDQUFDLENBQUM7UUFDaEcsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLElBQUksRUFBRTtRQUN0QixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU8sSUFBSSxFQUFFO1FBQzVCLE1BQU0sRUFBRTtZQUNOLEVBQUUsRUFBRSxNQUFNLENBQUMsRUFBRTtZQUNiLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLElBQUk7WUFDekIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLElBQUksSUFBSTtZQUMzQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssSUFBSSxJQUFJO1lBQzNCLFdBQVcsRUFBRSxNQUFNLENBQUMsV0FBVyxJQUFJLElBQUk7WUFDdkMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxPQUFPLEVBQUUsWUFBWSxJQUFJLElBQUk7WUFDbEQsVUFBVSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsY0FBYztTQUMxRDtLQUNGLENBQUMsQ0FBQyxDQUFBO0lBRUgsTUFBTSxhQUFhLEdBQUcsSUFBQSwrQkFBdUIsRUFBQyxZQUFZLENBQUMsQ0FBQTtJQUUzRCxJQUFBLGlDQUFvQixFQUFDO1FBQ25CO1lBQ0UsQ0FBQyxxQkFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUU7WUFDdEQsQ0FBQyxxQkFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxDQUFDLEVBQUUsRUFBRTtTQUNoRTtLQUNGLENBQUMsQ0FBQTtJQUVGLElBQUEsNEJBQW9CLEVBQUMsSUFBQSx5QkFBUyxFQUFDLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FBQyxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUU3RyxPQUFPLElBQUksZ0NBQWdCLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDNUMsQ0FBQyxDQUNGLENBQUEifQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { PayoutReversalDTO } from "@mercurjs/types";
|
|
2
|
+
export type CreatePayoutReversalsWorkflowInput = {
|
|
3
|
+
order_ids: string[];
|
|
4
|
+
};
|
|
5
|
+
export type CreatePayoutReversalsWorkflowOutput = {
|
|
6
|
+
counts: Record<string, number>;
|
|
7
|
+
reversals: PayoutReversalDTO[];
|
|
8
|
+
};
|
|
9
|
+
export declare const createPayoutReversalsWorkflowId = "create-payout-reversals";
|
|
10
|
+
/**
|
|
11
|
+
* Takes the refunded share back from the seller: one reversal per refund on
|
|
12
|
+
* an order whose payout is paid, net of the commission on that share.
|
|
13
|
+
*/
|
|
14
|
+
export declare const createPayoutReversalsWorkflow: import("@medusajs/framework/workflows-sdk").ReturnWorkflow<CreatePayoutReversalsWorkflowInput, CreatePayoutReversalsWorkflowOutput, []>;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createPayoutReversalsWorkflow = exports.createPayoutReversalsWorkflowId = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
|
+
const types_1 = require("@mercurjs/types");
|
|
7
|
+
const steps_1 = require("../steps");
|
|
8
|
+
const payout_amounts_1 = require("../utils/payout-amounts");
|
|
9
|
+
const process_payout_reversal_1 = require("./process-payout-reversal");
|
|
10
|
+
exports.createPayoutReversalsWorkflowId = "create-payout-reversals";
|
|
11
|
+
/**
|
|
12
|
+
* Takes the refunded share back from the seller: one reversal per refund on
|
|
13
|
+
* an order whose payout is paid, net of the commission on that share.
|
|
14
|
+
*/
|
|
15
|
+
exports.createPayoutReversalsWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.createPayoutReversalsWorkflowId, function (input) {
|
|
16
|
+
const loaded = (0, workflows_sdk_1.when)("orders-to-reverse", { input }, ({ input }) => input.order_ids.length > 0).then(() => {
|
|
17
|
+
const { data: orders } = (0, core_flows_1.useQueryGraphStep)({
|
|
18
|
+
entity: "order",
|
|
19
|
+
fields: payout_amounts_1.REVERSAL_ORDER_FIELDS,
|
|
20
|
+
filters: { id: input.order_ids },
|
|
21
|
+
}).config({ name: "reversal-orders-query" });
|
|
22
|
+
const { data: payouts } = (0, core_flows_1.useQueryGraphStep)({
|
|
23
|
+
entity: "payout",
|
|
24
|
+
fields: ["*", "reversals.*"],
|
|
25
|
+
filters: { order_id: input.order_ids },
|
|
26
|
+
}).config({ name: "reversal-payouts-query" });
|
|
27
|
+
return (0, workflows_sdk_1.transform)({ orders, payouts }, ({ orders, payouts }) => ({
|
|
28
|
+
orders: orders,
|
|
29
|
+
payouts: payouts,
|
|
30
|
+
}));
|
|
31
|
+
});
|
|
32
|
+
const commissionFilters = (0, workflows_sdk_1.transform)({ loaded }, ({ loaded }) => (0, payout_amounts_1.commissionLineFilters)(loaded?.orders ?? []));
|
|
33
|
+
const commissionLines = (0, workflows_sdk_1.when)("reversal-orders-with-commission-lines", { commissionFilters }, ({ commissionFilters }) => commissionFilters.$or.length > 0).then(() => {
|
|
34
|
+
const { data } = (0, core_flows_1.useQueryGraphStep)({
|
|
35
|
+
entity: "commission_line",
|
|
36
|
+
fields: ["amount", "item_id", "shipping_method_id"],
|
|
37
|
+
filters: commissionFilters,
|
|
38
|
+
}).config({ name: "reversal-commission-lines-query" });
|
|
39
|
+
return data;
|
|
40
|
+
});
|
|
41
|
+
const plan = (0, workflows_sdk_1.transform)({ loaded, commissionLines }, ({ loaded, commissionLines }) => (0, payout_amounts_1.planPayoutReversals)({
|
|
42
|
+
orders: loaded?.orders ?? [],
|
|
43
|
+
payouts: loaded?.payouts ?? [],
|
|
44
|
+
commission_lines: (commissionLines ?? []),
|
|
45
|
+
}));
|
|
46
|
+
const created = (0, steps_1.createPayoutReversalsStep)((0, workflows_sdk_1.transform)({ plan }, ({ plan }) => plan.create));
|
|
47
|
+
const updated = (0, steps_1.updatePayoutReversalsStep)((0, workflows_sdk_1.transform)({ plan }, ({ plan }) => plan.update));
|
|
48
|
+
const pendingIds = (0, workflows_sdk_1.transform)({ created, updated }, ({ created, updated }) => [...created, ...updated]
|
|
49
|
+
.filter((reversal) => reversal.status === types_1.PayoutStatus.PENDING)
|
|
50
|
+
.map((reversal) => reversal.id));
|
|
51
|
+
const reversals = (0, steps_1.processPayoutReversalsStep)({ ids: pendingIds });
|
|
52
|
+
(0, core_flows_1.emitEventStep)({
|
|
53
|
+
eventName: types_1.PayoutModuleEvents.PAYOUT_REVERSAL_FAILED,
|
|
54
|
+
data: (0, workflows_sdk_1.transform)({ reversals }, ({ reversals }) => (0, process_payout_reversal_1.failedReversalEvents)(reversals)),
|
|
55
|
+
});
|
|
56
|
+
return new workflows_sdk_1.WorkflowResponse((0, workflows_sdk_1.transform)({ plan, reversals }, ({ plan, reversals }) => ({
|
|
57
|
+
counts: plan.counts,
|
|
58
|
+
reversals,
|
|
59
|
+
})));
|
|
60
|
+
});
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXBheW91dC1yZXZlcnNhbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3BheW91dC93b3JrZmxvd3MvY3JlYXRlLXBheW91dC1yZXZlcnNhbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBSzBDO0FBQzFDLDREQUE4RTtBQUM5RSwyQ0FBZ0c7QUFFaEcsb0NBQTJHO0FBQzNHLDREQU1nQztBQUNoQyx1RUFBZ0U7QUFXbkQsUUFBQSwrQkFBK0IsR0FBRyx5QkFBeUIsQ0FBQTtBQUV4RTs7O0dBR0c7QUFDVSxRQUFBLDZCQUE2QixHQUFHLElBQUEsOEJBQWMsRUFDekQsdUNBQStCLEVBQy9CLFVBQVUsS0FBeUM7SUFDakQsTUFBTSxNQUFNLEdBQUcsSUFBQSxvQkFBSSxFQUFDLG1CQUFtQixFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ3ZHLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztZQUN6QyxNQUFNLEVBQUUsT0FBTztZQUNmLE1BQU0sRUFBRSxzQ0FBcUI7WUFDN0IsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUU7U0FDakMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSx1QkFBdUIsRUFBRSxDQUFDLENBQUE7UUFFNUMsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFBLDhCQUFpQixFQUFDO1lBQzFDLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxhQUFhLENBQUM7WUFDNUIsT0FBTyxFQUFFLEVBQUUsUUFBUSxF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
|
|
@@ -1,4 +1,13 @@
|
|
|
1
|
-
export * from "./create-payout-account";
|
|
2
1
|
export * from "./create-onboarding";
|
|
3
|
-
export * from "./create-payout";
|
|
2
|
+
export * from "./create-or-refresh-seller-payout-account";
|
|
3
|
+
export * from "./create-order-payouts";
|
|
4
|
+
export * from "./create-payout-account";
|
|
5
|
+
export * from "./create-payout-reversals";
|
|
6
|
+
export * from "./link-payout-account";
|
|
7
|
+
export * from "./process-payout";
|
|
4
8
|
export * from "./process-payout-for-webhook";
|
|
9
|
+
export * from "./process-payout-reversal";
|
|
10
|
+
export * from "./refresh-onboarding";
|
|
11
|
+
export * from "./refresh-payout-account-link";
|
|
12
|
+
export * from "./retry-payout";
|
|
13
|
+
export * from "./sync-payout-account";
|
|
@@ -14,8 +14,17 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./create-payout-account"), exports);
|
|
18
17
|
__exportStar(require("./create-onboarding"), exports);
|
|
19
|
-
__exportStar(require("./create-payout"), exports);
|
|
18
|
+
__exportStar(require("./create-or-refresh-seller-payout-account"), exports);
|
|
19
|
+
__exportStar(require("./create-order-payouts"), exports);
|
|
20
|
+
__exportStar(require("./create-payout-account"), exports);
|
|
21
|
+
__exportStar(require("./create-payout-reversals"), exports);
|
|
22
|
+
__exportStar(require("./link-payout-account"), exports);
|
|
23
|
+
__exportStar(require("./process-payout"), exports);
|
|
20
24
|
__exportStar(require("./process-payout-for-webhook"), exports);
|
|
21
|
-
|
|
25
|
+
__exportStar(require("./process-payout-reversal"), exports);
|
|
26
|
+
__exportStar(require("./refresh-onboarding"), exports);
|
|
27
|
+
__exportStar(require("./refresh-payout-account-link"), exports);
|
|
28
|
+
__exportStar(require("./retry-payout"), exports);
|
|
29
|
+
__exportStar(require("./sync-payout-account"), exports);
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3BheW91dC93b3JrZmxvd3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNEQUFtQztBQUNuQyw0RUFBeUQ7QUFDekQseURBQXNDO0FBQ3RDLDBEQUF1QztBQUN2Qyw0REFBeUM7QUFDekMsd0RBQXFDO0FBQ3JDLG1EQUFnQztBQUNoQywrREFBNEM7QUFDNUMsNERBQXlDO0FBQ3pDLHVEQUFvQztBQUNwQyxnRUFBNkM7QUFDN0MsaURBQThCO0FBQzlCLHdEQUFxQyJ9
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type LinkPayoutAccountWorkflowInput = {
|
|
2
|
+
seller_id: string;
|
|
3
|
+
/** The account's id at the payout provider. */
|
|
4
|
+
external_id: string;
|
|
5
|
+
};
|
|
6
|
+
export declare const linkPayoutAccountWorkflowId = "link-payout-account";
|
|
7
|
+
/**
|
|
8
|
+
* Attaches an account that already exists at the payout provider to a
|
|
9
|
+
* seller, then pulls its state from the provider.
|
|
10
|
+
*/
|
|
11
|
+
export declare const linkPayoutAccountWorkflow: import("@medusajs/framework/workflows-sdk").ReturnWorkflow<LinkPayoutAccountWorkflowInput, import("@mercurjs/types").PayoutAccountDTO, []>;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.linkPayoutAccountWorkflow = exports.linkPayoutAccountWorkflowId = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
|
+
const types_1 = require("@mercurjs/types");
|
|
7
|
+
const steps_1 = require("../steps");
|
|
8
|
+
const sync_payout_account_1 = require("./sync-payout-account");
|
|
9
|
+
exports.linkPayoutAccountWorkflowId = "link-payout-account";
|
|
10
|
+
/**
|
|
11
|
+
* Attaches an account that already exists at the payout provider to a
|
|
12
|
+
* seller, then pulls its state from the provider.
|
|
13
|
+
*/
|
|
14
|
+
exports.linkPayoutAccountWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.linkPayoutAccountWorkflowId, function (input) {
|
|
15
|
+
const { data: seller } = (0, core_flows_1.useQueryGraphStep)({
|
|
16
|
+
entity: "seller",
|
|
17
|
+
fields: ["id", "payout_account.id"],
|
|
18
|
+
filters: { id: input.seller_id },
|
|
19
|
+
options: { isList: false, throwIfKeyNotFound: true },
|
|
20
|
+
}).config({ name: "link-payout-account-seller-query" });
|
|
21
|
+
(0, steps_1.validateSellerWithoutPayoutAccountStep)({ seller });
|
|
22
|
+
const accounts = (0, steps_1.createPayoutAccountsStep)((0, workflows_sdk_1.transform)({ input }, ({ input }) => [{ external_id: input.external_id, data: { id: input.external_id } }]));
|
|
23
|
+
const account = (0, workflows_sdk_1.transform)({ accounts }, ({ accounts }) => accounts[0]);
|
|
24
|
+
(0, core_flows_1.createRemoteLinkStep)([
|
|
25
|
+
{
|
|
26
|
+
[types_1.MercurModules.SELLER]: { seller_id: input.seller_id },
|
|
27
|
+
[types_1.MercurModules.PAYOUT]: { payout_account_id: account.id },
|
|
28
|
+
},
|
|
29
|
+
]);
|
|
30
|
+
const synced = sync_payout_account_1.syncPayoutAccountWorkflow.runAsStep({
|
|
31
|
+
input: (0, workflows_sdk_1.transform)({ account }, ({ account }) => ({ id: account.id })),
|
|
32
|
+
});
|
|
33
|
+
return new workflows_sdk_1.WorkflowResponse(synced);
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1wYXlvdXQtYWNjb3VudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvcGF5b3V0L3dvcmtmbG93cy9saW5rLXBheW91dC1hY2NvdW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUErRjtBQUMvRiw0REFBcUY7QUFDckYsMkNBQStDO0FBRS9DLG9DQUEyRjtBQUMzRiwrREFBaUU7QUFRcEQsUUFBQSwyQkFBMkIsR0FBRyxxQkFBcUIsQ0FBQTtBQUVoRTs7O0dBR0c7QUFDVSxRQUFBLHlCQUF5QixHQUFHLElBQUEsOEJBQWMsRUFDckQsbUNBQTJCLEVBQzNCLFVBQVUsS0FBcUM7SUFDN0MsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFBLDhCQUFpQixFQUFDO1FBQ3pDLE1BQU0sRUFBRSxRQUFRO1FBQ2hCLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxtQkFBbUIsQ0FBQztRQUNuQyxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRTtRQUNoQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRTtLQUNyRCxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLGtDQUFrQyxFQUFFLENBQUMsQ0FBQTtJQUV2RCxJQUFBLDhDQUFzQyxFQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQTtJQUVsRCxNQUFNLFFBQVEsR0FBRyxJQUFBLGdDQUF3QixFQUN2QyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUMzRyxDQUFBO0lBQ0QsTUFBTSxPQUFPLEdBQUcsSUFBQSx5QkFBUyxFQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUV0RSxJQUFBLGlDQUFvQixFQUFDO1FBQ25CO1lBQ0UsQ0FBQyxxQkFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUU7WUFDdEQsQ0FBQyxxQkFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEVBQUUsRUFBRTtTQUMxRDtLQUNGLENBQUMsQ0FBQTtJQUVGLE1BQU0sTUFBTSxHQUFHLCtDQUF5QixDQUFDLFNBQVMsQ0FBQztRQUNqRCxLQUFLLEVBQUUsSUFBQSx5QkFBUyxFQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQ3JFLENBQUMsQ0FBQTtJQUVGLE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUNyQyxDQUFDLENBQ0YsQ0FBQSJ9
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { PayoutWebhookResult } from "@mercurjs/types";
|
|
2
|
-
export
|
|
3
|
-
}
|
|
2
|
+
export type ProcessPayoutForWebhookWorkflowInput = PayoutWebhookResult;
|
|
4
3
|
export declare const processPayoutForWebhookWorkflowId = "process-payout-for-webhook";
|
|
5
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Applies a provider webhook: an `account.*` event re-syncs the account, a
|
|
6
|
+
* `payout.*` event moves the payout to its final status and stores the
|
|
7
|
+
* provider's id for the payout, which a later reversal needs.
|
|
8
|
+
*/
|
|
9
|
+
export declare const processPayoutForWebhookWorkflow: import("@medusajs/framework/workflows-sdk").ReturnWorkflow<PayoutWebhookResult, unknown, any[]>;
|
|
@@ -2,66 +2,59 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.processPayoutForWebhookWorkflow = exports.processPayoutForWebhookWorkflowId = void 0;
|
|
4
4
|
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
5
6
|
const types_1 = require("@mercurjs/types");
|
|
6
|
-
const
|
|
7
|
-
const
|
|
7
|
+
const steps_1 = require("../steps");
|
|
8
|
+
const sync_payout_account_1 = require("./sync-payout-account");
|
|
8
9
|
exports.processPayoutForWebhookWorkflowId = "process-payout-for-webhook";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
const STATUS_BY_ACTION = {
|
|
11
|
+
"payout.paid": types_1.PayoutStatus.PAID,
|
|
12
|
+
"payout.failed": types_1.PayoutStatus.FAILED,
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Applies a provider webhook: an `account.*` event re-syncs the account, a
|
|
16
|
+
* `payout.*` event moves the payout to its final status and stores the
|
|
17
|
+
* provider's id for the payout, which a later reversal needs.
|
|
18
|
+
*/
|
|
19
|
+
exports.processPayoutForWebhookWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.processPayoutForWebhookWorkflowId, function (input) {
|
|
20
|
+
const accounts = (0, workflows_sdk_1.when)("account-webhook", { input }, ({ input }) => input.action.startsWith("account.") && !!input.data?.id).then(() => {
|
|
21
|
+
const { data } = (0, core_flows_1.useQueryGraphStep)({
|
|
22
|
+
entity: "payout_account",
|
|
23
|
+
fields: ["id"],
|
|
24
|
+
filters: (0, workflows_sdk_1.transform)({ input }, ({ input }) => ({ external_id: input.data?.id })),
|
|
25
|
+
}).config({ name: "webhook-account-query" });
|
|
26
|
+
return data;
|
|
17
27
|
});
|
|
18
|
-
(0, workflows_sdk_1.when)({
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
id: input.data.id,
|
|
23
|
-
status: types_1.PayoutAccountStatus.RESTRICTED,
|
|
24
|
-
}).config({ name: "restrict-payout-account" });
|
|
28
|
+
(0, workflows_sdk_1.when)("known-account", { accounts }, ({ accounts }) => !!accounts?.length).then(() => {
|
|
29
|
+
sync_payout_account_1.syncPayoutAccountWorkflow.runAsStep({
|
|
30
|
+
input: (0, workflows_sdk_1.transform)({ accounts }, ({ accounts }) => ({ id: accounts[0].id })),
|
|
31
|
+
});
|
|
25
32
|
});
|
|
26
|
-
(0, workflows_sdk_1.when)({ input }, ({ input }) => {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
id: input.data
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
});
|
|
34
|
-
(0, workflows_sdk_1.when)({ input }, ({ input }) => {
|
|
35
|
-
return input.action === "payout.processing" && !!input.data?.id;
|
|
36
|
-
}).then(() => {
|
|
37
|
-
(0, update_payout_1.updatePayoutStep)({
|
|
38
|
-
id: input.data.id,
|
|
39
|
-
status: types_1.PayoutStatus.PROCESSING,
|
|
40
|
-
}).config({ name: "processing-payout" });
|
|
41
|
-
});
|
|
42
|
-
(0, workflows_sdk_1.when)({ input }, ({ input }) => {
|
|
43
|
-
return input.action === "payout.paid" && !!input.data?.id;
|
|
44
|
-
}).then(() => {
|
|
45
|
-
(0, update_payout_1.updatePayoutStep)({
|
|
46
|
-
id: input.data.id,
|
|
47
|
-
status: types_1.PayoutStatus.PAID,
|
|
48
|
-
}).config({ name: "paid-payout" });
|
|
49
|
-
});
|
|
50
|
-
(0, workflows_sdk_1.when)({ input }, ({ input }) => {
|
|
51
|
-
return input.action === "payout.failed" && !!input.data?.id;
|
|
52
|
-
}).then(() => {
|
|
53
|
-
(0, update_payout_1.updatePayoutStep)({
|
|
54
|
-
id: input.data.id,
|
|
55
|
-
status: types_1.PayoutStatus.FAILED,
|
|
56
|
-
}).config({ name: "failed-payout" });
|
|
57
|
-
});
|
|
58
|
-
(0, workflows_sdk_1.when)({ input }, ({ input }) => {
|
|
59
|
-
return input.action === "payout.canceled" && !!input.data?.id;
|
|
60
|
-
}).then(() => {
|
|
61
|
-
(0, update_payout_1.updatePayoutStep)({
|
|
62
|
-
id: input.data.id,
|
|
63
|
-
status: types_1.PayoutStatus.CANCELED,
|
|
64
|
-
}).config({ name: "canceled-payout" });
|
|
33
|
+
const payouts = (0, workflows_sdk_1.when)("payout-webhook", { input }, ({ input }) => !!STATUS_BY_ACTION[input.action] && !!input.data?.payout_id).then(() => {
|
|
34
|
+
const { data } = (0, core_flows_1.useQueryGraphStep)({
|
|
35
|
+
entity: "payout",
|
|
36
|
+
fields: ["id", "data"],
|
|
37
|
+
filters: (0, workflows_sdk_1.transform)({ input }, ({ input }) => ({ id: input.data?.payout_id })),
|
|
38
|
+
}).config({ name: "webhook-payout-query" });
|
|
39
|
+
return data;
|
|
65
40
|
});
|
|
41
|
+
(0, steps_1.updatePayoutsStep)((0, workflows_sdk_1.transform)({ input, payouts }, ({ input, payouts }) => (payouts ?? []).map((payout) => {
|
|
42
|
+
const status = STATUS_BY_ACTION[input.action];
|
|
43
|
+
const data = (payout.data ?? {});
|
|
44
|
+
const provider = (data.provider ?? {});
|
|
45
|
+
return {
|
|
46
|
+
id: payout.id,
|
|
47
|
+
status,
|
|
48
|
+
status_reason: status === types_1.PayoutStatus.FAILED ? types_1.PayoutStatusReason.PROVIDER_ERROR : null,
|
|
49
|
+
data: {
|
|
50
|
+
...data,
|
|
51
|
+
provider: { ...provider, id: input.data?.id ?? provider.id },
|
|
52
|
+
status_detail: status === types_1.PayoutStatus.FAILED ? (input.data?.status_reason ?? data.status_detail ?? null) : null,
|
|
53
|
+
// The provider failed the payout it made under this key, so the
|
|
54
|
+
// retry must not get that payout back.
|
|
55
|
+
...(status === types_1.PayoutStatus.FAILED ? { idempotency_key: null } : {}),
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
})));
|
|
66
59
|
});
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1wYXlvdXQtZm9yLXdlYmhvb2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3BheW91dC93b3JrZmxvd3MvcHJvY2Vzcy1wYXlvdXQtZm9yLXdlYmhvb2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQW1GO0FBQ25GLDREQUErRDtBQUMvRCwyQ0FBdUY7QUFFdkYsb0NBQTRDO0FBQzVDLCtEQUFpRTtBQUlwRCxRQUFBLGlDQUFpQyxHQUFHLDRCQUE0QixDQUFBO0FBRTdFLE1BQU0sZ0JBQWdCLEdBQWlDO0lBQ3JELGFBQWEsRUFBRSxvQkFBWSxDQUFDLElBQUk7SUFDaEMsZUFBZSxFQUFFLG9CQUFZLENBQUMsTUFBTTtDQUNyQyxDQUFBO0FBRUQ7Ozs7R0FJRztBQUNVLFFBQUEsK0JBQStCLEdBQUcsSUFBQSw4QkFBYyxFQUMzRCx5Q0FBaUMsRUFDakMsVUFBVSxLQUEyQztJQUNuRCxNQUFNLFFBQVEsR0FBRyxJQUFBLG9CQUFJLEVBQ25CLGlCQUFpQixFQUNqQixFQUFFLEtBQUssRUFBRSxFQUNULENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUN2RSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDVixNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztZQUNqQyxNQUFNLEVBQUUsZ0JBQWdCO1lBQ3hCLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQztZQUNkLE9BQU8sRUFBRSxJQUFBLHlCQUFTLEVBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsS0FBSyxDQUFDLElBQUks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
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PayoutReversalDTO } from "@mercurjs/types";
|
|
2
|
+
export type ProcessPayoutReversalWorkflowInput = {
|
|
3
|
+
reversal_ids: string[];
|
|
4
|
+
};
|
|
5
|
+
export declare const processPayoutReversalWorkflowId = "process-payout-reversal";
|
|
6
|
+
export declare const failedReversalEvents: (reversals: PayoutReversalDTO[]) => {
|
|
7
|
+
id: string;
|
|
8
|
+
}[];
|
|
9
|
+
export declare const processPayoutReversalWorkflow: import("@medusajs/framework/workflows-sdk").ReturnWorkflow<ProcessPayoutReversalWorkflowInput, PayoutReversalDTO[], []>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.processPayoutReversalWorkflow = exports.failedReversalEvents = exports.processPayoutReversalWorkflowId = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
|
+
const types_1 = require("@mercurjs/types");
|
|
7
|
+
const steps_1 = require("../steps");
|
|
8
|
+
exports.processPayoutReversalWorkflowId = "process-payout-reversal";
|
|
9
|
+
const failedReversalEvents = (reversals) => reversals.filter((reversal) => reversal.status === types_1.PayoutStatus.FAILED).map((reversal) => ({ id: reversal.id }));
|
|
10
|
+
exports.failedReversalEvents = failedReversalEvents;
|
|
11
|
+
exports.processPayoutReversalWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.processPayoutReversalWorkflowId, function (input) {
|
|
12
|
+
const reversals = (0, steps_1.processPayoutReversalsStep)({ ids: input.reversal_ids });
|
|
13
|
+
(0, core_flows_1.emitEventStep)({
|
|
14
|
+
eventName: types_1.PayoutModuleEvents.PAYOUT_REVERSAL_FAILED,
|
|
15
|
+
data: (0, workflows_sdk_1.transform)({ reversals }, ({ reversals }) => (0, exports.failedReversalEvents)(reversals)),
|
|
16
|
+
});
|
|
17
|
+
return new workflows_sdk_1.WorkflowResponse(reversals);
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1wYXlvdXQtcmV2ZXJzYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3BheW91dC93b3JrZmxvd3MvcHJvY2Vzcy1wYXlvdXQtcmV2ZXJzYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBSTBDO0FBQzFDLDREQUEyRDtBQUMzRCwyQ0FBcUY7QUFFckYsb0NBQXFEO0FBTXhDLFFBQUEsK0JBQStCLEdBQUcseUJBQXlCLENBQUE7QUFFakUsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLFNBQThCLEVBQUUsRUFBRSxDQUNyRSxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxLQUFLLG9CQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUE7QUFEckcsUUFBQSxvQkFBb0Isd0JBQ2lGO0FBRXJHLFFBQUEsNkJBQTZCLEdBQUcsSUFBQSw4QkFBYyxFQUN6RCx1Q0FBK0IsRUFDL0IsVUFBVSxLQUF5QztJQUNqRCxNQUFNLFNBQVMsR0FBRyxJQUFBLGtDQUEwQixFQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFBO0lBRXpFLElBQUEsMEJBQWEsRUFBQztRQUNaLFNBQVMsRUFBRSwwQkFBa0IsQ0FBQyxzQkFBc0I7UUFDcEQsSUFBSSxFQUFFLElBQUEseUJBQVMsRUFBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBQSw0QkFBb0IsRUFBQyxTQUFTLENBQUMsQ0FBQztLQUNuRixDQUFDLENBQUE7SUFFRixPQUFPLElBQUksZ0NBQWdCLENBQUMsU0FBUyxDQUFDLENBQUE7QUFDeEMsQ0FBQyxDQUNGLENBQUEifQ==
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { PayoutDTO } from "@mercurjs/types";
|
|
2
|
+
export type ProcessPayoutWorkflowInput = {
|
|
3
|
+
payout_ids: string[];
|
|
4
|
+
};
|
|
5
|
+
export declare const processPayoutWorkflowId = "process-payout";
|
|
6
|
+
export declare const failedPayoutEvents: (payouts: PayoutDTO[]) => {
|
|
7
|
+
id: string;
|
|
8
|
+
}[];
|
|
9
|
+
/**
|
|
10
|
+
* Sends pending or failed payouts to the provider. A payout that is paid,
|
|
11
|
+
* processing or aborted is returned unchanged.
|
|
12
|
+
*/
|
|
13
|
+
export declare const processPayoutWorkflow: import("@medusajs/framework/workflows-sdk").ReturnWorkflow<ProcessPayoutWorkflowInput, PayoutDTO[], []>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.processPayoutWorkflow = exports.failedPayoutEvents = exports.processPayoutWorkflowId = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
|
+
const types_1 = require("@mercurjs/types");
|
|
7
|
+
const steps_1 = require("../steps");
|
|
8
|
+
exports.processPayoutWorkflowId = "process-payout";
|
|
9
|
+
const failedPayoutEvents = (payouts) => payouts.filter((payout) => payout.status === types_1.PayoutStatus.FAILED).map((payout) => ({ id: payout.id }));
|
|
10
|
+
exports.failedPayoutEvents = failedPayoutEvents;
|
|
11
|
+
/**
|
|
12
|
+
* Sends pending or failed payouts to the provider. A payout that is paid,
|
|
13
|
+
* processing or aborted is returned unchanged.
|
|
14
|
+
*/
|
|
15
|
+
exports.processPayoutWorkflow = (0, workflows_sdk_1.createWorkflow)(exports.processPayoutWorkflowId, function (input) {
|
|
16
|
+
const payouts = (0, steps_1.processPayoutsStep)({ ids: input.payout_ids });
|
|
17
|
+
(0, core_flows_1.emitEventStep)({
|
|
18
|
+
eventName: types_1.PayoutModuleEvents.PAYOUT_FAILED,
|
|
19
|
+
data: (0, workflows_sdk_1.transform)({ payouts }, ({ payouts }) => (0, exports.failedPayoutEvents)(payouts)),
|
|
20
|
+
});
|
|
21
|
+
return new workflows_sdk_1.WorkflowResponse(payouts);
|
|
22
|
+
});
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1wYXlvdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3BheW91dC93b3JrZmxvd3MvcHJvY2Vzcy1wYXlvdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBSTBDO0FBQzFDLDREQUEyRDtBQUMzRCwyQ0FBNkU7QUFFN0Usb0NBQTZDO0FBTWhDLFFBQUEsdUJBQXVCLEdBQUcsZ0JBQWdCLENBQUE7QUFFaEQsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLE9BQW9CLEVBQUUsRUFBRSxDQUN6RCxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLG9CQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUE7QUFEM0YsUUFBQSxrQkFBa0Isc0JBQ3lFO0FBRXhHOzs7R0FHRztBQUNVLFFBQUEscUJBQXFCLEdBQUcsSUFBQSw4QkFBYyxFQUNqRCwrQkFBdUIsRUFDdkIsVUFBVSxLQUFpQztJQUN6QyxNQUFNLE9BQU8sR0FBRyxJQUFBLDBCQUFrQixFQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFBO0lBRTdELElBQUEsMEJBQWEsRUFBQztRQUNaLFNBQVMsRUFBRSwwQkFBa0IsQ0FBQyxhQUFhO1FBQzNDLElBQUksRUFBRSxJQUFBLHlCQUFTLEVBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUEsMEJBQWtCLEVBQUMsT0FBTyxDQUFDLENBQUM7S0FDM0UsQ0FBQyxDQUFBO0lBRUYsT0FBTyxJQUFJLGdDQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFBO0FBQ3RDLENBQUMsQ0FDRixDQUFBIn0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type RefreshOnboardingWorkflowInput = {
|
|
2
|
+
token: string;
|
|
3
|
+
};
|
|
4
|
+
export type RefreshOnboardingWorkflowOutput = {
|
|
5
|
+
url: string;
|
|
6
|
+
};
|
|
7
|
+
export declare const refreshOnboardingWorkflowId = "refresh-onboarding";
|
|
8
|
+
/**
|
|
9
|
+
* Exchanges an expired onboarding link's token for a fresh link. The token
|
|
10
|
+
* is rotated, so each refresh URL works once and only within the module's
|
|
11
|
+
* `onboarding.tokenTtlSeconds`.
|
|
12
|
+
*/
|
|
13
|
+
export declare const refreshOnboardingWorkflow: import("@medusajs/framework/workflows-sdk").ReturnWorkflow<RefreshOnboardingWorkflowInput, RefreshOnboardingWorkflowOutput, []>;
|