@unchainedshop/plugins 1.2.36 → 2.0.0-beta1

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.
Files changed (94) hide show
  1. package/lib/files/gridfs/gridfs-webhook.js +1 -1
  2. package/lib/files/gridfs/gridfs-webhook.js.map +1 -1
  3. package/lib/files/minio/minio-webhook.js +1 -1
  4. package/lib/files/minio/minio-webhook.js.map +1 -1
  5. package/lib/payment/apple-iap/adapter.js +1 -1
  6. package/lib/payment/apple-iap/adapter.js.map +1 -1
  7. package/lib/payment/bity/adapter.js +2 -2
  8. package/lib/payment/bity/adapter.js.map +1 -1
  9. package/lib/payment/cryptopay/db/CryptopayTransactions.d.ts +13 -0
  10. package/lib/payment/cryptopay/db/CryptopayTransactions.js +4 -0
  11. package/lib/payment/cryptopay/db/CryptopayTransactions.js.map +1 -0
  12. package/lib/payment/cryptopay/index.d.ts +5 -0
  13. package/lib/payment/cryptopay/index.js +6 -0
  14. package/lib/payment/cryptopay/index.js.map +1 -0
  15. package/lib/payment/{cryptopay.d.ts → cryptopay/middleware.d.ts} +0 -0
  16. package/lib/payment/cryptopay/middleware.js +79 -0
  17. package/lib/payment/cryptopay/middleware.js.map +1 -0
  18. package/lib/payment/cryptopay/module/configureCryptopayModule.d.ts +25 -0
  19. package/lib/payment/cryptopay/module/configureCryptopayModule.js +75 -0
  20. package/lib/payment/cryptopay/module/configureCryptopayModule.js.map +1 -0
  21. package/lib/payment/cryptopay/plugin.d.ts +3 -0
  22. package/lib/payment/cryptopay/plugin.js +201 -0
  23. package/lib/payment/cryptopay/plugin.js.map +1 -0
  24. package/lib/payment/datatrans-v2/middleware.js +1 -1
  25. package/lib/payment/datatrans-v2/middleware.js.map +1 -1
  26. package/lib/payment/postfinance-checkout/middleware.js +1 -1
  27. package/lib/payment/postfinance-checkout/middleware.js.map +1 -1
  28. package/lib/pricing/product-catalog-price.js.map +1 -1
  29. package/lib/pricing/product-price-rateconversion.js +23 -17
  30. package/lib/pricing/product-price-rateconversion.js.map +1 -1
  31. package/lib/pricing/product-price-round.js +2 -1
  32. package/lib/pricing/product-price-round.js.map +1 -1
  33. package/lib/warehousing/google-sheets.js +3 -2
  34. package/lib/warehousing/google-sheets.js.map +1 -1
  35. package/lib/{pricing/product-price-ECB-interbank-exchange.d.ts → warehousing/infinite-minter.d.ts} +0 -0
  36. package/lib/warehousing/infinite-minter.js +50 -0
  37. package/lib/warehousing/infinite-minter.js.map +1 -0
  38. package/lib/warehousing/store.js +2 -1
  39. package/lib/warehousing/store.js.map +1 -1
  40. package/lib/worker/BulkImportWorker.js +2 -3
  41. package/lib/worker/BulkImportWorker.js.map +1 -1
  42. package/lib/worker/ZombieKillerWorker.js +2 -3
  43. package/lib/worker/ZombieKillerWorker.js.map +1 -1
  44. package/lib/worker/email.js.map +1 -1
  45. package/lib/worker/export-token.d.ts +4 -0
  46. package/lib/worker/export-token.js +25 -0
  47. package/lib/worker/export-token.js.map +1 -0
  48. package/lib/worker/external.js +1 -0
  49. package/lib/worker/external.js.map +1 -1
  50. package/lib/{pricing/product-price-coinbase-exchange.d.ts → worker/update-coinbase-rates.d.ts} +0 -0
  51. package/lib/worker/update-coinbase-rates.js +69 -0
  52. package/lib/worker/update-coinbase-rates.js.map +1 -0
  53. package/lib/worker/update-ecb-rates.d.ts +1 -0
  54. package/lib/worker/update-ecb-rates.js +79 -0
  55. package/lib/worker/update-ecb-rates.js.map +1 -0
  56. package/package.json +23 -20
  57. package/src/files/gridfs/gridfs-webhook.ts +1 -1
  58. package/src/files/minio/minio-webhook.js +1 -1
  59. package/src/payment/apple-iap/adapter.ts +1 -1
  60. package/src/payment/bity/adapter.ts +2 -2
  61. package/src/payment/cryptopay/db/CryptopayTransactions.ts +17 -0
  62. package/src/payment/cryptopay/index.ts +8 -0
  63. package/src/payment/cryptopay/middleware.ts +95 -0
  64. package/src/payment/cryptopay/module/configureCryptopayModule.ts +133 -0
  65. package/src/payment/cryptopay/plugin.ts +289 -0
  66. package/src/payment/cryptopay/readme.md +1 -0
  67. package/src/payment/datatrans-v2/middleware.ts +1 -1
  68. package/src/payment/postfinance-checkout/middleware.ts +1 -1
  69. package/src/pricing/product-catalog-price.ts +1 -0
  70. package/src/pricing/product-price-rateconversion.ts +25 -28
  71. package/src/pricing/product-price-round.ts +3 -1
  72. package/src/warehousing/google-sheets.ts +4 -2
  73. package/src/warehousing/infinite-minter.ts +66 -0
  74. package/src/warehousing/store.ts +3 -1
  75. package/src/worker/BulkImportWorker.ts +2 -3
  76. package/src/worker/ZombieKillerWorker.ts +2 -3
  77. package/src/worker/email.ts +0 -1
  78. package/src/worker/export-token.ts +31 -0
  79. package/src/worker/external.ts +1 -0
  80. package/src/worker/update-coinbase-rates.ts +91 -0
  81. package/src/worker/update-ecb-rates.ts +97 -0
  82. package/lib/payment/cryptopay.js +0 -161
  83. package/lib/payment/cryptopay.js.map +0 -1
  84. package/lib/pricing/product-price-ECB-interbank-exchange.js +0 -90
  85. package/lib/pricing/product-price-ECB-interbank-exchange.js.map +0 -1
  86. package/lib/pricing/product-price-coinbase-exchange.js +0 -60
  87. package/lib/pricing/product-price-coinbase-exchange.js.map +0 -1
  88. package/lib/pricing/product-price-cryptopay.d.ts +0 -2
  89. package/lib/pricing/product-price-cryptopay.js +0 -23
  90. package/lib/pricing/product-price-cryptopay.js.map +0 -1
  91. package/src/payment/cryptopay.ts +0 -197
  92. package/src/pricing/product-price-ECB-interbank-exchange.ts +0 -108
  93. package/src/pricing/product-price-coinbase-exchange.ts +0 -82
  94. package/src/pricing/product-price-cryptopay.ts +0 -27
