@agent-cards/sdk 0.23.25 → 0.23.26
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 +8 -0
- package/README.md +29 -1
- package/dist/agent-amount.generated.js +1 -1
- package/dist/capabilities.generated.js +1 -1
- package/dist/card-fields.generated.js +207 -117
- package/dist/client.d.ts +35 -0
- package/dist/client.js +38 -1
- package/dist/primer.generated.js +222 -132
- package/dist/stripe-checkout.generated.js +74 -44
- package/dist/tap-payments.generated.d.ts +10 -9
- package/dist/tap-payments.generated.js +28 -43
- package/package.json +2 -2
package/dist/client.d.ts
CHANGED
|
@@ -499,6 +499,17 @@ export declare const SUPPORTED_REGISTRY_FEATURES: readonly string[];
|
|
|
499
499
|
* amount, so the agent's pair, above zero, is the one the cardholder approves.
|
|
500
500
|
* Served on the same terms: only to a build that lists it, for a company Agentcard turned APS on for.
|
|
501
501
|
*
|
|
502
|
+
* `nexi_checkout_pay`: the card payment Nexi Checkout's card frame (checkout.dibspayment.eu/v1/, formerly Nets
|
|
503
|
+
* Easy) posts as JSON to its own pay endpoint, https://checkout.dibspayment.eu/api/v1/pay (the test host for a
|
|
504
|
+
* test row), under the merchant's checkout key and the payment's id. This build pauses only the card form's own
|
|
505
|
+
* body at that exact URL ("save my card", "remember me" and a card fee are refused at the pause, and the frame's
|
|
506
|
+
* card lookup while the number is typed continues untouched); the cardholder's device reads Nexi's own record of the
|
|
507
|
+
* payment and sends the card through the checkout relay, and the frame gets Nexi's answer as payment-core's judge
|
|
508
|
+
* rebuilt it: the payment done, or Nexi's 3-D Secure step, which the frame then runs in the agent's browser. The
|
|
509
|
+
* body names the payment's amount in minor units but not its currency, so the agent's pair, above zero, is the one
|
|
510
|
+
* the cardholder approves, and the API holds its amount to the body's. Served on the same terms: only to a build
|
|
511
|
+
* that lists it, for a company Agentcard turned Nexi Checkout on for.
|
|
512
|
+
*
|
|
502
513
|
* `barion_hosted_payment_page`: Barion's Smart Gateway, whose card-free link
|
|
503
514
|
* (secure.barion.com/Pay?Id=<payment id>, a plain GET the merchant's redirect or script sends
|
|
504
515
|
* the buyer to) this build pauses for the cardholder's device by its exact link (hosted-entry.ts),
|
|
@@ -506,6 +517,30 @@ export declare const SUPPORTED_REGISTRY_FEATURES: readonly string[];
|
|
|
506
517
|
* send (pre-claim.ts, barion.ts). Served on the same terms as Przelewy24's: only to a build that
|
|
507
518
|
* lists it, for a company Agentcard turned Barion on for.
|
|
508
519
|
*
|
|
520
|
+
* `paymob_checkout_pay`: the card payment Paymob's own checkout sends, from Unified Checkout
|
|
521
|
+
* (<country>.checkout.paymob.com) or from the Pixel card frame a merchant's page embeds, as JSON to
|
|
522
|
+
* https://<accept|uae|ksa|oman>.paymob.com/api/acceptance/payments/pay. This build pauses only the
|
|
523
|
+
* card form's own payment at that exact URL: a card Paymob saved, a payment that keeps the card,
|
|
524
|
+
* pays in installments, splits, converts or names a Paymob account, and a payment key that enrolls
|
|
525
|
+
* a subscription or names no amount are refused at the pause, and another method's payment with no
|
|
526
|
+
* card (a wallet, Apple Pay, cash) continues to Paymob untouched. The cardholder's device sends the
|
|
527
|
+
* payment to Paymob itself with the real card, and the checkout gets Paymob's answer as payment-core's
|
|
528
|
+
* judge rebuilt it. The payment key names the amount and currency, so an agent pair is optional and
|
|
529
|
+
* the API holds one to the key's figure. Served on the same terms: only to a build that lists it, for
|
|
530
|
+
* a company Agentcard turned Paymob on for.
|
|
531
|
+
*
|
|
532
|
+
* `payu_latam_webcheckout_card`: the card submit PayU Latam's WebCheckout page posts to
|
|
533
|
+
* checkout.payulatam.com/ppp-web-gateway-payu/checkout/submit/<country>/credit_card/<key>
|
|
534
|
+
* (sandbox.checkout.payulatam.com on PayU's test platform). This build pauses only the card form's
|
|
535
|
+
* own submit at that exact URL (a ticked save-my-card box, a card PayU saved, installments and a
|
|
536
|
+
* test order on the live host are refused at the pause); the cardholder's device writes the real
|
|
537
|
+
* card into the paused body and sends it to PayU itself, and the page gets PayU's answer as
|
|
538
|
+
* payment-core's judge reads it. The page's BIN lookup (checkout/card_info/) carries the typed
|
|
539
|
+
* placeholder and continues, as the page needs its answer to fill the card's facts. The submit's
|
|
540
|
+
* copy of the order is the browser's, so the agent's pair, above zero, is the one the cardholder
|
|
541
|
+
* approves, which the API holds to the order PayU reads back. Served on the same terms: only to a
|
|
542
|
+
* build that lists it, for a company Agentcard turned PayU Latam on for.
|
|
543
|
+
*
|
|
509
544
|
* The list itself is capabilities.json, sorted, one per line (scripts/generate-capabilities.mjs).
|
|
510
545
|
*/
|
|
511
546
|
export declare const SUPPORTED_CAPABILITIES: readonly string[];
|
package/dist/client.js
CHANGED
|
@@ -492,6 +492,17 @@ export const SUPPORTED_REGISTRY_FEATURES = ['card_fields', 'checkout_sessions'];
|
|
|
492
492
|
* amount, so the agent's pair, above zero, is the one the cardholder approves.
|
|
493
493
|
* Served on the same terms: only to a build that lists it, for a company Agentcard turned APS on for.
|
|
494
494
|
*
|
|
495
|
+
* `nexi_checkout_pay`: the card payment Nexi Checkout's card frame (checkout.dibspayment.eu/v1/, formerly Nets
|
|
496
|
+
* Easy) posts as JSON to its own pay endpoint, https://checkout.dibspayment.eu/api/v1/pay (the test host for a
|
|
497
|
+
* test row), under the merchant's checkout key and the payment's id. This build pauses only the card form's own
|
|
498
|
+
* body at that exact URL ("save my card", "remember me" and a card fee are refused at the pause, and the frame's
|
|
499
|
+
* card lookup while the number is typed continues untouched); the cardholder's device reads Nexi's own record of the
|
|
500
|
+
* payment and sends the card through the checkout relay, and the frame gets Nexi's answer as payment-core's judge
|
|
501
|
+
* rebuilt it: the payment done, or Nexi's 3-D Secure step, which the frame then runs in the agent's browser. The
|
|
502
|
+
* body names the payment's amount in minor units but not its currency, so the agent's pair, above zero, is the one
|
|
503
|
+
* the cardholder approves, and the API holds its amount to the body's. Served on the same terms: only to a build
|
|
504
|
+
* that lists it, for a company Agentcard turned Nexi Checkout on for.
|
|
505
|
+
*
|
|
495
506
|
* `barion_hosted_payment_page`: Barion's Smart Gateway, whose card-free link
|
|
496
507
|
* (secure.barion.com/Pay?Id=<payment id>, a plain GET the merchant's redirect or script sends
|
|
497
508
|
* the buyer to) this build pauses for the cardholder's device by its exact link (hosted-entry.ts),
|
|
@@ -499,6 +510,30 @@ export const SUPPORTED_REGISTRY_FEATURES = ['card_fields', 'checkout_sessions'];
|
|
|
499
510
|
* send (pre-claim.ts, barion.ts). Served on the same terms as Przelewy24's: only to a build that
|
|
500
511
|
* lists it, for a company Agentcard turned Barion on for.
|
|
501
512
|
*
|
|
513
|
+
* `paymob_checkout_pay`: the card payment Paymob's own checkout sends, from Unified Checkout
|
|
514
|
+
* (<country>.checkout.paymob.com) or from the Pixel card frame a merchant's page embeds, as JSON to
|
|
515
|
+
* https://<accept|uae|ksa|oman>.paymob.com/api/acceptance/payments/pay. This build pauses only the
|
|
516
|
+
* card form's own payment at that exact URL: a card Paymob saved, a payment that keeps the card,
|
|
517
|
+
* pays in installments, splits, converts or names a Paymob account, and a payment key that enrolls
|
|
518
|
+
* a subscription or names no amount are refused at the pause, and another method's payment with no
|
|
519
|
+
* card (a wallet, Apple Pay, cash) continues to Paymob untouched. The cardholder's device sends the
|
|
520
|
+
* payment to Paymob itself with the real card, and the checkout gets Paymob's answer as payment-core's
|
|
521
|
+
* judge rebuilt it. The payment key names the amount and currency, so an agent pair is optional and
|
|
522
|
+
* the API holds one to the key's figure. Served on the same terms: only to a build that lists it, for
|
|
523
|
+
* a company Agentcard turned Paymob on for.
|
|
524
|
+
*
|
|
525
|
+
* `payu_latam_webcheckout_card`: the card submit PayU Latam's WebCheckout page posts to
|
|
526
|
+
* checkout.payulatam.com/ppp-web-gateway-payu/checkout/submit/<country>/credit_card/<key>
|
|
527
|
+
* (sandbox.checkout.payulatam.com on PayU's test platform). This build pauses only the card form's
|
|
528
|
+
* own submit at that exact URL (a ticked save-my-card box, a card PayU saved, installments and a
|
|
529
|
+
* test order on the live host are refused at the pause); the cardholder's device writes the real
|
|
530
|
+
* card into the paused body and sends it to PayU itself, and the page gets PayU's answer as
|
|
531
|
+
* payment-core's judge reads it. The page's BIN lookup (checkout/card_info/) carries the typed
|
|
532
|
+
* placeholder and continues, as the page needs its answer to fill the card's facts. The submit's
|
|
533
|
+
* copy of the order is the browser's, so the agent's pair, above zero, is the one the cardholder
|
|
534
|
+
* approves, which the API holds to the order PayU reads back. Served on the same terms: only to a
|
|
535
|
+
* build that lists it, for a company Agentcard turned PayU Latam on for.
|
|
536
|
+
*
|
|
502
537
|
* The list itself is capabilities.json, sorted, one per line (scripts/generate-capabilities.mjs).
|
|
503
538
|
*/
|
|
504
539
|
export const SUPPORTED_CAPABILITIES = DECLARED_CAPABILITIES;
|
|
@@ -602,6 +637,8 @@ export const SUPPORTED_CAPABILITIES = DECLARED_CAPABILITIES;
|
|
|
602
637
|
* create route's refusal, not in this comment.
|
|
603
638
|
*/
|
|
604
639
|
const REVOLUT_PSP = 'revolut';
|
|
640
|
+
/** Nexi Checkout's card payment names the payment's amount in minor units but not its currency, as Revolut's does. */
|
|
641
|
+
const NEXI_CHECKOUT_PSP = 'nexi_checkout';
|
|
605
642
|
const AGENT_AMOUNT_PROCESSORS = AGENT_AMOUNT.processors;
|
|
606
643
|
/** The ones a zero amount is refused for, like a missing one (authorize()). */
|
|
607
644
|
const ABOVE_ZERO_PROCESSORS = AGENT_AMOUNT.aboveZero;
|
|
@@ -888,7 +925,7 @@ export class AmountRequiredError extends Error {
|
|
|
888
925
|
constructor(psp) {
|
|
889
926
|
const processor = PROCESSOR_NAMES[psp] ?? psp;
|
|
890
927
|
// A Payrexx card request names the frame's total, but the merchant's page charges its own total after the token.
|
|
891
|
-
const lacks = psp === REVOLUT_PSP ? 'names its amount but not its currency'
|
|
928
|
+
const lacks = psp === REVOLUT_PSP || psp === NEXI_CHECKOUT_PSP ? 'names its amount but not its currency'
|
|
892
929
|
: psp === PAYREXX_PSP ? "only mints a token the merchant's page charges later"
|
|
893
930
|
: psp === TAP_PAYMENTS_PSP ? 'does not decide the amount charged' : 'names no amount';
|
|
894
931
|
// "An Omise payment request", "A Clover payment request": the article follows the name's first letter.
|