@webbers/pay-payments-medusa 2.2.31 → 2.2.32
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/package.json +1 -1
- package/.medusa/server/src/admin/index.js +1 -1
- package/.medusa/server/src/admin/index.mjs +1 -1
- package/.medusa/server/src/api/store/pay/payment-collections/[id]/route.d.ts +3 -0
- package/.medusa/server/src/api/store/pay/payment-collections/[id]/route.d.ts.map +1 -0
- package/.medusa/server/src/api/store/pay/payment-collections/[id]/route.js +99 -0
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webbers/pay-payments-medusa",
|
|
3
3
|
"displayName": "Medusa v2 Pay. Plugin",
|
|
4
|
-
"version": "2.2.
|
|
4
|
+
"version": "2.2.32",
|
|
5
5
|
"description": "The Pay.nl payment provider plugin for Medusa v2",
|
|
6
6
|
"author": "Webbers B.V. <development@webbers.com>",
|
|
7
7
|
"license": "MIT",
|
|
@@ -58,7 +58,7 @@ const sdk = new Medusa__default.default({
|
|
|
58
58
|
}
|
|
59
59
|
});
|
|
60
60
|
const displayName = "Medusa v2 Pay. Plugin";
|
|
61
|
-
const version = "2.2.
|
|
61
|
+
const version = "2.2.32";
|
|
62
62
|
function getSortedPaymentMethods(data) {
|
|
63
63
|
const { checkoutOptions, checkoutSequence } = data;
|
|
64
64
|
const { primary } = checkoutSequence.default;
|
|
@@ -55,7 +55,7 @@ const sdk = new Medusa({
|
|
|
55
55
|
}
|
|
56
56
|
});
|
|
57
57
|
const displayName = "Medusa v2 Pay. Plugin";
|
|
58
|
-
const version = "2.2.
|
|
58
|
+
const version = "2.2.32";
|
|
59
59
|
function getSortedPaymentMethods(data) {
|
|
60
60
|
const { checkoutOptions, checkoutSequence } = data;
|
|
61
61
|
const { primary } = checkoutSequence.default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../../../src/api/store/pay/payment-collections/[id]/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAO9E,eAAO,MAAM,GAAG,GAAU,KAAK,aAAa,EAAE,KAAK,cAAc,4BA4HhE,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GET = void 0;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const createPayOrder_1 = require("@webbers/pay-payments-medusa/utils/createPayOrder");
|
|
6
|
+
const services_1 = require("@webbers/pay-payments-medusa/providers/pay/services");
|
|
7
|
+
const GET = async (req, res) => {
|
|
8
|
+
const { id } = req.params;
|
|
9
|
+
const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
10
|
+
const paymentModuleService = req.scope.resolve(utils_1.Modules.PAYMENT);
|
|
11
|
+
const configModule = req.scope.resolve(utils_1.ContainerRegistrationKeys.CONFIG_MODULE);
|
|
12
|
+
const payModuleConfig = configModule.modules
|
|
13
|
+
.payment.options.providers.find((p) => p.id === "pay");
|
|
14
|
+
const payProviderId = payModuleConfig.id;
|
|
15
|
+
const payProviderOptions = payModuleConfig.options;
|
|
16
|
+
const hostedCheckout = `pp_pay-hosted-${payProviderId}`;
|
|
17
|
+
// Check if payment collection already has a payment session with the provider
|
|
18
|
+
const { data: checkPaymentCollections } = await query.graph({
|
|
19
|
+
entity: 'payment_collection',
|
|
20
|
+
fields: ['id', 'amount', 'currency_code', 'payment_sessions.provider_id', 'payment_sessions.data'],
|
|
21
|
+
filters: { id },
|
|
22
|
+
});
|
|
23
|
+
if (checkPaymentCollections.length === 0) {
|
|
24
|
+
return res.json({});
|
|
25
|
+
}
|
|
26
|
+
const existingPaymentCollection = checkPaymentCollections?.[0]?.payment_sessions?.find(ps => ps?.provider_id === hostedCheckout);
|
|
27
|
+
if (existingPaymentCollection) {
|
|
28
|
+
return res.json({ checkout_url: existingPaymentCollection?.data?.links?.checkout });
|
|
29
|
+
}
|
|
30
|
+
// Create payment session for provider
|
|
31
|
+
await paymentModuleService.createPaymentSession(id, {
|
|
32
|
+
provider_id: hostedCheckout,
|
|
33
|
+
amount: checkPaymentCollections?.[0]?.amount,
|
|
34
|
+
currency_code: checkPaymentCollections?.[0]?.currency_code,
|
|
35
|
+
data: {},
|
|
36
|
+
});
|
|
37
|
+
const { data: paymentCollections } = await query.graph({
|
|
38
|
+
entity: 'payment_collection',
|
|
39
|
+
fields: [
|
|
40
|
+
'id',
|
|
41
|
+
'order.id',
|
|
42
|
+
'payment_sessions.id',
|
|
43
|
+
'payment_sessions.currency_code',
|
|
44
|
+
'payment_sessions.provider_id',
|
|
45
|
+
'payment_sessions.data',
|
|
46
|
+
'payment_sessions.amount',
|
|
47
|
+
'payment_sessions.context',
|
|
48
|
+
'payment_sessions.payment.*',
|
|
49
|
+
],
|
|
50
|
+
filters: { id },
|
|
51
|
+
});
|
|
52
|
+
const paymentCollection = paymentCollections[0];
|
|
53
|
+
if (!paymentCollection?.order?.id) {
|
|
54
|
+
return res.status(404).json({ message: 'Order not found for payment collection' });
|
|
55
|
+
}
|
|
56
|
+
const paymentSession = paymentCollection?.payment_sessions?.find(ps => ps?.provider_id === hostedCheckout);
|
|
57
|
+
if (!paymentSession) {
|
|
58
|
+
return res.status(404).json({ message: 'Payment session not found for payment collection' });
|
|
59
|
+
}
|
|
60
|
+
const getBaseProviderIdFromHostedCheckout = (hostedCheckoutId, providerId) => hostedCheckoutId.replace('pp_', '').replace(`_${providerId}`, '');
|
|
61
|
+
const baseProviderId = getBaseProviderIdFromHostedCheckout(hostedCheckout, payProviderId);
|
|
62
|
+
const payServiceProvider = (0, services_1.getPayServiceByProviderId)(baseProviderId);
|
|
63
|
+
if (!payServiceProvider) {
|
|
64
|
+
return res.status(404).json({ message: 'Payment provider not found' });
|
|
65
|
+
}
|
|
66
|
+
const provider = new payServiceProvider(req.scope, payProviderOptions);
|
|
67
|
+
const { data: orders } = await query.graph({
|
|
68
|
+
entity: 'order',
|
|
69
|
+
fields: createPayOrder_1.defaultCreatePayOrderFields,
|
|
70
|
+
filters: { id: paymentCollection.order.id },
|
|
71
|
+
}, {
|
|
72
|
+
throwIfKeyNotFound: true,
|
|
73
|
+
});
|
|
74
|
+
const order = orders[0];
|
|
75
|
+
const payment = await paymentModuleService.authorizePaymentSession(paymentSession.id, {});
|
|
76
|
+
const payload = provider.createPayOrderPayload(order, paymentSession);
|
|
77
|
+
const updatedPaymentSession = await paymentModuleService.updatePaymentSession({
|
|
78
|
+
id: paymentSession.id,
|
|
79
|
+
data: {
|
|
80
|
+
...(paymentSession.data ?? {}),
|
|
81
|
+
payload,
|
|
82
|
+
},
|
|
83
|
+
currency_code: paymentSession.currency_code,
|
|
84
|
+
amount: paymentSession.amount,
|
|
85
|
+
});
|
|
86
|
+
if (payment) {
|
|
87
|
+
const updatedPayment = await paymentModuleService.updatePayment({
|
|
88
|
+
id: payment.id,
|
|
89
|
+
// @ts-ignore
|
|
90
|
+
data: {
|
|
91
|
+
...updatedPaymentSession.data,
|
|
92
|
+
...payload,
|
|
93
|
+
},
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
return res.json({ checkout_url: updatedPaymentSession?.data?.links?.checkout });
|
|
97
|
+
};
|
|
98
|
+
exports.GET = GET;
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3BheS9wYXltZW50LWNvbGxlY3Rpb25zL1tpZF0vcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EscURBQStFO0FBRS9FLHNGQUFrSDtBQUNsSCxrRkFBZ0c7QUFHekYsTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUFFLEdBQWtCLEVBQUUsR0FBbUIsRUFBRSxFQUFFO0lBQ25FLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBRTFCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pFLE1BQU0sb0JBQW9CLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQXdCLGVBQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV2RixNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxhQUFhLENBQUMsQ0FBQTtJQUUvRSxNQUFNLGVBQWUsR0FBSSxZQUFZLENBQUMsT0FBUTtTQUMzQyxPQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEtBQUssQ0FBQyxDQUFBO0lBQ25FLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQyxFQUFZLENBQUE7SUFDbEQsTUFBTSxrQkFBa0IsR0FBRyxlQUFlLENBQUMsT0FBMEIsQ0FBQTtJQUVyRSxNQUFNLGNBQWMsR0FBRyxpQkFBaUIsYUFBYSxFQUFFLENBQUM7SUFFeEQsOEVBQThFO0lBQzlFLE1BQU0sRUFBRSxJQUFJLEVBQUUsdUJBQXVCLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDMUQsTUFBTSxFQUFFLG9CQUFvQjtRQUM1QixNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSw4QkFBOEIsRUFBRSx1QkFBdUIsQ0FBQztRQUNsRyxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUU7S0FDaEIsQ0FBQyxDQUFDO0lBRUgsSUFBSSx1QkFBdUIsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDekMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxNQUFNLHlCQUF5QixHQUFHLHVCQUF1QixFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUNwRixFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxXQUFXLEtBQUssY0FBYyxDQUN6QyxDQUFDO0lBRUYsSUFBSSx5QkFBeUIsRUFBRSxDQUFDO1FBQzlCLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLFlBQVksRUFBRyx5QkFBeUIsRUFBRSxJQUFZLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDL0YsQ0FBQztJQUVELHNDQUFzQztJQUN0QyxNQUFNLG9CQUFvQixDQUFDLG9CQUFvQixDQUFDLEVBQUUsRUFBRTtRQUNsRCxXQUFXLEVBQUUsY0FBYztRQUMzQixNQUFNLEVBQUUsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNO1FBQzVDLGFBQWEsRUFBRSx1QkFBdUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLGFBQWE7UUFDMUQsSUFBSSxFQUFFLEVBQUU7S0FDVCxDQUFDLENBQUM7SUFFSCxNQUFNLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3JELE1BQU0sRUFBRSxvQkFBb0I7UUFDNUIsTUFBTSxFQUFFO1lBQ04sSUFBSTtZQUNKLFVBQVU7WUFDVixxQkFBcUI7WUFDckIsZ0NBQWdDO1lBQ2hDLDhCQUE4QjtZQUM5Qix1QkFBdUI7WUFDdkIseUJBQXlCO1lBQ3pCLDBCQUEwQjtZQUMxQiw0QkFBNEI7U0FDN0I7UUFDRCxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUU7S0FDaEIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxpQkFBaUIsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVoRCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQ2xDLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsd0NBQXdDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxNQUFNLGNBQWMsR0FBRyxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLENBQzlELEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLFdBQVcsS0FBSyxjQUFjLENBQ1QsQ0FBQztJQUVsQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDcEIsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxrREFBa0QsRUFBRSxDQUFDLENBQUM7SUFDL0YsQ0FBQztJQUVELE1BQU0sbUNBQW1DLEdBQUcsQ0FDMUMsZ0JBQXdCLEVBQ3hCLFVBQWtCLEVBQ1YsRUFBRSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFL0UsTUFBTSxjQUFjLEdBQUcsbUNBQW1DLENBQUMsY0FBYyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQzFGLE1BQU0sa0JBQWtCLEdBQUcsSUFBQSxvQ0FBeUIsRUFBQyxjQUFjLENBQUMsQ0FBQztJQUNyRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUN4QixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFFdkUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQ3hDO1FBQ0UsTUFBTSxFQUFFLE9BQU87UUFDZixNQUFNLEVBQUUsNENBQTJCO1FBQ25DLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFO0tBQzVDLEVBQ0Q7UUFDRSxrQkFBa0IsRUFBRSxJQUFJO0tBQ3pCLENBQ0YsQ0FBQztJQUVGLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQWdDLENBQUM7SUFFdkQsTUFBTSxPQUFPLEdBQUcsTUFBTSxvQkFBb0IsQ0FBQyx1QkFBdUIsQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRTFGLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFFdEUsTUFBTSxxQkFBcUIsR0FBRyxNQUFNLG9CQUFvQixDQUFDLG9CQUFvQixDQUFDO1FBQzVFLEVBQUUsRUFBRSxjQUFjLENBQUMsRUFBRTtRQUNyQixJQUFJLEVBQUU7WUFDSixHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7WUFDOUIsT0FBTztTQUNSO1FBQ0QsYUFBYSxFQUFFLGNBQWMsQ0FBQyxhQUFhO1FBQzNDLE1BQU0sRUFBRSxjQUFjLENBQUMsTUFBTTtLQUM5QixDQUFDLENBQUM7SUFFSCxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ1osTUFBTSxjQUFjLEdBQUcsTUFBTSxvQkFBb0IsQ0FBQyxhQUFhLENBQUM7WUFDOUQsRUFBRSxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQ2QsYUFBYTtZQUNiLElBQUksRUFBRTtnQkFDSixHQUFHLHFCQUFxQixDQUFDLElBQUk7Z0JBQzdCLEdBQUcsT0FBTzthQUNYO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLFlBQVksRUFBRyxxQkFBcUIsRUFBRSxJQUFZLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7QUFDM0YsQ0FBQyxDQUFDO0FBNUhXLFFBQUEsR0FBRyxPQTRIZCJ9
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webbers/pay-payments-medusa",
|
|
3
3
|
"displayName": "Medusa v2 Pay. Plugin",
|
|
4
|
-
"version": "2.2.
|
|
4
|
+
"version": "2.2.32",
|
|
5
5
|
"description": "The Pay.nl payment provider plugin for Medusa v2",
|
|
6
6
|
"author": "Webbers B.V. <development@webbers.com>",
|
|
7
7
|
"license": "MIT",
|