@@ -52,7 +52,7 @@ export default (app) => useMiddlewareWithCurrentContext(app, '/gridfs', async (r
52
52
  catch (e) {
53
53
  log(e.message, { level: LogLevel.Error });
54
54
  res.writeHead(503);
55
- res.end(JSON.stringify(e));
55
+ res.end(JSON.stringify({ name: e.name, code: e.code, message: e.message }));
56
56
  }
57
57
  });
58
58
  //# sourceMappingURL=gridfs-webhook.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gridfs-webhook.js","sourceRoot":"","sources":["../../../src/files/gridfs/gridfs-webhook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gridfs-webhook.js","sourceRoot":"","sources":["../../../src/files/gridfs/gridfs-webhook.ts"],"names":[],"mappings":"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"}
@@ -34,7 +34,7 @@ export default (app) => {
34
34
  catch (e) {
35
35
  log(e.message, { level: LogLevel.Error });
36
36
  res.writeHead(503);
37
- res.end(JSON.stringify(e));
37
+ res.end(JSON.stringify({ name: e.name, code: e.code, message: e.message }));
38
38
  }
39
39
  });
40
40
  };
@@ -1 +1 @@
1
- {"version":3,"file":"minio-webhook.js","sourceRoot":"","sources":["../../../src/files/minio/minio-webhook.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,MAAM,EAAE,wBAAwB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AAEjD,MAAM,YAAY,GAAG,CAAC,EAAE,aAAa,GAAG,EAAE,EAAE,EAAE,EAAE;IAC9C,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,KAAK,wBAAwB,CAAC;AACjE,CAAC,CAAC;AAEF,eAAe,CAAC,GAAG,EAAE,EAAE;IACrB,+BAA+B,CAC7B,GAAG,EACH,SAAS,EACT,UAAU,CAAC,IAAI,CAAC;QACd,MAAM,EAAE,KAAK;KACd,CAAC,CACH,CAAC;IAEF,+BAA+B,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACjE,IAAI;YACF,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE;gBACrC,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;gBACxB,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;gBAC7C,IAAI,SAAS,KAAK,sBAAsB,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE;oBACjE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC;oBACzB,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;oBACtB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;oBAC3C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACvC,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,gBAAgB,CAAC;oBAC1C,MAAM,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;oBAC5E,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;oBACV,OAAO;iBACR;aACF;YACD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;SACR;QAAC,OAAO,CAAC,EAAE;YACV,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;YAC1C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;SAC5B;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;;EAKE"}
1
+ {"version":3,"file":"minio-webhook.js","sourceRoot":"","sources":["../../../src/files/minio/minio-webhook.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,MAAM,EAAE,wBAAwB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AAEjD,MAAM,YAAY,GAAG,CAAC,EAAE,aAAa,GAAG,EAAE,EAAE,EAAE,EAAE;IAC9C,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,KAAK,wBAAwB,CAAC;AACjE,CAAC,CAAC;AAEF,eAAe,CAAC,GAAG,EAAE,EAAE;IACrB,+BAA+B,CAC7B,GAAG,EACH,SAAS,EACT,UAAU,CAAC,IAAI,CAAC;QACd,MAAM,EAAE,KAAK;KACd,CAAC,CACH,CAAC;IAEF,+BAA+B,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACjE,IAAI;YACF,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE;gBACrC,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;gBACxB,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;gBAC7C,IAAI,SAAS,KAAK,sBAAsB,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE;oBACjE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC;oBACzB,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;oBACtB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;oBAC3C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACvC,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,gBAAgB,CAAC;oBAC1C,MAAM,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;oBAC5E,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;oBACV,OAAO;iBACR;aACF;YACD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;SACR;QAAC,OAAO,CAAC,EAAE;YACV,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;YAC1C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;SAC7E;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;;EAKE"}
@@ -154,7 +154,7 @@ export default (app) => {
154
154
  catch (e) {
155
155
  logger.warn(`Apple IAP Webhook: ${e.message}`, e);
156
156
  res.writeHead(503);
157
- res.end(JSON.stringify(e));
157
+ res.end(JSON.stringify({ name: e.name, code: e.code, message: e.message }));
158
158
  return;
159
159
  }
160
160
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/payment/apple-iap/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/payment/apple-iap/adapter.ts"],"names":[],"mappings":"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"}
@@ -158,7 +158,7 @@ export default (app) => {
158
158
  catch (e) {
159
159
  logger.warn(`Bity Webhook: Failed with ${e.message}`);
160
160
  res.writeHead(503);
161
- res.end(JSON.stringify(e));
161
+ res.end(JSON.stringify({ name: e.name, code: e.code, message: e.message }));
162
162
  return;
163
163
  }
164
164
  }
@@ -183,7 +183,7 @@ export default (app) => {
183
183
  catch (e) {
184
184
  logger.warn(`Bity Webhook: Failed with ${e.message}`);
185
185
  res.writeHead(503);
186
- res.end(JSON.stringify(e));
186
+ res.end(JSON.stringify({ name: e.name, code: e.code, message: e.message }));
187
187
  return;
188
188
  }
189
189
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/payment/bity/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/payment/bity/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { Db, TimestampFields, _ID } from '@unchainedshop/types/common';
2
+ import { Decimal128 } from 'mongodb';
3
+ export declare type CryptopayTransaction = {
4
+ _id?: _ID;
5
+ blockHeight: number;
6
+ mostRecentBlockHeight: number;
7
+ amount: Decimal128;
8
+ currency: string;
9
+ decimals: number;
10
+ contract: string;
11
+ orderPaymentId?: string;
12
+ } & TimestampFields;
13
+ export declare const CryptopayTransactionsCollection: (db: Db) => import("mongodb").Collection<CryptopayTransaction>;
@@ -0,0 +1,4 @@
1
+ export const CryptopayTransactionsCollection = (db) => {
2
+ return db.collection('cryptopay_transactions');
3
+ };
4
+ //# sourceMappingURL=CryptopayTransactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CryptopayTransactions.js","sourceRoot":"","sources":["../../../../src/payment/cryptopay/db/CryptopayTransactions.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,EAAM,EAAE,EAAE;IACxD,OAAO,EAAE,CAAC,UAAU,CAAuB,wBAAwB,CAAC,CAAC;AACvE,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import setupCryptopayWebhooks from './middleware';
2
+ import CryptopayPlugin from './plugin';
3
+ export { configureCryptopayModule } from './module/configureCryptopayModule';
4
+ export { setupCryptopayWebhooks };
5
+ export default CryptopayPlugin;
@@ -0,0 +1,6 @@
1
+ import setupCryptopayWebhooks from './middleware';
2
+ import CryptopayPlugin from './plugin';
3
+ export { configureCryptopayModule } from './module/configureCryptopayModule';
4
+ export { setupCryptopayWebhooks };
5
+ export default CryptopayPlugin;
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/payment/cryptopay/index.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,MAAM,cAAc,CAAC;AAClD,OAAO,eAAe,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAE7E,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC,eAAe,eAAe,CAAC"}
@@ -0,0 +1,79 @@
1
+ import { useMiddlewareWithCurrentContext } from '@unchainedshop/api';
2
+ import bodyParser from 'body-parser';
3
+ import { createLogger } from '@unchainedshop/logger';
4
+ import { OrderStatus } from '@unchainedshop/core-orders';
5
+ const { CRYPTOPAY_WEBHOOK_PATH = '/payment/cryptopay', CRYPTOPAY_SECRET, CRYPTOPAY_MAX_RATE_AGE, } = process.env;
6
+ const logger = createLogger('unchained:core-payment:cryptopay');
7
+ export default (app) => {
8
+ useMiddlewareWithCurrentContext(app, CRYPTOPAY_WEBHOOK_PATH, bodyParser.json());
9
+ useMiddlewareWithCurrentContext(app, CRYPTOPAY_WEBHOOK_PATH, async (req, res) => {
10
+ const resolvedContext = req.unchainedContext;
11
+ const modules = resolvedContext.modules;
12
+ if (req.method === 'POST') {
13
+ try {
14
+ const { secret, price, wallet, ping } = req.body;
15
+ if (secret !== CRYPTOPAY_SECRET) {
16
+ logger.warn(`Cryptopay Plugin: Invalid Cryptopay Secret provided`);
17
+ throw new Error('Secret invalid');
18
+ }
19
+ if (wallet) {
20
+ const { address, blockHeight, amount, contract, decimals, currency } = wallet;
21
+ const { orderPaymentId } = await modules.cryptopay.updateWalletAddress({
22
+ addressId: address,
23
+ blockHeight,
24
+ amount,
25
+ contract,
26
+ decimals,
27
+ currency,
28
+ });
29
+ const orderPayment = orderPaymentId &&
30
+ (await modules.orders.payments.findOrderPayment({
31
+ orderPaymentId,
32
+ }));
33
+ if (orderPayment) {
34
+ // Try to process order to next status
35
+ const order = await modules.orders.findOrder({ orderId: orderPayment.orderId });
36
+ if (order.status === null) {
37
+ await modules.orders.checkout(order._id, {}, resolvedContext);
38
+ }
39
+ else if (order.status === OrderStatus.PENDING) {
40
+ await modules.orders.processOrder(order, {}, resolvedContext);
41
+ }
42
+ else {
43
+ throw new Error('Already processed');
44
+ }
45
+ }
46
+ }
47
+ if (price) {
48
+ const { baseCurrency, token, rate, timestamp } = price;
49
+ const timestampDate = new Date(timestamp);
50
+ const expiresAt = new Date(new Date().getTime() + parseInt(CRYPTOPAY_MAX_RATE_AGE, 10) * 1000);
51
+ const rateData = {
52
+ baseCurrency,
53
+ quoteCurrency: token,
54
+ rate,
55
+ expiresAt,
56
+ timestamp: timestampDate,
57
+ };
58
+ console.log('update rate', price, rateData);
59
+ await resolvedContext.modules.products.prices.rates.updateRates([rateData]);
60
+ }
61
+ if (ping) {
62
+ const { blockHeight, currency } = ping;
63
+ await modules.cryptopay.updateMostRecentBlock(currency, blockHeight);
64
+ }
65
+ res.writeHead(200);
66
+ res.end(JSON.stringify({ success: true }));
67
+ return;
68
+ }
69
+ catch (e) {
70
+ res.writeHead(500);
71
+ res.end(JSON.stringify({ success: false, error: e.message }));
72
+ return;
73
+ }
74
+ }
75
+ res.writeHead(404);
76
+ res.end(JSON.stringify({ success: false }));
77
+ });
78
+ };
79
+ //# sourceMappingURL=middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/payment/cryptopay/middleware.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { Db } from '@unchainedshop/types/common';
2
+ import { CryptopayTransaction } from '../db/CryptopayTransactions';
3
+ export interface CryptopayModule {
4
+ getWalletAddress: (addressId: string) => Promise<CryptopayTransaction>;
5
+ getWalletAddressesByOrderPaymentId: (orderPaymentId: string) => Promise<CryptopayTransaction[]>;
6
+ updateMostRecentBlock: (currency: string, blockHeight: number) => Promise<void>;
7
+ updateWalletAddress: (walletData: {
8
+ addressId: string;
9
+ blockHeight: number;
10
+ amount: string;
11
+ contract: string;
12
+ currency: string;
13
+ decimals: number;
14
+ }) => Promise<CryptopayTransaction>;
15
+ mapOrderPaymentToWalletAddress: (walletData: {
16
+ addressId: string;
17
+ contract: string;
18
+ currency: string;
19
+ orderPaymentId: string;
20
+ }) => Promise<CryptopayTransaction>;
21
+ getNextDerivationNumber: (currency: string) => Promise<number>;
22
+ }
23
+ export declare const configureCryptopayModule: ({ db }: {
24
+ db: Db;
25
+ }) => CryptopayModule;
@@ -0,0 +1,75 @@
1
+ import { Decimal128 } from 'mongodb';
2
+ import { CryptopayTransactionsCollection } from '../db/CryptopayTransactions';
3
+ export const configureCryptopayModule = ({ db }) => {
4
+ const CryptoTransactions = CryptopayTransactionsCollection(db);
5
+ const getWalletAddress = async (addressId) => {
6
+ return CryptoTransactions.findOne({ _id: addressId });
7
+ };
8
+ const updateMostRecentBlock = async (currency, blockHeight) => {
9
+ await CryptoTransactions.updateMany({
10
+ currency,
11
+ }, {
12
+ $set: {
13
+ mostRecentBlockHeight: blockHeight,
14
+ },
15
+ });
16
+ };
17
+ const mapOrderPaymentToWalletAddress = async ({ addressId, contract, currency, orderPaymentId, }) => {
18
+ await CryptoTransactions.updateOne({
19
+ _id: addressId,
20
+ }, {
21
+ $setOnInsert: {
22
+ _id: addressId,
23
+ contract,
24
+ currency,
25
+ decimals: null,
26
+ mostRecentBlockHeight: 0,
27
+ blockHeight: 0,
28
+ amount: Decimal128.fromString('0'),
29
+ created: new Date(),
30
+ },
31
+ $set: {
32
+ orderPaymentId,
33
+ updated: new Date(),
34
+ },
35
+ }, { upsert: true });
36
+ return CryptoTransactions.findOne({ _id: addressId });
37
+ };
38
+ const getNextDerivationNumber = async (currency) => {
39
+ return (await CryptoTransactions.countDocuments({ currency })) + 1;
40
+ };
41
+ const getWalletAddressesByOrderPaymentId = async (orderPaymentId) => {
42
+ return CryptoTransactions.find({
43
+ orderPaymentId,
44
+ }).toArray();
45
+ };
46
+ const updateWalletAddress = async ({ addressId, blockHeight, amount, contract, currency, decimals, }) => {
47
+ await CryptoTransactions.updateOne({
48
+ _id: addressId,
49
+ }, {
50
+ $setOnInsert: {
51
+ _id: addressId,
52
+ currency,
53
+ contract,
54
+ created: new Date(),
55
+ },
56
+ $set: {
57
+ decimals,
58
+ blockHeight,
59
+ mostRecentBlockHeight: blockHeight,
60
+ amount: Decimal128.fromString(amount),
61
+ updated: new Date(),
62
+ },
63
+ }, { upsert: true });
64
+ return CryptoTransactions.findOne({ _id: addressId });
65
+ };
66
+ return {
67
+ getWalletAddress,
68
+ updateMostRecentBlock,
69
+ updateWalletAddress,
70
+ mapOrderPaymentToWalletAddress,
71
+ getNextDerivationNumber,
72
+ getWalletAddressesByOrderPaymentId,
73
+ };
74
+ };
75
+ //# sourceMappingURL=configureCryptopayModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configureCryptopayModule.js","sourceRoot":"","sources":["../../../../src/payment/cryptopay/module/configureCryptopayModule.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { IPaymentAdapter } from '@unchainedshop/types/payments';
2
+ declare const Cryptopay: IPaymentAdapter;
3
+ export default Cryptopay;
@@ -0,0 +1,201 @@
1
+ import { PaymentAdapter, PaymentDirector, PaymentError } from '@unchainedshop/core-payment';
2
+ import { ethers } from 'ethers';
3
+ import BIP32Factory from 'bip32';
4
+ import * as ecc from 'tiny-secp256k1';
5
+ import * as bitcoin from 'bitcoinjs-lib';
6
+ import { createLogger } from '@unchainedshop/logger';
7
+ import { OrderPricingSheet } from '@unchainedshop/core-orders';
8
+ const logger = createLogger('unchained:core-payment:cryptopay');
9
+ const { CRYPTOPAY_SECRET, CRYPTOPAY_BTC_XPUB, CRYPTOPAY_ETH_XPUB, CRYPTOPAY_BTC_TESTNET = false, CRYPTOPAY_DERIVATION_START = '0', } = process.env;
10
+ var CryptopayCurrencies;
11
+ (function (CryptopayCurrencies) {
12
+ CryptopayCurrencies["BTC"] = "BTC";
13
+ CryptopayCurrencies["ETH"] = "ETH";
14
+ })(CryptopayCurrencies || (CryptopayCurrencies = {}));
15
+ const getDerivationPath = (currency, index) => {
16
+ const address = `${(parseInt(CRYPTOPAY_DERIVATION_START, 10) || 0) + index}`;
17
+ if (currency === CryptopayCurrencies.ETH) {
18
+ const pathComponents = ethers.utils.defaultPath.split('/');
19
+ pathComponents[pathComponents.length - 1] = address;
20
+ return pathComponents.join('/');
21
+ }
22
+ if (currency === CryptopayCurrencies.BTC) {
23
+ return `m/44'/0'/0'/0/${address}`;
24
+ }
25
+ return `0/${address}`;
26
+ };
27
+ const Cryptopay = {
28
+ ...PaymentAdapter,
29
+ key: 'shop.unchained.payment.cryptopay',
30
+ label: 'Cryptopay',
31
+ version: '1.1',
32
+ typeSupported(type) {
33
+ return type === 'GENERIC';
34
+ },
35
+ actions: (params) => {
36
+ const modules = params.context.modules;
37
+ const setConversionRates = async (currencyCode, existingAddresses) => {
38
+ const originCurrencyObj = await modules.currencies.findCurrency({ isoCode: currencyCode });
39
+ const updatedAddresses = await Promise.all(existingAddresses.map(async (addressData) => {
40
+ const targetCurrencyObj = await modules.currencies.findCurrency({
41
+ isoCode: addressData.currency,
42
+ });
43
+ if (!targetCurrencyObj.isActive)
44
+ return null;
45
+ const rateData = await modules.products.prices.rates.getRate(originCurrencyObj, targetCurrencyObj);
46
+ return {
47
+ ...addressData,
48
+ currencyConversionRate: rateData?.rate,
49
+ currencyConversionExpiryDate: rateData?.expiresAt,
50
+ };
51
+ }));
52
+ return updatedAddresses.filter(Boolean);
53
+ };
54
+ const updateTransactionsWithOrderPaymentId = async (orderPaymentId, cryptoAddresses) => {
55
+ return Promise.all(cryptoAddresses.map(async ({ address, currency }) => modules.cryptopay.mapOrderPaymentToWalletAddress({
56
+ addressId: address,
57
+ contract: null,
58
+ currency,
59
+ orderPaymentId,
60
+ })));
61
+ };
62
+ const adapterActions = {
63
+ ...PaymentAdapter.actions(params),
64
+ // eslint-disable-next-line
65
+ configurationError() {
66
+ // eslint-disable-line
67
+ if (!CRYPTOPAY_SECRET) {
68
+ return PaymentError.INCOMPLETE_CONFIGURATION;
69
+ }
70
+ if (!CRYPTOPAY_BTC_XPUB && !CRYPTOPAY_ETH_XPUB) {
71
+ return PaymentError.INCOMPLETE_CONFIGURATION;
72
+ }
73
+ return null;
74
+ },
75
+ isActive() {
76
+ // Only support orders that have prices in BTC or ETH for the moment
77
+ if (adapterActions.configurationError() !== null)
78
+ return false;
79
+ if (!params.paymentContext.order)
80
+ return true;
81
+ // if (
82
+ // !Object.values(CryptopayCurrencies).includes(
83
+ // params.paymentContext.order.currency as CryptopayCurrencies,
84
+ // )
85
+ // )
86
+ // return false;
87
+ return true;
88
+ },
89
+ isPayLaterAllowed() {
90
+ return false;
91
+ },
92
+ sign: async () => {
93
+ const { orderPayment, order } = params.paymentContext;
94
+ const existingAddresses = await modules.cryptopay.getWalletAddressesByOrderPaymentId(orderPayment._id);
95
+ if (existingAddresses.length) {
96
+ // Do not derive addresses a second time for order payment, return existing addresses
97
+ const existingAddressesWithNewExpiration = await setConversionRates(order.currency, existingAddresses.map(({ _id, currency }) => ({
98
+ address: _id,
99
+ currency,
100
+ })));
101
+ return JSON.stringify(existingAddressesWithNewExpiration);
102
+ }
103
+ const cryptoAddresses = [];
104
+ if (CRYPTOPAY_BTC_XPUB) {
105
+ const network = CRYPTOPAY_BTC_TESTNET ? bitcoin.networks.testnet : bitcoin.networks.bitcoin;
106
+ const bip32 = BIP32Factory(ecc);
107
+ const hardenedMaster = bip32.fromBase58(CRYPTOPAY_BTC_XPUB, network);
108
+ const btcDerivationNumber = await modules.cryptopay.getNextDerivationNumber(CryptopayCurrencies.BTC);
109
+ const derivationPath = getDerivationPath(CryptopayCurrencies.BTC, btcDerivationNumber);
110
+ const child = hardenedMaster.derivePath(derivationPath);
111
+ cryptoAddresses.push({
112
+ currency: CryptopayCurrencies.BTC,
113
+ address: bitcoin.payments.p2pkh({
114
+ pubkey: child.publicKey,
115
+ network,
116
+ }).address,
117
+ });
118
+ }
119
+ if (CRYPTOPAY_ETH_XPUB) {
120
+ // we neuter for security reasons, it's still quite complicated for most ethereum clients to show an appropriate
121
+ // xpub, that's why
122
+ const hardenedMaster = ethers.utils.HDNode.fromExtendedKey(CRYPTOPAY_ETH_XPUB).neuter();
123
+ const ethDerivationNumber = await modules.cryptopay.getNextDerivationNumber(CryptopayCurrencies.ETH);
124
+ const derivationPath = getDerivationPath(CryptopayCurrencies.ETH, ethDerivationNumber);
125
+ const cleanedForHD = derivationPath.split('/').slice(-2).join('/');
126
+ cryptoAddresses.push({
127
+ currency: CryptopayCurrencies.ETH,
128
+ address: hardenedMaster.derivePath(cleanedForHD).address,
129
+ });
130
+ }
131
+ const cryptoAddressesWithExpiration = await setConversionRates(order.currency, cryptoAddresses);
132
+ await updateTransactionsWithOrderPaymentId(orderPayment._id, cryptoAddresses);
133
+ return JSON.stringify(cryptoAddressesWithExpiration);
134
+ },
135
+ charge: async () => {
136
+ const { order, orderPayment } = params.paymentContext;
137
+ const foundWalletsWithBalances = await modules.cryptopay.getWalletAddressesByOrderPaymentId(orderPayment._id);
138
+ const walletForOrderPayment = foundWalletsWithBalances.find((wallet) => BigInt(wallet.amount.toString()) > 0n);
139
+ const pricing = OrderPricingSheet({
140
+ calculation: order.calculation,
141
+ currency: order.currency,
142
+ });
143
+ const totalAmount = BigInt(pricing?.total({ useNetPrice: false }).amount);
144
+ if (walletForOrderPayment.currency !== order.currency) {
145
+ const baseCurrency = await modules.currencies.findCurrency({
146
+ isoCode: walletForOrderPayment.currency,
147
+ });
148
+ const quoteCurrency = await modules.currencies.findCurrency({ isoCode: order.currency });
149
+ const { /* min, */ max } = await modules.products.prices.rates.getRateRange(baseCurrency, quoteCurrency, order.confirmed || new Date());
150
+ const convertedAmount = BigInt(walletForOrderPayment.amount.toString()) /
151
+ 10n ** (BigInt(walletForOrderPayment.decimals) - 9n);
152
+ // Add a Promille 🍻
153
+ // const minAmount = parseFloat(convertedAmount.toString()) * min * 0.999;
154
+ const maxAmount = parseFloat(convertedAmount.toString()) * max * 1.001;
155
+ if (maxAmount && maxAmount >= totalAmount) {
156
+ // Enough sent
157
+ return {
158
+ transactionId: walletForOrderPayment._id,
159
+ };
160
+ }
161
+ logger.info(`Cryptopay Plugin: Wallet ${walletForOrderPayment._id} balance too low (yet): ${maxAmount} < ${totalAmount}`);
162
+ }
163
+ if (walletForOrderPayment) {
164
+ // Hack: Downgrade to 8 decimals
165
+ const convertedAmount = BigInt(walletForOrderPayment.amount.toString()) /
166
+ 10n ** (BigInt(walletForOrderPayment.decimals) - 9n); // All crypto native prices denoted with 8 decimals
167
+ if (convertedAmount && convertedAmount >= totalAmount) {
168
+ return {
169
+ transactionId: walletForOrderPayment._id,
170
+ };
171
+ }
172
+ logger.info(`Cryptopay Plugin: Wallet ${walletForOrderPayment._id} balance too low (yet): ${convertedAmount} < ${totalAmount}`);
173
+ }
174
+ logger.info(`Cryptopay Plugin: No confirmed payments found for currency ${order.currency} and addresses ${JSON.stringify(foundWalletsWithBalances)}`);
175
+ /*
176
+ TODO:
177
+
178
+ 1. Check that generated crypto addresses are unique and no order payments share the same crypto address, only repeat when derivations completely exhausted.
179
+ 2. When derivation path get's close to "exhaustedness" (95%), send a special e-mail alert to tell the user should generate a new xpub.
180
+ 3. Extend the middleware to report the highest seen block number so we can calculate confirmations,
181
+ 4. Order rejection should trigger an e-mail advising the vendor to actively send back funds
182
+
183
+ To allow paying in ETH or BTC or Tokens for CHF orders, it should work like this:
184
+ - When signing, we convert with what we have, if we can convert, fine, if we can't we throw an error at the client. The found rate id will be stored together with a signature of the order total + currency + an expiration date in a special collection
185
+ - We also return that signed payload to the client so the client can show something like Total: CHF 50.- "Pay 0.0024 BTC in the next 30 minutes"
186
+ - When a payment occured, the charge function of the plugin picks up. If it can find a valid signed converted amount in the special collection, it will use that information instead of the order total to compare against.
187
+ - When a payment occured to late, the order payment will not be marked as paid and a report will be sent to the vendor that with information about how much to send back.
188
+
189
+ Refunds have to be 2nd priority:
190
+ For every case where we should "send back" money to someone, it get's difficult because we don't own the private key. On ETH, we could use permit/approve with web3 to get the permission to send those funds back. On BTC, we could use lightning invoices for the refunds but that will be fuckin compley anyway.
191
+
192
+ */
193
+ return false;
194
+ },
195
+ };
196
+ return adapterActions;
197
+ },
198
+ };
199
+ PaymentDirector.registerAdapter(Cryptopay);
200
+ export default Cryptopay;
201
+ //# sourceMappingURL=plugin.js.map