@unchainedshop/plugins 3.1.14 → 4.0.0-rc.10
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/lib/delivery/pick-mup.js +0 -2
- package/lib/delivery/pick-mup.js.map +1 -1
- package/lib/files/gridfs/adapter.d.ts.map +1 -1
- package/lib/files/gridfs/adapter.js +3 -2
- package/lib/files/gridfs/adapter.js.map +1 -1
- package/lib/files/gridfs/handler-express.d.ts.map +1 -1
- package/lib/files/gridfs/handler-express.js +6 -2
- package/lib/files/gridfs/handler-express.js.map +1 -1
- package/lib/files/gridfs/handler-fastify.d.ts.map +1 -1
- package/lib/files/gridfs/handler-fastify.js +5 -2
- package/lib/files/gridfs/handler-fastify.js.map +1 -1
- package/lib/files/gridfs/module.d.ts +2 -2
- package/lib/files/gridfs/module.d.ts.map +1 -1
- package/lib/filters/local-search.d.ts.map +1 -1
- package/lib/filters/local-search.js +9 -2
- package/lib/filters/local-search.js.map +1 -1
- package/lib/filters/strict-equal.js +18 -0
- package/lib/filters/strict-equal.js.map +1 -1
- package/lib/payment/apple-iap/adapter.js +6 -13
- package/lib/payment/apple-iap/adapter.js.map +1 -1
- package/lib/payment/apple-iap/fix-periods.d.ts.map +1 -1
- package/lib/payment/apple-iap/fix-periods.js +3 -5
- package/lib/payment/apple-iap/fix-periods.js.map +1 -1
- package/lib/payment/apple-iap/handler-express.js +4 -4
- package/lib/payment/apple-iap/handler-express.js.map +1 -1
- package/lib/payment/apple-iap/handler-fastify.js +4 -4
- package/lib/payment/apple-iap/handler-fastify.js.map +1 -1
- package/lib/payment/apple-iap/module.d.ts +2 -2
- package/lib/payment/apple-iap/module.d.ts.map +1 -1
- package/lib/payment/braintree.js +3 -4
- package/lib/payment/braintree.js.map +1 -1
- package/lib/payment/cryptopay/db/CryptopayTransactions.d.ts +1 -2
- package/lib/payment/cryptopay/db/CryptopayTransactions.d.ts.map +1 -1
- package/lib/payment/cryptopay/db/CryptopayTransactions.js.map +1 -1
- package/lib/payment/cryptopay/handle-webhook.js +1 -1
- package/lib/payment/cryptopay/handle-webhook.js.map +1 -1
- package/lib/payment/cryptopay/handler-express.d.ts.map +1 -1
- package/lib/payment/cryptopay/handler-express.js +4 -57
- package/lib/payment/cryptopay/handler-express.js.map +1 -1
- package/lib/payment/cryptopay/handler-fastify.d.ts.map +1 -1
- package/lib/payment/cryptopay/handler-fastify.js +4 -56
- package/lib/payment/cryptopay/handler-fastify.js.map +1 -1
- package/lib/payment/cryptopay/module.d.ts +26 -26
- package/lib/payment/cryptopay/module.d.ts.map +1 -1
- package/lib/payment/cryptopay/module.js +26 -24
- package/lib/payment/cryptopay/module.js.map +1 -1
- package/lib/payment/cryptopay/plugin.d.ts.map +1 -1
- package/lib/payment/cryptopay/plugin.js +33 -79
- package/lib/payment/cryptopay/plugin.js.map +1 -1
- package/lib/payment/datatrans-v2/api/types.d.ts +41 -41
- package/lib/payment/datatrans-v2/api/types.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/getPaths.d.ts +2 -2
- package/lib/payment/datatrans-v2/getPaths.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/index.js +16 -14
- package/lib/payment/datatrans-v2/index.js.map +1 -1
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.d.ts +1 -1
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.d.ts.map +1 -1
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.js +3 -3
- package/lib/payment/datatrans-v2/roundedAmountFromOrder.js.map +1 -1
- package/lib/payment/paypal-checkout.js +6 -8
- package/lib/payment/paypal-checkout.js.map +1 -1
- package/lib/payment/payrexx/api/index.d.ts +2 -2
- package/lib/payment/payrexx/api/index.d.ts.map +1 -1
- package/lib/payment/payrexx/api/makeFetcher.d.ts.map +1 -1
- package/lib/payment/payrexx/api/makeFetcher.js.map +1 -1
- package/lib/payment/payrexx/index.js +4 -4
- package/lib/payment/payrexx/index.js.map +1 -1
- package/lib/payment/payrexx/payrexx.js +2 -2
- package/lib/payment/payrexx/payrexx.js.map +1 -1
- package/lib/payment/postfinance-checkout/api-client.d.ts +16 -0
- package/lib/payment/postfinance-checkout/api-client.d.ts.map +1 -0
- package/lib/payment/postfinance-checkout/api-client.js +75 -0
- package/lib/payment/postfinance-checkout/api-client.js.map +1 -0
- package/lib/payment/postfinance-checkout/api-types.d.ts +98 -0
- package/lib/payment/postfinance-checkout/api-types.d.ts.map +1 -0
- package/lib/payment/postfinance-checkout/api-types.js +51 -0
- package/lib/payment/postfinance-checkout/api-types.js.map +1 -0
- package/lib/payment/postfinance-checkout/api.d.ts +5 -5
- package/lib/payment/postfinance-checkout/api.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/api.js +38 -62
- package/lib/payment/postfinance-checkout/api.js.map +1 -1
- package/lib/payment/postfinance-checkout/handler-express.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/handler-express.js +5 -5
- package/lib/payment/postfinance-checkout/handler-express.js.map +1 -1
- package/lib/payment/postfinance-checkout/handler-fastify.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/handler-fastify.js +6 -6
- package/lib/payment/postfinance-checkout/handler-fastify.js.map +1 -1
- package/lib/payment/postfinance-checkout/index.d.ts +2 -1
- package/lib/payment/postfinance-checkout/index.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/index.js +27 -30
- package/lib/payment/postfinance-checkout/index.js.map +1 -1
- package/lib/payment/postfinance-checkout/types.d.ts +4 -4
- package/lib/payment/postfinance-checkout/types.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/utils.d.ts +3 -3
- package/lib/payment/postfinance-checkout/utils.d.ts.map +1 -1
- package/lib/payment/postfinance-checkout/utils.js +5 -6
- package/lib/payment/postfinance-checkout/utils.js.map +1 -1
- package/lib/payment/saferpay/adapter.d.ts.map +1 -1
- package/lib/payment/saferpay/adapter.js +4 -6
- package/lib/payment/saferpay/adapter.js.map +1 -1
- package/lib/payment/saferpay/api/models/Transaction.d.ts +2 -2
- package/lib/payment/saferpay/api/models/Transaction.d.ts.map +1 -1
- package/lib/payment/saferpay/module.d.ts +2 -2
- package/lib/payment/saferpay/module.d.ts.map +1 -1
- package/lib/payment/stripe/index.js +5 -5
- package/lib/payment/stripe/index.js.map +1 -1
- package/lib/payment/stripe/stripe.js +3 -3
- package/lib/payment/stripe/stripe.js.map +1 -1
- package/lib/presets/all.d.ts +15 -13
- package/lib/presets/all.d.ts.map +1 -1
- package/lib/presets/all.js +3 -1
- package/lib/presets/all.js.map +1 -1
- package/lib/pricing/delivery-swiss-tax.d.ts.map +1 -1
- package/lib/pricing/delivery-swiss-tax.js +2 -2
- package/lib/pricing/delivery-swiss-tax.js.map +1 -1
- package/lib/pricing/order-delivery.js +1 -1
- package/lib/pricing/order-delivery.js.map +1 -1
- package/lib/pricing/order-discount.js +3 -3
- package/lib/pricing/order-discount.js.map +1 -1
- package/lib/pricing/order-items-discount.js +1 -1
- package/lib/pricing/order-items-discount.js.map +1 -1
- package/lib/pricing/order-items.js +1 -1
- package/lib/pricing/order-items.js.map +1 -1
- package/lib/pricing/order-payment.js +1 -1
- package/lib/pricing/order-payment.js.map +1 -1
- package/lib/pricing/order-round.d.ts +1 -1
- package/lib/pricing/order-round.d.ts.map +1 -1
- package/lib/pricing/order-round.js +8 -8
- package/lib/pricing/order-round.js.map +1 -1
- package/lib/pricing/product-catalog-price.d.ts +0 -1
- package/lib/pricing/product-catalog-price.d.ts.map +1 -1
- package/lib/pricing/product-catalog-price.js +6 -18
- package/lib/pricing/product-catalog-price.js.map +1 -1
- package/lib/pricing/product-price-rateconversion.js +2 -2
- package/lib/pricing/product-price-rateconversion.js.map +1 -1
- package/lib/pricing/product-round.d.ts +1 -1
- package/lib/pricing/product-round.d.ts.map +1 -1
- package/lib/pricing/product-round.js +2 -2
- package/lib/pricing/product-round.js.map +1 -1
- package/lib/pricing/product-swiss-tax.d.ts +1 -1
- package/lib/pricing/product-swiss-tax.d.ts.map +1 -1
- package/lib/pricing/product-swiss-tax.js +2 -2
- package/lib/pricing/product-swiss-tax.js.map +1 -1
- package/lib/warehousing/eth-minter.js +2 -2
- package/lib/warehousing/eth-minter.js.map +1 -1
- package/lib/worker/budgetsms.d.ts +10 -0
- package/lib/worker/budgetsms.d.ts.map +1 -0
- package/lib/worker/budgetsms.js +217 -0
- package/lib/worker/budgetsms.js.map +1 -0
- package/lib/worker/bulk-import.js +1 -1
- package/lib/worker/bulk-import.js.map +1 -1
- package/lib/worker/bulkgate.d.ts +2 -0
- package/lib/worker/bulkgate.d.ts.map +1 -0
- package/lib/worker/bulkgate.js +104 -0
- package/lib/worker/bulkgate.js.map +1 -0
- package/lib/worker/enrollment-order-generator.js +1 -1
- package/lib/worker/enrollment-order-generator.js.map +1 -1
- package/lib/worker/error-notifications.d.ts +4 -4
- package/lib/worker/error-notifications.d.ts.map +1 -1
- package/lib/worker/heartbeat.js +2 -8
- package/lib/worker/heartbeat.js.map +1 -1
- package/lib/worker/message.d.ts +1 -1
- package/lib/worker/message.d.ts.map +1 -1
- package/lib/worker/sms.js +16 -16
- package/lib/worker/sms.js.map +1 -1
- package/lib/worker/twilio.d.ts +2 -0
- package/lib/worker/twilio.d.ts.map +1 -0
- package/lib/worker/twilio.js +56 -0
- package/lib/worker/twilio.js.map +1 -0
- package/lib/worker/update-coinbase-rates.js +1 -1
- package/lib/worker/update-coinbase-rates.js.map +1 -1
- package/lib/worker/update-ecb-rates.js.map +1 -1
- package/package.json +32 -53
- package/src/delivery/pick-mup.ts +0 -2
- package/src/files/gridfs/adapter.ts +7 -2
- package/src/files/gridfs/handler-express.ts +9 -2
- package/src/files/gridfs/handler-fastify.ts +8 -2
- package/src/files/gridfs/module.ts +2 -2
- package/src/filters/local-search.ts +11 -2
- package/src/filters/strict-equal.ts +21 -0
- package/src/payment/apple-iap/adapter.ts +7 -14
- package/src/payment/apple-iap/fix-periods.ts +4 -7
- package/src/payment/apple-iap/handler-express.ts +4 -4
- package/src/payment/apple-iap/handler-fastify.ts +4 -4
- package/src/payment/apple-iap/module.ts +2 -2
- package/src/payment/braintree.ts +3 -4
- package/src/payment/cryptopay/db/CryptopayTransactions.ts +1 -2
- package/src/payment/cryptopay/denote-amount.test.ts +28 -0
- package/src/payment/cryptopay/denote-amount.ts +29 -0
- package/src/payment/cryptopay/derive-btc-address.test.ts +22 -0
- package/src/payment/cryptopay/derive-btc-address.ts +48 -0
- package/src/payment/cryptopay/derive-eth-address.test.ts +22 -0
- package/src/payment/cryptopay/derive-eth-address.ts +38 -0
- package/src/payment/cryptopay/handle-webhook.ts +103 -0
- package/src/payment/cryptopay/handler-express.ts +4 -70
- package/src/payment/cryptopay/handler-fastify.ts +6 -71
- package/src/payment/cryptopay/module.ts +44 -40
- package/src/payment/cryptopay/plugin.ts +50 -87
- package/src/payment/cryptopay/readme.md +23 -1
- package/src/payment/datatrans-v2/api/types.ts +41 -41
- package/src/payment/datatrans-v2/getPaths.ts +2 -2
- package/src/payment/datatrans-v2/index.ts +17 -15
- package/src/payment/datatrans-v2/roundedAmountFromOrder.ts +4 -4
- package/src/payment/paypal-checkout.ts +6 -11
- package/src/payment/payrexx/api/index.ts +2 -2
- package/src/payment/payrexx/api/makeFetcher.ts +1 -1
- package/src/payment/payrexx/index.ts +4 -4
- package/src/payment/payrexx/payrexx.ts +2 -2
- package/src/payment/postfinance-checkout/api-client.ts +106 -0
- package/src/payment/postfinance-checkout/api-types.ts +111 -0
- package/src/payment/postfinance-checkout/api.ts +58 -85
- package/src/payment/postfinance-checkout/handler-express.ts +5 -7
- package/src/payment/postfinance-checkout/handler-fastify.ts +6 -8
- package/src/payment/postfinance-checkout/index.ts +43 -35
- package/src/payment/postfinance-checkout/types.ts +6 -6
- package/src/payment/postfinance-checkout/utils.ts +7 -12
- package/src/payment/saferpay/adapter.ts +4 -6
- package/src/payment/saferpay/api/models/Transaction.ts +2 -2
- package/src/payment/saferpay/module.ts +2 -2
- package/src/payment/stripe/index.ts +5 -5
- package/src/payment/stripe/stripe.ts +3 -3
- package/src/presets/all.ts +3 -1
- package/src/pricing/delivery-swiss-tax.ts +6 -2
- package/src/pricing/order-delivery.ts +1 -1
- package/src/pricing/order-discount.ts +3 -3
- package/src/pricing/order-items-discount.ts +1 -1
- package/src/pricing/order-items.ts +1 -1
- package/src/pricing/order-payment.ts +1 -1
- package/src/pricing/order-round.ts +9 -9
- package/src/pricing/product-catalog-price.ts +6 -25
- package/src/pricing/product-price-rateconversion.ts +2 -2
- package/src/pricing/product-round.ts +3 -3
- package/src/pricing/product-swiss-tax.test.ts +6 -6
- package/src/pricing/product-swiss-tax.ts +2 -2
- package/src/warehousing/eth-minter.ts +2 -2
- package/src/worker/budgetsms.ts +268 -0
- package/src/worker/bulk-import.ts +1 -1
- package/src/worker/bulkgate.ts +138 -0
- package/src/worker/enrollment-order-generator.ts +3 -3
- package/src/worker/error-notifications.ts +4 -4
- package/src/worker/heartbeat.ts +4 -11
- package/src/worker/message.ts +1 -1
- package/src/worker/push-notification.ts +2 -2
- package/src/worker/twilio.ts +71 -0
- package/src/worker/update-coinbase-rates.ts +3 -6
- package/src/worker/update-ecb-rates.ts +3 -3
- package/lib/accounts/google-oauth.d.ts +0 -4
- package/lib/accounts/google-oauth.d.ts.map +0 -1
- package/lib/accounts/google-oauth.js +0 -145
- package/lib/accounts/google-oauth.js.map +0 -1
- package/lib/accounts/linkedin-oauth.d.ts +0 -4
- package/lib/accounts/linkedin-oauth.d.ts.map +0 -1
- package/lib/accounts/linkedin-oauth.js +0 -82
- package/lib/accounts/linkedin-oauth.js.map +0 -1
- package/lib/files/gridfs/gridfs-adapter.d.ts +0 -3
- package/lib/files/gridfs/gridfs-adapter.d.ts.map +0 -1
- package/lib/files/gridfs/gridfs-adapter.js +0 -97
- package/lib/files/gridfs/gridfs-adapter.js.map +0 -1
- package/lib/files/gridfs/gridfs-webhook.d.ts +0 -11
- package/lib/files/gridfs/gridfs-webhook.d.ts.map +0 -1
- package/lib/files/gridfs/gridfs-webhook.js +0 -84
- package/lib/files/gridfs/gridfs-webhook.js.map +0 -1
- package/lib/files/minio/minio-adapter.d.ts +0 -6
- package/lib/files/minio/minio-adapter.d.ts.map +0 -1
- package/lib/files/minio/minio-adapter.js +0 -181
- package/lib/files/minio/minio-adapter.js.map +0 -1
- package/lib/files/minio/minio-webhook.d.ts +0 -2
- package/lib/files/minio/minio-webhook.d.ts.map +0 -1
- package/lib/files/minio/minio-webhook.js +0 -33
- package/lib/files/minio/minio-webhook.js.map +0 -1
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts +0 -9
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts.map +0 -1
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js +0 -17
- package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js.map +0 -1
- package/lib/payment/cryptopay/middleware.d.ts +0 -2
- package/lib/payment/cryptopay/middleware.d.ts.map +0 -1
- package/lib/payment/cryptopay/middleware.js +0 -75
- package/lib/payment/cryptopay/middleware.js.map +0 -1
- package/lib/payment/cryptopay/module/configureCryptopayModule.d.ts +0 -25
- package/lib/payment/cryptopay/module/configureCryptopayModule.d.ts.map +0 -1
- package/lib/payment/cryptopay/module/configureCryptopayModule.js +0 -75
- package/lib/payment/cryptopay/module/configureCryptopayModule.js.map +0 -1
- package/lib/payment/datatrans-v2/middleware.d.ts +0 -2
- package/lib/payment/datatrans-v2/middleware.d.ts.map +0 -1
- package/lib/payment/datatrans-v2/middleware.js +0 -68
- package/lib/payment/datatrans-v2/middleware.js.map +0 -1
- package/lib/payment/payrexx/middleware.d.ts +0 -2
- package/lib/payment/payrexx/middleware.d.ts.map +0 -1
- package/lib/payment/payrexx/middleware.js +0 -86
- package/lib/payment/payrexx/middleware.js.map +0 -1
- package/lib/payment/postfinance-checkout/middleware.d.ts +0 -2
- package/lib/payment/postfinance-checkout/middleware.d.ts.map +0 -1
- package/lib/payment/postfinance-checkout/middleware.js +0 -38
- package/lib/payment/postfinance-checkout/middleware.js.map +0 -1
- package/lib/payment/saferpay/middleware.d.ts +0 -2
- package/lib/payment/saferpay/middleware.d.ts.map +0 -1
- package/lib/payment/saferpay/middleware.js +0 -57
- package/lib/payment/saferpay/middleware.js.map +0 -1
- package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.d.ts +0 -10
- package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.d.ts.map +0 -1
- package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.js +0 -24
- package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.js.map +0 -1
- package/lib/payment/stripe/middleware.d.ts +0 -6
- package/lib/payment/stripe/middleware.d.ts.map +0 -1
- package/lib/payment/stripe/middleware.js +0 -114
- package/lib/payment/stripe/middleware.js.map +0 -1
- package/lib/plugins-index.d.ts +0 -48
- package/lib/plugins-index.d.ts.map +0 -1
- package/lib/plugins-index.js +0 -107
- package/lib/plugins-index.js.map +0 -1
- package/lib/worker/BaseWorker.d.ts +0 -30
- package/lib/worker/BaseWorker.d.ts.map +0 -1
- package/lib/worker/BaseWorker.js +0 -79
- package/lib/worker/BaseWorker.js.map +0 -1
- package/lib/worker/EventListenerWorker.d.ts +0 -6
- package/lib/worker/EventListenerWorker.d.ts.map +0 -1
- package/lib/worker/EventListenerWorker.js +0 -46
- package/lib/worker/EventListenerWorker.js.map +0 -1
- package/lib/worker/FailedRescheduler.d.ts +0 -15
- package/lib/worker/FailedRescheduler.d.ts.map +0 -1
- package/lib/worker/FailedRescheduler.js +0 -45
- package/lib/worker/FailedRescheduler.js.map +0 -1
- package/lib/worker/IntervalWorker.d.ts +0 -10
- package/lib/worker/IntervalWorker.d.ts.map +0 -1
- package/lib/worker/IntervalWorker.js +0 -37
- package/lib/worker/IntervalWorker.js.map +0 -1
- package/src/worker/BaseWorker.ts +0 -116
- package/src/worker/EventListenerWorker.ts +0 -61
- package/src/worker/FailedRescheduler.ts +0 -80
- package/src/worker/IntervalWorker.ts +0 -54
- package/src/worker/sms.ts +0 -87
|
@@ -1,64 +1,40 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import { PostFinanceApiClient } from './api-client.js';
|
|
2
|
+
import { RefundType, } from './api-types.js';
|
|
3
3
|
const { PFCHECKOUT_SPACE_ID, PFCHECKOUT_USER_ID, PFCHECKOUT_SECRET } = process.env;
|
|
4
4
|
const SPACE_ID = parseInt(PFCHECKOUT_SPACE_ID, 10);
|
|
5
5
|
const USER_ID = parseInt(PFCHECKOUT_USER_ID, 10);
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const getTransactionCompletionService = () => {
|
|
17
|
-
return new PostFinanceCheckout.api.TransactionCompletionService(getConfig());
|
|
18
|
-
};
|
|
19
|
-
const getTransactionVoidService = () => {
|
|
20
|
-
return new PostFinanceCheckout.api.TransactionVoidService(getConfig());
|
|
21
|
-
};
|
|
22
|
-
const getRefundService = () => {
|
|
23
|
-
return new PostFinanceCheckout.api.RefundService(getConfig());
|
|
24
|
-
};
|
|
25
|
-
const getTransactionPaymentPageService = () => {
|
|
26
|
-
return new PostFinanceCheckout.api.TransactionPaymentPageService(getConfig());
|
|
27
|
-
};
|
|
28
|
-
const getTransactionIframeService = () => {
|
|
29
|
-
return new PostFinanceCheckout.api.TransactionIframeService(getConfig());
|
|
30
|
-
};
|
|
31
|
-
const getTransactionLightboxService = () => {
|
|
32
|
-
return new PostFinanceCheckout.api.TransactionLightboxService(getConfig());
|
|
33
|
-
};
|
|
34
|
-
const getTokenService = () => {
|
|
35
|
-
return new PostFinanceCheckout.api.TokenService(getConfig());
|
|
6
|
+
let apiClient;
|
|
7
|
+
const getApiClient = () => {
|
|
8
|
+
if (!apiClient) {
|
|
9
|
+
apiClient = new PostFinanceApiClient({
|
|
10
|
+
spaceId: SPACE_ID,
|
|
11
|
+
userId: USER_ID,
|
|
12
|
+
apiSecret: PFCHECKOUT_SECRET,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
return apiClient;
|
|
36
16
|
};
|
|
37
17
|
export const getTransaction = async (transactionId) => {
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
return transaction.body;
|
|
18
|
+
const client = getApiClient();
|
|
19
|
+
return client.get(`/transaction/read?spaceId=${SPACE_ID}&id=${transactionId}`);
|
|
41
20
|
};
|
|
42
|
-
export const getTransactionCompletion = async (
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
return transactionCompletion.body;
|
|
21
|
+
export const getTransactionCompletion = async (id) => {
|
|
22
|
+
const client = getApiClient();
|
|
23
|
+
return client.get(`/transaction-completion/read?spaceId=${SPACE_ID}&id=${id}`);
|
|
46
24
|
};
|
|
47
25
|
export const getToken = async (spaceId, tokenId) => {
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
return token.body;
|
|
26
|
+
const client = getApiClient();
|
|
27
|
+
return client.get(`/token/read?spaceId=${spaceId || SPACE_ID}&id=${tokenId}`);
|
|
51
28
|
};
|
|
52
29
|
export const createTransaction = async (transaction) => {
|
|
53
|
-
const
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
return transactionCreate.id || null;
|
|
30
|
+
const client = getApiClient();
|
|
31
|
+
const result = await client.post(`/transaction/create?spaceId=${SPACE_ID}`, transaction);
|
|
32
|
+
return result.id || null;
|
|
57
33
|
};
|
|
58
34
|
export const voidTransaction = async (transactionId) => {
|
|
59
|
-
const
|
|
35
|
+
const client = getApiClient();
|
|
60
36
|
try {
|
|
61
|
-
await
|
|
37
|
+
await client.post(`/transaction-void/voidOnline?spaceId=${SPACE_ID}&id=${transactionId}`, {});
|
|
62
38
|
return true;
|
|
63
39
|
}
|
|
64
40
|
catch {
|
|
@@ -66,15 +42,15 @@ export const voidTransaction = async (transactionId) => {
|
|
|
66
42
|
}
|
|
67
43
|
};
|
|
68
44
|
export const refundTransaction = async (transactionId, orderId, amount) => {
|
|
69
|
-
const
|
|
45
|
+
const client = getApiClient();
|
|
70
46
|
const refund = {
|
|
71
47
|
transaction: parseInt(transactionId, 10),
|
|
72
48
|
externalId: orderId,
|
|
73
49
|
amount,
|
|
74
|
-
type:
|
|
50
|
+
type: RefundType.MERCHANT_INITIATED_ONLINE,
|
|
75
51
|
};
|
|
76
52
|
try {
|
|
77
|
-
await
|
|
53
|
+
await client.post(`/refund/refund?spaceId=${SPACE_ID}`, refund);
|
|
78
54
|
return true;
|
|
79
55
|
}
|
|
80
56
|
catch {
|
|
@@ -82,9 +58,9 @@ export const refundTransaction = async (transactionId, orderId, amount) => {
|
|
|
82
58
|
}
|
|
83
59
|
};
|
|
84
60
|
export const confirmDeferredTransaction = async (transactionId) => {
|
|
85
|
-
const
|
|
61
|
+
const client = getApiClient();
|
|
86
62
|
try {
|
|
87
|
-
await
|
|
63
|
+
await client.post(`/transaction-completion/completeOnline?spaceId=${SPACE_ID}&transactionId=${transactionId}`, {});
|
|
88
64
|
return true;
|
|
89
65
|
}
|
|
90
66
|
catch {
|
|
@@ -92,18 +68,18 @@ export const confirmDeferredTransaction = async (transactionId) => {
|
|
|
92
68
|
}
|
|
93
69
|
};
|
|
94
70
|
export const getPaymentPageUrl = async (transactionId) => {
|
|
95
|
-
const
|
|
96
|
-
const
|
|
97
|
-
return
|
|
71
|
+
const client = getApiClient();
|
|
72
|
+
const result = await client.get(`/transaction-payment-page/payment-page-url?spaceId=${SPACE_ID}&id=${transactionId}`);
|
|
73
|
+
return result;
|
|
98
74
|
};
|
|
99
75
|
export const getLightboxJavascriptUrl = async (transactionId) => {
|
|
100
|
-
const
|
|
101
|
-
const
|
|
102
|
-
return
|
|
76
|
+
const client = getApiClient();
|
|
77
|
+
const result = await client.get(`/transaction-lightbox/javascript-url?spaceId=${SPACE_ID}&id=${transactionId}`);
|
|
78
|
+
return result;
|
|
103
79
|
};
|
|
104
80
|
export const getIframeJavascriptUrl = async (transactionId) => {
|
|
105
|
-
const
|
|
106
|
-
const
|
|
107
|
-
return
|
|
81
|
+
const client = getApiClient();
|
|
82
|
+
const result = await client.get(`/transaction-iframe/javascript-url?spaceId=${SPACE_ID}&id=${transactionId}`);
|
|
83
|
+
return result;
|
|
108
84
|
};
|
|
109
85
|
//# sourceMappingURL=api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/api.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler-express.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/handler-express.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,0BAA0B,GAAU,QAAG,EAAE,QAAG,
|
|
1
|
+
{"version":3,"file":"handler-express.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/handler-express.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,0BAA0B,GAAU,QAAG,EAAE,QAAG,kBAoCxD,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createLogger } from '@unchainedshop/logger';
|
|
2
2
|
import { getTransaction, getTransactionCompletion } from './api.js';
|
|
3
|
-
const logger = createLogger('unchained:core-payment:postfinance-checkout');
|
|
3
|
+
const logger = createLogger('unchained:core-payment:postfinance-checkout:handler');
|
|
4
4
|
export const postfinanceCheckoutHandler = async (req, res) => {
|
|
5
5
|
const context = req.unchainedContext;
|
|
6
6
|
const { services, modules } = context;
|
|
@@ -8,7 +8,7 @@ export const postfinanceCheckoutHandler = async (req, res) => {
|
|
|
8
8
|
if (data.listenerEntityTechnicalName === 'TransactionCompletion') {
|
|
9
9
|
try {
|
|
10
10
|
const transactionCompletion = await getTransactionCompletion(data.entityId);
|
|
11
|
-
const transaction = await getTransaction(transactionCompletion.linkedTransaction);
|
|
11
|
+
const transaction = await getTransaction(transactionCompletion ? transactionCompletion.linkedTransaction : data.entityId);
|
|
12
12
|
const { orderPaymentId } = transaction.metaData;
|
|
13
13
|
const orderPayment = await modules.orders.payments.findOrderPayment({
|
|
14
14
|
orderPaymentId,
|
|
@@ -20,18 +20,18 @@ export const postfinanceCheckoutHandler = async (req, res) => {
|
|
|
20
20
|
transactionId: transactionCompletion.linkedTransaction,
|
|
21
21
|
},
|
|
22
22
|
});
|
|
23
|
-
logger.info(`
|
|
23
|
+
logger.info(`Transaction ${transactionCompletion.linkedTransaction} marked order payment ID ${transaction.metaData.orderPaymentId} as paid`);
|
|
24
24
|
res.writeHead(200);
|
|
25
25
|
res.end(`Order marked as paid: ${order.orderNumber}`);
|
|
26
26
|
}
|
|
27
27
|
catch (e) {
|
|
28
|
-
logger.error(
|
|
28
|
+
logger.error(e);
|
|
29
29
|
res.writeHead(500);
|
|
30
30
|
res.end(JSON.stringify({ name: e.name, code: e.code, message: e.message }));
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
else {
|
|
34
|
-
logger.error(`
|
|
34
|
+
logger.error(`Received unknown listenerEntityTechnicalName ${data.listenerEntityTechnicalName}`);
|
|
35
35
|
res.writeHead(404);
|
|
36
36
|
res.end();
|
|
37
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler-express.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/handler-express.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAEpE,MAAM,MAAM,GAAG,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"handler-express.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/handler-express.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAEpE,MAAM,MAAM,GAAG,YAAY,CAAC,qDAAqD,CAAC,CAAC;AAEnF,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC3D,MAAM,OAAO,GAAG,GAAG,CAAC,gBAA2B,CAAC;IAChD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IACtC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAmB,CAAC;IACrC,IAAI,IAAI,CAAC,2BAA2B,KAAK,uBAAuB,EAAE,CAAC;QACjE,IAAI,CAAC;YACH,MAAM,qBAAqB,GAAG,MAAM,wBAAwB,CAAC,IAAI,CAAC,QAA6B,CAAC,CAAC;YACjG,MAAM,WAAW,GAAG,MAAM,cAAc,CACtC,qBAAqB,CAAC,CAAC,CAAE,qBAA6B,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CACzF,CAAC;YACF,MAAM,EAAE,cAAc,EAAE,GAAG,WAAW,CAAC,QAAsC,CAAC;YAC9E,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAClE,cAAc;aACf,CAAC,CAAC;YACH,IAAI,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAE9D,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,EAAE;gBACtE,cAAc,EAAE;oBACd,aAAa,EAAE,qBAAqB,CAAC,iBAAiB;iBACvD;aACF,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CACT,eAAe,qBAAqB,CAAC,iBAAiB,4BAA4B,WAAW,CAAC,QAAQ,CAAC,cAAc,UAAU,CAChI,CAAC;YACF,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAChB,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;QAC9E,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,KAAK,CAAC,gDAAgD,IAAI,CAAC,2BAA2B,EAAE,CAAC,CAAC;QACjG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACnB,GAAG,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler-fastify.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/handler-fastify.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAI7D,eAAO,MAAM,0BAA0B,EAAE,
|
|
1
|
+
{"version":3,"file":"handler-fastify.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/handler-fastify.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAI7D,eAAO,MAAM,0BAA0B,EAAE,kBAyCxC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createLogger } from '@unchainedshop/logger';
|
|
2
2
|
import { getTransaction, getTransactionCompletion } from './api.js';
|
|
3
|
-
const logger = createLogger('unchained:core-payment:postfinance-checkout');
|
|
3
|
+
const logger = createLogger('unchained:core-payment:postfinance-checkout:handler');
|
|
4
4
|
export const postfinanceCheckoutHandler = async (req, reply) => {
|
|
5
5
|
const context = req.unchainedContext;
|
|
6
6
|
const { services, modules } = context;
|
|
@@ -8,7 +8,7 @@ export const postfinanceCheckoutHandler = async (req, reply) => {
|
|
|
8
8
|
if (data.listenerEntityTechnicalName === 'TransactionCompletion') {
|
|
9
9
|
try {
|
|
10
10
|
const transactionCompletion = await getTransactionCompletion(data.entityId);
|
|
11
|
-
const transaction = await getTransaction(transactionCompletion.linkedTransaction);
|
|
11
|
+
const transaction = await getTransaction(transactionCompletion ? transactionCompletion.linkedTransaction : data.entityId);
|
|
12
12
|
const { orderPaymentId } = transaction.metaData;
|
|
13
13
|
const orderPayment = await modules.orders.payments.findOrderPayment({
|
|
14
14
|
orderPaymentId,
|
|
@@ -17,21 +17,21 @@ export const postfinanceCheckoutHandler = async (req, reply) => {
|
|
|
17
17
|
throw new Error('Order Payment not found');
|
|
18
18
|
const order = await services.orders.checkoutOrder(orderPayment.orderId, {
|
|
19
19
|
paymentContext: {
|
|
20
|
-
transactionId:
|
|
20
|
+
transactionId: transaction.id,
|
|
21
21
|
},
|
|
22
22
|
});
|
|
23
|
-
logger.info(`
|
|
23
|
+
logger.info(`Transaction ${transaction.id} marked order payment ID ${transaction.metaData.orderPaymentId} as paid`);
|
|
24
24
|
reply.status(200);
|
|
25
25
|
return reply.send(`Order marked as paid: ${order.orderNumber}`);
|
|
26
26
|
}
|
|
27
27
|
catch (e) {
|
|
28
|
-
logger.error(
|
|
28
|
+
logger.error(e);
|
|
29
29
|
reply.status(500);
|
|
30
30
|
return reply.send({ name: e.name, code: e.code, message: e.message });
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
else {
|
|
34
|
-
logger.error(`
|
|
34
|
+
logger.error(`Received unknown listenerEntityTechnicalName ${data.listenerEntityTechnicalName}`);
|
|
35
35
|
reply.status(404);
|
|
36
36
|
return reply.send();
|
|
37
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler-fastify.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/handler-fastify.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAGpE,MAAM,MAAM,GAAG,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"handler-fastify.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/handler-fastify.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAGpE,MAAM,MAAM,GAAG,YAAY,CAAC,qDAAqD,CAAC,CAAC;AAEnF,MAAM,CAAC,MAAM,0BAA0B,GAAuB,KAAK,EACjE,GAEC,EACD,KAAK,EACL,EAAE;IACF,MAAM,OAAO,GAAG,GAAG,CAAC,gBAA2B,CAAC;IAChD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IACtC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAmB,CAAC;IACrC,IAAI,IAAI,CAAC,2BAA2B,KAAK,uBAAuB,EAAE,CAAC;QACjE,IAAI,CAAC;YACH,MAAM,qBAAqB,GAAG,MAAM,wBAAwB,CAAC,IAAI,CAAC,QAA6B,CAAC,CAAC;YACjG,MAAM,WAAW,GAAG,MAAM,cAAc,CACtC,qBAAqB,CAAC,CAAC,CAAE,qBAA6B,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CACzF,CAAC;YACF,MAAM,EAAE,cAAc,EAAE,GAAG,WAAW,CAAC,QAAsC,CAAC;YAC9E,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAClE,cAAc;aACf,CAAC,CAAC;YACH,IAAI,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAE9D,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,EAAE;gBACtE,cAAc,EAAE;oBACd,aAAa,EAAE,WAAW,CAAC,EAAE;iBAC9B;aACF,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CACT,eAAe,WAAW,CAAC,EAAE,4BAA4B,WAAW,CAAC,QAAQ,CAAC,cAAc,UAAU,CACvG,CAAC;YACF,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAClB,OAAO,KAAK,CAAC,IAAI,CAAC,yBAAyB,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAChB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAClB,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,KAAK,CAAC,gDAAgD,IAAI,CAAC,2BAA2B,EAAE,CAAC,CAAC;QACjG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAClB,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/index.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/index.ts"],"names":[],"mappings":"AAiQA,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { createLogger } from '@unchainedshop/logger';
|
|
2
2
|
import { OrderPricingSheet, PaymentAdapter, PaymentDirector, PaymentError, } from '@unchainedshop/core';
|
|
3
|
-
import * as pf from 'postfinancecheckout';
|
|
4
3
|
import { confirmDeferredTransaction, createTransaction, getIframeJavascriptUrl, getLightboxJavascriptUrl, getPaymentPageUrl, getToken, getTransaction, refundTransaction, voidTransaction, } from './api.js';
|
|
5
4
|
import { orderIsPaid } from './utils.js';
|
|
6
5
|
import { CompletionModes, IntegrationModes } from './types.js';
|
|
7
|
-
|
|
6
|
+
import { LineItemType, TokenizationMode, TransactionCompletionBehavior, TransactionState, CreationEntityState, } from './api-types.js';
|
|
8
7
|
const { PFCHECKOUT_SPACE_ID, PFCHECKOUT_USER_ID, PFCHECKOUT_SECRET, PFCHECKOUT_SUCCESS_URL, PFCHECKOUT_FAILED_URL, } = process.env;
|
|
9
|
-
const logger = createLogger('unchained:core-payment:postfinance');
|
|
8
|
+
const logger = createLogger('unchained:core-payment:postfinance-checkout');
|
|
10
9
|
const newError = ({ code, message }) => {
|
|
11
10
|
const error = new Error(message);
|
|
12
11
|
error.name = `POSTFINANCE_${code}`;
|
|
@@ -27,9 +26,7 @@ const PostfinanceCheckout = {
|
|
|
27
26
|
return (config.find((item) => item.key === 'completionMode')?.value ||
|
|
28
27
|
CompletionModes.Deferred);
|
|
29
28
|
},
|
|
30
|
-
// eslint-disable-next-line
|
|
31
29
|
configurationError() {
|
|
32
|
-
// eslint-disable-line
|
|
33
30
|
if (!PFCHECKOUT_SPACE_ID ||
|
|
34
31
|
!PFCHECKOUT_USER_ID ||
|
|
35
32
|
!PFCHECKOUT_SECRET ||
|
|
@@ -52,7 +49,7 @@ const PostfinanceCheckout = {
|
|
|
52
49
|
return false;
|
|
53
50
|
const { linkedSpaceId } = credentials.meta;
|
|
54
51
|
const tokenData = await getToken(linkedSpaceId, credentials.token);
|
|
55
|
-
return tokenData.state ===
|
|
52
|
+
return tokenData.state === CreationEntityState.ACTIVE;
|
|
56
53
|
},
|
|
57
54
|
sign: async (transactionContext = {}) => {
|
|
58
55
|
const { orderPayment, order } = context;
|
|
@@ -60,35 +57,33 @@ const PostfinanceCheckout = {
|
|
|
60
57
|
const completionMode = adapter.getCompletionMode();
|
|
61
58
|
const pricing = OrderPricingSheet({
|
|
62
59
|
calculation: order.calculation,
|
|
63
|
-
|
|
60
|
+
currencyCode: order.currencyCode,
|
|
64
61
|
});
|
|
65
62
|
const totalAmount = pricing?.total({ useNetPrice: false }).amount;
|
|
66
|
-
const transaction =
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
63
|
+
const transaction = {
|
|
64
|
+
currency: order.currencyCode,
|
|
65
|
+
metaData: {
|
|
66
|
+
orderPaymentId: orderPayment._id,
|
|
67
|
+
},
|
|
68
|
+
successUrl: `${transactionContext?.successUrl || PFCHECKOUT_SUCCESS_URL}?order_id=${orderPayment.orderId}`,
|
|
69
|
+
failedUrl: `${transactionContext?.failedUrl || PFCHECKOUT_FAILED_URL}?order_id=${orderPayment.orderId}`,
|
|
70
|
+
customerId: order?.userId || context?.userId,
|
|
71
|
+
tokenizationMode: TokenizationMode.ALLOW_ONE_CLICK_PAYMENT,
|
|
71
72
|
};
|
|
72
|
-
transaction.successUrl = `${transactionContext?.successUrl || PFCHECKOUT_SUCCESS_URL}?order_id=${orderPayment.orderId}`;
|
|
73
|
-
transaction.failedUrl = `${transactionContext?.failedUrl || PFCHECKOUT_FAILED_URL}?order_id=${orderPayment.orderId}`;
|
|
74
|
-
transaction.customerId = userId;
|
|
75
|
-
transaction.tokenizationMode =
|
|
76
|
-
PostFinanceCheckout.model.TokenizationMode.ALLOW_ONE_CLICK_PAYMENT;
|
|
77
73
|
if (completionMode === CompletionModes.Immediate) {
|
|
78
|
-
transaction.completionBehavior =
|
|
79
|
-
PostFinanceCheckout.model.TransactionCompletionBehavior.COMPLETE_IMMEDIATELY;
|
|
74
|
+
transaction.completionBehavior = TransactionCompletionBehavior.COMPLETE_IMMEDIATELY;
|
|
80
75
|
}
|
|
81
76
|
else if (completionMode === CompletionModes.Deferred) {
|
|
82
|
-
transaction.completionBehavior =
|
|
83
|
-
PostFinanceCheckout.model.TransactionCompletionBehavior.COMPLETE_DEFERRED;
|
|
77
|
+
transaction.completionBehavior = TransactionCompletionBehavior.COMPLETE_DEFERRED;
|
|
84
78
|
}
|
|
85
79
|
if (totalAmount) {
|
|
86
|
-
const lineItemSum =
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
80
|
+
const lineItemSum = {
|
|
81
|
+
name: `Bestellung ${orderPayment.orderId}`,
|
|
82
|
+
type: LineItemType.FEE,
|
|
83
|
+
quantity: 1,
|
|
84
|
+
uniqueId: orderPayment.orderId,
|
|
85
|
+
amountIncludingTax: totalAmount / 100,
|
|
86
|
+
};
|
|
92
87
|
transaction.lineItems = [lineItemSum];
|
|
93
88
|
}
|
|
94
89
|
const transactionId = await createTransaction(transaction);
|
|
@@ -155,10 +150,10 @@ const PostfinanceCheckout = {
|
|
|
155
150
|
return false;
|
|
156
151
|
}
|
|
157
152
|
const transaction = await getTransaction(transactionId);
|
|
158
|
-
const refund = transaction.state ===
|
|
153
|
+
const refund = transaction.state === TransactionState.FULFILL;
|
|
159
154
|
const pricing = OrderPricingSheet({
|
|
160
155
|
calculation: order.calculation,
|
|
161
|
-
|
|
156
|
+
currencyCode: order.currencyCode,
|
|
162
157
|
});
|
|
163
158
|
const totalAmount = pricing?.total({ useNetPrice: false }).amount;
|
|
164
159
|
// For immediate settlements, try refunding. For deferred settlements, void the transaction.
|
|
@@ -172,7 +167,7 @@ const PostfinanceCheckout = {
|
|
|
172
167
|
return false;
|
|
173
168
|
}
|
|
174
169
|
const transaction = await getTransaction(transactionId);
|
|
175
|
-
if (transaction.state ===
|
|
170
|
+
if (transaction.state === TransactionState.AUTHORIZED) {
|
|
176
171
|
return confirmDeferredTransaction(transactionId);
|
|
177
172
|
}
|
|
178
173
|
return false;
|
|
@@ -182,4 +177,6 @@ const PostfinanceCheckout = {
|
|
|
182
177
|
},
|
|
183
178
|
};
|
|
184
179
|
PaymentDirector.registerAdapter(PostfinanceCheckout);
|
|
180
|
+
export * from './types.js';
|
|
181
|
+
export * from './api-types.js';
|
|
185
182
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EACL,iBAAiB,EAGjB,cAAc,EAEd,eAAe,EACf,YAAY,GACb,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,12 +7,12 @@ export declare enum CompletionModes {
|
|
|
7
7
|
Immediate = "Immediate",
|
|
8
8
|
Deferred = "Deferred"
|
|
9
9
|
}
|
|
10
|
-
export
|
|
10
|
+
export interface SignResponse {
|
|
11
11
|
transactionId: number;
|
|
12
12
|
location: string | null;
|
|
13
|
-
}
|
|
13
|
+
}
|
|
14
14
|
export type listenerEntityTechnicalNames = 'TransactionCompletion';
|
|
15
|
-
export
|
|
15
|
+
export interface WebhookData {
|
|
16
16
|
eventId: number;
|
|
17
17
|
entityId: number;
|
|
18
18
|
listenerEntityId: number;
|
|
@@ -20,5 +20,5 @@ export type WebhookData = {
|
|
|
20
20
|
spaceId: number;
|
|
21
21
|
webhookListenerId: number;
|
|
22
22
|
timestamp: string;
|
|
23
|
-
}
|
|
23
|
+
}
|
|
24
24
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/types.ts"],"names":[],"mappings":"AAAA,oBAAY,gBAAgB;IAC1B,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,oBAAY,eAAe;IACzB,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAED,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/types.ts"],"names":[],"mappings":"AAAA,oBAAY,gBAAgB;IAC1B,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,oBAAY,eAAe;IACzB,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,MAAM,4BAA4B,GAAG,uBAAuB,CAAC;AAEnE,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,2BAA2B,EAAE,4BAA4B,CAAC;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Order } from '@unchainedshop/core-orders';
|
|
2
|
-
import
|
|
3
|
-
export declare const transactionIsPaid: (transaction:
|
|
4
|
-
export declare const orderIsPaid: (order: Order, transaction:
|
|
2
|
+
import { Transaction } from './api-types.js';
|
|
3
|
+
export declare const transactionIsPaid: (transaction: Transaction, expectedCurrency: string, expectedAmount: number) => Promise<boolean>;
|
|
4
|
+
export declare const orderIsPaid: (order: Order, transaction: Transaction) => Promise<boolean>;
|
|
5
5
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,WAAW,EAAoB,MAAM,gBAAgB,CAAC;AAE/D,eAAO,MAAM,iBAAiB,GAC5B,aAAa,WAAW,EACxB,kBAAkB,MAAM,EACxB,gBAAgB,MAAM,KACrB,OAAO,CAAC,OAAO,CAgBjB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAU,OAAO,KAAK,EAAE,aAAa,WAAW,KAAG,OAAO,CAAC,OAAO,CAOzF,CAAC"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { OrderPricingSheet } from '@unchainedshop/core';
|
|
2
|
-
import
|
|
3
|
-
const { PostFinanceCheckout } = pf;
|
|
2
|
+
import { TransactionState } from './api-types.js';
|
|
4
3
|
export const transactionIsPaid = async (transaction, expectedCurrency, expectedAmount) => {
|
|
5
|
-
if (transaction.state ===
|
|
4
|
+
if (transaction.state === TransactionState.FULFILL) {
|
|
6
5
|
return (transaction.completedAmount !== undefined &&
|
|
7
6
|
transaction.completedAmount.toFixed(2) === expectedAmount.toFixed(2) &&
|
|
8
7
|
transaction.currency === expectedCurrency);
|
|
9
8
|
}
|
|
10
|
-
if (transaction.state ===
|
|
9
|
+
if (transaction.state === TransactionState.AUTHORIZED) {
|
|
11
10
|
return (transaction.authorizationAmount !== undefined &&
|
|
12
11
|
transaction.authorizationAmount.toFixed(2) === expectedAmount.toFixed(2) &&
|
|
13
12
|
transaction.currency === expectedCurrency);
|
|
@@ -17,9 +16,9 @@ export const transactionIsPaid = async (transaction, expectedCurrency, expectedA
|
|
|
17
16
|
export const orderIsPaid = async (order, transaction) => {
|
|
18
17
|
const pricing = OrderPricingSheet({
|
|
19
18
|
calculation: order.calculation,
|
|
20
|
-
|
|
19
|
+
currencyCode: order.currencyCode,
|
|
21
20
|
});
|
|
22
21
|
const totalAmount = pricing.total({ useNetPrice: false }).amount / 100;
|
|
23
|
-
return transactionIsPaid(transaction, order.
|
|
22
|
+
return transactionIsPaid(transaction, order.currencyCode, totalAmount);
|
|
24
23
|
};
|
|
25
24
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/payment/postfinance-checkout/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAe,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE/D,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,WAAwB,EACxB,gBAAwB,EACxB,cAAsB,EACJ,EAAE;IACpB,IAAI,WAAW,CAAC,KAAK,KAAK,gBAAgB,CAAC,OAAO,EAAE,CAAC;QACnD,OAAO,CACL,WAAW,CAAC,eAAe,KAAK,SAAS;YACzC,WAAW,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;YACpE,WAAW,CAAC,QAAQ,KAAK,gBAAgB,CAC1C,CAAC;IACJ,CAAC;IACD,IAAI,WAAW,CAAC,KAAK,KAAK,gBAAgB,CAAC,UAAU,EAAE,CAAC;QACtD,OAAO,CACL,WAAW,CAAC,mBAAmB,KAAK,SAAS;YAC7C,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;YACxE,WAAW,CAAC,QAAQ,KAAK,gBAAgB,CAC1C,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,KAAY,EAAE,WAAwB,EAAoB,EAAE;IAC5F,MAAM,OAAO,GAAG,iBAAiB,CAAC;QAChC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;KACjC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC;IACvE,OAAO,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;AACzE,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/payment/saferpay/adapter.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,eAAe,EAIhB,MAAM,qBAAqB,CAAC;AAyB7B,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/payment/saferpay/adapter.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,eAAe,EAIhB,MAAM,qBAAqB,CAAC;AAyB7B,eAAO,MAAM,gBAAgB,EAAE,eA+N9B,CAAC"}
|
|
@@ -34,9 +34,7 @@ export const WordlineSaferpay = {
|
|
|
34
34
|
getTerminalId() {
|
|
35
35
|
return config.find((item) => item.key === 'terminalId')?.value;
|
|
36
36
|
},
|
|
37
|
-
// eslint-disable-next-line
|
|
38
37
|
configurationError() {
|
|
39
|
-
// eslint-disable-line
|
|
40
38
|
if (!SAFERPAY_BASE_URL ||
|
|
41
39
|
!SAFERPAY_CUSTOMER_ID ||
|
|
42
40
|
!SAFERPAY_USER ||
|
|
@@ -61,7 +59,7 @@ export const WordlineSaferpay = {
|
|
|
61
59
|
}
|
|
62
60
|
const pricing = OrderPricingSheet({
|
|
63
61
|
calculation: order.calculation,
|
|
64
|
-
|
|
62
|
+
currencyCode: order.currencyCode,
|
|
65
63
|
});
|
|
66
64
|
const totalAmount = pricing?.total({ useNetPrice: false }).amount;
|
|
67
65
|
const saferpayTransactionId = await modules.saferpayTransactions.createTransaction(orderPayment._id);
|
|
@@ -72,7 +70,7 @@ export const WordlineSaferpay = {
|
|
|
72
70
|
Payment: {
|
|
73
71
|
Amount: {
|
|
74
72
|
Value: totalAmount.toString(),
|
|
75
|
-
CurrencyCode: order.
|
|
73
|
+
CurrencyCode: order.currencyCode,
|
|
76
74
|
},
|
|
77
75
|
OrderId: order._id,
|
|
78
76
|
Description: transactionContext.description || 'Bestellung',
|
|
@@ -104,7 +102,7 @@ export const WordlineSaferpay = {
|
|
|
104
102
|
}
|
|
105
103
|
const pricing = OrderPricingSheet({
|
|
106
104
|
calculation: order.calculation,
|
|
107
|
-
|
|
105
|
+
currencyCode: order.currencyCode,
|
|
108
106
|
});
|
|
109
107
|
const totalAmount = pricing.total({ useNetPrice: false }).amount;
|
|
110
108
|
const saferpayTransaction = await modules.saferpayTransactions.findTransactionById(mongodb.ObjectId.createFromHexString(transactionId));
|
|
@@ -114,7 +112,7 @@ export const WordlineSaferpay = {
|
|
|
114
112
|
});
|
|
115
113
|
const success = !paymentPageAssert.ErrorMessage &&
|
|
116
114
|
paymentPageAssert.Transaction.Amount.Value === totalAmount.toString() &&
|
|
117
|
-
paymentPageAssert.Transaction.Amount.CurrencyCode === order.
|
|
115
|
+
paymentPageAssert.Transaction.Amount.CurrencyCode === order.currencyCode &&
|
|
118
116
|
(paymentPageAssert.Transaction.Status === 'AUTHORIZED' ||
|
|
119
117
|
paymentPageAssert.Transaction.Status === 'CAPTURED');
|
|
120
118
|
if (success) {
|