@tagadapay/headless-sdk 1.20.0 → 1.21.0
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/CHANGELOG.md +56 -0
- package/README.md +2 -0
- package/dist/core/helpers/cryptoOnchain.d.ts +83 -0
- package/dist/core/helpers/cryptoOnchain.d.ts.map +1 -0
- package/dist/core/helpers/cryptoOnchain.js +247 -0
- package/dist/core/helpers/cryptoOnchain.js.map +1 -0
- package/dist/core/helpers/oceanpayment.d.ts +33 -0
- package/dist/core/helpers/oceanpayment.d.ts.map +1 -0
- package/dist/core/helpers/oceanpayment.js +111 -0
- package/dist/core/helpers/oceanpayment.js.map +1 -0
- package/dist/core/helpers/paymentsApi.d.ts +139 -0
- package/dist/core/helpers/paymentsApi.d.ts.map +1 -0
- package/dist/core/helpers/paymentsApi.js +287 -0
- package/dist/core/helpers/paymentsApi.js.map +1 -0
- package/dist/core/helpers/paymentsApiAnswer.d.ts +22 -0
- package/dist/core/helpers/paymentsApiAnswer.d.ts.map +1 -0
- package/dist/core/helpers/paymentsApiAnswer.js +51 -0
- package/dist/core/helpers/paymentsApiAnswer.js.map +1 -0
- package/dist/core/http.d.ts.map +1 -1
- package/dist/core/http.js +3 -0
- package/dist/core/http.js.map +1 -1
- package/dist/core/index.d.ts +3 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +2 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/modules/checkout.d.ts.map +1 -1
- package/dist/core/modules/checkout.js +1 -0
- package/dist/core/modules/checkout.js.map +1 -1
- package/dist/core/modules/payment.d.ts +74 -1
- package/dist/core/modules/payment.d.ts.map +1 -1
- package/dist/core/modules/payment.js +331 -8
- package/dist/core/modules/payment.js.map +1 -1
- package/dist/core/modules/portal/types.d.ts +2 -0
- package/dist/core/modules/portal/types.d.ts.map +1 -1
- package/dist/core/types.d.ts +164 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/version.d.ts +1 -1
- package/dist/core/version.js +1 -1
- package/dist/pixels/pixelMapping.d.ts.map +1 -1
- package/dist/pixels/pixelMapping.js +9 -1
- package/dist/pixels/pixelMapping.js.map +1 -1
- package/dist/react/hooks/useCryptoOnchainPayment.d.ts +40 -0
- package/dist/react/hooks/useCryptoOnchainPayment.d.ts.map +1 -0
- package/dist/react/hooks/useCryptoOnchainPayment.js +77 -0
- package/dist/react/hooks/useCryptoOnchainPayment.js.map +1 -0
- package/dist/react/hooks/usePayment.d.ts.map +1 -1
- package/dist/react/hooks/usePayment.js +3 -0
- package/dist/react/hooks/usePayment.js.map +1 -1
- package/dist/react/index.d.ts +4 -1
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +2 -0
- package/dist/react/index.js.map +1 -1
- package/dist/tagada-headless-commerce.min.js +1 -1
- package/dist/tagada-headless-react.min.js +2 -2
- package/dist/tagada-headless-react.min.js.map +4 -4
- package/dist/tagada-headless.js +685 -16
- package/dist/tagada-headless.min.js +2 -2
- package/dist/tagada-headless.min.js.map +4 -4
- package/dist/tagada-pixels.min.js +2 -2
- package/dist/tagada-pixels.min.js.map +3 -3
- package/package.json +2 -2
|
@@ -1,6 +1,32 @@
|
|
|
1
1
|
import { TagadaNotFoundError } from '../errors.js';
|
|
2
2
|
import { applePayContactToAddress, googlePayContactToAddress, } from '../helpers/walletContact.js';
|
|
3
3
|
import { toContents } from './track.js';
|
|
4
|
+
import { CryptoOnchainCheckout } from '../helpers/cryptoOnchain.js';
|
|
5
|
+
import { readStartedPayment, takeParkedPaymentsApiReturn, } from '../helpers/paymentsApiAnswer.js';
|
|
6
|
+
import { OCEAN_CALLBACK_TIMEOUT_MS, OCEAN_CONTAINER_ID, loadOceanSdk, oceanLanguage, parkOceanPayment, restoreOceanPaymentReturn, } from '../helpers/oceanpayment.js';
|
|
7
|
+
function loadPaymentsApiFlow() {
|
|
8
|
+
if (typeof __TGD_NO_PAYMENTS_API__ !== 'undefined' && __TGD_NO_PAYMENTS_API__) {
|
|
9
|
+
return Promise.reject(new Error('This store takes payments through the Payments API, which the CDN build does not support yet: ' +
|
|
10
|
+
'install @tagadapay/headless-sdk and @tagadapay/core-js 3.7.0 or later from npm.'));
|
|
11
|
+
}
|
|
12
|
+
return import('../helpers/paymentsApi.js');
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Payment statuses that end the payment without money moving. Not `expired`:
|
|
16
|
+
* a crypto payment can still come back from it.
|
|
17
|
+
*/
|
|
18
|
+
const FAILED_PAYMENT_STATUSES = new Set(['failed', 'declined', 'rejected', 'error']);
|
|
19
|
+
/**
|
|
20
|
+
* One Ocean card form per page: Ocean's SDK uses a fixed container id and one
|
|
21
|
+
* global callback. Held from the start of a mount; freed by `unmount()`, or
|
|
22
|
+
* once the page has dropped the form's container without calling it.
|
|
23
|
+
*/
|
|
24
|
+
let oceanSlot = null;
|
|
25
|
+
const oceanSlotTaken = () => !!oceanSlot && (!oceanSlot.attached || oceanSlot.element.isConnected);
|
|
26
|
+
/** Ocean's iframe never answered `checkout()`. */
|
|
27
|
+
const OCEAN_TIMED_OUT = Symbol('ocean-timed-out');
|
|
28
|
+
/** The card form was removed while a payment waited on Ocean's iframe. */
|
|
29
|
+
const OCEAN_UNMOUNTED = Symbol('ocean-unmounted');
|
|
4
30
|
const EXPRESS_METHOD_TYPES = new Set(['apple_pay', 'google_pay', 'paypal', 'klarna', 'klarna_express', 'link']);
|
|
5
31
|
/** Map a picker-list row to the `PaymentSetupConfig` entry shape (#TAG-2246). */
|
|
6
32
|
function paymentMethodListEntryToConfig(entry) {
|
|
@@ -88,6 +114,11 @@ export class PaymentModule {
|
|
|
88
114
|
* without a second network round-trip inside Apple's authorization window.
|
|
89
115
|
*/
|
|
90
116
|
this.lastPaymentSetup = null;
|
|
117
|
+
/**
|
|
118
|
+
* Payments API (V3) store: what the pay call knew about each payment it started (the session it
|
|
119
|
+
* pays, the shopper's method), so `finalize()` can confirm it from the bare pay answer.
|
|
120
|
+
*/
|
|
121
|
+
this.paymentsApiStarts = new Map();
|
|
91
122
|
}
|
|
92
123
|
// ---------------------------------------------------------------------------
|
|
93
124
|
// Discovery: what payment methods are available?
|
|
@@ -321,7 +352,7 @@ export class PaymentModule {
|
|
|
321
352
|
*/
|
|
322
353
|
async pay(opts) {
|
|
323
354
|
if (opts.tagadaToken && !opts.paymentInstrumentId) {
|
|
324
|
-
return this.http.post('/api/v1/payment/pay-with-token', {
|
|
355
|
+
return this.rememberPaymentsApiStart(await this.http.post('/api/v1/payment/pay-with-token', {
|
|
325
356
|
tagadaToken: opts.tagadaToken,
|
|
326
357
|
checkoutSessionId: opts.checkoutSessionId,
|
|
327
358
|
returnUrl: opts.returnUrl,
|
|
@@ -330,9 +361,9 @@ export class PaymentModule {
|
|
|
330
361
|
paymentMethod: opts.paymentMethod,
|
|
331
362
|
isExpress: opts.isExpress,
|
|
332
363
|
metadata: opts.metadata,
|
|
333
|
-
});
|
|
364
|
+
}), opts);
|
|
334
365
|
}
|
|
335
|
-
return this.http.post('/api/public/v1/checkout/pay-v2', {
|
|
366
|
+
return this.rememberPaymentsApiStart(await this.http.post('/api/public/v1/checkout/pay-v2', {
|
|
336
367
|
checkoutSessionId: opts.checkoutSessionId,
|
|
337
368
|
paymentInstrumentId: opts.paymentInstrumentId,
|
|
338
369
|
storeId: this.storeId,
|
|
@@ -343,14 +374,14 @@ export class PaymentModule {
|
|
|
343
374
|
isExpress: opts.isExpress,
|
|
344
375
|
metadata: opts.metadata,
|
|
345
376
|
returnUrl: opts.returnUrl,
|
|
346
|
-
});
|
|
377
|
+
}), opts);
|
|
347
378
|
}
|
|
348
379
|
/**
|
|
349
380
|
* Low-level pay: process payment with an existing instrument or for APM/express flows
|
|
350
381
|
* where no instrument is needed (redirect-based methods).
|
|
351
382
|
*/
|
|
352
383
|
async payDirect(opts) {
|
|
353
|
-
return this.http.post('/api/public/v1/checkout/pay-v2', {
|
|
384
|
+
return this.rememberPaymentsApiStart(await this.http.post('/api/public/v1/checkout/pay-v2', {
|
|
354
385
|
checkoutSessionId: opts.checkoutSessionId,
|
|
355
386
|
paymentInstrumentId: opts.paymentInstrumentId ?? '',
|
|
356
387
|
storeId: this.storeId,
|
|
@@ -360,7 +391,7 @@ export class PaymentModule {
|
|
|
360
391
|
isExpress: opts.isExpress,
|
|
361
392
|
threedsSessionId: opts.threedsSessionId,
|
|
362
393
|
returnUrl: opts.returnUrl,
|
|
363
|
-
});
|
|
394
|
+
}), opts);
|
|
364
395
|
}
|
|
365
396
|
/**
|
|
366
397
|
* Persist a wallet contact onto the session before the charge.
|
|
@@ -568,6 +599,227 @@ export class PaymentModule {
|
|
|
568
599
|
});
|
|
569
600
|
}
|
|
570
601
|
// ---------------------------------------------------------------------------
|
|
602
|
+
// On-chain crypto (`crypto_onchain`)
|
|
603
|
+
// ---------------------------------------------------------------------------
|
|
604
|
+
/**
|
|
605
|
+
* Networks and coins the store accepts for on-chain crypto on this checkout session. On-chain
|
|
606
|
+
* crypto is paid from your page (address, exact amount, QR) and never through `pay()` /
|
|
607
|
+
* `processApm()`: pay-v2 refuses it with `422 CRYPTO_ONCHAIN_INLINE_ONLY`.
|
|
608
|
+
*/
|
|
609
|
+
async getCryptoOnchainOptions(checkoutSessionId) {
|
|
610
|
+
return this.http.get(`/api/v1/checkout-sessions/${encodeURIComponent(checkoutSessionId)}/crypto-onchain/options`);
|
|
611
|
+
}
|
|
612
|
+
/**
|
|
613
|
+
* Create the order's on-chain payment for a network and a coin, or re-quote it (another coin,
|
|
614
|
+
* an expired quote): the deposit address, exact amount and wallet URI for the QR code. Save the
|
|
615
|
+
* customer and address on the session first.
|
|
616
|
+
*/
|
|
617
|
+
async createCryptoOnchainPayment(opts) {
|
|
618
|
+
return this.http.post(`/api/v1/checkout-sessions/${encodeURIComponent(opts.checkoutSessionId)}/crypto-onchain/session`, { chainId: opts.chainId, asset: opts.asset });
|
|
619
|
+
}
|
|
620
|
+
/** The payment's state; poll it every few seconds until `paid` (or underpaid / expired / failed). */
|
|
621
|
+
async getCryptoOnchainStatus(opts) {
|
|
622
|
+
return this.http.get(`/api/v1/checkout-sessions/${encodeURIComponent(opts.checkoutSessionId)}/crypto-onchain/status`, { params: { cryptoOnchainPaymentId: opts.cryptoOnchainPaymentId } });
|
|
623
|
+
}
|
|
624
|
+
/**
|
|
625
|
+
* The whole inline crypto payment of a checkout session, the way the hosted checkout runs it.
|
|
626
|
+
*
|
|
627
|
+
* @example
|
|
628
|
+
* ```ts
|
|
629
|
+
* const crypto = tagada.payment.createCryptoOnchainCheckout({
|
|
630
|
+
* checkoutSessionId: session.id,
|
|
631
|
+
* onPaid: ({ orderId }) => showThankYou(orderId),
|
|
632
|
+
* });
|
|
633
|
+
* crypto.subscribe(render); // networks, selection, payment (address, amount, paymentUri), status
|
|
634
|
+
* await crypto.loadOptions();
|
|
635
|
+
* payButton.onclick = () => crypto.pay(); // after saving the customer and address
|
|
636
|
+
* ```
|
|
637
|
+
*/
|
|
638
|
+
createCryptoOnchainCheckout(opts) {
|
|
639
|
+
return new CryptoOnchainCheckout(this, opts);
|
|
640
|
+
}
|
|
641
|
+
// ---------------------------------------------------------------------------
|
|
642
|
+
// Ocean Payment
|
|
643
|
+
// ---------------------------------------------------------------------------
|
|
644
|
+
/** Whether the store's Ocean Payment integration renders its inline card form or redirects. */
|
|
645
|
+
async getOceanPaymentConfig(checkoutSessionId) {
|
|
646
|
+
const data = await this.http.post(`/api/v1/checkout-sessions/${checkoutSessionId}/oceanpayment-embedded-config`, {});
|
|
647
|
+
return { embedded: !!data?.embedded, sandboxed: !!data?.sandboxed };
|
|
648
|
+
}
|
|
649
|
+
/**
|
|
650
|
+
* Set up Ocean Payment for a checkout session, the way the hosted checkout
|
|
651
|
+
* does: Ocean's card fields render inside `container` when the integration
|
|
652
|
+
* has Ocean's public key (`embedded`), otherwise `pay()` sends the shopper
|
|
653
|
+
* to Ocean's page and back to `returnUrl` (`redirect`).
|
|
654
|
+
*
|
|
655
|
+
* @example
|
|
656
|
+
* ```ts
|
|
657
|
+
* const ocean = await tagada.payment.mountOceanPayment({
|
|
658
|
+
* checkoutSessionId: session.id,
|
|
659
|
+
* container: '#ocean-card',
|
|
660
|
+
* });
|
|
661
|
+
* payButton.onclick = async () => {
|
|
662
|
+
* const result = await ocean.pay();
|
|
663
|
+
* if (result.status === 'requires_redirect') window.location.href = result.redirectUrl;
|
|
664
|
+
* else if (result.status === 'succeeded') showThankYou(result.order);
|
|
665
|
+
* else if (result.status === 'failed') showError(result.error);
|
|
666
|
+
* };
|
|
667
|
+
* ```
|
|
668
|
+
*/
|
|
669
|
+
async mountOceanPayment(opts) {
|
|
670
|
+
if (typeof window === 'undefined')
|
|
671
|
+
throw new Error('Ocean Payment needs a browser');
|
|
672
|
+
const { checkoutSessionId, signal } = opts;
|
|
673
|
+
const aborted = () => Object.assign(new Error('Ocean Payment mount aborted'), { name: 'AbortError' });
|
|
674
|
+
if (signal?.aborted)
|
|
675
|
+
throw aborted();
|
|
676
|
+
const host = typeof opts.container === 'string'
|
|
677
|
+
? document.querySelector(opts.container)
|
|
678
|
+
: opts.container;
|
|
679
|
+
if (!host && opts.mode !== 'redirect') {
|
|
680
|
+
throw new Error(`Ocean Payment container not found: ${String(opts.container)}`);
|
|
681
|
+
}
|
|
682
|
+
// Reserve Ocean's single slot before the first await, so a second mount
|
|
683
|
+
// (React StrictMode runs effects twice) fails fast instead of racing.
|
|
684
|
+
if (oceanSlotTaken() || document.getElementById(OCEAN_CONTAINER_ID)) {
|
|
685
|
+
throw new Error('An Ocean Payment card form is already mounted on this page');
|
|
686
|
+
}
|
|
687
|
+
const w = window;
|
|
688
|
+
const element = document.createElement('div');
|
|
689
|
+
element.id = OCEAN_CONTAINER_ID;
|
|
690
|
+
const slot = { element, attached: false };
|
|
691
|
+
oceanSlot = slot;
|
|
692
|
+
const releaseSlot = () => { if (oceanSlot === slot)
|
|
693
|
+
oceanSlot = null; };
|
|
694
|
+
let mounted = true;
|
|
695
|
+
let pendingCallback = null;
|
|
696
|
+
const callback = (data) => {
|
|
697
|
+
const resolve = pendingCallback;
|
|
698
|
+
pendingCallback = null;
|
|
699
|
+
resolve?.(data);
|
|
700
|
+
};
|
|
701
|
+
const unmount = () => {
|
|
702
|
+
if (!mounted)
|
|
703
|
+
return;
|
|
704
|
+
mounted = false;
|
|
705
|
+
if (w.oceanpaymentCallBack === callback)
|
|
706
|
+
delete w.oceanpaymentCallBack;
|
|
707
|
+
element.remove();
|
|
708
|
+
releaseSlot();
|
|
709
|
+
// A payment in flight stops waiting for the iframe and checks its status instead.
|
|
710
|
+
callback(OCEAN_UNMOUNTED);
|
|
711
|
+
};
|
|
712
|
+
signal?.addEventListener('abort', unmount, { once: true });
|
|
713
|
+
let config;
|
|
714
|
+
let ocean;
|
|
715
|
+
try {
|
|
716
|
+
config = opts.mode === 'redirect'
|
|
717
|
+
? { embedded: false, sandboxed: false }
|
|
718
|
+
: await this.getOceanPaymentConfig(checkoutSessionId);
|
|
719
|
+
if (signal?.aborted)
|
|
720
|
+
throw aborted();
|
|
721
|
+
if (config.embedded) {
|
|
722
|
+
ocean = await loadOceanSdk();
|
|
723
|
+
if (signal?.aborted)
|
|
724
|
+
throw aborted();
|
|
725
|
+
}
|
|
726
|
+
}
|
|
727
|
+
catch (error) {
|
|
728
|
+
unmount();
|
|
729
|
+
throw error;
|
|
730
|
+
}
|
|
731
|
+
let submitting = false;
|
|
732
|
+
if (!ocean) {
|
|
733
|
+
// Ocean's own page needs no card slot on this one.
|
|
734
|
+
releaseSlot();
|
|
735
|
+
return {
|
|
736
|
+
mode: 'redirect',
|
|
737
|
+
pay: async () => {
|
|
738
|
+
if (!mounted)
|
|
739
|
+
return { status: 'failed', error: 'The Ocean Payment form was removed' };
|
|
740
|
+
if (submitting)
|
|
741
|
+
return { status: 'failed', error: 'Payment already in progress' };
|
|
742
|
+
submitting = true;
|
|
743
|
+
try {
|
|
744
|
+
const data = await this.http.post(`/api/v1/checkout-sessions/${checkoutSessionId}/oceanpayment-link`, { returnUrl: opts.returnUrl ?? window.location.href });
|
|
745
|
+
if (!data?.url || !data.paymentId) {
|
|
746
|
+
return { status: 'failed', error: 'Ocean Payment is not available for this store' };
|
|
747
|
+
}
|
|
748
|
+
return { status: 'requires_redirect', redirectUrl: data.url, method: 'GET', paymentId: data.paymentId };
|
|
749
|
+
}
|
|
750
|
+
catch (error) {
|
|
751
|
+
return { status: 'failed', error: error instanceof Error ? error.message : String(error) };
|
|
752
|
+
}
|
|
753
|
+
finally {
|
|
754
|
+
submitting = false;
|
|
755
|
+
}
|
|
756
|
+
},
|
|
757
|
+
unmount,
|
|
758
|
+
};
|
|
759
|
+
}
|
|
760
|
+
const sdk = ocean;
|
|
761
|
+
host.appendChild(element);
|
|
762
|
+
slot.attached = true;
|
|
763
|
+
w.oceanpaymentCallBack = callback;
|
|
764
|
+
// Ocean refuses a checkout whose backUrl is not the page it was initialised on.
|
|
765
|
+
const backUrl = window.location.href;
|
|
766
|
+
// No "Name on Card" row: Ocean's iframe is a fixed 131px and clips it,
|
|
767
|
+
// and the buyer's name already travels as billing_firstName/lastName.
|
|
768
|
+
sdk.init(config.sandboxed, '', oceanLanguage(opts.locale), { showCardName: false });
|
|
769
|
+
const pay = async () => {
|
|
770
|
+
if (!mounted)
|
|
771
|
+
return { status: 'failed', error: 'The Ocean Payment card form was removed' };
|
|
772
|
+
if (submitting)
|
|
773
|
+
return { status: 'failed', error: 'Payment already in progress' };
|
|
774
|
+
submitting = true;
|
|
775
|
+
try {
|
|
776
|
+
// 1. Record the payment server-side and get Ocean's signed fields
|
|
777
|
+
const created = await this.http.post(`/api/v1/checkout-sessions/${checkoutSessionId}/oceanpayment-embedded-payment`, { backUrl });
|
|
778
|
+
if (!created?.paymentId || !created.params) {
|
|
779
|
+
return { status: 'failed', error: 'Failed to start the payment' };
|
|
780
|
+
}
|
|
781
|
+
const paymentId = created.paymentId;
|
|
782
|
+
// 2. Ocean's iframe charges the card it holds and answers through
|
|
783
|
+
// oceanpaymentCallBack: {code, msg} for a card-entry error, or the
|
|
784
|
+
// signed XML result.
|
|
785
|
+
const answer = await new Promise((resolve) => {
|
|
786
|
+
const timer = setTimeout(() => {
|
|
787
|
+
pendingCallback = null;
|
|
788
|
+
resolve(OCEAN_TIMED_OUT);
|
|
789
|
+
}, OCEAN_CALLBACK_TIMEOUT_MS);
|
|
790
|
+
pendingCallback = (data) => { clearTimeout(timer); resolve(data); };
|
|
791
|
+
sdk.checkout(created.params);
|
|
792
|
+
});
|
|
793
|
+
// No answer from the iframe: the card may still have been charged, so
|
|
794
|
+
// never invite a retry. Ocean's webhook settles the payment either way.
|
|
795
|
+
if (answer === OCEAN_TIMED_OUT || answer === OCEAN_UNMOUNTED) {
|
|
796
|
+
return this.pollUntilDone(paymentId);
|
|
797
|
+
}
|
|
798
|
+
if (answer && typeof answer === 'object' && 'msg' in answer) {
|
|
799
|
+
return { status: 'failed', error: String(answer.msg || 'Please check your card details.') };
|
|
800
|
+
}
|
|
801
|
+
// 3. The server verifies Ocean's signed result: 3DS, success, or decline
|
|
802
|
+
const result = await this.http.post(`/api/v1/checkout-sessions/${checkoutSessionId}/oceanpayment-embedded-result`, { paymentId, response: String(answer) });
|
|
803
|
+
if (result?.status === 'requires_action' && result.payUrl) {
|
|
804
|
+
// Ocean sends the shopper back to this page with nothing in the URL.
|
|
805
|
+
parkOceanPayment(paymentId);
|
|
806
|
+
return { status: 'requires_redirect', redirectUrl: result.payUrl, method: 'GET', paymentId };
|
|
807
|
+
}
|
|
808
|
+
if (result?.status === 'succeeded' || result?.status === 'pending') {
|
|
809
|
+
return this.pollUntilDone(paymentId);
|
|
810
|
+
}
|
|
811
|
+
return { status: 'failed', error: result?.message || 'Payment declined' };
|
|
812
|
+
}
|
|
813
|
+
catch (error) {
|
|
814
|
+
return { status: 'failed', error: error instanceof Error ? error.message : String(error) };
|
|
815
|
+
}
|
|
816
|
+
finally {
|
|
817
|
+
submitting = false;
|
|
818
|
+
}
|
|
819
|
+
};
|
|
820
|
+
return { mode: 'embedded', pay, unmount };
|
|
821
|
+
}
|
|
822
|
+
// ---------------------------------------------------------------------------
|
|
571
823
|
// High-level orchestrator — the ONE function beginners should call
|
|
572
824
|
// ---------------------------------------------------------------------------
|
|
573
825
|
/**
|
|
@@ -623,6 +875,13 @@ export class PaymentModule {
|
|
|
623
875
|
async finalize(input, opts) {
|
|
624
876
|
const payment = input.payment;
|
|
625
877
|
const returnUrl = opts?.returnUrl ?? (typeof window !== 'undefined' ? window.location.href : undefined);
|
|
878
|
+
// A Payments API (V3) store answers the payment to confirm, with no `payment`: a V2 answer
|
|
879
|
+
// always carries one, so it never enters this branch.
|
|
880
|
+
if (!payment) {
|
|
881
|
+
const started = readStartedPayment(input);
|
|
882
|
+
if (started)
|
|
883
|
+
return this.finalizeOnPaymentsApi(started, returnUrl);
|
|
884
|
+
}
|
|
626
885
|
if (payment.status === 'succeeded') {
|
|
627
886
|
this.emitPaid(input.order?.id, payment);
|
|
628
887
|
return { status: 'succeeded', payment, order: input.order };
|
|
@@ -646,6 +905,12 @@ export class PaymentModule {
|
|
|
646
905
|
* You can also call it manually in non-React apps.
|
|
647
906
|
*/
|
|
648
907
|
async resumeAfterRedirect(paymentId) {
|
|
908
|
+
// Only a Payments API payment this page sent to a redirect is parked; every other one polls.
|
|
909
|
+
const parked = takeParkedPaymentsApiReturn(paymentId);
|
|
910
|
+
if (parked) {
|
|
911
|
+
const url = typeof window !== 'undefined' ? window.location.href : undefined;
|
|
912
|
+
return this.onPaymentsApi((flow, host) => flow.resumeOnPaymentsApi(host, paymentId, parked.checkoutSessionId, url));
|
|
913
|
+
}
|
|
649
914
|
return this.pollUntilDone(paymentId);
|
|
650
915
|
}
|
|
651
916
|
/**
|
|
@@ -681,6 +946,8 @@ export class PaymentModule {
|
|
|
681
946
|
async maybeResumeFromUrl(opts) {
|
|
682
947
|
if (typeof window === 'undefined' && !opts?.url)
|
|
683
948
|
return null;
|
|
949
|
+
if (!opts?.url)
|
|
950
|
+
restoreOceanPaymentReturn();
|
|
684
951
|
const href = opts?.url ?? window.location.href;
|
|
685
952
|
let url;
|
|
686
953
|
try {
|
|
@@ -736,7 +1003,7 @@ export class PaymentModule {
|
|
|
736
1003
|
const start = Date.now();
|
|
737
1004
|
while (Date.now() - start < timeout) {
|
|
738
1005
|
const status = await this.getPaymentStatus(paymentId);
|
|
739
|
-
if (status.status === 'succeeded' ||
|
|
1006
|
+
if (status.status === 'succeeded' || FAILED_PAYMENT_STATUSES.has(status.status)) {
|
|
740
1007
|
return status;
|
|
741
1008
|
}
|
|
742
1009
|
await new Promise((r) => setTimeout(r, interval));
|
|
@@ -930,7 +1197,8 @@ export class PaymentModule {
|
|
|
930
1197
|
}
|
|
931
1198
|
return { status: 'succeeded', payment: status, order: status.order };
|
|
932
1199
|
}
|
|
933
|
-
|
|
1200
|
+
// Ocean writes `rejected` on a decline; `error` never recovers either.
|
|
1201
|
+
if (FAILED_PAYMENT_STATUSES.has(status.status)) {
|
|
934
1202
|
return { status: 'failed', error: status.status, payment: status };
|
|
935
1203
|
}
|
|
936
1204
|
// New unprocessed action appeared during polling
|
|
@@ -945,6 +1213,47 @@ export class PaymentModule {
|
|
|
945
1213
|
return { status: 'pending', paymentId };
|
|
946
1214
|
}
|
|
947
1215
|
// ---------------------------------------------------------------------------
|
|
1216
|
+
// Internal: Payments API (V3) stores
|
|
1217
|
+
// ---------------------------------------------------------------------------
|
|
1218
|
+
/** Keeps what a V3 pay answer does not say (its session, the method); returns the answer as is. */
|
|
1219
|
+
rememberPaymentsApiStart(answer, opts) {
|
|
1220
|
+
const started = answer && !answer.payment ? readStartedPayment(answer) : null;
|
|
1221
|
+
if (started) {
|
|
1222
|
+
this.paymentsApiStarts.set(started.paymentId, {
|
|
1223
|
+
checkoutSessionId: started.checkoutSessionId ?? opts.checkoutSessionId,
|
|
1224
|
+
...(opts.paymentMethod ? { paymentMethod: opts.paymentMethod } : {}),
|
|
1225
|
+
});
|
|
1226
|
+
}
|
|
1227
|
+
return answer;
|
|
1228
|
+
}
|
|
1229
|
+
/** Confirms a started V3 payment with payments-js and runs it to the V2-shaped result. */
|
|
1230
|
+
finalizeOnPaymentsApi(started, returnUrl) {
|
|
1231
|
+
const known = this.paymentsApiStarts.get(started.paymentId);
|
|
1232
|
+
this.paymentsApiStarts.delete(started.paymentId);
|
|
1233
|
+
return this.onPaymentsApi((flow, host) => flow.finalizeOnPaymentsApi(host, started, {
|
|
1234
|
+
checkoutSessionId: known?.checkoutSessionId,
|
|
1235
|
+
paymentMethod: known?.paymentMethod,
|
|
1236
|
+
returnUrl,
|
|
1237
|
+
}));
|
|
1238
|
+
}
|
|
1239
|
+
/** Runs `run` with the lazily imported V3 flow; a flow that cannot load is a failed payment. */
|
|
1240
|
+
async onPaymentsApi(run) {
|
|
1241
|
+
let flow;
|
|
1242
|
+
try {
|
|
1243
|
+
flow = await loadPaymentsApiFlow();
|
|
1244
|
+
}
|
|
1245
|
+
catch (error) {
|
|
1246
|
+
return { status: 'failed', error: error instanceof Error ? error.message : String(error) };
|
|
1247
|
+
}
|
|
1248
|
+
return run(flow, {
|
|
1249
|
+
http: this.http,
|
|
1250
|
+
storeId: this.storeId,
|
|
1251
|
+
checkout: this.checkout,
|
|
1252
|
+
stepConfig: this.readInjectedStepConfigRaw(),
|
|
1253
|
+
onPaid: (orderId, payment) => this.emitPaid(orderId, payment),
|
|
1254
|
+
});
|
|
1255
|
+
}
|
|
1256
|
+
// ---------------------------------------------------------------------------
|
|
948
1257
|
// Internal helpers
|
|
949
1258
|
// ---------------------------------------------------------------------------
|
|
950
1259
|
/**
|
|
@@ -965,6 +1274,20 @@ export class PaymentModule {
|
|
|
965
1274
|
return null;
|
|
966
1275
|
}
|
|
967
1276
|
}
|
|
1277
|
+
/** The whole injected step config (Tagada-hosted pages), or null. */
|
|
1278
|
+
readInjectedStepConfigRaw() {
|
|
1279
|
+
if (typeof window === 'undefined')
|
|
1280
|
+
return null;
|
|
1281
|
+
const raw = window.__TGD_STEP_CONFIG__;
|
|
1282
|
+
if (!raw)
|
|
1283
|
+
return null;
|
|
1284
|
+
try {
|
|
1285
|
+
return typeof raw === 'string' ? JSON.parse(raw) : raw;
|
|
1286
|
+
}
|
|
1287
|
+
catch {
|
|
1288
|
+
return null;
|
|
1289
|
+
}
|
|
1290
|
+
}
|
|
968
1291
|
/** Tracking hook. Never throws, never awaits: a pixel must not be able to break a payment. */
|
|
969
1292
|
emitPaid(orderId, payment) {
|
|
970
1293
|
if (!orderId || !this.onPaid)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payment.js","sourceRoot":"","sources":["../../../src/core/modules/payment.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"payment.js","sourceRoot":"","sources":["../../../src/core/modules/payment.ts"],"names":[],"mappings":"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"}
|
|
@@ -341,6 +341,8 @@ export type Subscription = {
|
|
|
341
341
|
readonly canceledAt: IsoDate | null;
|
|
342
342
|
readonly cancelReasonId: string | null;
|
|
343
343
|
readonly skippedDates: readonly IsoDate[];
|
|
344
|
+
/** The next billing dates on the subscription's schedule, the next one first: the ones a skip is checked against. Sent for active and trialing subscriptions. */
|
|
345
|
+
readonly upcomingBillingDates?: readonly IsoDate[] | undefined;
|
|
344
346
|
readonly lastPaymentFailedAt: IsoDate | null;
|
|
345
347
|
/** Paid charges so far, the first order included: what the option's `minimumCycles` counts. */
|
|
346
348
|
readonly paidOrdersCount?: number | undefined;
|