@vendure/payments-plugin 2.0.0-next.10 → 2.0.0-next.13
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/package/braintree/braintree.handler.js +3 -13
- package/package/braintree/braintree.handler.js.map +1 -1
- package/package/braintree/braintree.plugin.d.ts +23 -37
- package/package/braintree/braintree.plugin.js +27 -41
- package/package/braintree/braintree.plugin.js.map +1 -1
- package/package/braintree/braintree.resolver.d.ts +2 -1
- package/package/braintree/braintree.resolver.js +4 -2
- package/package/braintree/braintree.resolver.js.map +1 -1
- package/package/braintree/types.d.ts +5 -2
- package/package/mollie/graphql/generated-shop-types.d.ts +8 -0
- package/package/mollie/graphql/generated-shop-types.js.map +1 -1
- package/package/stripe/stripe-utils.d.ts +19 -0
- package/package/stripe/stripe-utils.js +43 -0
- package/package/stripe/stripe-utils.js.map +1 -0
- package/package/stripe/stripe.controller.js +1 -0
- package/package/stripe/stripe.controller.js.map +1 -1
- package/package/stripe/stripe.handler.js +4 -2
- package/package/stripe/stripe.handler.js.map +1 -1
- package/package/stripe/stripe.plugin.d.ts +89 -11
- package/package/stripe/stripe.plugin.js +89 -11
- package/package/stripe/stripe.plugin.js.map +1 -1
- package/package/stripe/stripe.service.d.ts +0 -1
- package/package/stripe/stripe.service.js +3 -21
- package/package/stripe/stripe.service.js.map +1 -1
- package/package.json +5 -5
|
@@ -27,23 +27,13 @@ exports.braintreePaymentMethodHandler = new core_1.PaymentMethodHandler({
|
|
|
27
27
|
async createPayment(ctx, order, amount, args, metadata) {
|
|
28
28
|
const gateway = (0, braintree_common_1.getGateway)(args, options);
|
|
29
29
|
let customerId;
|
|
30
|
-
const { nonce, storeCardInVault } = metadata;
|
|
31
|
-
if (!nonce) {
|
|
32
|
-
return {
|
|
33
|
-
amount,
|
|
34
|
-
state: 'Error',
|
|
35
|
-
transactionId: '',
|
|
36
|
-
errorMessage: `No "nonce" value was specified in the metadata`,
|
|
37
|
-
metadata,
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
30
|
try {
|
|
41
31
|
await entityHydrator.hydrate(ctx, order, { relations: ['customer'] });
|
|
42
32
|
const customer = order.customer;
|
|
43
33
|
if (options.storeCustomersInBraintree && ctx.activeUserId && customer) {
|
|
44
34
|
customerId = await getBraintreeCustomerId(ctx, gateway, customer);
|
|
45
35
|
}
|
|
46
|
-
return processPayment(ctx, gateway, order, amount, nonce, customerId, options
|
|
36
|
+
return processPayment(ctx, gateway, order, amount, metadata.nonce, customerId, options);
|
|
47
37
|
}
|
|
48
38
|
catch (e) {
|
|
49
39
|
core_1.Logger.error(e, constants_1.loggerCtx);
|
|
@@ -79,7 +69,7 @@ exports.braintreePaymentMethodHandler = new core_1.PaymentMethodHandler({
|
|
|
79
69
|
};
|
|
80
70
|
},
|
|
81
71
|
});
|
|
82
|
-
async function processPayment(ctx, gateway, order, amount, paymentMethodNonce, customerId, pluginOptions
|
|
72
|
+
async function processPayment(ctx, gateway, order, amount, paymentMethodNonce, customerId, pluginOptions) {
|
|
83
73
|
var _a;
|
|
84
74
|
const response = await gateway.transaction.sale({
|
|
85
75
|
customerId,
|
|
@@ -88,7 +78,7 @@ async function processPayment(ctx, gateway, order, amount, paymentMethodNonce, c
|
|
|
88
78
|
paymentMethodNonce,
|
|
89
79
|
options: {
|
|
90
80
|
submitForSettlement: true,
|
|
91
|
-
storeInVaultOnSuccess: !!customerId
|
|
81
|
+
storeInVaultOnSuccess: !!customerId,
|
|
92
82
|
},
|
|
93
83
|
});
|
|
94
84
|
const extractMetadataFn = (_a = pluginOptions.extractMetadata) !== null && _a !== void 0 ? _a : braintree_common_1.defaultExtractMetadataFn;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"braintree.handler.js","sourceRoot":"","sources":["../../src/braintree/braintree.handler.ts"],"names":[],"mappings":";;;AAAA,yEAAmE;AACnE,wCASuB;AAGvB,yDAA0E;AAC1E,2CAAkE;AAGlE,IAAI,OAA+B,CAAC;AACpC,IAAI,UAAmC,CAAC;AACxC,IAAI,cAA8B,CAAC;AAEnC;;GAEG;AACU,QAAA,6BAA6B,GAAG,IAAI,2BAAoB,CAAC;IAClE,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,8BAAY,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC7E,IAAI,EAAE;QACF,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,8BAAY,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE;QAChG,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,8BAAY,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE;QAC9F,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,8BAAY,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE;KACnG;IACD,IAAI,CAAC,QAAkB;QACnB,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAyB,oCAAwB,CAAC,CAAC;QACzE,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,8BAAuB,CAAC,CAAC;QACnD,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,qBAAc,CAAC,CAAC;IAClD,CAAC;IACD,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ;QAClD,MAAM,OAAO,GAAG,IAAA,6BAAU,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1C,IAAI,UAA8B,CAAC;QACnC,
|
|
1
|
+
{"version":3,"file":"braintree.handler.js","sourceRoot":"","sources":["../../src/braintree/braintree.handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,8 @@ import { BraintreePluginOptions } from './types';
|
|
|
31
31
|
* BraintreePlugin.init({
|
|
32
32
|
* environment: Environment.Sandbox,
|
|
33
33
|
* // This allows saving customer payment
|
|
34
|
-
* // methods with Braintree
|
|
34
|
+
* // methods with Braintree (see "vaulting"
|
|
35
|
+
* // section below for details)
|
|
35
36
|
* storeCustomersInBraintree: true,
|
|
36
37
|
* }),
|
|
37
38
|
* ]
|
|
@@ -180,48 +181,33 @@ import { BraintreePluginOptions } from './types';
|
|
|
180
181
|
* dropin.clearSelectedPaymentMethod();
|
|
181
182
|
* }
|
|
182
183
|
* }
|
|
184
|
+
* ```
|
|
183
185
|
*
|
|
184
|
-
* ## Storing
|
|
185
|
-
*
|
|
186
|
-
* Braintree has a "vault" mechanism which allows it to store the credit card information for a Customer, so that on the next purchase
|
|
187
|
-
* the stored details do not need to be re-entered.
|
|
186
|
+
* ## Storing payment details (vaulting)
|
|
188
187
|
*
|
|
189
|
-
*
|
|
190
|
-
*
|
|
188
|
+
* Braintree has a [vault feature](https://developer.paypal.com/braintree/articles/control-panel/vault/overview) which allows the secure storage
|
|
189
|
+
* of customer's payment information. Using the vault allows you to offer a faster checkout for repeat customers without needing to worry about
|
|
190
|
+
* how to securely store payment details.
|
|
191
191
|
*
|
|
192
|
-
*
|
|
193
|
-
* be automatically stored in the vault. But you can opt out of this behavior by specifying the `storeCardInVault` property in the `metadata` object
|
|
194
|
-
* supplied to the `addPaymentToOrder` mutation:
|
|
192
|
+
* To enable this feature, set the `storeCustomersInBraintree` option to `true`.
|
|
195
193
|
*
|
|
196
|
-
*
|
|
197
|
-
*
|
|
198
|
-
*
|
|
199
|
-
*
|
|
200
|
-
*
|
|
201
|
-
* ... on Order {
|
|
202
|
-
* id
|
|
203
|
-
* payments {
|
|
204
|
-
* id
|
|
205
|
-
* # ... etc
|
|
206
|
-
* }
|
|
207
|
-
* }
|
|
208
|
-
* ... on ErrorResult {
|
|
209
|
-
* errorCode
|
|
210
|
-
* message
|
|
211
|
-
* }
|
|
212
|
-
* }
|
|
213
|
-
* }`, {
|
|
214
|
-
* input: {
|
|
215
|
-
* method: 'braintree',
|
|
216
|
-
* metadata: {
|
|
217
|
-
* nonce: paymentResult.nonce,
|
|
218
|
-
* storeCardInVault: false,
|
|
219
|
-
* },
|
|
220
|
-
* },
|
|
221
|
-
* },
|
|
222
|
-
* );
|
|
194
|
+
* ```TypeScript
|
|
195
|
+
* BraintreePlugin.init({
|
|
196
|
+
* environment: Environment.Sandbox,
|
|
197
|
+
* storeCustomersInBraintree: true,
|
|
198
|
+
* }),
|
|
223
199
|
* ```
|
|
224
200
|
*
|
|
201
|
+
* Since v1.8, it is possible to override vaulting on a per-payment basis by passing `includeCustomerId: false` to the `generateBraintreeClientToken`
|
|
202
|
+
* mutation:
|
|
203
|
+
*
|
|
204
|
+
* ```GraphQL
|
|
205
|
+
* const { generateBraintreeClientToken } = await graphQlClient.query(gql`
|
|
206
|
+
* query GenerateBraintreeClientToken($includeCustomerId: Boolean) {
|
|
207
|
+
* generateBraintreeClientToken(includeCustomerId: $includeCustomerId)
|
|
208
|
+
* }
|
|
209
|
+
* `, { includeCustomerId: false });
|
|
210
|
+
* ```
|
|
225
211
|
*
|
|
226
212
|
* @docsCategory payments-plugin
|
|
227
213
|
* @docsPage BraintreePlugin
|
|
@@ -44,7 +44,8 @@ const constants_1 = require("./constants");
|
|
|
44
44
|
* BraintreePlugin.init({
|
|
45
45
|
* environment: Environment.Sandbox,
|
|
46
46
|
* // This allows saving customer payment
|
|
47
|
-
* // methods with Braintree
|
|
47
|
+
* // methods with Braintree (see "vaulting"
|
|
48
|
+
* // section below for details)
|
|
48
49
|
* storeCustomersInBraintree: true,
|
|
49
50
|
* }),
|
|
50
51
|
* ]
|
|
@@ -193,48 +194,33 @@ const constants_1 = require("./constants");
|
|
|
193
194
|
* dropin.clearSelectedPaymentMethod();
|
|
194
195
|
* }
|
|
195
196
|
* }
|
|
197
|
+
* ```
|
|
196
198
|
*
|
|
197
|
-
* ## Storing
|
|
198
|
-
*
|
|
199
|
-
* Braintree has a "vault" mechanism which allows it to store the credit card information for a Customer, so that on the next purchase
|
|
200
|
-
* the stored details do not need to be re-entered.
|
|
199
|
+
* ## Storing payment details (vaulting)
|
|
201
200
|
*
|
|
202
|
-
*
|
|
203
|
-
*
|
|
201
|
+
* Braintree has a [vault feature](https://developer.paypal.com/braintree/articles/control-panel/vault/overview) which allows the secure storage
|
|
202
|
+
* of customer's payment information. Using the vault allows you to offer a faster checkout for repeat customers without needing to worry about
|
|
203
|
+
* how to securely store payment details.
|
|
204
204
|
*
|
|
205
|
-
*
|
|
206
|
-
* be automatically stored in the vault. But you can opt out of this behavior by specifying the `storeCardInVault` property in the `metadata` object
|
|
207
|
-
* supplied to the `addPaymentToOrder` mutation:
|
|
205
|
+
* To enable this feature, set the `storeCustomersInBraintree` option to `true`.
|
|
208
206
|
*
|
|
209
|
-
*
|
|
210
|
-
*
|
|
211
|
-
*
|
|
212
|
-
*
|
|
213
|
-
*
|
|
214
|
-
* ... on Order {
|
|
215
|
-
* id
|
|
216
|
-
* payments {
|
|
217
|
-
* id
|
|
218
|
-
* # ... etc
|
|
219
|
-
* }
|
|
220
|
-
* }
|
|
221
|
-
* ... on ErrorResult {
|
|
222
|
-
* errorCode
|
|
223
|
-
* message
|
|
224
|
-
* }
|
|
225
|
-
* }
|
|
226
|
-
* }`, {
|
|
227
|
-
* input: {
|
|
228
|
-
* method: 'braintree',
|
|
229
|
-
* metadata: {
|
|
230
|
-
* nonce: paymentResult.nonce,
|
|
231
|
-
* storeCardInVault: false,
|
|
232
|
-
* },
|
|
233
|
-
* },
|
|
234
|
-
* },
|
|
235
|
-
* );
|
|
207
|
+
* ```TypeScript
|
|
208
|
+
* BraintreePlugin.init({
|
|
209
|
+
* environment: Environment.Sandbox,
|
|
210
|
+
* storeCustomersInBraintree: true,
|
|
211
|
+
* }),
|
|
236
212
|
* ```
|
|
237
213
|
*
|
|
214
|
+
* Since v1.8, it is possible to override vaulting on a per-payment basis by passing `includeCustomerId: false` to the `generateBraintreeClientToken`
|
|
215
|
+
* mutation:
|
|
216
|
+
*
|
|
217
|
+
* ```GraphQL
|
|
218
|
+
* const { generateBraintreeClientToken } = await graphQlClient.query(gql`
|
|
219
|
+
* query GenerateBraintreeClientToken($includeCustomerId: Boolean) {
|
|
220
|
+
* generateBraintreeClientToken(includeCustomerId: $includeCustomerId)
|
|
221
|
+
* }
|
|
222
|
+
* `, { includeCustomerId: false });
|
|
223
|
+
* ```
|
|
238
224
|
*
|
|
239
225
|
* @docsCategory payments-plugin
|
|
240
226
|
* @docsPage BraintreePlugin
|
|
@@ -270,10 +256,10 @@ BraintreePlugin = BraintreePlugin_1 = __decorate([
|
|
|
270
256
|
return config;
|
|
271
257
|
},
|
|
272
258
|
shopApiExtensions: {
|
|
273
|
-
schema: (0, apollo_server_core_1.gql) `
|
|
274
|
-
extend type Query {
|
|
275
|
-
generateBraintreeClientToken(orderId: ID): String!
|
|
276
|
-
}
|
|
259
|
+
schema: (0, apollo_server_core_1.gql) `
|
|
260
|
+
extend type Query {
|
|
261
|
+
generateBraintreeClientToken(orderId: ID, includeCustomerId: Boolean): String!
|
|
262
|
+
}
|
|
277
263
|
`,
|
|
278
264
|
resolvers: [braintree_resolver_1.BraintreeResolver],
|
|
279
265
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"braintree.plugin.js","sourceRoot":"","sources":["../../src/braintree/braintree.plugin.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,wCAAsF;AACtF,2DAAyC;AAEzC,2DAAoE;AACpE,6DAAyD;AACzD,2CAAuD;AAGvD
|
|
1
|
+
{"version":3,"file":"braintree.plugin.js","sourceRoot":"","sources":["../../src/braintree/braintree.plugin.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,wCAAsF;AACtF,2DAAyC;AAEzC,2DAAoE;AACpE,6DAAyD;AACzD,2CAAuD;AAGvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmNG;AAgCH,IAAa,eAAe,uBAA5B,MAAa,eAAe;IAExB,MAAM,CAAC,IAAI,CAAC,OAA+B;QACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,iBAAe,CAAC;IAC3B,CAAC;CACJ,CAAA;AALU,uBAAO,GAA2B,EAAG,CAAA;AADnC,eAAe;IA/B3B,IAAA,oBAAa,EAAC;QACX,OAAO,EAAE,CAAC,yBAAkB,CAAC;QAC7B,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,oCAAwB;gBACjC,UAAU,EAAE,GAAG,EAAE,CAAC,iBAAe,CAAC,OAAO;aAC5C;SACJ;QACD,aAAa,EAAE,MAAM,CAAC,EAAE;YACpB,MAAM,CAAC,cAAc,CAAC,qBAAqB,CAAC,IAAI,CAAC,iDAA6B,CAAC,CAAC;YAChF,IAAI,iBAAe,CAAC,OAAO,CAAC,yBAAyB,KAAK,IAAI,EAAE;gBAC5D,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC9B,IAAI,EAAE,qBAAqB;oBAC3B,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,mBAAY,CAAC,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC;oBAC1E,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,KAAK;oBACb,QAAQ,EAAE,IAAI;iBACjB,CAAC,CAAC;aACN;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,iBAAiB,EAAE;YACf,MAAM,EAAE,IAAA,wBAAG,EAAA;;;;SAIV;YACD,SAAS,EAAE,CAAC,sCAAiB,CAAC;SACjC;KACJ,CAAC;GACW,eAAe,CAM3B;AANY,0CAAe"}
|
|
@@ -6,8 +6,9 @@ export declare class BraintreeResolver {
|
|
|
6
6
|
private activeOrderService;
|
|
7
7
|
private options;
|
|
8
8
|
constructor(connection: TransactionalConnection, orderService: OrderService, activeOrderService: ActiveOrderService, options: BraintreePluginOptions);
|
|
9
|
-
generateBraintreeClientToken(ctx: RequestContext, { orderId }: {
|
|
9
|
+
generateBraintreeClientToken(ctx: RequestContext, { orderId, includeCustomerId }: {
|
|
10
10
|
orderId?: ID;
|
|
11
|
+
includeCustomerId?: boolean;
|
|
11
12
|
}): Promise<string>;
|
|
12
13
|
private getPaymentMethodArgs;
|
|
13
14
|
}
|
|
@@ -26,7 +26,7 @@ let BraintreeResolver = class BraintreeResolver {
|
|
|
26
26
|
this.activeOrderService = activeOrderService;
|
|
27
27
|
this.options = options;
|
|
28
28
|
}
|
|
29
|
-
async generateBraintreeClientToken(ctx, { orderId }) {
|
|
29
|
+
async generateBraintreeClientToken(ctx, { orderId, includeCustomerId }) {
|
|
30
30
|
var _a;
|
|
31
31
|
if (orderId) {
|
|
32
32
|
core_1.Logger.warn(`The orderId argument to the generateBraintreeClientToken mutation has been deprecated and may be omitted.`);
|
|
@@ -41,7 +41,9 @@ let BraintreeResolver = class BraintreeResolver {
|
|
|
41
41
|
const args = await this.getPaymentMethodArgs(ctx);
|
|
42
42
|
const gateway = (0, braintree_common_1.getGateway)(args, this.options);
|
|
43
43
|
try {
|
|
44
|
-
const result = await gateway.clientToken.generate({
|
|
44
|
+
const result = await gateway.clientToken.generate({
|
|
45
|
+
customerId: includeCustomerId === false ? undefined : customerId,
|
|
46
|
+
});
|
|
45
47
|
return result.clientToken;
|
|
46
48
|
}
|
|
47
49
|
catch (e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"braintree.resolver.js","sourceRoot":"","sources":["../../src/braintree/braintree.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAwC;AACxC,6CAAwD;AACxD,wCAUuB;AAEvB,yDAAgD;AAChD,2DAAoE;AACpE,2CAAkE;AAIlE,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;IAC1B,YACY,UAAmC,EACnC,YAA0B,EAC1B,kBAAsC,EACJ,OAA+B;QAHjE,eAAU,GAAV,UAAU,CAAyB;QACnC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,uBAAkB,GAAlB,kBAAkB,CAAoB;QACJ,YAAO,GAAP,OAAO,CAAwB;IAC1E,CAAC;IAGJ,KAAK,CAAC,4BAA4B,
|
|
1
|
+
{"version":3,"file":"braintree.resolver.js","sourceRoot":"","sources":["../../src/braintree/braintree.resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,17 +27,20 @@ export interface BraintreePluginOptions {
|
|
|
27
27
|
/**
|
|
28
28
|
* @description
|
|
29
29
|
* If set to `true`, a [Customer](https://developer.paypal.com/braintree/docs/guides/customers) object
|
|
30
|
-
* will be created in Braintree, which allows the secure storage of previously-used payment methods.
|
|
30
|
+
* will be created in Braintree, which allows the secure storage ("vaulting") of previously-used payment methods.
|
|
31
31
|
* This is done by adding a custom field to the Customer entity to store the Braintree customer ID,
|
|
32
32
|
* so switching this on will require a database migration / synchronization.
|
|
33
33
|
*
|
|
34
|
+
* Since v1.8, it is possible to override vaulting on a per-payment basis by passing `includeCustomerId: false` to the
|
|
35
|
+
* `generateBraintreeClientToken` mutation.
|
|
36
|
+
*
|
|
34
37
|
* @default false
|
|
35
38
|
*/
|
|
36
39
|
storeCustomersInBraintree?: boolean;
|
|
37
40
|
/**
|
|
38
41
|
* @description
|
|
39
42
|
* Allows you to configure exactly what information from the Braintree
|
|
40
|
-
* [Transaction object](https://developer.paypal.com/braintree/docs/reference/response/transaction#result-object
|
|
43
|
+
* [Transaction object](https://developer.paypal.com/braintree/docs/reference/response/transaction#result-object) (which is returned by the
|
|
41
44
|
* `transaction.sale()` method of the SDK) should be persisted to the resulting Payment entity metadata.
|
|
42
45
|
*
|
|
43
46
|
* By default, the built-in extraction function will return a metadata object that looks like this:
|
|
@@ -953,9 +953,15 @@ export declare type Fulfillment = Node & {
|
|
|
953
953
|
method: Scalars['String'];
|
|
954
954
|
orderItems: Array<OrderItem>;
|
|
955
955
|
state: Scalars['String'];
|
|
956
|
+
summary: Array<FulfillmentLineSummary>;
|
|
956
957
|
trackingCode?: Maybe<Scalars['String']>;
|
|
957
958
|
updatedAt: Scalars['DateTime'];
|
|
958
959
|
};
|
|
960
|
+
export declare type FulfillmentLineSummary = {
|
|
961
|
+
__typename?: 'FulfillmentLineSummary';
|
|
962
|
+
orderLine: OrderLine;
|
|
963
|
+
quantity: Scalars['Int'];
|
|
964
|
+
};
|
|
959
965
|
export declare enum GlobalFlag {
|
|
960
966
|
FALSE = "FALSE",
|
|
961
967
|
INHERIT = "INHERIT",
|
|
@@ -1849,6 +1855,7 @@ export declare type OrderLine = Node & {
|
|
|
1849
1855
|
discountedUnitPriceWithTax: Scalars['Int'];
|
|
1850
1856
|
discounts: Array<Discount>;
|
|
1851
1857
|
featuredAsset?: Maybe<Asset>;
|
|
1858
|
+
fulfillments?: Maybe<Array<Fulfillment>>;
|
|
1852
1859
|
id: Scalars['ID'];
|
|
1853
1860
|
items: Array<OrderItem>;
|
|
1854
1861
|
/** The total price of the line excluding tax and discounts. */
|
|
@@ -2678,6 +2685,7 @@ export declare type ShippingMethod = Node & {
|
|
|
2678
2685
|
description: Scalars['String'];
|
|
2679
2686
|
fulfillmentHandlerCode: Scalars['String'];
|
|
2680
2687
|
id: Scalars['ID'];
|
|
2688
|
+
languageCode: LanguageCode;
|
|
2681
2689
|
name: Scalars['String'];
|
|
2682
2690
|
translations: Array<ShippingMethodTranslation>;
|
|
2683
2691
|
updatedAt: Scalars['DateTime'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generated-shop-types.js","sourceRoot":"","sources":["../../../src/mollie/graphql/generated-shop-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generated-shop-types.js","sourceRoot":"","sources":["../../../src/mollie/graphql/generated-shop-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Order } from '@vendure/core';
|
|
2
|
+
/**
|
|
3
|
+
* @description
|
|
4
|
+
* From the [Stripe docs](https://stripe.com/docs/currencies#zero-decimal):
|
|
5
|
+
* > All API requests expect amounts to be provided in a currency’s smallest unit.
|
|
6
|
+
* > For example, to charge 10 USD, provide an amount value of 1000 (that is, 1000 cents).
|
|
7
|
+
* > For zero-decimal currencies, still provide amounts as an integer but without multiplying by 100.
|
|
8
|
+
* > For example, to charge ¥500, provide an amount value of 500.
|
|
9
|
+
*
|
|
10
|
+
* Therefore, for a fractionless currency like JPY, we need to divide the amount by 100 (since Vendure always
|
|
11
|
+
* stores money amounts multiplied by 100). See https://github.com/vendure-ecommerce/vendure/issues/1630
|
|
12
|
+
*/
|
|
13
|
+
export declare function getAmountInStripeMinorUnits(order: Order): number;
|
|
14
|
+
/**
|
|
15
|
+
* @description
|
|
16
|
+
* Performs the reverse of `getAmountInStripeMinorUnits` - converting the Stripe minor units into the format
|
|
17
|
+
* used by Vendure.
|
|
18
|
+
*/
|
|
19
|
+
export declare function getAmountFromStripeMinorUnits(order: Order, stripeAmount: number): number;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getAmountFromStripeMinorUnits = exports.getAmountInStripeMinorUnits = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @description
|
|
6
|
+
* From the [Stripe docs](https://stripe.com/docs/currencies#zero-decimal):
|
|
7
|
+
* > All API requests expect amounts to be provided in a currency’s smallest unit.
|
|
8
|
+
* > For example, to charge 10 USD, provide an amount value of 1000 (that is, 1000 cents).
|
|
9
|
+
* > For zero-decimal currencies, still provide amounts as an integer but without multiplying by 100.
|
|
10
|
+
* > For example, to charge ¥500, provide an amount value of 500.
|
|
11
|
+
*
|
|
12
|
+
* Therefore, for a fractionless currency like JPY, we need to divide the amount by 100 (since Vendure always
|
|
13
|
+
* stores money amounts multiplied by 100). See https://github.com/vendure-ecommerce/vendure/issues/1630
|
|
14
|
+
*/
|
|
15
|
+
function getAmountInStripeMinorUnits(order) {
|
|
16
|
+
const amountInStripeMinorUnits = currencyHasFractionPart(order.currencyCode)
|
|
17
|
+
? order.totalWithTax
|
|
18
|
+
: Math.round(order.totalWithTax / 100);
|
|
19
|
+
return amountInStripeMinorUnits;
|
|
20
|
+
}
|
|
21
|
+
exports.getAmountInStripeMinorUnits = getAmountInStripeMinorUnits;
|
|
22
|
+
/**
|
|
23
|
+
* @description
|
|
24
|
+
* Performs the reverse of `getAmountInStripeMinorUnits` - converting the Stripe minor units into the format
|
|
25
|
+
* used by Vendure.
|
|
26
|
+
*/
|
|
27
|
+
function getAmountFromStripeMinorUnits(order, stripeAmount) {
|
|
28
|
+
const amountInVendureMinorUnits = currencyHasFractionPart(order.currencyCode)
|
|
29
|
+
? stripeAmount
|
|
30
|
+
: stripeAmount * 100;
|
|
31
|
+
return amountInVendureMinorUnits;
|
|
32
|
+
}
|
|
33
|
+
exports.getAmountFromStripeMinorUnits = getAmountFromStripeMinorUnits;
|
|
34
|
+
function currencyHasFractionPart(currencyCode) {
|
|
35
|
+
const parts = new Intl.NumberFormat(undefined, {
|
|
36
|
+
style: 'currency',
|
|
37
|
+
currency: currencyCode,
|
|
38
|
+
currencyDisplay: 'symbol',
|
|
39
|
+
}).formatToParts(123.45);
|
|
40
|
+
const hasFractionPart = !!parts.find(p => p.type === 'fraction');
|
|
41
|
+
return hasFractionPart;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=stripe-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stripe-utils.js","sourceRoot":"","sources":["../../src/stripe/stripe-utils.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;GAUG;AACH,SAAgB,2BAA2B,CAAC,KAAY;IACpD,MAAM,wBAAwB,GAAG,uBAAuB,CAAC,KAAK,CAAC,YAAY,CAAC;QACxE,CAAC,CAAC,KAAK,CAAC,YAAY;QACpB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC;IAC3C,OAAO,wBAAwB,CAAC;AACpC,CAAC;AALD,kEAKC;AAED;;;;GAIG;AACH,SAAgB,6BAA6B,CAAC,KAAY,EAAE,YAAoB;IAC5E,MAAM,yBAAyB,GAAG,uBAAuB,CAAC,KAAK,CAAC,YAAY,CAAC;QACzE,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,YAAY,GAAG,GAAG,CAAC;IACzB,OAAO,yBAAyB,CAAC;AACrC,CAAC;AALD,sEAKC;AAED,SAAS,uBAAuB,CAAC,YAA0B;IACvD,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;QAC3C,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,YAAY;QACtB,eAAe,EAAE,QAAQ;KAC5B,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACzB,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;IACjE,OAAO,eAAe,CAAC;AAC3B,CAAC"}
|
|
@@ -79,6 +79,7 @@ let StripeController = class StripeController {
|
|
|
79
79
|
const addPaymentToOrderResult = await this.orderService.addPaymentToOrder(ctx, orderId, {
|
|
80
80
|
method: paymentMethod.code,
|
|
81
81
|
metadata: {
|
|
82
|
+
paymentIntentAmountReceived: paymentIntent.amount_received,
|
|
82
83
|
paymentIntentId: paymentIntent.id,
|
|
83
84
|
},
|
|
84
85
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stripe.controller.js","sourceRoot":"","sources":["../../src/stripe/stripe.controller.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"stripe.controller.js","sourceRoot":"","sources":["../../src/stripe/stripe.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.stripePaymentMethodHandler = void 0;
|
|
7
7
|
const core_1 = require("@vendure/core");
|
|
8
8
|
const stripe_1 = __importDefault(require("stripe"));
|
|
9
|
+
const stripe_utils_1 = require("./stripe-utils");
|
|
9
10
|
const stripe_service_1 = require("./stripe.service");
|
|
10
11
|
const { StripeError } = stripe_1.default.errors;
|
|
11
12
|
let stripeService;
|
|
@@ -19,14 +20,15 @@ exports.stripePaymentMethodHandler = new core_1.PaymentMethodHandler({
|
|
|
19
20
|
init(injector) {
|
|
20
21
|
stripeService = injector.get(stripe_service_1.StripeService);
|
|
21
22
|
},
|
|
22
|
-
async createPayment(ctx,
|
|
23
|
+
async createPayment(ctx, order, amount, ___, metadata) {
|
|
23
24
|
// Payment is already settled in Stripe by the time the webhook in stripe.controller.ts
|
|
24
25
|
// adds the payment to the order
|
|
25
26
|
if (ctx.apiType !== 'admin') {
|
|
26
27
|
throw Error(`CreatePayment is not allowed for apiType '${ctx.apiType}'`);
|
|
27
28
|
}
|
|
29
|
+
const amountInMinorUnits = (0, stripe_utils_1.getAmountFromStripeMinorUnits)(order, metadata.paymentIntentAmountReceived);
|
|
28
30
|
return {
|
|
29
|
-
amount,
|
|
31
|
+
amount: amountInMinorUnits,
|
|
30
32
|
state: 'Settled',
|
|
31
33
|
transactionId: metadata.paymentIntentId,
|
|
32
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stripe.handler.js","sourceRoot":"","sources":["../../src/stripe/stripe.handler.ts"],"names":[],"mappings":";;;;;;AAAA,wCAOuB;AACvB,oDAA4B;AAE5B,qDAAiD;AAEjD,MAAM,EAAE,WAAW,EAAE,GAAG,gBAAM,CAAC,MAAM,CAAC;AAEtC,IAAI,aAA4B,CAAC;AAEjC;;GAEG;AACU,QAAA,0BAA0B,GAAG,IAAI,2BAAoB,CAAC;IAC/D,IAAI,EAAE,QAAQ;IAEd,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,mBAAY,CAAC,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAE1E,IAAI,EAAE,EAAE;IAER,IAAI,CAAC,QAAkB;QACnB,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,8BAAa,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"stripe.handler.js","sourceRoot":"","sources":["../../src/stripe/stripe.handler.ts"],"names":[],"mappings":";;;;;;AAAA,wCAOuB;AACvB,oDAA4B;AAE5B,iDAA4F;AAC5F,qDAAiD;AAEjD,MAAM,EAAE,WAAW,EAAE,GAAG,gBAAM,CAAC,MAAM,CAAC;AAEtC,IAAI,aAA4B,CAAC;AAEjC;;GAEG;AACU,QAAA,0BAA0B,GAAG,IAAI,2BAAoB,CAAC;IAC/D,IAAI,EAAE,QAAQ;IAEd,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,mBAAY,CAAC,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAE1E,IAAI,EAAE,EAAE;IAER,IAAI,CAAC,QAAkB;QACnB,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,8BAAa,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ;QACjD,uFAAuF;QACvF,gCAAgC;QAChC,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,EAAE;YACzB,MAAM,KAAK,CAAC,6CAA6C,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;SAC5E;QACD,MAAM,kBAAkB,GAAG,IAAA,4CAA6B,EAAC,KAAK,EAAE,QAAQ,CAAC,2BAA2B,CAAC,CAAC;QACtG,OAAO;YACH,MAAM,EAAE,kBAAkB;YAC1B,KAAK,EAAE,SAAkB;YACzB,aAAa,EAAE,QAAQ,CAAC,eAAe;SAC1C,CAAC;IACN,CAAC;IAED,aAAa;QACT,OAAO;YACH,OAAO,EAAE,IAAI;SAChB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI;QACvD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAE/E,IAAI,MAAM,YAAY,WAAW,EAAE;YAC/B,OAAO;gBACH,KAAK,EAAE,QAAiB;gBACxB,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,QAAQ,EAAE;oBACN,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,OAAO,EAAE,MAAM,CAAC,OAAO;iBAC1B;aACJ,CAAC;SACL;QAED,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE;YAC/B,OAAO;gBACH,KAAK,EAAE,SAAkB;gBACzB,aAAa,EAAE,OAAO,CAAC,aAAa;aACvC,CAAC;SACL;QAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE;YAC7B,OAAO;gBACH,KAAK,EAAE,SAAkB;gBACzB,aAAa,EAAE,OAAO,CAAC,aAAa;aACvC,CAAC;SACL;QAED,OAAO;YACH,KAAK,EAAE,QAAiB;YACxB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,QAAQ,EAAE;gBACN,OAAO,EAAE,MAAM,CAAC,cAAc;aACjC;SACJ,CAAC;IACN,CAAC;CACJ,CAAC,CAAC"}
|
|
@@ -7,9 +7,10 @@ import { StripePluginOptions } from './types';
|
|
|
7
7
|
* ## Requirements
|
|
8
8
|
*
|
|
9
9
|
* 1. You will need to create a Stripe account and get your secret key in the dashboard.
|
|
10
|
-
* 2. Create a webhook endpoint in the Stripe dashboard which listens to the `payment_intent.succeeded`
|
|
11
|
-
* `payment_intent.payment_failed` events. The URL should be `https://my-shop.com/payments/stripe`, where
|
|
12
|
-
* `my-shop.com` is the host of your storefront application.
|
|
10
|
+
* 2. Create a webhook endpoint in the Stripe dashboard (Developers -> Webhooks, "Add an endpoint") which listens to the `payment_intent.succeeded`
|
|
11
|
+
* and `payment_intent.payment_failed` events. The URL should be `https://my-shop.com/payments/stripe`, where
|
|
12
|
+
* `my-shop.com` is the host of your storefront application. *Note:* for local development, you'll need to use
|
|
13
|
+
* the Stripe CLI to test your webhook locally. See the _local development_ section below.
|
|
13
14
|
* 3. Get the signing secret for the newly created webhook.
|
|
14
15
|
* 4. Install the Payments plugin and the Stripe Node library:
|
|
15
16
|
*
|
|
@@ -54,18 +55,95 @@ import { StripePluginOptions } from './types';
|
|
|
54
55
|
*
|
|
55
56
|
* The high-level workflow is:
|
|
56
57
|
* 1. Create a "payment intent" on the server by executing the `createStripePaymentIntent` mutation which is exposed by this plugin.
|
|
57
|
-
* 2. Use the returned client secret to instantiate the Stripe Payment Element
|
|
58
|
+
* 2. Use the returned client secret to instantiate the Stripe Payment Element:
|
|
59
|
+
* ```TypeScript
|
|
60
|
+
* import { Elements } from '\@stripe/react-stripe-js';
|
|
61
|
+
* import { loadStripe, Stripe } from '\@stripe/stripe-js';
|
|
62
|
+
* import { CheckoutForm } from './CheckoutForm';
|
|
63
|
+
*
|
|
64
|
+
* const stripePromise = getStripe('pk_test_....wr83u');
|
|
65
|
+
*
|
|
66
|
+
* type StripePaymentsProps = {
|
|
67
|
+
* clientSecret: string;
|
|
68
|
+
* orderCode: string;
|
|
69
|
+
* }
|
|
70
|
+
*
|
|
71
|
+
* export function StripePayments({ clientSecret, orderCode }: StripePaymentsProps) {
|
|
72
|
+
* const options = {
|
|
73
|
+
* // passing the client secret obtained from the server
|
|
74
|
+
* clientSecret,
|
|
75
|
+
* }
|
|
76
|
+
* return (
|
|
77
|
+
* <Elements stripe={stripePromise} options={options}>
|
|
78
|
+
* <CheckoutForm orderCode={orderCode} />
|
|
79
|
+
* </Elements>
|
|
80
|
+
* );
|
|
81
|
+
* }
|
|
82
|
+
* ```
|
|
83
|
+
* ```TypeScript
|
|
84
|
+
* // CheckoutForm.tsx
|
|
85
|
+
* import { useStripe, useElements, PaymentElement } from '@stripe/react-stripe-js';
|
|
86
|
+
* import { FormEvent } from 'react';
|
|
87
|
+
*
|
|
88
|
+
* export const CheckoutForm = ({ orderCode }: { orderCode: string }) => {
|
|
89
|
+
* const stripe = useStripe();
|
|
90
|
+
* const elements = useElements();
|
|
91
|
+
*
|
|
92
|
+
* const handleSubmit = async (event: FormEvent) => {
|
|
93
|
+
* // We don't want to let default form submission happen here,
|
|
94
|
+
* // which would refresh the page.
|
|
95
|
+
* event.preventDefault();
|
|
96
|
+
*
|
|
97
|
+
* if (!stripe || !elements) {
|
|
98
|
+
* // Stripe.js has not yet loaded.
|
|
99
|
+
* // Make sure to disable form submission until Stripe.js has loaded.
|
|
100
|
+
* return;
|
|
101
|
+
* }
|
|
102
|
+
*
|
|
103
|
+
* const result = await stripe.confirmPayment({
|
|
104
|
+
* //`Elements` instance that was used to create the Payment Element
|
|
105
|
+
* elements,
|
|
106
|
+
* confirmParams: {
|
|
107
|
+
* return_url: location.origin + `/checkout/confirmation/${orderCode}`,
|
|
108
|
+
* },
|
|
109
|
+
* });
|
|
110
|
+
*
|
|
111
|
+
* if (result.error) {
|
|
112
|
+
* // Show error to your customer (for example, payment details incomplete)
|
|
113
|
+
* console.log(result.error.message);
|
|
114
|
+
* } else {
|
|
115
|
+
* // Your customer will be redirected to your `return_url`. For some payment
|
|
116
|
+
* // methods like iDEAL, your customer will be redirected to an intermediate
|
|
117
|
+
* // site first to authorize the payment, then redirected to the `return_url`.
|
|
118
|
+
* }
|
|
119
|
+
* };
|
|
120
|
+
*
|
|
121
|
+
* return (
|
|
122
|
+
* <form onSubmit={handleSubmit}>
|
|
123
|
+
* <PaymentElement />
|
|
124
|
+
* <button disabled={!stripe}>Submit</button>
|
|
125
|
+
* </form>
|
|
126
|
+
* );
|
|
127
|
+
* };
|
|
128
|
+
* ```
|
|
58
129
|
* 3. Once the form is submitted and Stripe processes the payment, the webhook takes care of updating the order without additional action
|
|
59
|
-
* in the storefront.
|
|
130
|
+
* in the storefront. As in the code above, the customer will be redirected to `/checkout/confirmation/${orderCode}`.
|
|
60
131
|
*
|
|
61
|
-
*
|
|
132
|
+
* {{% alert "primary" %}}
|
|
133
|
+
* A full working storefront example of the Stripe integration can be found in the
|
|
134
|
+
* [Remix Starter repo](https://github.com/vendure-ecommerce/storefront-remix-starter/tree/master/app/components/checkout/stripe)
|
|
135
|
+
* {{% /alert %}}
|
|
62
136
|
*
|
|
63
|
-
*
|
|
137
|
+
* ## Local development
|
|
64
138
|
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
139
|
+
* 1. Download & install the Stripe CLI: https://stripe.com/docs/stripe-cli
|
|
140
|
+
* 2. From your Stripe dashboard, go to Developers -> Webhooks and click "Add an endpoint" and follow the instructions
|
|
141
|
+
* under "Test in a local environment".
|
|
142
|
+
* 3. The Stripe CLI command will look like
|
|
143
|
+
* ```shell
|
|
144
|
+
* stripe listen --forward-to localhost:3000/payments/stripe
|
|
145
|
+
* ```
|
|
146
|
+
* 4. The Stripe CLI will create a webhook signing secret you can then use in your config of the StripePlugin.
|
|
69
147
|
*
|
|
70
148
|
* @docsCategory payments-plugin
|
|
71
149
|
* @docsPage StripePlugin
|
|
@@ -23,9 +23,10 @@ const stripe_service_1 = require("./stripe.service");
|
|
|
23
23
|
* ## Requirements
|
|
24
24
|
*
|
|
25
25
|
* 1. You will need to create a Stripe account and get your secret key in the dashboard.
|
|
26
|
-
* 2. Create a webhook endpoint in the Stripe dashboard which listens to the `payment_intent.succeeded`
|
|
27
|
-
* `payment_intent.payment_failed` events. The URL should be `https://my-shop.com/payments/stripe`, where
|
|
28
|
-
* `my-shop.com` is the host of your storefront application.
|
|
26
|
+
* 2. Create a webhook endpoint in the Stripe dashboard (Developers -> Webhooks, "Add an endpoint") which listens to the `payment_intent.succeeded`
|
|
27
|
+
* and `payment_intent.payment_failed` events. The URL should be `https://my-shop.com/payments/stripe`, where
|
|
28
|
+
* `my-shop.com` is the host of your storefront application. *Note:* for local development, you'll need to use
|
|
29
|
+
* the Stripe CLI to test your webhook locally. See the _local development_ section below.
|
|
29
30
|
* 3. Get the signing secret for the newly created webhook.
|
|
30
31
|
* 4. Install the Payments plugin and the Stripe Node library:
|
|
31
32
|
*
|
|
@@ -70,18 +71,95 @@ const stripe_service_1 = require("./stripe.service");
|
|
|
70
71
|
*
|
|
71
72
|
* The high-level workflow is:
|
|
72
73
|
* 1. Create a "payment intent" on the server by executing the `createStripePaymentIntent` mutation which is exposed by this plugin.
|
|
73
|
-
* 2. Use the returned client secret to instantiate the Stripe Payment Element
|
|
74
|
+
* 2. Use the returned client secret to instantiate the Stripe Payment Element:
|
|
75
|
+
* ```TypeScript
|
|
76
|
+
* import { Elements } from '\@stripe/react-stripe-js';
|
|
77
|
+
* import { loadStripe, Stripe } from '\@stripe/stripe-js';
|
|
78
|
+
* import { CheckoutForm } from './CheckoutForm';
|
|
79
|
+
*
|
|
80
|
+
* const stripePromise = getStripe('pk_test_....wr83u');
|
|
81
|
+
*
|
|
82
|
+
* type StripePaymentsProps = {
|
|
83
|
+
* clientSecret: string;
|
|
84
|
+
* orderCode: string;
|
|
85
|
+
* }
|
|
86
|
+
*
|
|
87
|
+
* export function StripePayments({ clientSecret, orderCode }: StripePaymentsProps) {
|
|
88
|
+
* const options = {
|
|
89
|
+
* // passing the client secret obtained from the server
|
|
90
|
+
* clientSecret,
|
|
91
|
+
* }
|
|
92
|
+
* return (
|
|
93
|
+
* <Elements stripe={stripePromise} options={options}>
|
|
94
|
+
* <CheckoutForm orderCode={orderCode} />
|
|
95
|
+
* </Elements>
|
|
96
|
+
* );
|
|
97
|
+
* }
|
|
98
|
+
* ```
|
|
99
|
+
* ```TypeScript
|
|
100
|
+
* // CheckoutForm.tsx
|
|
101
|
+
* import { useStripe, useElements, PaymentElement } from '@stripe/react-stripe-js';
|
|
102
|
+
* import { FormEvent } from 'react';
|
|
103
|
+
*
|
|
104
|
+
* export const CheckoutForm = ({ orderCode }: { orderCode: string }) => {
|
|
105
|
+
* const stripe = useStripe();
|
|
106
|
+
* const elements = useElements();
|
|
107
|
+
*
|
|
108
|
+
* const handleSubmit = async (event: FormEvent) => {
|
|
109
|
+
* // We don't want to let default form submission happen here,
|
|
110
|
+
* // which would refresh the page.
|
|
111
|
+
* event.preventDefault();
|
|
112
|
+
*
|
|
113
|
+
* if (!stripe || !elements) {
|
|
114
|
+
* // Stripe.js has not yet loaded.
|
|
115
|
+
* // Make sure to disable form submission until Stripe.js has loaded.
|
|
116
|
+
* return;
|
|
117
|
+
* }
|
|
118
|
+
*
|
|
119
|
+
* const result = await stripe.confirmPayment({
|
|
120
|
+
* //`Elements` instance that was used to create the Payment Element
|
|
121
|
+
* elements,
|
|
122
|
+
* confirmParams: {
|
|
123
|
+
* return_url: location.origin + `/checkout/confirmation/${orderCode}`,
|
|
124
|
+
* },
|
|
125
|
+
* });
|
|
126
|
+
*
|
|
127
|
+
* if (result.error) {
|
|
128
|
+
* // Show error to your customer (for example, payment details incomplete)
|
|
129
|
+
* console.log(result.error.message);
|
|
130
|
+
* } else {
|
|
131
|
+
* // Your customer will be redirected to your `return_url`. For some payment
|
|
132
|
+
* // methods like iDEAL, your customer will be redirected to an intermediate
|
|
133
|
+
* // site first to authorize the payment, then redirected to the `return_url`.
|
|
134
|
+
* }
|
|
135
|
+
* };
|
|
136
|
+
*
|
|
137
|
+
* return (
|
|
138
|
+
* <form onSubmit={handleSubmit}>
|
|
139
|
+
* <PaymentElement />
|
|
140
|
+
* <button disabled={!stripe}>Submit</button>
|
|
141
|
+
* </form>
|
|
142
|
+
* );
|
|
143
|
+
* };
|
|
144
|
+
* ```
|
|
74
145
|
* 3. Once the form is submitted and Stripe processes the payment, the webhook takes care of updating the order without additional action
|
|
75
|
-
* in the storefront.
|
|
146
|
+
* in the storefront. As in the code above, the customer will be redirected to `/checkout/confirmation/${orderCode}`.
|
|
76
147
|
*
|
|
77
|
-
*
|
|
148
|
+
* {{% alert "primary" %}}
|
|
149
|
+
* A full working storefront example of the Stripe integration can be found in the
|
|
150
|
+
* [Remix Starter repo](https://github.com/vendure-ecommerce/storefront-remix-starter/tree/master/app/components/checkout/stripe)
|
|
151
|
+
* {{% /alert %}}
|
|
78
152
|
*
|
|
79
|
-
*
|
|
153
|
+
* ## Local development
|
|
80
154
|
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
155
|
+
* 1. Download & install the Stripe CLI: https://stripe.com/docs/stripe-cli
|
|
156
|
+
* 2. From your Stripe dashboard, go to Developers -> Webhooks and click "Add an endpoint" and follow the instructions
|
|
157
|
+
* under "Test in a local environment".
|
|
158
|
+
* 3. The Stripe CLI command will look like
|
|
159
|
+
* ```shell
|
|
160
|
+
* stripe listen --forward-to localhost:3000/payments/stripe
|
|
161
|
+
* ```
|
|
162
|
+
* 4. The Stripe CLI will create a webhook signing secret you can then use in your config of the StripePlugin.
|
|
85
163
|
*
|
|
86
164
|
* @docsCategory payments-plugin
|
|
87
165
|
* @docsPage StripePlugin
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stripe.plugin.js","sourceRoot":"","sources":["../../src/stripe/stripe.plugin.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,wCAAsF;AACtF,6CAAkC;AAElC,2CAAoD;AACpD,+DAA0D;AAC1D,2DAAuD;AACvD,qDAA8D;AAC9D,uDAAmD;AACnD,qDAAiD;AAGjD
|
|
1
|
+
{"version":3,"file":"stripe.plugin.js","sourceRoot":"","sources":["../../src/stripe/stripe.plugin.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,wCAAsF;AACtF,6CAAkC;AAElC,2CAAoD;AACpD,+DAA0D;AAC1D,2DAAuD;AACvD,qDAA8D;AAC9D,uDAAmD;AACnD,qDAAiD;AAGjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmJG;AA0CH,IAAa,YAAY,oBAAzB,MAAa,YAAY;IAGrB;;;OAGG;IACH,MAAM,CAAC,IAAI,CAAC,OAA4B;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,cAAY,CAAC;IACxB,CAAC;CACJ,CAAA;AAXY,YAAY;IAzCxB,IAAA,oBAAa,EAAC;QACX,OAAO,EAAE,CAAC,yBAAkB,CAAC;QAC7B,WAAW,EAAE,CAAC,oCAAgB,CAAC;QAC/B,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,iCAAqB;gBAC9B,UAAU,EAAE,GAAwB,EAAE,CAAC,cAAY,CAAC,OAAO;aAC9D;YACD,8BAAa;SAChB;QACD,aAAa,EAAE,MAAM,CAAC,EAAE;YACpB,MAAM,CAAC,cAAc,CAAC,qBAAqB,CAAC,IAAI,CAAC,2CAA0B,CAAC,CAAC;YAE7E,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;gBAC9B,KAAK,EAAE,kBAAkB;gBACzB,OAAO,EAAE,uCAAiB;gBAC1B,YAAY,EAAE,IAAI;aACrB,CAAC,CAAC;YAEH,IAAI,cAAY,CAAC,OAAO,CAAC,sBAAsB,EAAE;gBAC7C,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC9B,IAAI,EAAE,kBAAkB;oBACxB,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,mBAAY,CAAC,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;oBACvE,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,KAAK;oBACb,QAAQ,EAAE,IAAI;iBACjB,CAAC,CAAC;aACN;YAED,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,iBAAiB,EAAE;YACf,MAAM,EAAE,IAAA,iBAAG,EAAA;;;;SAIV;YACD,SAAS,EAAE,CAAC,gCAAc,CAAC;SAC9B;KACJ,CAAC;GACW,YAAY,CAWxB;AAXY,oCAAY"}
|
|
@@ -20,6 +20,7 @@ const common_1 = require("@nestjs/common");
|
|
|
20
20
|
const core_1 = require("@vendure/core");
|
|
21
21
|
const stripe_1 = __importDefault(require("stripe"));
|
|
22
22
|
const constants_1 = require("./constants");
|
|
23
|
+
const stripe_utils_1 = require("./stripe-utils");
|
|
23
24
|
let StripeService = class StripeService {
|
|
24
25
|
constructor(connection, options) {
|
|
25
26
|
this.connection = connection;
|
|
@@ -33,17 +34,7 @@ let StripeService = class StripeService {
|
|
|
33
34
|
if (this.options.storeCustomersInStripe && ctx.activeUserId) {
|
|
34
35
|
customerId = await this.getStripeCustomerId(ctx, order);
|
|
35
36
|
}
|
|
36
|
-
|
|
37
|
-
// > All API requests expect amounts to be provided in a currency’s smallest unit.
|
|
38
|
-
// > For example, to charge 10 USD, provide an amount value of 1000 (that is, 1000 cents).
|
|
39
|
-
// > For zero-decimal currencies, still provide amounts as an integer but without multiplying by 100.
|
|
40
|
-
// > For example, to charge ¥500, provide an amount value of 500.
|
|
41
|
-
//
|
|
42
|
-
// Therefore, for a fractionless currency like JPY, we need to divide the amount by 100 (since Vendure always
|
|
43
|
-
// stores money amounts multiplied by 100). See https://github.com/vendure-ecommerce/vendure/issues/1630
|
|
44
|
-
const amountInMinorUnits = this.currencyHasFractionPart(order.currencyCode)
|
|
45
|
-
? order.totalWithTax
|
|
46
|
-
: Math.round(order.totalWithTax / 100);
|
|
37
|
+
const amountInMinorUnits = (0, stripe_utils_1.getAmountInStripeMinorUnits)(order);
|
|
47
38
|
const { client_secret } = await this.stripe.paymentIntents.create({
|
|
48
39
|
amount: amountInMinorUnits,
|
|
49
40
|
currency: order.currencyCode.toLowerCase(),
|
|
@@ -56,7 +47,7 @@ let StripeService = class StripeService {
|
|
|
56
47
|
orderId: order.id,
|
|
57
48
|
orderCode: order.code,
|
|
58
49
|
},
|
|
59
|
-
});
|
|
50
|
+
}, { idempotencyKey: `${order.code}_${amountInMinorUnits}` });
|
|
60
51
|
if (!client_secret) {
|
|
61
52
|
// This should never happen
|
|
62
53
|
core_1.Logger.warn(`Payment intent creation for order ${order.code} did not return client secret`, constants_1.loggerCtx);
|
|
@@ -115,15 +106,6 @@ let StripeService = class StripeService {
|
|
|
115
106
|
await this.connection.getRepository(ctx, core_1.Customer).save(customer, { reload: false });
|
|
116
107
|
return stripeCustomerId;
|
|
117
108
|
}
|
|
118
|
-
currencyHasFractionPart(currencyCode) {
|
|
119
|
-
const parts = new Intl.NumberFormat(undefined, {
|
|
120
|
-
style: 'currency',
|
|
121
|
-
currency: currencyCode,
|
|
122
|
-
currencyDisplay: 'symbol',
|
|
123
|
-
}).formatToParts(123.45);
|
|
124
|
-
const hasFractionPart = !!parts.find(p => p.type === 'fraction');
|
|
125
|
-
return hasFractionPart;
|
|
126
|
-
}
|
|
127
109
|
};
|
|
128
110
|
StripeService = __decorate([
|
|
129
111
|
(0, common_1.Injectable)(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stripe.service.js","sourceRoot":"","sources":["../../src/stripe/stripe.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,
|
|
1
|
+
{"version":3,"file":"stripe.service.js","sourceRoot":"","sources":["../../src/stripe/stripe.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vendure/payments-plugin",
|
|
3
|
-
"version": "2.0.0-next.
|
|
3
|
+
"version": "2.0.0-next.13",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "package/index.js",
|
|
6
6
|
"types": "package/index.d.ts",
|
|
@@ -28,14 +28,14 @@
|
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@mollie/api-client": "^3.6.0",
|
|
30
30
|
"@types/braintree": "^2.22.15",
|
|
31
|
-
"@vendure/common": "^2.0.0-next.
|
|
32
|
-
"@vendure/core": "^2.0.0-next.
|
|
33
|
-
"@vendure/testing": "^2.0.0-next.
|
|
31
|
+
"@vendure/common": "^2.0.0-next.13",
|
|
32
|
+
"@vendure/core": "^2.0.0-next.13",
|
|
33
|
+
"@vendure/testing": "^2.0.0-next.13",
|
|
34
34
|
"braintree": "^3.0.0",
|
|
35
35
|
"nock": "^13.1.4",
|
|
36
36
|
"rimraf": "^3.0.2",
|
|
37
37
|
"stripe": "^8.197.0",
|
|
38
38
|
"typescript": "4.5.5"
|
|
39
39
|
},
|
|
40
|
-
"gitHead": "
|
|
40
|
+
"gitHead": "c4877c253da7ad10dd26450e9a1b1e06901d5872"
|
|
41
41
|
}
|