# Table of Contents - [Overview | Hyperswitch](#overview-hyperswitch) - [Hyperswitch architecture | Hyperswitch](#hyperswitch-architecture-hyperswitch) - [Roadmap - Q1 2026 | Hyperswitch](#roadmap-q1-2026-hyperswitch) - [SDK Payment flows | Hyperswitch](#sdk-payment-flows-hyperswitch) - [Previous Roadmap - Q3 2025 | Hyperswitch](#previous-roadmap-q3-2025-hyperswitch) - [Previous Roadmap - Q4 2025 | Hyperswitch](#previous-roadmap-q4-2025-hyperswitch) - [Previous roadmap - Q1 2024 | Hyperswitch](#previous-roadmap-q1-2024-hyperswitch) - [Vault-Then-Pay | Hyperswitch](#vault-then-pay-hyperswitch) - [Previous Roadmap - Q3 2024 | Hyperswitch](#previous-roadmap-q3-2024-hyperswitch) - [Previous Roadmap - Q4 2024 | Hyperswitch](#previous-roadmap-q4-2024-hyperswitch) - [Previous roadmap - Q4 2023 | Hyperswitch](#previous-roadmap-q4-2023-hyperswitch) - [Storage | Hyperswitch](#storage-hyperswitch) - [Previous Roadmap - Q2 2025 | Hyperswitch](#previous-roadmap-q2-2025-hyperswitch) - [Previous Roadmap - Q2 2024 | Hyperswitch](#previous-roadmap-q2-2024-hyperswitch) - [A Payments Switch with virtually zero overhead | Hyperswitch](#a-payments-switch-with-virtually-zero-overhead-hyperswitch) - [Previous Roadmap - Q1 2025 | Hyperswitch](#previous-roadmap-q1-2025-hyperswitch) - [Payments Flows | Hyperswitch](#payments-flows-hyperswitch) - [Overcapture | Hyperswitch](#overcapture-hyperswitch) - [Recurring payments | Hyperswitch](#recurring-payments-hyperswitch) - [Authorizations | Hyperswitch](#authorizations-hyperswitch) - [Saving Payment Method | Hyperswitch](#saving-payment-method-hyperswitch) - [Pay-Then-Vault | Hyperswitch](#pay-then-vault-hyperswitch) - [Saved Card | Hyperswitch](#saved-card-hyperswitch) - [Smart Routing | Hyperswitch](#smart-routing-hyperswitch) - [WooCommerce Plugin | Hyperswitch](#woocommerce-plugin-hyperswitch) - [Checkout Experience | Hyperswitch](#checkout-experience-hyperswitch) - [Subscriptions | Hyperswitch](#subscriptions-hyperswitch) - [Automatic Tax calculation for Express Checkout wallets | Hyperswitch](#automatic-tax-calculation-for-express-checkout-wallets-hyperswitch) - [Local Setup Guide | Self Hosting | Hyperswitch](#local-setup-guide-self-hosting-hyperswitch) - [Deployment Models | Self Hosting | Hyperswitch](#deployment-models-self-hosting-hyperswitch) - [PG Agnostic Card Forwarding | Hyperswitch](#pg-agnostic-card-forwarding-hyperswitch) - [Customizable and Native Integrations | Hyperswitch](#customizable-and-native-integrations-hyperswitch) - [E-commerce Platform Plugins by Hyperswitch | Hyperswitch](#e-commerce-platform-plugins-by-hyperswitch-hyperswitch) - [Reconciliation V1 | Hyperswitch](#reconciliation-v1-hyperswitch) - [Node | Hyperswitch](#node-hyperswitch) - [Manual Capture | Hyperswitch](#manual-capture-hyperswitch) - [Saleor App | Hyperswitch](#saleor-app-hyperswitch) - [Payment Features | Hyperswitch](#payment-features-hyperswitch) - [Getting Started with Recon | Hyperswitch](#getting-started-with-recon-hyperswitch) - [Setup | Hyperswitch](#setup-hyperswitch) --- # Overview | Hyperswitch ![Page cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-1b127275913e609c28c301cc438186fd49478532%252FHero%2520visual%2520V6%2520%282%29.png%3Falt%3Dmedia&width=1248&dpr=3&quality=100&sign=7880a793&sv=2) [Hyperswitcharrow-up-right](https://hyperswitch.io/) is an open-source payments platform from [Juspayarrow-up-right](https://juspay.io/us) , designed to simplify global payments for digital businesses. Juspay has been a global leader offering payment infrastructure solution for banks and merchants for 12+ years, processing over [300 Mn+ daily transactionsarrow-up-right](https://juspay.io/newsroom/juspay-secures-usd50-million-investment-from-westbridge-capital) and an annualized total payment value of $1 Tn+ ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/readme-2#we-offer-two-distinct-solutions) We offer two distinct solutions [](https://docs.hyperswitch.io/integration-guide/payment-suite) **Payments Suite** An end-to-end orchestration layer that unifies payments across providers, networks, and channels. It enables seamless checkout, dynamic routing, retries and redundancy for reliability. **Optimize payments at scale without adding complexity to your infrastructure.** [](https://docs.hyperswitch.io/other-features/payments-modules) **Payment Modules** A flexible, modular approach to integrate only the payment capabilities you need. Choose from intelligent routing, vault, reconciliation, cost observability, smart retries, and APM widgets. **Enhance performance without overhauling your existing payment stack.** ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/readme-2#enterprise-grade-open-payments-infrastructure) Enterprise Grade Open Payments Infrastructure At Juspay, we believe that payments infrastructure should be transparent, adaptable, and built for merchant control—not vendor lock-in. That’s why we made the bold decision to take our Payment Orchestrator open source. Enterprise merchants operate in a world where payment agility is a competitive advantage. Traditional closed-loop platforms dictate their own rules, pricing, and pace of innovation. Based on our 12-years of experience building and scaling global payment systems, we decided to take a different approach—giving merchants the power to customize, optimize, and scale payments to fit their unique business needs. Guided by the learnings from our enterprise go-lives, we have been working on unbundling a range of stand-alone solutions from our broader technology stack to make them more accessible to merchants looking to expand their in-house system engineering capability. These stand-alone solutions range from services for [intelligent / dynamic payment routingarrow-up-right](https://github.com/juspay/decision-engine) , [payment methods vaultingarrow-up-right](https://github.com/juspay/hyperswitch-card-vault) , [cost observabilityarrow-up-right](https://hyperswitch.io/cost-observability) , [PSP-agnostic authentication](https://docs.hyperswitch.io/integration-guide/workflows/3ds-decision-manager) , and an [APMs widget](https://docs.hyperswitch.io/integration-guide/payment-experience/payment/enable-alternate-payment-method-widgets) that can be embedded anywhere. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-bc0e3bab6686e4f20d7e7e795589e3dda21b2de9%252Fimage%2520%28166%29.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=253f05d5&sv=2) ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/readme-2#technical-foundation-open-system-architecture-with-enterprise-scale) Technical Foundation: Open System Architecture with Enterprise-Scale Hyperswitch's technical architecture combines open source innovation with enterprise-grade reliability, built to power modern payment operations. #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/readme-2#id-1.-open-source-transparency-and-extensibility) 1\. Open-Source Transparency & Extensibility * Complete Transparency & Confidence: Full visibility into payment orchestration with no black boxes, enabling informed decision-making and customization. Hyperswitch is maintained publicly on [GitHubarrow-up-right](https://github.com/juspay/hyperswitch) * [Open Roadmap & Innovation](https://docs.hyperswitch.io/about-hyperswitch/roadmap) : Collaborative development approach that allows merchants to influence and contribute to the platform's evolution * Speed to Market: Accelerate implementation and changes by building consensus faster through transparent architecture #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/readme-2#id-2.-enterprise-grade-reliability-and-security-model) 2\. Enterprise-Grade Reliability & Security Model * Built on battle-tested systems by Juspay's 1000+ engineers, the same team that powers 300M+ transactions daily for [global enterprisesarrow-up-right](https://juspay.io/customer-stories) like Amazon, Agoda, Zurich and many more. * [Comprehensive security framework](https://docs.hyperswitch.io/other-features/security-and-compliance) including PCI compliance, tokenization, and security certifications * Proven reliability at scale, designed for high-performance payment processing ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/readme-2#core-system-architecture-principles) [Core System Architecture Principlesarrow-up-right](https://hyperswitch.io/blog/building-hyperswitch-the-world-s-first-open-source-payments-platform) **Reliability** * Graceful degradation - Critical path stays intact; non-core flows are optional * Recover failed transactions through intelligent retry logic * Strongly typed Rust ensures safety at compile time * Staggered releases **Scalability** * Horizontal scalable architecture * Supports peak loads up to ~10K TPS * Connection pooling * First class support for K-V mode [**Performance**](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead) * Cache where-ever possible * Configurations * Master data * Multi-level caching **Modularity** * Works with an [external or an in-house Vault](https://docs.hyperswitch.io/integration-guide/workflows/vault) or Tokenization service * Offers [standalone products](https://docs.hyperswitch.io/other-features/payments-modules) * Integrate with connectors [beyond Payment Service Providers](https://docs.hyperswitch.io/other-features/connectors) [**Security & Compliance**](https://docs.hyperswitch.io/other-features/security-and-compliance/security) * Hyperswitch suite is PCI SSS validated * Mask at Source * Isolation and Encryption **Observability** * Business & Tech metrics * Point debugging * Application / Infrastructure alerts with custom pipelines * Remote monitoring for self-hosted merchants **Quality & Maintenance** * Strict PR checks * Automated E2E & Regression testing * Clear documentation with [release notesarrow-up-right](https://github.com/juspay/hyperswitch/releases) **Get ready! We welcome you to the future of digital payments!** Last updated 11 hours ago Was this helpful? * [We offer two distinct solutions](https://docs.hyperswitch.io/about-hyperswitch/readme-2#we-offer-two-distinct-solutions) * [Enterprise Grade Open Payments Infrastructure](https://docs.hyperswitch.io/about-hyperswitch/readme-2#enterprise-grade-open-payments-infrastructure) * [Technical Foundation: Open System Architecture with Enterprise-Scale](https://docs.hyperswitch.io/about-hyperswitch/readme-2#technical-foundation-open-system-architecture-with-enterprise-scale) * [Core System Architecture Principles](https://docs.hyperswitch.io/about-hyperswitch/readme-2#core-system-architecture-principles) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Hyperswitch architecture | Hyperswitch Hyperswitch comprises two distinct app services: **Router** and **Scheduler** which in turn consists of **Producer** and **Consumer**, where each service has its specific responsibilities to process payment-related tasks efficiently. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2Fgithub.com%2Fjuspay%2Fhyperswitch%2Fraw%2Fmain%2Fdocs%2Fimgs%2Fhyperswitch-architecture.png&width=768&dpr=3&quality=100&sign=92b0e869&sv=2) Typical Deployment ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#router) Router The Router is the main component of Hyperswitch, serving as the primary crate where all the core payment functionalities are implemented. It is a crucial component responsible for managing and coordinating different aspects of the payment processing system. Within the Router, the core payment flows serve as the central hub through which all payment activities are directed. When a payment request is received, it goes through the Router, which handles important processing and routing tasks. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#scheduler) Scheduler Suppose a scenario where a customer has saved their card details in your application, but for security reasons, you want to remove the saved card information after a certain period. To automate this process, Scheduler comes into picture. It schedules a task with a specific time for execution and stores it in the database. When the scheduled time arrives, the job associated with the task starts executing, here in this case, allowing the saved card details to be deleted automatically. One other situation in which we use this service in Hyperswitch is when we want to notify the merchant that their api key is about to expire. #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#producer-job-scheduler) Producer (Job scheduler) The Producer is one of the components responsible for the Scheduler's functionality. Its primary responsibility is to handle the tracking of tasks which are yet to be executed. When the Router Service inserts a new task into the database, specifying a scheduled time, the producer retrieves the task from the database when the scheduled time is up and proceeds to group or batch these tasks together. These batches of tasks are then stored in a Redis queue, ready for execution, which will be picked up by consumer service. #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#consumer-job-executor) Consumer (Job executor) The Consumer is another key component of the Scheduler. Its main role is to retrieve batches of tasks from the Redis queue for processing, which were previously added by the Producer. Once the tasks are retrieved, the Consumer executes them. It ensures that the tasks within the batches are handled promptly and in accordance with the required processing logic. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#database) Database #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#postgres) Postgres The application relies on a PostgreSQL database for storing various types of data, including customer information, merchant details, payment-related data, and other relevant information. The application maintains a master-database and replica-database setup to optimize read and write operations. #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#redis) Redis In addition to the database, Hyperswitch incorporates Redis for two main purposes. It is used to **cache** frequently accessed data in order to decrease the application latencies and reduce the load on the database. It is also used as a **queuing mechanism** by the Scheduler. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#locker) Locker The application utilizes a Rust locker built with a GDPR compliant PII (personal identifiable information) storage. It also uses secure encryption algorithms to be fully compliant with **PCI DSS** (Payment Card Industry Data Security Standard) requirements, this ensures that all payment-related data is handled and stored securely. You can find the source code of locker [herearrow-up-right](https://github.com/juspay/hyperswitch-card-vault) . ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#monitoring) Monitoring ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2Fgithub.com%2Fjuspay%2Fhyperswitch%2Fraw%2Fmain%2Fdocs%2Fimgs%2Fhyperswitch-monitoring-architecture.png&width=768&dpr=3&quality=100&sign=c8ca874e&sv=2) HyperSwitch Monitoring Architecture The monitoring services in Hyperswitch ensure the effective collection and analysis of metrics to monitor the system's performance. Hyperswitch pushes the metrics and traces in **OTLP** format to the [OpenTelemetry collectorarrow-up-right](https://opentelemetry.io/docs/collector/) . [Prometheusarrow-up-right](https://prometheus.io/docs/introduction/overview/) utilizes a pull-based model, where it periodically retrieves application metrics from the OpenTelemetry collector. [Promtailarrow-up-right](https://grafana.com/docs/loki/latest/clients/promtail/) scrapes application logs from the router, which in turn are pushed to the [Lokiarrow-up-right](https://grafana.com/docs/loki/latest/) instance. Users can query and visualize the logs in Grafana through Loki. [Tempoarrow-up-right](https://grafana.com/docs/tempo/latest/) is used for querying the application traces. Except for the OpenTelemetry collector, all other monitoring services like Loki, Tempo, Prometheus can be easily replaced with a preferred equivalent, with minimal to no code changes. Last updated 11 hours ago Was this helpful? * [Router](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#router) * [Scheduler](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#scheduler) * [Database](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#database) * [Locker](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#locker) * [Monitoring](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture#monitoring) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Roadmap - Q1 2026 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, previous roadmap, findings over the previous quarter, what we heard from the community as feature requests. 👂And as always, we listen to your feedback and adapt our plans if needed. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#recap-of-q2-2024) Recap of Q4 2025 **Connectors** * **New PSP integrations** – Gigadat and Loonio for Interac e Transfer; Tesouro for Cards, Apple Pay, and Google Pay; Paysafe for Cards, Apple Pay, Skrill, Interac e Transfer, and Paysafecards; Finix for Cards, Apple Pay, and Google Pay * **Integration depth** – Expanded wallet and alternative rail coverage across new connectors, adding broader support for Apple Pay and Google Pay, plus regional payment rails like Interac e Transfer, and additional tender types like Skrill and Paysafecards through Paysafe **Core orchestration** * **Platform Merchants support:** Support for Platform merchant use-cases to share customers and payment methods across their managed-merchants * **Split Payments:** Support for split payments with gift cards to enable combined payments within a single transaction * **Error code enhancements** – Issuer error codes added to the Gateway Status Mapping table to improve response mapping and retry decisions; unified error codes expanded to generate clearer, consistent user facing error messages across channels * **Real time payment method eligibility** – Merchant level risk based eligibility checkpoints added before payment confirmation to reduce fraud exposure and improve authorization performance **Vault** * **Guest checkout tokenization** – Token creation without customer creation in Hyperswitch, enabling secure and PCI compliant handling of guest one time and repeat transactions, with flexibility to map tokens to merchant owned identifiers * **Volatile tokenization** – Support for time bound temporary tokens for PAN and network token flows, enabling secure session based authorizations and one time payment experiences without long term vault storage **Revenue recovery** Account Updater to automatically refresh stored card credentials for expired, replaced, or reissued cards, improving continuity for stored payment methods and recovering failures tied to outdated card data #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#core-values) Core Values Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, and at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#themes-for-roadmap) Themes for Roadmap Last year, Hyperswitch was made more modular to provide businesses with focused solutions to specific payment-related problems. Hence, our roadmap includes updates for each module. A summary of these product modules is provided below : 1. **Orchestration:** The core module supporting workflows unifying various connector 2. **Vault:** Simplifying PCI compliance and data privacy regulations through a standalone Card Vault 3. **Authentication:** Data driven 3DS routing decision system and unified authentication SDK to encompass the diversity of authentication products. 4. **Revenue Recovery:** A payment recovery sub-system with a customizable retry engine that reduces passive churn to recover failed subscription payments. 5. **Reconciliation:** Improving Finops efficiency in multi-acquirer settlement reconciliation. 6. **Cost Observability:** Tracking and reducing payment processing costs via PSP reports. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#roadmap) Roadmap ------------------------------------------------------------------------------------- #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#core-orchestration) Core Orchestration **Platform Managed Payments** We plan to introduce platform capabilities that allow platforms to trigger and manage key payment operations on behalf of their managed merchants. This will include Payments, Refunds, Webhooks, and Disputes. **Recurring Payments Expansion** We plan to expand recurring payment capabilities across cards and bank-based methods, and improve lifecycle handling for recurring flows. This will include support for storing payment credentials and enabling recurring payments across ACH and other APMs, enabling PSP triggered recurring payments with lifecycle handling and reconciliation support, and supporting recurring payment flows using only card PAN and expiry without requiring Network Tokenization (NTI). **Retry Enhancements to Improve Authorization Rates** We plan to enhance retry tooling across APMs and merchant-initiated flows to help improve approval rates and reduce avoidable drop-offs. This will include automatic retries support for Google Pay and other APMs, support for manual retries in MIT flows, and support for merchants to configure retry rules for different error codes. **Relay for Post Payment Actions** We plan to enable Hyperswitch to act as a relay to orchestrate incremental and post payment actions on the original order across PSPs. This will support workflows such as incremental authorization, capture, refund, void, and churn recovery. **Instalments** We plan to support installment-based payments across supported payment methods, enabling merchants to offer flexible payment options without changing their orchestration setup. #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#connectors) Connectors **New Integrations** We plan to expand connector coverage with new PSP integrations including Banco Do Brasil, Cielo, Caixa, Bradesco, Bancoob, Worldpay Access Modular, and HyperPG. **Enhancing Existing Integrations** We also plan to enhance existing integrations to expand payment method coverage and improve reliability. This will include Payload (ACH), Itau Bank (Pix, Boleto), Stripe Connect (Apple Pay, Google Pay), Dwolla (ACH recurring), Worldpay WPG (3DS cards with fraud ID), Xendit (QRIS), and Deutsche Bank. [Learn more about the existing Connectors supported in Hyperswitch here.arrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/connectors) ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#vault) Vault **Multi Vault Support** We plan to expand Vault capabilities to enable seamless use of both Juspay-hosted and external vaults across self-hosted and SaaS Hyperswitch deployments. **Alt ID Network Tokenization for Guest Checkout** We plan to enable alternate identifier-based flows for network tokenization in guest checkout scenarios, allowing tokenization without requiring full customer creation. **Extended Proxy API Payload Support** We plan to extend Proxy APIs to support non-JSON request formats such as application/x-www-form-urlencoded, XML, and other upstream formats, to improve compatibility with legacy gateway patterns. **Custom Token Formats** We plan to support configurable and merchant-defined token formats across Vault and payment flows, giving merchants more control over token design and interoperability. **Vault Observability and Auditability** We plan to add analytics, audit trails, and observability capabilities for the Vault service, improving traceability, governance, and operational debugging. [Learn more about the existing Vault Services and workflows here.arrow-up-right](https://docs.hyperswitch.io/about-hyperswitch/payments-modules/vault) ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#authentication-and-checkout-experience) Authentication and Checkout Experience **SDK Accessibility Enhancements** We are enhancing the checkout SDK to ensure accessibility compliance and inclusivity for all users. Updates will include improved keyboard navigation, screen reader support, and visual contrast adjustments aligned with WCAG accessibility standards. **Framework Compatibility Upgrades** We plan to add compatibility upgrades across Web and Native experiences. This will include support for React 19 for Web and support for React Native's new architecture for Native. **Swift Package Manager Migration (iOS)** We plan to migrate iOS integration to Swift Package Manager to consolidate all frameworks into a unified and modular package with clear dependency boundaries. This will replace CocoaPods for simpler merchant integration and cleaner versioning. **Optional OTA Support for SDKs** We plan to introduce optional OTA (Airborne) support for Hyperswitch SDKs. Merchants will be able to opt into Hyperswitch-managed updates, approval-gated releases, self-hosted OTA, or fully disable OTA based on governance, compliance, and risk requirements. **Apple Pay Beyond Safari** We plan to enable Apple Pay support across non-Safari browsers where supported, improving reach and checkout conversion without changing existing integrations. **Subscription Based SDK Events** We plan to enable subscription-based events across SDK flows, allowing merchants to subscribe to granular lifecycle signals for real time decisioning, observability, and tighter integration with merchant systems. Examples include BIN, field validation outcomes, and button clicks. **Custom In SDK Messaging** We plan to support custom in SDK messaging so merchants can configure and display contextual messages (info, warnings, errors, compliance text) within the Hyperswitch SDK UI, with an optional fallback to default SDK messaging for a consistent user experience. [Learn more about the existing Authentication and Checkout Experience capabilities here.arrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/merchant-controls) ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#revenue-recovery) Revenue Recovery **Advanced Retry Logic for Hard Declines** We plan to introduce smarter recovery for hard declines, where the system identifies transactions that were falsely marked as hard declines and retries them intelligently. **Recovery Analytics in the Dashboard** We plan to add analytics that provide merchants with real-time visibility into recovery performance through the dashboard. **Hosted Recovery with Self-Hosted Orchestration** We plan to support using self-hosted orchestration with Juspay-hosted revenue recovery, enabling merchants to adopt recovery improvements without changing their orchestration deployment model. [Learn more about the existing Revenue Recovery features and workflows here.arrow-up-right](https://docs.hyperswitch.io/about-hyperswitch/payments-modules/revenue-recovery) ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#reconciliation) Reconciliation **Tolerance & Aging** We are enhancing reconciliation with **Tolerance Rules** and **Aging** to reduce manual effort and improve operational visibility. Merchants can define variance thresholds for automatic reconciliation, with any residual differences routed to a dedicated tolerance account for tracking and auditability. Aging provides visibility into unmatched transactions and enables configurable time-based thresholds to proactively identify stale items. We plan to provide visibility into transactions awaiting a match and allow time-based threshold monitoring to help teams track stale reconciliation items. [Learn more about the existing Reconciliation features and workflows herearrow-up-right](https://docs.hyperswitch.io/about-hyperswitch/payments-modules/reconciliation) . ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap#control-centre) Control Centre **Developer Observability & Self-Service Diagnostics** We plan to expose real-time technical metrics and system health insights for platforms, enabling faster self-diagnosis and reducing dependency on support. **Contextual Alerts & Configurable Automation** We plan to add a configurable, multi-merchant alerting system to detect PSP downtimes, error spikes, and emerging failure patterns. **Embeddable Components** We plan to introduce widgets for payment configuration and operations that can be integrated directly into platform dashboards. This will enable platforms to manage payments, connector integrations, and refunds within their own dashboard experience. **Theme Management UI** We are building a self-serve Theme Management UI that allows merchants to configure and manage dashboard and email branding across **Organization, Merchant, and Profile** levels. Merchants can customize brand colors, sidebar styles, buttons, logos, favicons, and email branding, with a **live preview** to instantly visualize changes before applying them. Themes follow a clear precedence model (**Profile → Merchant → Organization**), enabling flexible overrides without duplication. Organizations can define a base theme, merchants can override it for distinct brands, and profiles can further customize when needed—ensuring consistent yet scalable branding across complex setup **Want to contribute to the roadmap?** [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Recap of Q4 2025](https://docs.hyperswitch.io/about-hyperswitch/roadmap#recap-of-q2-2024) * [Themes for Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap#themes-for-roadmap) * [Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap#roadmap) * [Vault](https://docs.hyperswitch.io/about-hyperswitch/roadmap#vault) * [Authentication and Checkout Experience](https://docs.hyperswitch.io/about-hyperswitch/roadmap#authentication-and-checkout-experience) * [Revenue Recovery](https://docs.hyperswitch.io/about-hyperswitch/roadmap#revenue-recovery) * [Reconciliation](https://docs.hyperswitch.io/about-hyperswitch/roadmap#reconciliation) * [Control Centre](https://docs.hyperswitch.io/about-hyperswitch/roadmap#control-centre) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # SDK Payment flows | Hyperswitch [hashtag](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#payments-101) [Payments 101arrow-up-right](https://hyperswitch.io/blogs/payments-101-for-a-developer) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- If you're complete beginner to Digital Payments, take a look at this [Payments 101 arrow-up-right](https://hyperswitch.io/blogs/payments-101-for-a-developer) blog to get familiar with terminologies. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#payments-flow) **Payments flow** --------------------------------------------------------------------------------------------------------------- There are multiple stages in a Payment flow depending on the payment methods that are involved. Considering an one-time payment method where there was no redirection involved, the following stages form the Payment flow: **a) Creating a Payment:** When your customer wants to checkout, create a payment by hitting the payments/create endpoint. Fetch and store the payment\_id and client\_secret **b) Loading the SDK:** After your customer checks out, load the Hyperswitch SDK by initiating it with the client\_secret and publishable\_key **c) SDK being rendered:** After you initiate the SDK, the SDK makes several API calls involving the /sessions and /payment\_methods endpoints to load relevant payment methods and any saved cards associated with the customer **d) Customer enters the payment method data:** After the SDK is fully rendered, your customer would choose a payment method and enter the relevant information and click pay **e) Confirming the payment:** After the customer clicks pay, the SDK calls the payments/confirm endpoint with the customer's payment method details and post response, it displays the payment status ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-20fcb06cb4385b13dc22434b4be8a1f772afa3d0%252Fimage.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=cd3f51a&sv=2) Here's a more detailed version of the payment flow: ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-ca31b6ad9e550256f01413c27e9bc141a228e3d7%252Fpayment_flow.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=c017a34e&sv=2) [hashtag](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#how-does-payment-flow-vary-across-payment-methods) **How does Payment flow vary across Payment methods?** ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Customer Action Direct/Redirect flows Payment- finalized immediately Payment- finalized later **Customer action required before payments/ confirm** **Within Hyperswitch SDK** * Non 3DS Cards * Bank Debits like ACH Debit, BACS Debit, SEPA Debit **Customer action required before payments/ confirm** **3rd party Redirect/SDK** * Wallets like Apple Pay, Google pay, Paypal, AliPay * BNPL like Klarna, Afterpay, Affirm **Customer action required after payments/ confirm** **3rd party Redirect** * 3DS cards * Bank Redirects like iDeal, Giropay, eps * Bank Transfers like ACH Transfer, SEPA Transfer, BACS Transfer, Multibanco * Crypto wallets like Cryptopay [hashtag](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#functionalities-provided-by-hyperswitch) **Functionalities provided by Hyperswitch** ------------------------------------------------------------------------------------------------------------------------------------------------------------------- [](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-263027ff630d1a5efd50e7139102971168f38f3b%252FonlinePayments.jpg%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=747b4731&sv=2) **Accept online payments** Get started with accepting one time payments globally on your online store [](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-2873d33fc916948e356ab34adc9dfbf9f5e5f500%252FrecurringPayments.jpg%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=e5418c40&sv=2) **Setup mandates & recurring payments** Setup payments for a future date or charge your customers on a recurring basis [](https://docs.hyperswitch.io/other-features/connectors/payouts) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-3dde650e1f133dd5d55e87d222aeac72f5e52d61%252FPayment%2520flow%2520%281%29%2520%282%29.jpg%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=ee0dfb19&sv=2) **Manage payouts** Facilitate payouts for global network of partners and service providers [](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-18659562efcb97cb936bb66ddbecb6d93eb61e24%252FsaveCard.jpg%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=bf229462&sv=2) **Save a card during payment** Learn how you can save your customers' cards in a secure PCI compliant manner [](https://docs.hyperswitch.io/integration-guide/account-management/multiple-accounts-and-profiles) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-2fe2a2bf916c9e922aa7a03ba925e32bda9931b0%252Fmarketplace.jpg%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=844b50db&sv=2) **Manage payments on your platform / marketplace** Accept payments from your customers and process payouts to the sellers on your marketplace [](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/woocommerce-plugin) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-1e7ee5784724a1b35df8b930fc8f8ef4a5bbfe89%252FWooComerce.jpg%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=ad03ba60&sv=2) **Accept payments on your e-commerce platform** Give your Wordpress store a lightweight and embedded payment experience with the Hyperswitch WooCommerce plugin [](https://docs.hyperswitch.io/integration-guide/payment-experience/payment/payment-links) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-d6fdaf70eb62bab3de41cb8a55ab16ae06903b2d%252FpaymentLinks.jpg%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=e1b71f87&sv=2) **Create payment links** Accept payments for your products through reusable links without writing any code [hashtag](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#what-are-paymentintent-and-paymentattempt-objects-and-how-do-they-work-in-hyperswitch) **What are** `**PaymentIntent**` **and** `**PaymentAttempt**` **objects and how do they work in Hyperswitch?** ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Hyperswitch uses the `PaymentIntent` object to track the status of a payment initiated by you. Since, Hyperswitch enables retrying a single payment multiple times across different processors until a successful transaction, we track each of these payment attempts through separate `PaymentAttempt` objects. While `PaymentIntent` and `PaymentAttempt` have their own state machines, the various states in `PaymentAttempt` are also constrained by their respective mapping to the `PaymentIntent` statuses. **PaymentIntent state machine:** The following is an abridged version of the `PaymentIntent` state machine flow that covers majority of the above payment use-cases. **PaymentAttempt state machine:** The following is an abridged version of the `PaymentAttempt` state machine flow that covers majority of the above payment use-cases. Last updated 9 hours ago Was this helpful? * [Payments 101](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#payments-101) * [Payments flow](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#payments-flow) * [How does Payment flow vary across Payment methods?](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#how-does-payment-flow-vary-across-payment-methods) * [Functionalities provided by Hyperswitch](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#functionalities-provided-by-hyperswitch) * [What are PaymentIntent and PaymentAttempt objects and how do they work in Hyperswitch?](https://docs.hyperswitch.io/about-hyperswitch/sdk-payment-flows#what-are-paymentintent-and-paymentattempt-objects-and-how-do-they-work-in-hyperswitch) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Previous Roadmap - Q3 2025 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, previous roadmap, findings over the previous quarter, what we heard from the community as feature requests. 👂And as always, we listen to your feedback and adapt our plans if needed. #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#core-values) Core Values Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, and at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#themes-for-roadmap) Themes for Roadmap Earlier this year, Hyperswitch was made more modular to provide businesses with focused solutions to specific payment-related problems. Hence, our roadmap, starting this quarter, will be published under each module. A summary of the 8 product modules is provided below : 1. **Core Orchestration:** The core module supporting workflows unifying various connector 2. **Vault:** Simplifying PCI compliance and data privacy regulations through a standalone Card Vault 3. **Cost Observability:** Tracking and reducing payment processing costs via PSP reports. 4. **Authentication:** Data driven 3DS routing decision system and unified authentication SDK to encompass the diversity of authentication products. 5. **Intelligent Routing:** Routing service to dynamically select the most optimal PSP/ network in real time exploring/exploiting/managing multiple objectives simultaneously. 6. ​​**Alternate Payment Method Widgets:** Embracing the ever expanding diversity of payment methods and payment experiences through orchestration, and a simple add-on button to Checkout. 7. **Revenue Recovery:** A payment recovery sub-system with a customizable retry engine that reduces passive churn to recover failed subscription payments. 8. **Reconciliation:** Improving Finops efficiency in multi-acquirer settlement reconciliation. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#roadmap) Roadmap -------------------------------------------------------------------------------------------------------------- ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#core-orchestration) **Core Orchestration** * Expand Hyperswitch with new payment connector integrations including Worldpay Vantiv, Payload, Dwolla, Bluecode, Checkbook.io, Trust Payments, Nordea, and Silverflow * Extend support for additional payment methods across existing integrations such as Multisafe, Airwallex, Braintree, and Fiserv * Introduce split payment support across - Gift cards, Long-term lending/leasing providers * File exchange based integration for payment method verification, payment processing and settlement instructions * Asynchronous chargeback handling for connectors without webhook support * L2 and L3 card data enablement across key acquirers ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#vault) **Vault** * Standalone Network Tokenization service for SaaS merchants ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#authentication) **Authentication** * Improve authentication rates and user experience with EMVCo certified Juspay 3DS Server and Juspay 3DS SDK * Authentication Observability to provide analytics and insights to merchants with tightly coupled Acquirer 3DS for better authentication and authorization results. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#revenue-recovery) **Revenue Recovery** * Open-source revenue recovery: Merchants will be able to self-deploy Hyperswitch's integrations and intelligence services onto their own stack * Multi-card retries: The system will intelligently utilize payment methods already present with the customer to perform retries on a given invoice * Intelligent invoice retrying: Automatically retries invoices declined due to hard decline error codes, within the retry budget specified by the merchant * Custom subscription support: Enables integration with the merchant’s in-house subscription management platform to recover failed payments ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#intelligent-routing) **Intelligent Routing** * Audit Trail and observability dashboard: Allows monitoring of performance across various routing modules * Extension of Least Cost Routing to wallet payments: Includes Apple Pay and Google Pay ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#cost-observability) **Cost Observability** * Smarter Fee Attribution Engine: Enhancing our system’s ability to accurately derive fee names from fragmented or ambiguous reports, fee rates and attribute costs across key dimensions such as card variants, acquirers, and funding sources * Conversational AI Interface: Introducing an intuitive, AI-powered chat experience that allows users to explore their payment processing fees through a rich, context-aware interface, making cost observability more interactive, insightful, and user-friendly * Expanded Acquirer Coverage: Adding support for five or more new acquirer report formats, enabling broader compatibility and faster onboarding for merchants working with a variety of providers ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#reconciliation) Reconciliation * N‑way ingestion & transformation: implement backend‑configured pipelines for any mix of OMS, PSP and bank asources to define normalization and transformation rules * Reconciliation summary views: display real‑time n‑way match rates, exception counts and trend charts in dashboard widgets, with click‑through to transaction‑ vs. entry‑level drill‑downs and one‑click resolution actions. * Transaction‑level audit logs: capture every transaction event in full detail with immutable records to ensure no information is lost * Custom export & reporting: enable merchants to generate and download tailored reconciliation reports * Adyen integration & auto‑fetch: provide a one‑click Adyen connector that securely pulls transactions on a schedule, auto‑maps fields and normalizes into your unified schema **Want to contribute to the roadmap?** [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Themes for Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#themes-for-roadmap) * [Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#roadmap) * [Core Orchestration](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#core-orchestration) * [Vault](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#vault) * [Authentication](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#authentication) * [Revenue Recovery](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#revenue-recovery) * [Intelligent Routing](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#intelligent-routing) * [Cost Observability](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#cost-observability) * [Reconciliation](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q3-2025#reconciliation) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Previous Roadmap - Q4 2025 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, previous roadmap, findings over the previous quarter, what we heard from the community as feature requests. 👂And as always, we listen to your feedback and adapt our plans if needed. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#recap-of-q2-2024) Recap of Q3 2025 * **Connectors** * **New PSP integrations** - Worldpay Vantiv, Payload, Dwolla, Bluecode, Checkbook, Trust Payments, Nordea, and Silverflow * **Integration enhancements** - Multisafe, Airwallex, Braintree, and Fiserv * **New category of integration** - Support for subscription management providers to augment the plan management and record-keeping capabilities of the subscription engine with payment orchestration * **Feature depth** - L2/L3 data standardization across PSPs, support merchant decryption and decrypted payload for Apple Pay and Google Pay, return MAC codes in API response, chargeback support for PSPs with no webhook support, and MIT category fields * **Core orchestration** - Support for over-capture, extended authorization, and manual/user-triggered retries * **Standalone Network Tokenization** Service with support for Visa, Mastercard, and Amex Standalone EMVCo-certified Juspay 3DS Server and 3DS SDK * **Revenue recovery** - New capabilities to handle partial capture, support in-house billing engines, invoice queuing or grouping of all pending invoices, hard decline smart retry * **Intelligent routing** analytics added to offer real-time insights into transaction flow and gateway performance * **Reconciliation** - New capabilities to support transaction-level audit logs to ensure every transaction can be traced from initiation to settlement, strengthening compliance and operational accountability * **Cost observability** - New capabilities to accurately derive fee names from fragmented or ambiguous reports, fee rates and attribute costs, advanced fee auditing capabilities, estimate expected interchange and scheme fees per transaction and reconcile them against actual applied rates, conversational AI interface, and expanded acquirer coverage: adding support for five or more new acquirer report formats (AIBMS, Elavon, PayPal, Stripe, and Amex) * **Control Centre** - Support for platform org and merchant to allow programmatic API-driven merchant account creation, management, and configuration #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#core-values) Core Values Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, and at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#themes-for-roadmap) Themes for Roadmap Earlier this year, Hyperswitch was made more modular to provide businesses with focused solutions to specific payment-related problems. Hence, our roadmap, starting this quarter, will be published under each module. A summary of the 8 product modules is provided below : 1. **Core Orchestration:** The core module supporting workflows unifying various connector 2. **Vault:** Simplifying PCI compliance and data privacy regulations through a standalone Card Vault 3. **Cost Observability:** Tracking and reducing payment processing costs via PSP reports. 4. **Authentication:** Data driven 3DS routing decision system and unified authentication SDK to encompass the diversity of authentication products. 5. ​​**Alternate Payment Method Widgets:** Embracing the ever expanding diversity of payment methods and payment experiences through orchestration, and a simple add-on button to Checkout. 6. **Revenue Recovery:** A payment recovery sub-system with a customizable retry engine that reduces passive churn to recover failed subscription payments. 7. **Reconciliation:** Improving Finops efficiency in multi-acquirer settlement reconciliation. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#roadmap) Roadmap -------------------------------------------------------------------------------------------------------------- #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#core-orchestration-and-connectors) **Core Orchestration and Connectors** * **Connectors** We plan to expand connector coverage with new integrations including * **New integrations:** Gigadat (Interac e-transfer), Loonio (Interac e-transfer), Tesouro (Cards,Applepay,Googlepay), Paysafe (Cards, Applepay, Skrill, Interac e-transfer, Paysafecards), Finix (Cards, Applepay, Googlepay) * **Core Orchestration** * We plan to introduce split-payment support for gift cards, enabling combined payments within a single transaction for greater flexibility across customer use cases. * **Improve Auth rate** * **Error Code Enhancements** We plan to enhance our error-handling framework to improve visibility and precision in transaction outcomes. * **Issuer Error Codes in GSM Table**: Issuer-specific error codes will be added to the GSM (Gateway Status Mapping) table to improve accuracy in mapping responses. These will be leveraged to make better retry decisions during payment flows, helping merchants reduce unnecessary retries and improve approval rates. **Unified Error Codes and User-Facing Messages**: We will expand the existing unified error code system to generate clearer, user-focused error messages. This ensures consistency in how payment failures are communicated across channels, improving transparency for both merchants and end users. * **Real-Time Payment Method Eligibility Checks** We plan to introduce real-time eligibility validation for payment methods during checkout. This will include: * **Risk-Based Eligibility Checkpoints**: Adding merchant-level risk evaluation before payment confirmation. This will allow merchants to assess potential transaction risks in real time, reducing fraud exposure and improving overall authorization performance. _Learn more about the existing Core Orchestration and Connectors features and workflows_ [_here_](https://docs.hyperswitch.io/other-features/connectors) #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#vault) **Vault** * **Guest Checkout Tokenization in Hyperswitch Vault** We plan to extend our vault capabilities to support guest checkout tokenization. This will allow merchants to create tokens without generating a customer ID in Hyperswitch, enabling secure and PCI-compliant handling of one-time or repeat transactions. Merchants will also have the flexibility to map these tokens to their own unique identifiers as needed. * **Volatile Tokenization for PAN and Network Tokens** We plan to add support for volatile tokenization, allowing merchants to generate temporary tokens valid for a limited time. This will be particularly useful for transient payment flows such as session-based authorizations or one-time payments, providing enhanced flexibility and security without long-term storage in the vault. * **Proxy API for Vault-Only Integrations** We are expanding the Proxy API to support merchants who choose to integrate solely with Hyperswitch Vault services. This will allow merchants to pass a card token in their requests, which Hyperswitch will substitute with the actual card details before routing the call to the target connector. _Learn more about the existing Vault Services and workflows_ [_here_arrow-up-right](https://docs.hyperswitch.io/about-hyperswitch/payments-modules/vault) #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#authentication-and-checkout-experience) **Authentication and Checkout Experience** * **Authorization Uplift** We are introducing a set of enhancements aimed at improving authorization success rates and overall checkout reliability. These features are designed to create a more adaptive, resilient, and insight-driven payment experience: #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#revenue-recovery) **Revenue Recovery** * **Advanced retry logic for Hard declines** The system intelligently identifies and retries transactions that were falsely marked as hard declines. This feature aims to recover transactions that were previously considered unrecoverable. Merchants will be able to manage these retries by setting a configurable budget that limits the number retry attempts. * **Account Updater:** The system will automatically refresh stored card credentials when a customer’s card information changes. This capability ensures continuity in payment processing by updating expired, replaced, or reissued cards in real time. As a result, payment failures caused by expired, closed, or lost/stolen cards can be effectively recovered. _Learn more about the existing Revenue Recovery features and workflows_ [_here_](https://docs.hyperswitch.io/other-features/payments-modules/revenue-recovery) #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#reconciliation) **Reconciliation** * **Rule Types Expansion** Support for 1:many and many:1 rule types to enable flexible matching across split, aggregated, and multi-attempt transaction flows * **Support for Lumpsum Reconciliation** Enables matching aggregated payouts or bulk settlement files against multiple underlying transactions. This helps reconcile scenarios where processors or banks provide only a consolidated amount, allowing the system to auto-distribute, validate, and highlight variances at both the lump and individual transaction level **Want to contribute to the roadmap?** [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Recap of Q3 2025](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#recap-of-q2-2024) * [Themes for Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#themes-for-roadmap) * [Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/previous-roadmap-q4-2025#roadmap) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Previous roadmap - Q1 2024 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, [previous roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023) , findings over the previous quarter, what we heard from the community as feature requests. 👂And as always, we listen to your feedback and adapt our plans if needed. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#core-values) Core Values ------------------------------------------------------------------------------------------------------------- Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, and at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features **Legend** **Description** 🟩 Feature completed 🟧 Feature in progress 🟥 Work not started 💪 Stretch target 🚛 Backlog feature from Q4 2023 [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#roadmap) Roadmap ----------------------------------------------------------------------------------------------------- ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#community-feature-requests) Community Feature Requests * 🟩 Card vault enhancements to support more use cases - enable vaulting before payment, card fingerprinting * 🟩 Enhance MIT payments (Merchant Initiated Transactions) to accept `raw card data` and `network_reference_id.` This will allow for payment gateway agnostic MIT payments * _(removed from the Q1 roadmap)_ Enabling card transactions using `payment gateway token` to ensure business continuity for merchants with card vaulted with payment gateways * 🟩 New connector and payment method Integrations * 🟩 Place2Pay * 🟩 Billwerk * 🟩 Pix and Boleto via Adyen _(the list of connectors will keep expanding as we receive more requests from the community!!! )_ ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#developer-experience) Developer Experience * 🚛 Code restructuring for enhancing readability and ease of contributions * 🟩 Helm charts enhancement to enable easy installation on Azure, Google Cloud and within existing Kubernetes clusters * 🟩 Helm charts will support installation of `hyperswitch-card-vault` * 🚛 PCI Software Security Standard (S3) certification. At the moment, Hyperswitch application is battle tested for PCI L1 compliance. While PCI Software Security Standard (S3) is not mandatory for Hyperswitch related functionalities, we are undertaking the certification to further augment our security standards * 🟩Adding more developer help videos and improving developer documentations for Hyperswitch features, components and usage * 💪🚛 Open sourcing the Native Unified Checkout SDK (Android and iOS) * 🟩 Diagnostics tool to determine health of your on-cloud Hyperswitch stack setup ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#reduce-payment-costs) Reduce Payment Costs * 🟩 Enabling surcharge for specific payment methods to promote low cost payment methods * 🚛 🟩 Hyperswitch API supports for Plaid for ACH account verification ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#improving-payment-authorization-rates) Improving Payment Authorization Rates * 🟩Decoupled 3DS authentication and authorization using EMVCo certified 3DS connectors, for improving payment authorization rates and customer experience. * 🚛 Paypal Vault flows for improving repeat user payment experience ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#reducing-payment-operations) Reducing Payment Operations * 🟩 Enhanced Audit trail visibility for Payments, Refunds, Disputes on Hyperswitch Control Centre * 🟩 Support for Hosted Checkout Page on Web * 🟩 Mitigating fraud by defining Block List rules to block transactions from specific customer ID, card bins, card numbers and more parameters * 🟩 Enhanced search using Global Identifiers for improved discoverability. Hyperswitch Cloud users can use the Control Center to search for payments, customers, refunds, connector transaction IDs and get all related data * 🟩 Dispute management and evidence submission workflow on Hyperswitch Control Centre * 🟩 Hyperswitch Control Centre will allow to customize payment methods at country and currency * 🟩 Create custom roles for Identity and Access Management ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#want-to-contribute-to-the-roadmap) **Want to contribute to the roadmap?** [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Core Values](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#core-values) * [Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#roadmap) * [Community Feature Requests](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#community-feature-requests) * [Developer Experience](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#developer-experience) * [Reduce Payment Costs](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#reduce-payment-costs) * [Improving Payment Authorization Rates](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#improving-payment-authorization-rates) * [Reducing Payment Operations](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#reducing-payment-operations) * [Want to contribute to the roadmap?](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2024#want-to-contribute-to-the-roadmap) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Vault-Then-Pay | Hyperswitch Juspay Hyperswitch provides flexible payment processing with multiple flow patterns to accommodate different business needs. The system supports one-time payments, saved payment methods, and recurring billing through a comprehensive API design. circle-info **Integration Path** **Server-to-Server (S2S) Payments (Tokenize followed by Payment)** Refer to this section if you intend to use the SDK exclusively for vaulting/storing card details. In this scenario, the actual payment execution is handled via S2S API calls from your backend to Hyperswitch, offering you more granular control over the transaction lifecycle. Payment method flows leverage all the capabilities available in [Paymentsarrow-up-right](https://docs.hyperswitch.io/~/revisions/Moc8cqgBbfb8T8KrBi8V/about-hyperswitch/payment-suite-1/payments-cards) . The primary goal here is to allow the business to control the payment journey via S2S APIs and a token or `payment_method_id`. The business can use the Payment Method SDK or `/payment-methods` API to first capture the card details and create a `payment_method_id`. The business can then use the `payment_method_id` in `/payments` API to perform all functionalities supported by the [Paymentsarrow-up-right](https://docs.hyperswitch.io/~/revisions/Moc8cqgBbfb8T8KrBi8V/about-hyperswitch/payment-suite-1/payments-cards) flow. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payment-method-card#payment-method-lifecycle) Payment Method Lifecycle The Payment Method flow leverages the full suite of Hyperswitch [Paymentarrow-up-right](https://docs.hyperswitch.io/~/revisions/Moc8cqgBbfb8T8KrBi8V/about-hyperswitch/payment-suite-1/payments-cards) capabilities while granting businesses granular control over the user journey. By utilizing Server-to-Server (S2S) APIs and unique identifiers `payment_method_id`, businesses can separate the collection of payment credentials from the actual transaction logic. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payment-method-card#the-two-step-integration-pattern) The Two-Step Integration Pattern 1. **Credential Capture & Vaulting** The business initiates the flow by capturing payment details (such as cards, wallets, or bank accounts) using either the Payment Method SDK or the `/payment-methods` API. This process securely vaults the payment instrument and generates a unique `payment_method_id`. 2. **Transaction Execution** Once the `payment_method_id` is generated, it serves as a reusable token. The business can pass this ID into the /payments API to execute any supported [Paymentarrow-up-right](https://docs.hyperswitch.io/~/revisions/Moc8cqgBbfb8T8KrBi8V/about-hyperswitch/payment-suite-1/payments-cards) functionality without re-collecting sensitive data. The `payment_method_id` serves as a unique identifier mapped to a specific combination of a Customer ID and a unique Payment Instrument (e.g., a specific credit card, digital wallet, or bank account). * Logic: A single customer can have multiple payment methods, each assigned a distinct ID. However, the same payment instrument used by the same customer will always resolve to the same `payment_method_id`. * Scope: This uniqueness applies across all payment types, including cards, wallets, and bank details. **Customer ID** **Payment Instrument** **Payment Method ID** 123 Visa ending in 4242 `PM1` 123 Mastercard ending in 1111 `PM2` 456 Visa ending in 4242 `PM3` 123 PayPal Account (`[[email protected]](https://docs.hyperswitch.io/cdn-cgi/l/email-protection) `) `PM4` Last updated 11 hours ago Was this helpful? Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Previous Roadmap - Q3 2024 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, previous roadmap, findings over the previous quarter, what we heard from the community as feature requests. 👂And as always, we listen to your feedback and adapt our plans if needed. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#recap-of-q2-2024) Recap of Q2 2024 * Payouts support with Adyen Platform, Cybersource, Ebanx, Payone and Paypal and instant payout methods * Vaulting payment methods with Hyperswitch for on-session payments * Natively authenticating payments using Third party 3DS service providers - Netcetra, 3dsecure.io * Integrations for alternate payment methods via Mifinity and ZSL * Scan a card experience on Unified Checkout * Open-sourced the Native SDK for Unified Checkout * Control Centre support for Two Factor Authentication for user login * One-click Express Checkout through Applepay, Klarna, GooglePay * Secure payout iframe to collect payout details and trigger payouts ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#core-values) Core Values Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, and at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#themes-for-roadmap) Themes for Roadmap There are a lot of problems to be solved in payments, but our majority of our current focus falls under 5 themes below. 🌎 **Community Feature Requests:** Most of our community feature requests falls under one of the above themes, but we still keep this as a separate theme, because we intend to actively explore new problem statements and themes from the community before scheduling actual feature work. 👨‍💻 **Developer Experience:** Providing a great self-service and self-installation experience for developers who wish to use or contribute back to Hyperswitch. 💰 **Reducing Payment Costs:** Payments should be like a free utility for digital businesses. Any business should be able reduce payment processing costs by embracing the diversity in payments. 📈 **Improving Authorization Rates:** Ensuring a best-in-class payment experience and access to latest innovations in the payments ecosystem for all businesses. 👍 **Reducing Payment Operations:** Managing payments across multiple countries, currencies and processors should not add to the administrative burden on businesses. Hence, Hyperswitch intends to eliminate all such operational burdens so that businesses can focus on the core activities. **Legend** **Description** 🟩 Feature completed 🟧 Feature in progress 🟥 Work not started 💪 Stretch target 🚛 Backlog feature ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#roadmap) Roadmap #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#community-feature-requests) Community Feature Requests * 🟩 Payment Method Management experience to view, add and delete payment methods (for Web platform) * New connector and payment method Integrations (more will be added as we progress) * 🟩 🚛 Datatrans ([Planet.comarrow-up-right](http://planet.com/) ) for card payments * 🟩 Razorpay for UPI payments * 🟧 PAZE checkout _(extending to Q4)_ * 🟧 TaxJar for dynamic tax calculations _(extending to Q4)_ * 🟩 Novalnet for card payments * 🟩 Fiuu for cards, bank transfer and inter-operable QR based payments * 🟩 Itau Bank for instant payments * 🟩 Payouts via PayOne, and Wells Fargo #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#improving-authorization-rates) Improving Authorization Rates * 🟩 Network Tokenization with account updater to (a) improve auth rates for one-time/ recurring payments and (b) reducing scheme fee #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#reducing-payments-cost) Reducing Payments Cost * Direct integrations with banks acquirers to reduce cost (will be extended for EU banks) * 🟩 Wells Fargo (US) * 🟩 Deutsche Bank (DE) * 🟩 Pay by Bank Experience through Plaid Open banking to enable instant bank transfer (push payments) in the UK and EU via with support for app2app redirection experience #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#reducing-payment-operations) Reducing Payment Operations * 🟩 🚛 Account verification for pull payments like Direct Debits in the EU and US (ACH, SEPA) via Plaid * 🟩 User management and dashboard analytics views at entity level granularity (org to profile) #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#developer-experience) Developer Experience * 🟩 Payment plugins for ~Commerce Tools~ Saleor - Headless commerce platform to facilitate faster integrations * 🟩 🚛 PCI Software Security Standard (S3) certification #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#want-to-contribute-to-the-roadmap) **Want to contribute to the roadmap?** [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Recap of Q2 2024](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#recap-of-q2-2024) * [Core Values](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#core-values) * [Themes for Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#themes-for-roadmap) * [Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q3-2024#roadmap) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Previous Roadmap - Q4 2024 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, previous roadmap, findings over the previous quarter, what we heard from the community as feature requests. 👂And as always, we listen to your feedback and adapt our plans if needed. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#recap-of-q2-2024) Recap of Q3 2024 * Hyperswitch is now PCI Software Security Standard (S3) certified * Network Tokenization capability with Visa, Master and Amex card networks. This shall enable merchant to use network tokens to improve auth rates for one-time/ recurring payments and reduce the interchange fee * Payment Method Management experience to view, add and delete payment methods (for Web platform) * New connector and payment method integrations * Datatrans ([Planet.comarrow-up-right](http://planet.com/) ) for card payments * Wells Fargo (US) for card payments * Deutsche Bank (DE) for SEPA direct debits * Novalnet for card payments * Fiuu for cards, bank transfer and inter-operable QR based payments * Itau Bank for instant payments * Payouts via PayOne, and Wells Fargo * Razorpay UPI payments * Pay by Bank Experience through [Plaid Open banking](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/payment-methods-setup/banks/open-banking) . This is to allow merchants to enable instant bank transfer (push payments) in the UK and EU via with support for app2app redirection experience * Account verification via Plaid for pull payments (ACH, SEPA) in the EU and US * React Native SDK was Open Sourced * Native 3DS Authentication Experience via Netcetera for mobile * Merchant Initiated Transactions (MIT) were made PSP agnostic with Network Transaction ID (NTI) * User management and dashboard analytics views at entity level granularity (org to profile) * Payment plugin for Saleor - headless commerce platform to facilitate faster integrations * Localisation support for Payouts across 17 languages * Control Centre - Enable SSO sign in with Okta ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#core-values) Core Values Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, and at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#themes-for-roadmap) Themes for Roadmap There are a lot of problems to be solved in payments, but our majority of our current focus falls under 5 themes below. 🌎 **Community Feature Requests:** Most of our community feature requests falls under one of the above themes, but we still keep this as a separate theme, because we intend to actively explore new problem statements and themes from the community before scheduling actual feature work. 👨‍💻 **Developer Experience:** Providing a great self-service and self-installation experience for developers who wish to use or contribute back to Hyperswitch. 💰 **Reducing Payment Costs:** Payments should be like a free utility for digital businesses. Any business should be able reduce payment processing costs by embracing the diversity in payments. 📈 **Improving Authorization Rates:** Ensuring a best-in-class payment experience and access to latest innovations in the payments ecosystem for all businesses. 👍 **Reducing Payment Operations:** Managing payments across multiple countries, currencies and processors should not add to the administrative burden on businesses. Hence, Hyperswitch intends to eliminate all such operational burdens so that businesses can focus on the core activities. **Legend** **Description** 🟩 Feature completed 🟧 Feature in progress 🟥 Work not started 💪 Stretch target 🚛 Backlog feature ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#roadmap) Roadmap #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#community-feature-requests) Community Feature Requests * 🟩 More payment authorization workflows - split payments and incremental authorization * New integrations - * 🟩 SamsungPay * 🟩 Nexi Xpay card payments * 🟩 PAZE for card payments in the US * 🟩 Dynamic Tax updater for express checkout wallets (Paypal, Applepay, Googlepay and Klarna) using Taxjar integration #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#improving-authorization-rates) Improving Authorization Rates * 🟩 Extending smart retries to 7 more PSPs: Adyen, Worldpay, Braintree, Deutsche Bank, Novalnet, Fiuu and Nexi Xpay * 🟩 Implement MPAN (merchant tokens) for Applepay recurring payments * 🟩 Enabling guest checkout flow with [Click to Payarrow-up-right](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/use-cases/click-to-pay/) #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#reducing-payments-cost) Reducing Payments Cost * More direct bank acquirer integrations * 🟩 JP Morgan #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#reducing-payment-operations) Reducing Payment Operations * 🟩 Data reporting at an organization, merchant and profile level for easier reconciliation * 🟩 Enhancements in analytics module for Refunds, Disputes and Smart Retries * 🟩 Migration of Network Tokens for business continuity #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#developer-experience) Developer Experience * 🟩 Hyperswitch widgets to support Alternate payment methods, express checkout payment methods and Authentication solutions #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#want-to-contribute-to-the-roadmap) **Want to contribute to the roadmap?** [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Recap of Q3 2024](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#recap-of-q2-2024) * [Core Values](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#core-values) * [Themes for Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#themes-for-roadmap) * [Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2024#roadmap) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Previous roadmap - Q4 2023 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, findings over the previous quarter, what we heard from the community as issues and feature requests, in face-to-face discussions and social media. 👂And as always, we listen to your feedback and adapt our plans if needed. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#core-values) Core Values ------------------------------------------------------------------------------------------------------------- Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#themes-for-roadmap) Themes for Roadmap --------------------------------------------------------------------------------------------------------------------------- There are a lot of problems to be solved in payments, but our majority of our current focus falls under 5 themes below. * 👨‍💻 **Developer Experience:** Providing a great self-service and self-installation experience for developers who wish to use or contribute back to Hyperswitch. * 💰 **Reducing Payment Costs:** Payments should be like a free utility for digital businesses. Any business should be able reduce payment processing costs by embracing the diversity in payments. * 📈 **Improving Authorization Rates:** Ensuring a best-in-class payment experience and access to latest innovations in the payments ecosystem for all businesses. * 👍 **Reducing Payment Operations:** Managing payments across multiple countries, currencies and processors should not add to the administrative burden on businesses. Hence, Hyperswitch intends to eliminate all such operational burdens so that businesses can focus on the core activities. * 🌎 **Community Feature Requests:** Most of our community feature requests falls under one of the above themes, but we still keep this as a separate theme, because we intend to actively explore new problem statements and themes from the community before scheduling actual feature work. Legend Description 🟩 Work completed 🟧 Work in progress 🟥 Work not started 💪 Stretch target 🚛 Backlogged for next quarter ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#developer-experience) Developer Experience * 🟩 Installation scripts for cloud deployment using EKS (on AWS). [Try the installation from herearrow-up-right](https://opensource.hyperswitch.io/deploy-hyperswitch-on-aws/deploy-app-server) * 🟩 Publish developer docs for self-hosting Hyperswitch. [Checkout the documentation herearrow-up-right](https://opensource.hyperswitch.io/) * 🟩 Hyperswitch Woocommerce plugin for Wordpress users. [Install the Woocommerce pluginarrow-up-right](https://hyperswitch.io/docs/sdkIntegrations/wooCommercePlugin/wooCommercePluginOverview) * 🟩 AWS menu-driven Hyperswitch installation support * 🟩 Optimizing Hyperswitch application overhead from 30ms to 20ms ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#reducing-payment-costs) Reducing Payment Costs * 🟩 Reduce chargebacks by enabling Signifyd and Riskified (FRMs). [Try it out by signing up for hyperswitcharrow-up-right](https://app.hyperswitch.io/register) * 🟩 Support for Gocardless bank direct debits. [Try it out by signing up for Hyperswitcharrow-up-right](https://app.hyperswitch.io/register) * 🟩 Specialized low cost processor integration - Helcim * 🟩 Open sourcing Smart Routing Framework for self hosting * 🟧 Support Plaid for ACH account verification * 🟧 Enabling surcharge for specific payment methods to promote low cost payment methods * ~🟥 Direct bank integration - Wells Fargo~ \[Dropped\] ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#improving-authorization-rates) Improving Authorization Rates * 🟩 Smart retry with 3DS for fraud declined payments. [Learn more about the featurearrow-up-right](https://hyperswitch.io/docs/features/smartRetries) * 🚛 Paypal Vault flows for improving repeat user experience * 🚛💪 Enhancing 3DS experience with Delegated Authentication and Visa's Digital Authentication Framework (for SCA markets) * 🚛💪 Improve authorization rates for bank payments through Open banking integration for UK/EU ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#reducing-payment-operations) Reducing Payment Operations * 🟩 Support for exporting hyperswitch data to third party data warehouse * 🚛 Audit trail visibility for Payments, Refunds, Disputes on Hyperswitch Control Centre * 🚛💪 System health metrics monitoring module on Hyperswitch Control Centre ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#community-feature-requests) Community Feature Requests * 🟩 Open sourcing Hyperswitch Unified Web Checkout for self-hosting. [Try it out herearrow-up-right](https://opensource.hyperswitch.io/deploy-hyperswitch-on-aws/deploy-app-server) * 🟩 Open sourcing Card Vault application code for self-hosting [Try it out herearrow-up-right](https://opensource.hyperswitch.io/hyperswitch-open-source/deploy-hyperswitch-on-aws/deploy-card-vault) * 🟩 Open sourcing Control Centre (Hyperswitch dashboard) for self-hosting [Try it out herearrow-up-right](https://opensource.hyperswitch.io/hyperswitch-open-source/deploy-hyperswitch-on-aws/deploy-control-center/standalone-control-center-deployment-for-prototyping) * 🟩 Direct bank integration - Bank of America * 🟩💪 Open sourcing Fraud and Risk Management Integrations * 🟩💪 Open sourcing Payouts module [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#want-to-contribute-to-the-roadmap) **Want to contribute to the roadmap?** -------------------------------------------------------------------------------------------------------------------------------------------------------------- [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Core Values](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#core-values) * [Themes for Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#themes-for-roadmap) * [Developer Experience](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#developer-experience) * [Reducing Payment Costs](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#reducing-payment-costs) * [Improving Authorization Rates](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#improving-authorization-rates) * [Reducing Payment Operations](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#reducing-payment-operations) * [Community Feature Requests](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#community-feature-requests) * [Want to contribute to the roadmap?](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023#want-to-contribute-to-the-roadmap) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Storage | Hyperswitch Storage layer is built with caching layer and persistent storage. The goal is to provide low latency persistent storage at lower cost. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/storage#cache-layer) Cache Layer ---------------------------------------------------------------------------------------------------------------------- Redis cluster is used as the cache. Any data that is accessed frequently but doesn't change often, is already cached in the router's memory. Payment related data is cached in the cache layer. Cache allows very low latency payments through hyperswitch. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/storage#persistent-storage) Persistent Storage ------------------------------------------------------------------------------------------------------------------------------------ Since Payment data should never be lost, the data is persisted in normal databases like Postgres. This allows hyperswitch to provide data related to payments, refunds, etc to the users on their dashboards. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/storage#drainer) Drainer -------------------------------------------------------------------------------------------------------------- The Payment related events are written to a queue (like kafka) and the drainer takes the events and populate/update the persistent storage in near realtime. This allows hyperswitch to handle traffic at scale and not bottleneck the database. \\ Last updated 11 hours ago Was this helpful? * [Cache Layer](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/storage#cache-layer) * [Persistent Storage](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/storage#persistent-storage) * [Drainer](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/storage#drainer) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Previous Roadmap - Q2 2025 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, previous roadmap, findings over the previous quarter, what we heard from the community as feature requests. 👂And as always, we listen to your feedback and adapt our plans if needed. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#core-values) Core Values Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, and at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#themes-for-roadmap) Themes for Roadmap Earlier this year, Hyperswitch was made more modular to provide businesses with focused solutions to specific payment-related problems. Hence, our roadmap, starting this quarter, will be published under each module. A summary of the 8 product modules is provided below : 1. **Vault:** Simplifying PCI compliance and data privacy regulations through a standalone Card Vault 2. **Cost Observability:** Tracking and reducing payment processing costs via PSP reports. 3. **Authentication:** Data driven 3DS routing decision system and unified authentication SDK to encompass the diversity of authentication products. 4. **Intelligent Routing:** Routing service to dynamically select the most optimal PSP/ network in real time exploring/exploiting/managing multiple objectives simultaneously. 5. ​​**Alternate Payment Method Widgets:** Embracing the ever expanding diversity of payment methods and payment experiences through orchestration, and a simple add-on button to Checkout. 6. **Orchestration:** The core module supporting workflows unifying various connector 7. **Revenue Recovery:** A payment recovery sub-system with a customizable retry engine that reduces passive churn to recover failed subscription payments. 8. **Reconciliation:** Improving Finops efficiency in multi-acquirer settlement reconciliation. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#roadmap) Roadmap #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#modular-and-composable-payments) Vault * Make Hyperswitch interoperable with any third party card vault. * Merchants self-hosting Hyperswitch stack will be able to outsource PCI compliance as a managed service to Hyperswitch managed card vault, or other third party card vaults. * Single-use PCI token generation for guest checkout use cases. #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#modular-and-composable-payments-1) Authentication * 3DS Intelligence engine to provide 3DS step-up/ step-down decisions, to optimize for (i) Authentication success rate, and (ii) Overall transaction success rate * Enhanced Authentication Analytics to deeply understand the cardholder’s authentication journey, 3DS failures, 3DS performance, etc. across issuers, markets, and 20+ other payment dimensions. #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#modular-and-composable-payments-2) Revenue Recovery * Support rule-based as well as intelligent retries #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#modular-and-composable-payments-3) Intelligent Routing * Making decision-engine a standalone offering to enable merchants to use it along side any payment authorization system (vendor agnostic). * Multi-objective routing system to allow (i) Auth Rate Uplift (already available), and (ii) Cost Optimization through Debit routing (to be added) #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#modular-and-composable-payments-4) Cost Observability * Solve the data challenges across PSPs fee report formats. For example, achieve standardisation across PSP fee names and field names by building standard mapper that can scale for multiple PSPs * Capability to display aggregated fee data in reports, including chargebacks, refunds, and backdated adjustments. #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#modular-and-composable-payments-5) Core Orchestration * Connector integrations - Facilitapay, Global Payments, Tranzilla, Paytm, Razorpay #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#want-to-contribute-to-the-roadmap) **Want to contribute to the roadmap?** [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Core Values](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#core-values) * [Themes for Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#themes-for-roadmap) * [Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2025#roadmap) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Previous Roadmap - Q2 2024 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, [previous roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q4-2023) , findings over the previous quarter, what we heard from the community as feature requests. 👂And as always, we listen to your feedback and adapt our plans if needed. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#recap-of-q4-2023) Recap of Q1 2024 ----------------------------------------------------------------------------------------------------------------------- Lets start with a short recap on what was released new in Q1 2024 * New connector integrations * Cybersource support for ApplePay, GooglePay * PlacetoPay support for card payments * [3Dsecure.ioarrow-up-right](http://3dsecure.io/) integration for 3DS authentication * Pix and Boleto via Adyen * Card vault was enhanced to support fingerprinting and MIT recurring payments * Payment gateway agnostic MIT payments through Stripe, Adyen and Cybersource * Upgraded helm charts to support cloud agnostic installation of Hyperswitch * Enhanced audit trail for visibility into payment flows * Decoupled 3DS authentication for smoother payment experience and better conversion rates authorization rates * Customs roles on Control center for identity & access management * Retries for failed webhooks * Enabling surcharge for specific payment methods to promote low cost payment methods * Control center can manage support tracking, submitting evidences for disputes (via Stripe) - we will be extending to more processors in the upcoming quarters. * Global ID based search in control center to quickly access a payment record * Block lists to prevent fraudulent card payments based on card issuers and fingerprints * Interface to dynamically select components (Storage Backend, Secrets Manager) during runtime * Enhancement of Payouts module - Save payout details, Payouts routing, Payout retries (same provider & different provider). * Subscriptions - Payment processing support for all major subscription solution providers and plug-in support for Kill Bill subscription solution. [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#core-values) Core Values ------------------------------------------------------------------------------------------------------------- Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, and at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#themes-for-roadmap) Themes for Roadmap --------------------------------------------------------------------------------------------------------------------------- There are a lot of problems to be solved in payments, but our majority of our current focus falls under 5 themes below. 🌎 **Community Feature Requests:** Most of our community feature requests falls under one of the above themes, but we still keep this as a separate theme, because we intend to actively explore new problem statements and themes from the community before scheduling actual feature work. 👨‍💻 **Developer Experience:** Providing a great self-service and self-installation experience for developers who wish to use or contribute back to Hyperswitch. 💰 **Reducing Payment Costs:** Payments should be like a free utility for digital businesses. Any business should be able reduce payment processing costs by embracing the diversity in payments. 📈 **Improving Authorization Rates:** Ensuring a best-in-class payment experience and access to latest innovations in the payments ecosystem for all businesses. 👍 **Reducing Payment Operations:** Managing payments across multiple countries, currencies and processors should not add to the administrative burden on businesses. Hence, Hyperswitch intends to eliminate all such operational burdens so that businesses can focus on the core activities. **Legend** **Description** 🟩 Feature completed 🟧 Feature in progress 🟥 Work not started 💪 Stretch target 🚛 Backlog feature from Q1 2024 [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#roadmap) Roadmap ----------------------------------------------------------------------------------------------------- ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#community-feature-requests) Community Feature Requests * 🟩 Vaulting payment methods in non-payment flows * 🟥 ~Support business continuity for MIT payment through PSP tokens~ (Will be supported with custom migration APIs) * 🟩 Card vaulting enhancements - support nickname updation * 🟩 Hyperswitch Widgets for Quick Checkout experience - Paypal, Applepay and Googlepay * New connector and payment method Integrations * 🟧 Datatrans ([Planet.comarrow-up-right](http://planet.com/) ) for card payments * 🟩 Netcetera for 3DS service * 🟩 3DSecure.io for 3DS service * 🟩 ZSL for bank transfer payments * 🟩 Mifinity for wallet payments * 🟩 Payone for payouts _(list of connectors will keep expanding as we receive more requests from the community!!! )_ ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#developer-experience) Developer Experience * 🟧 🚛 Code restructuring for enhancing readability, reducing compile & build times * 🟧 PCI Software Security Standard (S3) certification. At the moment, Hyperswitch application is battle tested for PCI L1 compliance. While PCI Software Security Standard (S3) is not mandatory for Hyperswitch related functionalities, we undertook the certification starting Feb 2024 to further augment our security standards. _Expected closure by June 2024_ * 🟩 Upgraded to PCI DSS 4.0 certification * 🟩 Open sourcing the Native Unified Checkout SDK (Android and iOS) ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#improving-payment-authorization-rates) Improving Payment Authorization Rates * 🟩 🚛 Enable scanning of cards to reduce manual entry of card details by the customer * 🟩 Native 3DS on Android and iOS apps * 🚛 🟧 Paypal Vault flows for improving repeat user payment experience * 🟧 Customer initiated payment retries on Hyperswitch Unified Checkout * 🟧 💪 Account verification for bank payment methods like ACH and SEPA ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#reducing-payment-operations) Reducing Payment Operations * 🟥 ~Payment audit trail will carry more information for Hyperswitch Cloud users - Consolidated API logs, Webhook and State change events on the Control Centre~ * 🟧 Hyperswitch Headless SDK methods to support payment account management experience for users - this will allow customers to add, update, edit and delete payment methods * 🟧 Enhance the functionality of the analytics module in the control center by adding additional features such as expanded filter options, currency conversion capabilities, granular timeline views and a broader range of analytical views ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#want-to-contribute-to-the-roadmap) **Want to contribute to the roadmap?** [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Recap of Q1 2024](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#recap-of-q4-2023) * [Core Values](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#core-values) * [Themes for Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#themes-for-roadmap) * [Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#roadmap) * [Community Feature Requests](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#community-feature-requests) * [Developer Experience](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#developer-experience) * [Improving Payment Authorization Rates](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#improving-payment-authorization-rates) * [Reducing Payment Operations](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#reducing-payment-operations) * [Want to contribute to the roadmap?](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q2-2024#want-to-contribute-to-the-roadmap) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # A Payments Switch with virtually zero overhead | Hyperswitch When it comes to payments, every millisecond counts. The difference between a seamless customer experience and a frustrating one often boils down to the speed and efficiency of payment processing. Merchants who operate in this digital arena understand the importance of **offering multiple payment options to their customers**. The challenge lies in integrating these payment processors seamlessly into their existing systems without wasting dev effort or introducing performance overhead. circle-check Enter Hyperswitch, a game-changing solution designed to be lightning fast and add **virtually zero overhead** to your payment processing infrastructure! * * * **Clarifying latency overhead** > The latency overhead of Hyperswitch refers specifically to the time taken by the Hyperswitch application itself within the transaction flow. While Hyperswitch optimizes its internal processes to add almost zero overhead, it's important to recognize that the overall transaction latency isn't solely determined by Hyperswitch alone. The entire transaction process involves multiple components, including the payment processor as shown below Component Value Network latency between Client App and your server (starting point) A (BAU) **Hyperswitch Application latency (hosted in your stack)** **B (negligible)** ⚡ Network latency between your server and payment processor C (BAU) Processor Latency D (BAU) **Total Transaction Latency** **A+B+C+D** What Hyperswitch does is provide an option to connect to multiple processors at almost zero latency cost ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#how-hyperswitch-achieves-a-near-invisible-presence) **How Hyperswitch achieves a near-invisible presence** At its core, Hyperswitch is a payments switch that effortlessly connects merchants with multiple payment processors. What sets it apart is its extraordinary speed and efficiency. Here's how Hyperswitch manages to be lightning fast and virtually overhead-free: chevron-right**In-Memory Configuration Caching**[hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#in-memory-configuration-caching) * Hyperswitch eliminates the delays associated with fetching configuration data for each transaction by caching all merchant and processor-related configurations in memory * This ensures that transaction processing remains lightning quick, regardless of the specifics of each transaction chevron-right**Redis for Transaction Data**[hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#redis-for-transaction-data) * To further accelerate transaction processing, Hyperswitch stores all transaction-related data reads in Redis, an in-memory key-value store * This choice of data storage allows for rapid access to transaction details, ensuring that every step of the process is nearly instantaneous. chevron-right**Asynchronous Data Persistence**[hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#asynchronous-data-persistence) * Hyperswitch optimizes the transaction workflow by making all data writes to Redis and then asynchronously draining this data to the database * This approach minimizes any potential delays in the critical transaction path, maintaining the rapid pace that customers expect chevron-right**Parallelization**[hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#parallelization) * Hyperswitch embraces parallelization wherever possible, ensuring that multiple operations can be executed simultaneously * This approach further enhances its speed and responsiveness, making it a true powerhouse in payment processing circle-info The latency of the entire Hyperswitch application is just ~25 ms ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-e072b310da9ef07d791451ac590f3b9cbe947b48%252Fimage.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=538a4281&sv=2) ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-ef5c8f796c12535418d16852583f5eee1335c42b%252FScreenshot%25202023-10-23%2520at%252012.07.08%2520AM.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=3ae2e9db&sv=2) ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#seamless-integration-just-another-microservice-in-your-system) **Seamless Integration - Just another microservice in your system** One of the remarkable features of Hyperswitch is its ability to seamlessly integrate into your existing technology stack. By functioning like a system software, Hyperswitch becomes an integral part of your system, eliminating network latency between your application and the switch. This means there's almost zero overhead introduced into your system. **Reduced Network Latency**: Hyperswitch's integration into your stack eliminates network latency, leading to quicker transaction processing and improved system performance. **Streamlined Workflow**: With Hyperswitch seamlessly embedded in your stack, transaction processing becomes an integral part of your system's workflow. This streamlines the management of payment processing and reduces the complexity of maintaining multiple external connections. **Improved Reliability**: By operating as a tightly integrated component, Hyperswitch can be configured and managed alongside the rest of your stack, allowing for comprehensive monitoring and ensuring high levels of reliability and availability. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#bottomline) **Bottomline** By adding almost zero overhead, Hyperswitch ensures that the lion's share of the transaction's latency, as experienced by the end user, is determined by the payment processor's inherent processing time. In essence, Hyperswitch acts as the invisible hand behind the scenes by connecting merchants with multiple payment processors in the blink of an eye without adding any noticeable overhead. Last updated 11 hours ago Was this helpful? * [How Hyperswitch achieves a near-invisible presence](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#how-hyperswitch-achieves-a-near-invisible-presence) * [Seamless Integration - Just another microservice in your system](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#seamless-integration-just-another-microservice-in-your-system) * [Bottomline](https://docs.hyperswitch.io/about-hyperswitch/hyperswitch-architecture/a-payments-switch-with-virtually-zero-overhead#bottomline) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Previous Roadmap - Q1 2025 | Hyperswitch 🗺️ Our Roadmap typically pans out over a 3-month period and we establish topics we work on upfront. Before the beginning of every quarter we come together to develop the next roadmap based on our core values, previous roadmap, findings over the previous quarter, what we heard from the community as feature requests. 👂And as always, we listen to your feedback and adapt our plans if needed. ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#recap-of-q2-2024) Recap of Q4 2024 * [Dynamic Tax updater for express checkout wallets (Paypal, Applepay, Googlepay and Klarna) using Taxjararrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/e-commerce-platform-plugins/automatic-tax-calculation-for-express-checkout-wallets) * [Smart retries extended to 7 more PSPs: Adyen, Worldpay, Braintree, Deutsche Bank, Novalnet, Fiuu and Nexi Xpayarrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/payment-flows-and-management/smart-retries) * Implementation of MPAN (merchant tokens) flow for Applepay recurring payments * [Enablement of guest checkout flow with Click to Payarrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/merchant-controls/click-to-pay#easier-and-customizable-integration) * [Pass through Split payments through Stripe Connect and Adyen Platformsarrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/payment-flows-and-management/split-payments) * [New connector and payment method integrationsarrow-up-right](https://hyperswitch.io/pm-list) * Nexixpay (Cards) * Fiuu (Duitnow QR, Apple Pay, Google Pay) * Cybersource (Paze Wallet, Samsung Pay) * Bankofamerica (Samsung Pay) * Novalnet (Paypal, Google Pay) * Paypal Vaulting (via Cards and Paypal Wallet) * Adyen (Paze Wallet) * Elavon (Cards) * Klarna Kustom Checkout * JPMorgan (Cards) * Deutsche Bank(Cards 3DS) * Data reporting at an organization, merchant and profile level for easier reconciliation * Enhancements in analytics module for Refunds, Disputes and Smart Retries * [Support for migration of Network Tokens for business continuityarrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/account-management/data-migration/import-data-to-hyperswitch) ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#core-values) Core Values Our core values have pretty much remained the same since the early days and here they are: * Make payments more `accessible` and `affordable` to every digital business * Staying `simple` and `super-lightweight`, and at the same time `reliable` and `scalable` payment switch * Being `community-first` in ideation, planning and execution of features ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#themes-for-roadmap) Themes for Roadmap There are a lot of problems to be solved in payments, but our majority of our current focus falls under 5 themes below. 🌎 **Community Feature Requests:** Most of our community feature requests falls under one of the above themes, but we still keep this as a separate theme, because we intend to actively explore new problem statements and themes from the community before scheduling actual feature work. 👨‍💻 **Developer Experience:** Providing a great self-service and self-installation experience for developers who wish to use or contribute back to Hyperswitch. 💰 **Reducing Payment Costs:** Payments should be like a free utility for digital businesses. Any business should be able reduce payment processing costs by embracing the diversity in payments. 📈 **Improving Authorization Rates:** Ensuring a best-in-class payment experience and access to latest innovations in the payments ecosystem for all businesses. 👍 **Reducing Payment Operations:** Managing payments across multiple countries, currencies and processors should not add to the administrative burden on businesses. Hence, Hyperswitch intends to eliminate all such operational burdens so that businesses can focus on the core activities. **Legend** **Description** 🟩 Feature completed 🟧 Feature in progress 🟥 Work not started 💪 Stretch target 🚛 Backlog feature ### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#roadmap) Roadmap #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#modular-and-composable-payments) Modular and Composable Payments In Q1’25, Hyperswitch will be offering the following composable services as standalone modules on Hyperswitch SaaS version. This activity would be the major focus for the team and each of these modules address one or more of the above roadmap themes * 🟧 **Payment Methods Service (includes Vault):** Merchants will be able use the standalone Payment methods service to do various levels of tokenization \[PCI tokenization, Network tokenization, PSP tokenization - one-time/multi-use\]. PCI compliant merchants will be able to leverage server-to-server flow for tokenization. _(Larger-scope initiative extending into Q2)_ * 🟧 **Reconciliation Service:** Reconciliation module will have an upgraded user experience; and allow FinOps teams to use the module independently without having to use Hyperswitch as the transaction processing technology _(Larger-scope initiative extending into Q2)_ * 🟧 **Cost observability service:** For merchants on interchange+ pricing, HyperSense will ingest their PSP invoices and reports to present the cost - trends, drill-downs, auto RCAs for any anomalies and audit of the report _(Larger-scope initiative extending into Q2)_ * 🟧 **Churn Recovery Service:** For merchants with recurring payment use cases and working with an external subscription engine, Churn recovery service will get notified about all recurring transactions and retry those transactions that have failed _(Larger-scope initiative extending into Q2)_ #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#community-feature-requests) Community Feature Requests * New integrations * 🟩 Deutsche Bank for card payments * 🟩 Redsys * 🟩 Inespay * 🟩 Xendit * 🟧 Amazon Pay _(moved to Q2)_ * 🟥 Scan Card Feature for MWeb _(moved to Q2)_ #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#improving-authorization-rates) Improving Authorization Rates * 🟧 **Intelligent Routing:** Intelligent Routing module tracks the auth rates of various processor in realtime at a granular level to select the most optimal processor to boost conversions * 🟥 **Outages and acute failures:** Provides a failsafe system that proactively identifies incidents and holds off traffic to processors that are facing temporary downtimes or failures _(Larger-scope initiative extending into Q2)_ * 🟥 **Volume Commitments:** Helps select the appropriate PSP for getting volume tier benefits from the processor by routing sufficient payments volume to necessary processors in accordance with their SLA or contracts _(Larger-scope initiative extending into Q2)_ * **🟧 Churn Recovery Service:** For all merchants with recurring payment use cases and working with an external subscription engine, Churn recovery service will get notified about all recurring txns and retry only those transactions that have failed _(Larger-scope initiative extending into Q2)_ * 🟩 **Split retries -** Merchants will be able to split retries between their subscription engine and the Passive retry service * 🟩 **Single PSP -** The Churn Recovery service will interact with only a single PSP for a transaction * 🟩 **Basic Retry logic -** The Churn Recovery service will have a very basic error code & region based logic to retry transactions * 🟧 Secure Card on File (SCOF) with Passkeys - For Mastercard cards, provide Biometric authentication to the customers _(extending to Q2)_ * 🟧 **One time tokenization:** During CIT payments, merchants will be able to do collect, validate and do one-time tokenization of cards & other PMs and use these one-time tokens later in the checkout flow once the customer confirms their purchase _(extending to Q2)_ * 🟩 Smart retry enhancements using Clear PAN as fallback for Network Tokens/ Gateway tokens to improve auth rates * 🟩 More payment authorization workflows - Estimated auth and Over-capture #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#reducing-payments-cost) Reducing Payments Cost * **🟧** PINless Debit routing - enable cost savings through regulated/ unregulated transactions in US _(extending to Q2)_ #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#reducing-payment-operations) Reducing Payment Operations * **🟧 Revamped Recon module** to support self exploration with transaction source agnostic recon and 2-way or 3-way level capabilities _(Larger-scope initiative extending into Q2)_ * **🟧 Cost observability service:** For merchants on interchange+ pricing, HyperSense will ingest their PSP invoices and reports to present the cost - trends, drill-downs, auto RCAs for any anomalies and audit of the report _(Larger-scope initiative extending into Q2)_ * 🟩 Data reporting on an organisation, merchant and profile level for easier reconciliation #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#developer-experience) Developer Experience * 🟧 Enhancing Hyperswitch's self-deployment process to be even more seamless and self-serve, enabling merchants to deploy a fully compliant payments stack independently _(Larger-scope initiative extending into Q2)_ * 🟧 Revamped connector <> payment method matrix view _(extending to Q2)_ #### [hashtag](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#want-to-contribute-to-the-roadmap) **Want to contribute to the roadmap?** [Submit an idea or feature request herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/categories/ideas-feature-requests) with a simple explanation on `What?` and `Why?` included. Last updated 11 hours ago Was this helpful? * [Recap of Q4 2024](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#recap-of-q2-2024) * [Core Values](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#core-values) * [Themes for Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#themes-for-roadmap) * [Roadmap](https://docs.hyperswitch.io/about-hyperswitch/roadmap/roadmap-q1-2025#roadmap) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Payments Flows | Hyperswitch Juspay Hyperswitch is built for teams that want engineering-grade control over payments. To simplify architectural decisions, the ecosystem can be viewed as four independent building blocks. By defining ownership of each block — Hyperswitch-managed, self-hosted, or third-party — you can design an architecture aligned with your compliance posture, performance requirements, and internal engineering capabilities. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite#the-four-core-components) The Four Core Components #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite#the-sdk-frontend) The SDK (Frontend) The entry point for your payment flow. It resides in your frontend and is responsible for securely capturing sensitive payment information. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite#intelligent-routing-and-orchestration-backend) Intelligent Routing & Orchestration (Backend) The core of the operation. It manages the payment lifecycle, executes routing logic, and handles post-payment operations like refunds. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite#acquirer-and-processor-connectivity-connectors) Acquirer & Processor Connectivity (Connectors) The actual pipelines that translate the transaction (e.g., Stripe, Adyen, Worldpay). #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite#vault-card-data-storage) Vault (Card Data Storage) The secure locker for sensitive card data to enable "One-Click" recurring payments without the user re-entering details. Each Component can be handled by Hyperswitch, managed or self-deployed by your own team, or even sourced from a third-party provider e.g. Vault ([referencearrow-up-right](https://docs.hyperswitch.io/~/revisions/wA01t1OV6BPUckMZ2Pvg/explore-hyperswitch/workflows/vault/connect-external-vaults-to-hyperswitch-orchestration) ) * * * ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite#integration-architecture) Integration Architecture With the components defined, the next step is to select your integration architecture. This choice hinges on a single question: Who controls the payment execution? Choose the integration method that best aligns with your payment flow requirements: #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite#integration-model-1-client-side-sdk-payments) Integration Model 1: Client-Side SDK Payments (Tokenize Post-Payment | SDK-Initiated Execution) **When to Choose This Model:** * You want dynamic, frontend-driven payment experiences * You prefer minimal backend orchestration logic * You want SDK-triggered payment confirmation * You are optimizing for rapid checkout implementation **High-level Flow:** 1. Merchant will call the [/paymentsarrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--create) API and load the [Payment SDKarrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/payment-experience/payment) . 2. SDK securely collects payment details. 3. SDK triggers payment confirmation. 4. SDK communicates with Hyperswitch backend. 5. Hyperswitch: * Applies [routing logicarrow-up-right](https://docs.hyperswitch.io/~/revisions/iPtyU5MKxmgIsGywgRhI/explore-hyperswitch/workflows/intelligent-routing) * Sends request to configured PSP * Manages authorization/capture * Returns final payment status * * * #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite#integration-model-2-server-to-server-s2s-payments) Integration Model 2: Server-to-Server (S2S) Payments (Tokenize Pre-Payment | Backend-Controlled Execution) **When to Choose This Model:** * You want granular control over transaction timing * You require backend-driven orchestration logic * You want to tokenize credentials before execution * You prefer decoupling vaulting from transaction processing **High-level Flow:** **Tokenize Card:** * Tokenize payment credentials using - [Vault SDKarrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/payment-experience/payment-method/web) or backend call to [/payment-methodsarrow-up-right](https://api-reference.hyperswitch.io/v2/payment-methods/payment-method--create-v1) * Hyperswitch securely stores the credential and returns a reusable identifier - `payment_method_id`. **Trigger Payment Execution:** * Option A: Process via Hyperswitch Orchestration by calling /payments API. * Use this option if you want Hyperswitch to: * Apply [routing logicarrow-up-right](https://docs.hyperswitch.io/~/revisions/iPtyU5MKxmgIsGywgRhI/explore-hyperswitch/workflows/intelligent-routing) * Select the optimal connector * Manage [retriesarrow-up-right](https://docs.hyperswitch.io/~/revisions/iPtyU5MKxmgIsGywgRhI/explore-hyperswitch/workflows/smart-retries) and failover * Handle authorization and capture lifecycle * This is the recommended model for merchants adopting Hyperswitch orchestration. * Option B: Process via Proxy API by calling [/proxyarrow-up-right](https://docs.hyperswitch.io/~/revisions/wbGQKlHTQ8NT2yPUGcD2/about-hyperswitch/payment-suite-1/payment-method-card/proxy) API. * Use this option if: * You do not want to change your existing PSP integration immediately * You want Hyperswitch to act as a passthrough layer * You are incrementally migrating to full orchestration * In this mode: * Your existing integration contract remains unchanged * Hyperswitch forwards requests to the configured processor * You can progressively enable routing and orchestration features Last updated 11 hours ago Was this helpful? * [The Four Core Components](https://docs.hyperswitch.io/integration-guide/payment-suite#the-four-core-components) * [Integration Architecture](https://docs.hyperswitch.io/integration-guide/payment-suite#integration-architecture) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Overcapture | Hyperswitch ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#overview) Overview In card payments, Over Capture occurs when a merchant captures (settles) an amount greater than the originally authorized amount. This is particularly useful in scenarios such as: * Additional charges (e.g., shipping, handling, gratuities). * Price adjustments made after initial authorization. * Reducing the risk of under-capturing when final order values differ. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#enabling-over-capture) Enabling Over Capture #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#id-1.-profile-level-configuration-via-dashboard) 1\. Profile-level Configuration (via Dashboard) * Navigate to: Developer → Payment Settings → Always Enable Over Capture * Toggle Enable/Disable as required. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#id-2.-per-request-configuration-via-api) 2\. Per-request Configuration (via API) Use the boolean field `enable_overcapture` in your payment request. This can be passed in: [POST /paymentsarrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--create) [POST /payments/:id/updatearrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--update) circle-exclamation **Note:** * The request-level `enable_overcapture` will override the profile-level setting. * Over Capture is only applicable for manual capture payments i.e. `capture_method = manual`. * * * ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#example-api-request) Example: API Request ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#example-api-response) Example: API Response #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#field-semantics) Field Semantics `enable_overcapture` Indicates merchant intent. Value Meaning `true` Over-capture requested `false` Over-capture not requested * * * `is_overcapture_enabled` Indicates connector capability acceptance. Value Meaning `true` Connector supports and enabled over-capture `false` Connector does not support over-capture * * * ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#monitoring-and-settlement) Monitoring & Settlement * After authorization, merchants can view the `amount_capturable` field (under More Payment Details) to see the maximum amount that can be captured. * Once the payment is captured (or overcaptured), the final amount will be reflected in the `amount_received` field. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#merchant-action) Merchant Action * Use Dashboard settings for global enablement * Use API overrides for payment-specific enablement * Monitor capturable and received amounts to track final settlements Last updated 11 hours ago Was this helpful? * [Overview](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#overview) * [Enabling Over Capture](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#enabling-over-capture) * [Example: API Request](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#example-api-request) * [Example: API Response](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#example-api-response) * [Monitoring & Settlement](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#monitoring-and-settlement) * [Merchant Action](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/manual-capture/overcapture#merchant-action) Was this helpful? sun-brightdesktopmoon Copy curl --location 'https://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data '{ "amount": 100, "currency": "USD", "confirm": true, "capture_method": "manual", "enable_overcapture": true, }' Copy { "payment_id": "pay_GPnTPs4e56yZ8FKAcj0K", "status": "requires_capture", "amount": 100, "amount_capturable": 100, "connector": "adyen", "enable_overcapture": true, "is_overcapture_enabled": true, "capture_method": "manual", "payment_method": "card", "payment_method_type": "debit", "network_transaction_id": "112181545921495", "created": "2025-09-24T11:29:55.629Z", "expires_on": "2025-09-24T11:44:55.629Z" } sun-brightdesktopmoon --- # Recurring payments | Hyperswitch Recurring payments via Juspay Hyperswitch can be setup by passing some additional flags, as highlighted below. The recurring payments are not tied to a specific amount or cycle and the merchant can charge the end-user as per their own business requirements. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#programmatic-card-on-file-setup-with-immediate-charge-cit--save) Programmatic Card-on-File Setup with Immediate Charge (CIT + Save) When setting up subscription there are two distinct implementation flows. The correct flow depends on whether you intend to charge the customer immediately or simply validate their details for later use. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#id-1.-the-setup-with-charge-flow) 1\. The Setup with Charge Flow **Use Case:** Use this when you need to collect a payment immediately (e.g., the first month of a subscription or a setup fee) while simultaneously saving the card details for future automatic charges. For this call Payments API with the below configuration parameters. **Required API Configuration** Include below parameter and values while calling the [paymentsarrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--create) API. Parameter Value `amount` \>0 (Greater than zero) `setup_future_usage` `off_session` **Run-Ready API Example (CIT with Charge)** Copy curl --location 'https://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data-raw '{ "amount": 6540, "currency": "USD", "profile_id": , "setup_future_usage":"off_session", "customer_id": "customer123", "description": "Its my first payment request", "return_url": "https://example.com", // }' #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#id-2.-zero-dollar-authorization-mandate-only-setup) 2\. Zero Dollar Authorization (Mandate-Only Setup) **Use Case:** Use this for free trials, pay-later models, or delayed billing. This flow validates the payment method details without charging the customer's card. **Required API Configuration** Pass below parameters while calling payments API for [Zero Dollar Autharrow-up-right](https://docs.hyperswitch.io/explore-hyperswitch/payment-orchestration/quickstart/tokenization-and-saved-cards/zero-amount-authorization-1) Parameter Value `setup_future_usage` `off_session` `amount` `0` `payment_type` `payment_type` **Run-Ready API Example (Zero Auth Mandate)** Once the CIT is successful, Hyperswitch returns a `payment_method_id` . This `payment_method_id` can be used by the merchant for all subsequent MIT recurring payments. Hyperswitch also returns the `network_transaction_id` (NTID) in its response to allow PICI compliant merchants to direct pass card + NTID for processing MIT recurring payments The `payment_method_id` serves as a unique identifier mapped to a specific combination of a Customer ID and a unique Payment Instrument (e.g., a specific credit card, digital wallet, or bank account). A single customer can have multiple payment methods, each assigned a distinct ID. However, the same payment instrument used by the same customer will always resolve to the same `payment_method_id`. This uniqueness applies across all payment types, including cards, wallets, and bank details. For example, you can refer the below table - **Customer ID** **Payment Instrument** **Payment Method ID** 123 Visa ending in 4242 `PM1` 123 Mastercard ending in 1111 `PM2` 456 Visa ending in 4242 `PM3` 123 PayPal Account (`[[email protected]](https://docs.hyperswitch.io/cdn-cgi/l/email-protection) `) `PM4` Internally the payment\_method\_id is mapped to a bunch of credentials - PSP token, Raw card + NTID, Network token + NTID depending on functionalities enabled for the merchant. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#customer-consent-capture-mandate-compliance) Customer Consent Capture (Mandate Compliance) If you are not using Hyperswitch SDK, then `customer_acceptance` (customer's consent)is required along with the other parameters [confirmarrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--confirm) request to store the card. If you are using the Hyperswitch SDK, the `customer_acceptance` is sent in the [confirmarrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--confirm) request on the basis of customer clicking the save card radio button **Note:** Ensure to enable this functionality using the [_displaySavedPaymentMethodsCheckbox_arrow-up-right](https://docs.hyperswitch.io/hyperswitch-cloud/integration-guide/web/customization#id-6.-handle-saved-payment-methods) property during SDK integration * * * ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#merchant-initiated-transactions-mit-decoupled-execution) Merchant-Initiated Transactions (MIT) – Decoupled Execution Hyperswitch supports decoupled transaction flows, allowing Merchant-Initiated Transactions (MITs) to be processed independently of the original Customer-Initiated Transaction (CIT), even when the CIT was completed outside the Hyperswitch platform. MITs are initiated by invoking the [`/payments`arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--create) API with `off_session: true` and providing the available reference data in the `recurring_details` object. Depending on the artifacts available in your system, one of the following approaches can be used: #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#payment-method-id) [**Payment Method ID**arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--confirm#body-recurring-details) Submit the Hyperswitch generated payment\_method\_id to process the MIT transaction. Depending on the merchant configurations the MIT will be processed with the same PSP or with a different PSP. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#processor-payment-token) [**Processor Payment Token**arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--confirm#option-3) Submit a processor-issued token that represents the previously authorized payment instrument. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#network-transaction-id-with-card-data) [**Network Transaction ID with Card Data**arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--confirm#option-4) Provide the original network transaction identifier along with the associated primary card data required for authorization. circle-info ⚠️ **PSP Configuration Required** This feature is not enabled by default and must be explicitly enabled by PSP. You may receive errors such as `Received unknown parameter: payment_method_options[card][mit_exemption]`, follow the steps below to request activation. Email the PSP Support requesting: * Access to the `mit_exemption` parameter for MIT (Merchant Initiated Transaction) payments * Ability to pass `network_transaction_id` in the parameter: `payment_method_options[card][mit_exemption][network_transaction_id]` * Explain your use case: enabling cross-processor MIT payments using network transaction IDs from card schemes #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#network-transaction-id-with-network-token) [**Network Transaction ID with Network Token**arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--confirm#option-5) **:** Submit the network transaction identifier in combination with the corresponding network tokenized card credentials. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#limited-card-data) [**Limited Card Data**arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--confirm#option-6) **:** Use a reduced card data set captured at the time of subscription creation to authorize subsequent MITs. * * * ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#connector-agnostic-mit-routing) Connector-Agnostic MIT Routing The CIT used to set up recurring payments via MIT uses the PG token. This introduces a connector stickiness since the recurring payments can only go through the connector which issued the token. To mitigate this we would be storing the Network Transaction ID which will be a chaining identifier for the CIT in which the payment method was saved for off-session payments. In the following MIT payments basis the enablement of the feature and the availability of Network Transaction ID Hyperswitch will route your payments to the eligible set of connectors. (This will also be used for retries). #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#enabling-connector-agnostic-mits) Enabling Connector agnostic MITs To start routing MIT payments across all supported connectors in addition to the connector through which the recurring payment was set up, use the below API to enable it for a business profile All the payment methods saved with `setup_future_usage : off_session` after enabling this feature would now be eligible to be routed across the list of supported connectors during the subsequent MIT payments * * * ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#routing-example-cits-are-routed-through-psp-1-and-all-mits-through-psp-2) Routing example - CITs are routed through PSP-1 and all MITs through PSP-2 The [Hyperswitch dashboardarrow-up-right](https://app.hyperswitch.io/dashboard/routing/rule) provides UI to configure routing rules for PG Agnostic Recurring Payments. You can choose the profile for which you wish to configure the rule in the Smart Routing Configuration. Then, you can configure the rule as shown below using the metadata field in the Rule-Based Configuration. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-0e6b78a99f662cd1402b746539950b2b8509b642%252FRouting%2520rule%2520for%2520pg%2520agnostic%2520recurring%2520payments.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=6a3d4508&sv=2) This rule would be used in conjunction with the other active routing rules that you have configured. Once the rule is configured, you would need to send the following metadata as per the payment request: #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#metadata-to-be-sent-in-cits) **Metadata to be sent in CITs** #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#metadata-to-be-sent-in-mits) **Metadata to be sent in MITs** According to the above configured rule all the CITs for the specific business profile should be routed through Stripe and MITs through Adyen. Last updated 5 hours ago Was this helpful? * [Programmatic Card-on-File Setup with Immediate Charge (CIT + Save)](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#programmatic-card-on-file-setup-with-immediate-charge-cit--save) * [Customer Consent Capture (Mandate Compliance)](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#customer-consent-capture-mandate-compliance) * [Merchant-Initiated Transactions (MIT) – Decoupled Execution](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#merchant-initiated-transactions-mit-decoupled-execution) * [Connector-Agnostic MIT Routing](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#connector-agnostic-mit-routing) * [Routing example - CITs are routed through PSP-1 and all MITs through PSP-2](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/recurring-payments#routing-example-cits-are-routed-through-psp-1-and-all-mits-through-psp-2) Was this helpful? sun-brightdesktopmoon Copy curl --location 'http://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data-raw '{ "amount": 0, "currency": "USD", "confirm": false, "customer_id": "zero_auth_test_customer", "email": "[email protected]", "name": "John Doe", "phone": "999999999", "phone_country_code": "+1", "description": "Its my first payment request", "profile_id": , "setup_future_usage": "off_session" }' Copy "customer_acceptance": { "acceptance_type": "online", "accepted_at": "1963-05-03T04:07:52.723Z", "online": { "ip_address": "in sit", "user_agent": "amet irure esse" } } Copy curl --location 'http://sandbox.hyperswitch.io/account/:merchant_id/business_profile/:profile_id/toggle_connector_agnostic_mit' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: api_key' \ --data '{ "enabled": true }' Copy "metadata": { "is_cit": "true" } Copy "metadata": { "is_mit": "true" } sun-brightdesktopmoon --- # Authorizations | Hyperswitch ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/authorizations#advanced-authorization-types) **Advanced Authorization Types** This section outlines the specialized authorization flows supported by Juspay Hyperswitch. These methods allow you to verify payment instruments or manage fluctuating transaction totals without requiring the customer to re-enter their details. **1\. $0 Authorization (Account Verification)** Commonly used for card-on-file or subscription setups, this flow verifies that a payment method is valid and active without actually blocking any funds. It is an essential step for "Save Card" features to ensure the payment\_method\_id is linked to a legitimate account before future use. **2\. Estimate Authorization** This allows a business to block a calculated amount on a customer's card based on an expected total, such as a hotel stay or a car rental deposit. It ensures the customer has sufficient credit available before the service is rendered, providing a safety net for the merchant. **3\. Incremental Authorization** If the final cost exceeds the initial estimate (e.g., a guest extends their stay or adds room service), this flow allows you to increase the authorized amount on the existing transaction. It avoids the need for a completely new transaction, keeping the checkout experience seamless and consolidated. **4\. Extended Authorization** Standard authorizations typically expire within 3 to 7 days; however, Extended Authorization keeps the hold active for a longer duration. This is ideal for businesses with long lead times, such as custom-manufactured goods or pre-orders, where shipping might occur weeks after the initial order. **5\. Partial Authorization** In scenarios where a customer's card balance is lower than the total purchase amount, a Partial Authorization allows you to capture the remaining available balance. The customer can then cover the difference using a secondary payment method, effectively preventing a total transaction decline. Last updated 11 hours ago Was this helpful? Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Saving Payment Method | Hyperswitch Juspay Hyperswitch supports the following ways of saving a payment method used in a successful payment: 1. Saving for future customer on-session payments (COF-CIT) 2. Saving for future customer off-session payments (MIT) ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#saving-a-payment-method-for-future-on-session-payments-cof-cit) Saving a payment method for future on-session payments (COF CIT) To improve conversion rates and eliminate friction for the customer during checkout, you can save the customer's card so that they wouldn't have to enter the card details every time. This also minimises the risk of the customer entering incorrect card details. Saving for future on-session payments implies that the customer will be available online during the checkout and can authenticate the payment by entering CVV or complete 3DS verification. These are known as Card-on-File Customer Initiated Transactions (COF-CIT). This is typically limited for card payment methods and not for wallets (viz. Apple Pay) and other APMs. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#to-save-a-customers-payment-method-used-in-a-successful-transaction-for-future-cit-payments) To save a customer's payment method used in a successful transaction for future CIT payments: chevron-rightFollow Steps for SDK integration[hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#follow-steps-for-sdk-integration) Pass the following field in the `/payments` create request to indicate your intention to save the payment method Copy curl --location 'https://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data-raw '{ "amount": 6540, "currency": "USD", "profile_id": , "setup_future_usage":"on_session", "customer_id": "customer123", "description": "Its my first payment request", "return_url": "https://example.com", // }' circle-info **Note:** Ensure to enable this functionality using the [_displaySavedPaymentMethodsCheckbox_arrow-up-right](https://docs.hyperswitch.io/hyperswitch-cloud/integration-guide/web/customization#id-6.-handle-saved-payment-methods) property during SDK integration If you are using the Hyperswitch SDK, the `customer_acceptance` is sent in the `/payments/:id:/confirm` request on the basis of customer clicking the save card radio button ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-37c63789f648b43eac141acfbb758edf417197a5%252FScreenshot%25202024-04-18%2520at%252012.49.35%2520PM.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=83bbd9b4&sv=2) The customer's consent to save their card is expressed through this checkbox chevron-rightFollow Steps For API Integration[hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#follow-steps-for-api-integration) **Step 1 --** Pass the following field in the `/payments` create request to indicate your intention to save the payment method Copy curl --location 'https://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data-raw '{ "amount": 6540, "currency": "USD", "profile_id": , "setup_future_usage":"on_session", "customer_id": "customer123", "description": "Its my first payment request", "return_url": "https://example.com", // }' **Step 2 --** During the payment confirm call pass the customer's consent to store the card in the request Copy "customer_acceptance": { "acceptance_type": "online", "accepted_at": "1963-05-03T04:07:52.723Z", "online": { "ip_address": "in sit", "user_agent": "amet irure esse" } } * * * ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#saving-a-payment-method-for-future-mit-payments) Saving a payment method for future MIT payments Let's say, you want to save a customer's payment method to charge them at a later point without the need for additional cardholder authentication. This is done by raising an MIT (Merchant Initiated Transaction) exemption to the card network by the payment processor with reference to an initial transaction where the customer has authorised recurring charges. These are typically used when you want to charge a customer periodically/sporadically with a flexibility on the amount to be charged and number of charges. Based on the payment processors support, this functionality is also available for other payment methods like Apple Pay and Google Pay Wallets. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#to-save-a-customers-payment-method-used-in-a-successful-transaction-for-future-mit-payments) To save a customer's payment method used in a successful transaction for future MIT payments: chevron-rightFollow Steps for SDK integration[hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#follow-steps-for-sdk-integration-1) Pass the following field in the `/payments` create request to indicate your intention to save the payment method If you are using the Hyperswitch SDK, the `customer_acceptance` is sent in the `/payments/:id:/confirm` request on the basis of customer clicking the save card radio button circle-info **Note:** Ensure to enable this functionality using the [_displaySavedPaymentMethodsCheckbox_arrow-up-right](https://docs.hyperswitch.io/hyperswitch-cloud/integration-guide/web/customization#id-6.-handle-saved-payment-methods) property during SDK integration Retrieve the `payment_method_id` that was created against the above payment by retrieving the payment. You will get the payment\_method\_id in the response. Store this ID for making subsequent MIT payments. chevron-rightFollow Steps for API integration[hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#follow-steps-for-api-integration-1) Pass the following field in the `/payments` create request to indicate your intention to save the payment method During the payment confirm call pass the customer's consent to store the card in the request Retrieve the `payment_method_id` that was created against the above payment by retrieving the payment. You will get the payment\_method\_id in the response. Store this ID for making subsequent MIT payments. * * * ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#using-a-saved-payment-method-to-do-a-mit-payment) Using a saved payment method to do a MIT payment Once a customer's payment method is saved for MIT payments you can start charging the customer by sending the following details in the `/payments` request You would be using the same `payment_method_id` that was returned in the `/payments/:id:/retrieve` response for the initial transaction where the customer authorized saving for future use. To get all the payment methods saved for a customer use the [List Customer Payment Methodsarrow-up-right](https://api-reference.hyperswitch.io/api-reference/payment-methods/list-payment-methods-for-a-customer) API. * * * ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#processing-mit-payments-without-a-saved-payment-method) Processing MIT Payments Without a Saved Payment Method If a merchant is PCI-compliant and has the customer payment method details stored, an MIT payment can be performed by passing the card details and the network transaction id directly in the confirm call. * * * Last updated 11 hours ago Was this helpful? * [Saving a payment method for future on-session payments (COF CIT)](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#saving-a-payment-method-for-future-on-session-payments-cof-cit) * [To save a customer's payment method used in a successful transaction for future CIT payments:](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#to-save-a-customers-payment-method-used-in-a-successful-transaction-for-future-cit-payments) * [Saving a payment method for future MIT payments](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#saving-a-payment-method-for-future-mit-payments) * [Using a saved payment method to do a MIT payment](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#using-a-saved-payment-method-to-do-a-mit-payment) * [Processing MIT Payments Without a Saved Payment Method](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method#processing-mit-payments-without-a-saved-payment-method) Was this helpful? sun-brightdesktopmoon Copy curl --location 'https://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data-raw '{ "amount": 6540, "currency": "USD", "profile_id": , "setup_future_usage":"off_session", "customer_id": "customer123", "description": "Its my first payment request", "return_url": "https://example.com", // }' Copy curl --location 'https://sandbox.hyperswitch.io/payments/' \ --header 'Accept: application/json' \ --header 'api-key: ' \ Copy curl --location 'https://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data-raw '{ "amount": 6540, "currency": "USD", "profile_id": , "setup_future_usage":"off_session", "customer_id": "customer123", "description": "Its my first payment request", "return_url": "https://example.com", // }' Copy "customer_acceptance": { "acceptance_type": "online", "accepted_at": "1963-05-03T04:07:52.723Z", "online": { "ip_address": "in sit", "user_agent": "amet irure esse" } } Copy curl --location 'https://sandbox.hyperswitch.io/payments/' \ --header 'Accept: application/json' \ --header 'api-key: ' \ Copy "off_session": true, "recurring_details": { "type": "payment_method_id", "data": "pm_lmTnIO5EdCiiMgRPrV9x" //pass the payment method id here } Copy curl --request GET \ --url https://sandbox.hyperswitch.io/customers/{customer_id}/payment_methods \ --header 'api-key: ' Copy "off_session": true, "recurring_details": { "type": "network_transaction_id_and_card_details", "data": { "card_number": "4242424242424242", "card_exp_month": "10", "card_exp_year": "25", "card_holder_name": "joseph Doe", "network_transaction_id": "MCC5ZRGMI0925" //scheme transaction id } } sun-brightdesktopmoon --- # Pay-Then-Vault | Hyperswitch Juspay Hyperswitch provides flexible payment processing with multiple flow patterns to accommodate different business needs. The system supports one-time payments, saved payment methods, and recurring billing through a comprehensive API design. circle-info **Integration Path** **Client-Side SDK Payments (Tokenise Post Payment)** Refer to Payments (Cards) section if your flow requires the SDK to initiate payments directly. In this model, the SDK handles the payment trigger and communicates downstream to the Hyperswitch server and your chosen Payment Service Providers (PSPs). This path is ideal for supporting dynamic, frontend-driven payment experiences. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#one-time-payment-patterns) One-Time Payment Patterns #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#id-1.-instant-payment-automatic-capture) 1\. Instant Payment (Automatic Capture) **Use Case:** Simple, immediate payment processing **Endpoint:** `POST /payments` **Required Fields:** * `confirm: true` * `capture_method: "automatic"` * `payment_method` **Final Status:** `succeeded` #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#id-2.-two-step-manual-capture) 2\. Two-Step Manual Capture **Use Case:** Deferred capture (e.g., ship before charging) **Flow:** 1. **Authorize:** `POST /payments` with `capture_method: "manual"` 2. **Status:** `requires_capture` 3. **Capture:** `POST /payments/{payment_id}/capture` 4. **Final Status:** `succeeded` Read more: [herearrow-up-right](https://docs.hyperswitch.io/~/revisions/2M8ySHqN3pH3rctBK2zj/about-hyperswitch/payment-suite-1/payments-cards/manual-capture) #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#id-3.-fully-decoupled-flow) 3\. Fully Decoupled Flow **Use Case:** Complex checkout journeys with multiple modification steps. Useful in headless checkout or B2B portals where data is filled progressively. **Endpoints:** * **Create:** `POST /payments` * **Update:** `POST /payments/{payment_id}` * **Confirm:** `POST /payments/{payment_id}/confirm` * **Capture:** `POST /payments/{payment_id}/capture` (if manual) #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#id-4.-3d-secure-authentication-flow) 4\. 3D Secure Authentication Flow **Use Case:** Enhanced security with customer authentication **Additional Fields:** * `authentication_type: "three_ds"` **Status Progression:** `processing` → `requires_customer_action` → `succeeded` Read more: [herearrow-up-right](https://docs.hyperswitch.io/~/revisions/9QlGypixZFcbkq8oGjaF/explore-hyperswitch/workflows/3ds-decision-manager) ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#recurring-payments-and-payment-storage) Recurring Payments and Payment Storage #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#id-1.-saving-payment-methods) 1\. Saving Payment Methods **During Payment Creation:** * Add `setup_future_usage: "off_session"` or `"on_session"` * Include `customer_id` * **Result:** `payment_method_id` returned on success **Understanding** `**setup_future_usage**`**:** * `**on_session**`: Use when the customer is actively present during the transaction. This is typical for scenarios like saving card details for faster checkouts in subsequent sessions where the customer will still be present to initiate the payment (e.g., card vaulting for e-commerce sites). * `**off_session**`: Use when you intend to charge the customer later without their active involvement at the time of charge. This is suitable for subscriptions, recurring billing, or merchant-initiated transactions (MITs) where the customer has pre-authorized future charges. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#id-2.-using-saved-payment-methods) 2\. Using Saved Payment Methods **Steps:** 1. **Initiate:** Create payment with `customer_id` 2. **List:** Get saved cards via `GET /customers/payment_methods` 3. **Confirm:** Use selected `payment_token` in confirm call #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#pci-compliance-and-payment_method_id) PCI Compliance and `payment_method_id` Storing `payment_method_id` (which is a token representing the actual payment instrument, which could be a payment token, network token, or payment processor token) significantly reduces your PCI DSS scope. Hyperswitch securely stores the sensitive card details and provides you with this token. While you still need to ensure your systems handle `payment_method_id` and related customer data securely, you avoid the complexities of storing raw card numbers. Always consult with a PCI QSA to understand your specific compliance obligations. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#recurring-payment-flows) Recurring Payment Flows #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#id-3.-customer-initiated-transaction-cit-setup) 3\. Customer-Initiated Transaction (CIT) Setup Read more: [herearrow-up-right](https://docs.hyperswitch.io/~/revisions/j00Urtz9MpwPggJzRCsi/about-hyperswitch/payment-suite-1/payments-cards/recurring-payments) #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#id-4.-merchant-initiated-transaction-mit-execution) 4\. Merchant-Initiated Transaction (MIT) Execution Read more: [herearrow-up-right](https://docs.hyperswitch.io/~/revisions/j00Urtz9MpwPggJzRCsi/about-hyperswitch/payment-suite-1/payments-cards/recurring-payments) ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#status-flow-summary) Status Flow Summary ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#notes) Notes * **Terminal States:** `succeeded`, `failed`, `cancelled`, `partially_captured` are terminal states requiring no further action * **Capture Methods:** System supports `automatic` (funds captured immediately), `manual` (funds captured in a separate step), `manual_multiple` (funds captured in multiple partial amounts via separate steps), and `scheduled` (funds captured automatically at a future predefined time) capture methods. * **Authentication:** 3DS authentication automatically resumes payment processing after customer completion * **MIT Compliance:** Off-session recurring payments follow industry standards for merchant-initiated transactions Last updated 5 hours ago Was this helpful? * [One-Time Payment Patterns](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#one-time-payment-patterns) * [Recurring Payments and Payment Storage](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#recurring-payments-and-payment-storage) * [Recurring Payment Flows](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#recurring-payment-flows) * [Status Flow Summary](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#status-flow-summary) * [Notes](https://docs.hyperswitch.io/integration-guide/payment-suite/payments#notes) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Saved Card | Hyperswitch In this approach, the Juspay Hyperswitch SDK is used on the frontend to capture card details. Card data is securely sent to the Hyperswitch backend and stored in Hyperswitch Vault. Payment orchestration, routing, and connector logic are handled entirely by the Hyperswitch backend. The merchant uses the Hyperswitch Dashboard to configure connectors, routing rules, and orchestration logic. All payment requests are initiated using vault tokens, and raw card data never reaches merchant systems. Since card details are handled entirely by Hyperswitch, merchants are not required to be PCI DSS compliant for card data handling. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#new-user-payments-sdk) **New User (Payments SDK)** ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252FjkGNFeIwdmooVXOpfSy9%252FHS_SDK%2526Vaulting.svg%3Falt%3Dmedia%26token%3D3548a710-3618-4a71-8ff7-cb26e3835b96&width=768&dpr=3&quality=100&sign=76703a39&sv=2) #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-1.-create-payment-server-side) **1\. Create Payment (Server-Side)** The merchant server creates a payment by calling the Hyperswitch [`payments/create`arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--create) API with transaction details such as amount and currency. Hyperswitch responds with a `payment_id` , `customer_id` and `client_secret`, which are required for client-side processing. circle-info Note - In case the merchant does not pass the customer ID, then the transaction is treated as a Guest customer checkout #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-2.-initialize-sdk-client-side) **2\. Initialize SDK (Client-Side)** The merchant client initializes the Hyperswitch SDK using the `client_secret` and `publishable_key`. The SDK fetches eligible payment methods from Hyperswitch and renders a secure payment UI. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-3.-collect-card-details) **3\. Collect Card Details** The customer selects a card payment method and enters their card details directly within the SDK-managed interface, ensuring sensitive data never passes through merchant systems. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-4.-authorize-and-store-card) **4\. Authorize and Store Card** The SDK submits a [`payments/confirm`arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--confirm) request to Hyperswitch. Hyperswitch authorizes the payment with the processor and securely stores the card in the Hyperswitch Vault, generating a reusable `payment_method_id`. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-5.-return-status) **5\. Return Status** The final payment and vaulting status is returned to the SDK, which redirects the customer to the merchant's configured `return_url`. ### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#returning-or-repeat-user-payments-sdk) **Returning or Repeat User (Payments SDK)** ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252FgN7kUhPCdlIg10BVn6UI%252FHS_SDK%2526Stored.svg%3Falt%3Dmedia%26token%3D64f6c30c-9196-42bf-969b-f6dae66d4592&width=768&dpr=3&quality=100&sign=211fec5&sv=2) #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-1.-create-payment-server-side-1) **1\. Create Payment (Server-Side)** The merchant server initiates the payment by calling the [`payments/create`arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--create) API with transaction details such as amount and currency. Hyperswitch responds with a `payment_id` , `customer_id` and `client_secret`, which are required for client-side processing. circle-info Note -The merchant needs to pass the same customer ID for the SDK to fetch the saved customer payment methods and display them In case the merchant is not using the SDK then they need to use the List Customer Saved Payment Methods API to fetch the stored payment methods against a customer #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-2.-initialize-sdk-and-fetch-saved-cards) **2\. Initialize SDK and Fetch Saved Cards** The merchant client initializes the Hyperswitch SDK. The SDK requests eligible payment methods from Hyperswitch, including any saved cards associated with the customer. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-3.-customer-selects-a-saved-card) **3\. Customer Selects a Saved Card** The SDK displays the saved cards in the payment UI, customer enters the CVV. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-4.-retrieve-card-data-and-authorize) **4\. Retrieve Card Data and Authorize** The SDK sends a [`payments/confirm`arrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--confirm) request with the selected `payment_method_id`. Hyperswitch securely retrieves the card data from the Hyperswitch Vault and submits the authorization request to the processor via the Hyperswitch Connector. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#id-5.-return-status-1) **5\. Return Status** The processor returns the authorization result to Hyperswitch, which forwards the final status to the SDK. The customer is redirected to the merchant's `return_url` with the payment outcome. #### [hashtag](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#integration-guide) Integration Guide : [Unified Checkoutarrow-up-right](https://docs.hyperswitch.io/~/revisions/DXTxY8PvOykOfdbFcGmW/explore-hyperswitch/payment-experience/payment/web) [Payments APIarrow-up-right](https://api-reference.hyperswitch.io/v1/payments/payments--create) Last updated 11 hours ago Was this helpful? * [New User (Payments SDK)](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#new-user-payments-sdk) * [Returning or Repeat User (Payments SDK)](https://docs.hyperswitch.io/integration-guide/payment-suite/payments/save-a-payment-method/saved-card#returning-or-repeat-user-payments-sdk) Was this helpful? sun-brightdesktopmoon Copy curl --location 'https://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data-raw '{ "amount": 6540, "currency": "USD", "profile_id": , "customer_id": "customer123", "description": "Its my first payment request", "return_url": "https://example.com", // }' Copy // Fetches a payment intent and captures the client secret async function initialize() { const response = await fetch("/create-payment", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({currency: "USD",amount: 100}), }); const { clientSecret } = await response.json(); // Initialise Hyperloader.js var script = document.createElement('script'); script.type = 'text/javascript'; script.src = "https://beta.hyperswitch.io/v1/HyperLoader.js"; let hyper; script.onload = () => { hyper = window.Hyper("YOUR_PUBLISHABLE_KEY",{ customBackendUrl: "YOUR_BACKEND_URL", //You can configure this as an endpoint for all the api calls such as session, payments, confirm call. }) const appearance = { theme: "midnight", }; const widgets = hyper.widgets({ appearance, clientSecret }); const unifiedCheckoutOptions = { layout: "tabs", wallets: { walletReturnUrl: "https://example.com/complete", //Mandatory parameter for Wallet Flows such as Googlepay, Paypal and Applepay }, }; const unifiedCheckout = widgets.create("payment", unifiedCheckoutOptions); unifiedCheckout.mount("#unified-checkout"); }; document.body.appendChild(script); } Copy curl --location 'https://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data-raw '{ "amount": 6540, "currency": "USD", "profile_id": , "customer_id": "customer123", "description": "Its my first payment request", "return_url": "https://example.com", // }' Copy // Fetches a payment intent and captures the client secret async function initialize() { const response = await fetch("/create-payment", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({currency: "USD",amount: 100}), }); const { clientSecret } = await response.json(); // Initialise Hyperloader.js var script = document.createElement('script'); script.type = 'text/javascript'; script.src = "https://beta.hyperswitch.io/v1/HyperLoader.js"; let hyper; script.onload = () => { hyper = window.Hyper("YOUR_PUBLISHABLE_KEY",{ customBackendUrl: "YOUR_BACKEND_URL", //You can configure this as an endpoint for all the api calls such as session, payments, confirm call. }) const appearance = { theme: "midnight", }; const widgets = hyper.widgets({ appearance, clientSecret }); const unifiedCheckoutOptions = { layout: "tabs", wallets: { walletReturnUrl: "https://example.com/complete", //Mandatory parameter for Wallet Flows such as Googlepay, Paypal and Applepay }, }; const unifiedCheckout = widgets.create("payment", unifiedCheckoutOptions); unifiedCheckout.mount("#unified-checkout"); }; document.body.appendChild(script); } sun-brightdesktopmoon --- # Smart Routing | Hyperswitch ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#prerequisites) Prerequisites To get started with Smart Router, ensure to have one or more payment processors integrated. You can integrate the payment processor of your choice on the Control Center by following the [Connector Integration](https://docs.hyperswitch.io/other-features/connectors) guide. ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#what-is-smart-payment-routing) What is smart payment routing? Selling globally or otherwise invariably brings in a requirement to adopt multiple payment processors to cater to a wide range of payment method needs of the customers and gives you the flexibility to switch between processors to manage down-time and it could be vital to optimising your payment processing costs as your business can choose the most optimal payment processors for every payment based on the cost, region and customer. Hence, Juspay Hyperswitch's smart router is designed as a no-code tool to provide complete control and transparency in creating and modifying payment routing rules. Hyperswitch supports below formats of Smart Routing. **Volume Based Configuration:** Define volume distribution among multiple payment processors using percentages. **Rule Based Configuration:** More granular control which allows to define custom routing logics based on different parameters of payment. **Default Fallback Routing :** If the active routing rules are not applicable, the priority order of all configured payment processors is used to route payments. This priority order is configurable from the Dashboard. **Cost Based Configuration** (submit a feature request [herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/new?category=ideas-feature-requests) )**:** Automatically routes transaction to the payment processor charging the least MDR (merchant discount rate) for the opted payment method. ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#how-does-the-smart-router-work) How does the Smart Router work? Hyperswitch Smart Router Engine evaluates every payment request against your predefined routing logic and makes a decision on the best payment processor for the payment, and executes the transaction. If the payment fails or if the payment processor is down, the payment is automatically retried through a different processor. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-b688cc0fab22daa38be3c78f4b0d1bf6421dc56c%252FSmart%2520Routing%2520Flow.drawio.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=2b29e5ed&sv=2) Hyperswitch Smart Router Flow ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#how-to-configure-the-smart-router) How to configure the Smart Router? [Hyperswitch dashboardarrow-up-right](https://app.hyperswitch.io/routing) provides a simple, intuitive UI to configure multiple Routing rules on your dashboard under the **Routing** tab. There are three routing rule formats that Hyperswitch currently supports.\\ [](https://docs.hyperswitch.io/integration-guide/workflows/intelligent-routing/rule-based-routing) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-b4175794bc8eb97e3ba7d93f75a7ac3c830b684b%252Frule-based.png%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=6a6cbf95&sv=2) **Rule Based Routing** [](https://docs.hyperswitch.io/integration-guide/workflows/intelligent-routing/volume-based-routing) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-fb033c033f26f9335fb7848e22c5c1744e226897%252Fvolume-based.png%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=c9c8a290&sv=2) **Volume Based Routing** [](https://docs.hyperswitch.io/integration-guide/workflows/intelligent-routing/default-fallback-routing) ![Cover](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-92e742f1faf395be1c293008b60d9bf30ec246b2%252Fdefault.png%3Falt%3Dmedia&width=490&dpr=3&quality=100&sign=edcdd3db&sv=2) **Default Fallback Routing** ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#next-step) Next step To test the Smart Router, after activating one rule, we can make a Test Payment using the [Hyperswitch Dashboardarrow-up-right](https://app.hyperswitch.io/sdk) chevron-rightFAQs[hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#faqs) **1\. What parameters can I use to configure routing rules?** The rule-based routing supports setting up advanced rule configuration based on all critical /payments parameters such as Payment Method, Payment Method Type, Country, Currency, Amount etc. **2\. Why did my payment go through 'Y' connector even though I have specified 'X' in my routing configuration? OR Why is it showing me 'Abc' payment method in SDK checkout even though I have not enabled it for the 'X' connector that I'm routing my payments through?** There can be multiple reasons why this happened but all of them can be boiled down to a "connector eligibility failure" for a given payment. We'll walk through a common scenario to examine what this really means. * Imagine that you configured two connectors for your account. Say `Stripe`, then `Adyen`, in that order. Since you configured them in that order, your default fallback looks like this: `[Stripe, Adyen]` (connectors are appended to the end of your default fallback list when configured for the first time) * In your connectors dashboard, you enable Cards for Stripe, and ApplePay for Adyen. * Now you create a new Volume-based routing configuration, and you configure it to route 100% of your traffic through Stripe for now. * Now you go ahead and open up the Hyperswitch SDK to make a test payment. In the payment method selection area, you can see two buttons, one for `Cards` and one for `ApplePay`. * This is where you run into your first question. "Why is it showing me ApplePay even though I have configured 100% of my payments to go through Stripe, and ApplePay is not enabled for Stripe?" * The answer to this is, the payment methods that are shown to the customer in the SDK aren't conscious of your routing configuration. We prioritize giving your customers the complete spread of all enabled payment methods across all of your enabled connectors. Therefore, if you specifically do not wish for ApplePay to appear on your checkout screen, you need to disable it in `Adyen` here, even though your routing configuration makes no mention of Adyen. * Now you select `ApplePay`, go through the required steps, confirm the payment, and it succeeds. You go to your payments dashboard and see that the payment went through `Adyen`. * This is where you run into the second question. "Why is the payment going through `Adyen` even though I have set my routing configuration to route 100% of my payments through `Stripe`? * The answer to this carries over from the previous point. Since we displayed `ApplePay` on the checkout screen even though it wasn't enabled for your preferred connector `Stripe`, we need to adhere to your connector payment method configuration and ensure the payment goes through the right connector, here, `Adyen` since `ApplePay` is only enabled for Adyen. To briefly explain how Hyperswitch reaches this conclusion :- * Hyperswitch runs your configured routing algorithm. Since this is `100% Stripe`, Hyperswitch receives `Stripe` as the output. * Hyperswitch then runs an Eligibility Analysis on the output (`Stripe`) to gauge its eligibility for the current payment. The Eligibility Analysis fails once Hyperswitch realizes that the payment is made through `ApplePay` which is not enabled for `Stripe` * The application then goes into fallback mode and loads your `default fallback`, which is `[Stripe, Adyen]` as seen earlier. * The application looks through the list in order. It ignores `Stripe` since it has already failed the Eligibility Analysis. It instead subjects `Adyen` (the next connector in the list) to the same Eligibility Analysis. * This time the analysis passes since `ApplePay` is enabled for `Adyen`. * Hyperswitch takes `Adyen` as the final connector to make the payment through even though your configuration says `100% Stripe`. * This fallback flow is taken when none of the connectors in the output of routing are eligible for the payment. This is done in an effort to maximize the success rate of the payment even if it means deviating from the currently active routing configuration. Last updated 11 hours ago Was this helpful? * [Prerequisites](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#prerequisites) * [What is smart payment routing?](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#what-is-smart-payment-routing) * [How does the Smart Router work?](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#how-does-the-smart-router-work) * [How to configure the Smart Router?](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#how-to-configure-the-smart-router) * [Next step](https://docs.hyperswitch.io/other-features/payment-orchestration/smart-router#next-step) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # WooCommerce Plugin | Hyperswitch ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-7c0b3b07ceb791cca73e11dd45ff6cfd192f0fe1%252Fimage.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=11bf3941&sv=2) Give your shoppers a lightweight and embedded payment experience for Stripe + PayPal, with Juspay Hyperswitch - an open source financial switch. And future proof your business continuity with the redundancy of multiple payment processors provided. ### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/woocommerce-plugin#get-started) Get Started [Get Startedarrow-up-right](https://app.hyperswitch.io/register) #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/woocommerce-plugin#embedded) Embedded An embedded and less confusing Stripe + PayPal payment experience with fewer clicks to checkout, avoiding unnecessary redirects and mobile first. The embedded payment sheet blends seamlessly with the theme of your WordPress website and all the payment methods are presented on a unified view. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2Fhyperswitch.io%2Fimg%2Fsite%2FwooCommercePaymentExperience.png&width=768&dpr=3&quality=100&sign=9aeea0ab&sv=2) A superior checkout experience directly translates to your business growth - improved conversion rates, heightened customer satisfaction, and enhanced customer loyalty. #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/woocommerce-plugin#lightweight) Lightweight Your payment experience will load faster, because Hyperswitch eliminates the necessity to load multiple javascript libraries of payment processors. _How?_ Hyperswitch is standalone PCI compliant for accepting and storing card information, thus eliminating the need to load javascript libraries of multiple payment processors. [Check out our demo storearrow-up-right](https://hswpdemo.store/) #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/woocommerce-plugin#future-proofing) Future proofing With Hyperswitch private card vault, your business can exercise complete control of your customers' cards on file. No payment processor can put you in a precarious situation by simply blocking your payments, or by increasing processing fees. With the Hyperswitch dashboard, you can add/switch payment processors on the go. #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/woocommerce-plugin#more-features) More features In addition to the above, Hyperswitch also offers * Access to **40+ processors** and **80+** [**payment methods**arrow-up-right](https://hyperswitch.io/docs/paymentMethods/testCredentials) * **PCI L1 certified** to store credit/debit card data * **GDPR ready** to store customer data * [**Smart routing engine**arrow-up-right](https://hyperswitch.io/docs/features/smartRouter) to define business rules to optimize your payment processing costs and boost conversion rates * **Single unified dashboard** for analytics, payment operations, refunds * [**Smart retries**arrow-up-right](https://hyperswitch.io/docs/features/smartRetries) to enhance conversion rate * **Local payment methods** for 40+ countries * [**Direct API and SDK Integrations**arrow-up-right](https://api-reference.hyperswitch.io/introduction) to support your business as it grows multifold * **Customize your Payment Experience** - although this plugin is built to seamlessly tailor the payment experience to match your website's branding by blending the payment sheet into your WordPress theme, if you wish to, you can further customize the "Appearance" and "Layout" of the payment sheet using styles or pre-built themes. * **Manual Capture** - You can choose to capture customer payments automatically or manually, as per your needs. Once a customer authorizes their payment, you can easily capture payments manually through the WooCommerce Dashboard. * **Refunds** - In cases where you need to issue a refund to a customer, the Hyperswitch plugin streamlines this process within your WooCommerce Dashboard. * **Sync Payments** - With the Hyperswitch plugin integrated into your WooCommerce Dashboard, you have the flexibility to manually sync payment status whenever necessary. This feature allows you to ensure accurate payment status representation and maintain consistent order management. * **Real-time Order Updates** - Hyperswitch facilitates seamless order updates through **webhooks**, allowing you to automate various order management processes. Last updated 11 hours ago Was this helpful? Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Checkout Experience | Hyperswitch Juspay Hyperswitch empowers you to deliver a **seamless, intuitive, and native checkout experience** without compromising transaction authenticity. ### [hashtag](https://docs.hyperswitch.io/other-features/merchant-controls#how-we-improve-checkout-experience-for-your-customers) How we improve checkout experience for your customers * **Fewer Steps, Higher Conversions** – A streamlined checkout process reduces drop-offs and enhances customer satisfaction. * **Preferred Payment Options** – Presenting users with their preferred payment methods boosts convenience and conversion rates. * **Full Control Over Design & Functionality** – Customize both the appearance and behavior of the checkout experience. * **Advanced Security, No Redirection** – Seamlessly integrate **native 3DS** and **Click to Pay** for secure, frictionless transactions. With Hyperswitch, you optimize the payment journey while maintaining **trust, security, and a frictionless user experience**. [](https://docs.hyperswitch.io/other-features/merchant-controls/integration-guide) Customizable and Native Integrations [](https://docs.hyperswitch.io/integration-guide/payment-suite/payment-method-card/payment-methods-management) Payment Methods Management [](https://docs.hyperswitch.io/other-features/click-to-pay) Click To Pay circle-info **Have Questions?** Join our [Slack Communityarrow-up-right](https://join.slack.com/t/hyperswitch-io/shared_invite/zt-2jqxmpsbm-WXUENx022HjNEy~Ark7Orw) to ask questions, share feedback, and collaborate. Prefer direct support? Use our [Contact Usarrow-up-right](https://hyperswitch.io/contact-us) page to reach out. Last updated 11 hours ago Was this helpful? Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Subscriptions | Hyperswitch Juspay Hyperswitch enables you to work with your preferred subscription provider while having the flexibility to connect with multiple payment processors and payment methods. The benefits you gain by using Hyperswitch integration as a supplement to your Subscription Solution Provider are as follows: * **Flexibility with Payment Processors** * Choose any payment processor based on better costs or authorization rates. * **Global Market Expansion** * Integrate local payment methods to tap into global markets with ease. * **Optimized Recurring Payments** * Smart routing across multiple payment processors improves recurring payment success rates. * **Unified Payment Management** * A single solution for managing: * **One-time payments** (e-commerce use cases) * **Recurring payments** (subscription-based use cases) ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#what-subscription-providers-do-we-support) What subscription providers do we support? All major Subscription Solution Providers offer integration points to manage payments with external payment processors. And the integration solution proposed below should work universal across any subscription provider. We also support [Kill Billarrow-up-right](https://killbill.io/) (an open source subscription solution provider) via a direct [Pluginarrow-up-right](https://github.com/juspay/hyperswitch-killbill-plugin) . ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#use-cases-supported) Use cases supported #### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#user-flow-1-plan-first-payment-later) User flow 1 - Plan First, Payment Later User selects a plan followed by selecting the payment method and adding the payment method details to make the payment and start subscription. #### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#user-flow-2-payment-first-plan-later) User flow 2 - Payment First, Plan Later User selects a payment method and adds the payment method details which are saved. User finally selects the plan to start the subscription #### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#use-cases-common-to-both-user-flows) Use cases common to both user flows 1. Subscription management portal 2. Subscription payment retries 3. Subscription reminder emails ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#user-flow-1) User flow-1 User selects a plan followed by selecting the payment method and adding the payment method details to start subscription. This flow can be broken into 5 parts * **Integration and set up** - Merchants will setup their account and generate API keys with the subscription provider and Hyperswitch as well as integrate with both of them. Merchants will set up their plans with the subscription provider and set up their payment providers with Hyperswitch. * **Retrieve plans and create subscription** - Merchants will retrieve the eligible plans and display them on their website. The customer will select one of the plans shown to them. Merchant will use the selected plan to create a customer and a subscription with the subscription provider. * **Collect payment method details** - Once the subscription is created and the key fields are received by the merchant, they'll initiate a Payments create call with Hyperswitch and load the payment SDK on their website ([more on SDK integrationarrow-up-right](https://docs.hyperswitch.io/hyperswitch-cloud/integration-guide) ) to collect payment details from the customer * **Make payment and return invoice** - Using the payment details entered by the user the merchant will make a payment with Hyperswitch and create a mandate ([more detailsarrow-up-right](https://docs.hyperswitch.io/features/payment-flows-and-management/mandates-and-recurring-payments) ). The subscription is marked as active upon successful payment and the invoice with the customer. * In case the subscription start date is in future and the customer need not be charged immediately then the merchant should initiate a $0 mandate with Hyperswitch ([more detailsarrow-up-right](https://docs.hyperswitch.io/features/payment-flows-and-management/zero-amount-authorization) ). * **Make MIT transactions** - The subscription provider will trigger a webhook to the merchant on the date of the scheduled payment for subscription. Upon receiving the webhook, the merchant should initiate a payment with Hyperswitch using the customer ID and mandate ID. The merchant will share the invoice with the customer upon successful payment ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-1f7727bd0310e5c201bed055902486696c3b801b%252Fimage.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=b5480408&sv=2) ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#user-flow-2) User flow-2 User selects a payment method and adds the payment method details which are saved. User finally selects the plan to start the subscription. This flow can be broken into 5 parts * **Integration and set up** - Merchants will setup their account and generate API keys with the subscription provider and Hyperswitch as well as integrate with both of them. Merchants will set up their plans with the subscription provider and set up their payment providers with Hyperswitch. * **Collect and store payment method details** - Merchant will initiate a Payments create call with Hyperswitch and load the payment SDK on their website ([more on SDK integrationarrow-up-right](https://docs.hyperswitch.io/hyperswitch-cloud/integration-guide) ) to collect payment details from the customer. * Merchant will create a customer with the subscription provider * Merchant will initiate a $0 mandate with Hyperswitch ([more detailsarrow-up-right](https://docs.hyperswitch.io/features/payment-flows-and-management/zero-amount-authorization) ) to validate and store the payment details and create a mandate with Hyperswitch (using the same customer ID). * **Retrieve plans and create subscription** - Merchants will retrieve the eligible plans and display them on their website. The customer will select one of the plans shown to them. Merchant will use the selected plan to create a subscription with the subscription provider. * **Make payment and return invoice** - Using the mandate ID created earlier the merchant will make a payment with Hyperswitch. The subscription is marked as active upon successful payment and the invoice with the customer. * In case the subscription start date is in future and the customer need not be charged immediately then no payment is initiated with Hyperswitch * **Make MIT transactions** - The subscription provider will trigger a webhook to the merchant on the date of the scheduled payment for subscription. Upon receiving the webhook, the merchant should initiate a payment with Hyperswitch using the customer ID and mandate ID. The merchant will share the invoice with the customer upon successful payment ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-bce711daff0dce97a839e802cadc3cbe0a4b7d9e%252Fimage.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=c2c690d0&sv=2) ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#subscription-management-portal) Subscription management portal The customer-facing subscription management interface allows the customers to modify their billing address, add new payment method details for subscription payments and cancel subscription. If a merchant offers a subscription management portal then here's how Hyperswitch can support: * **User updates billing address** - The merchant will update the new billing address with both Hyperswitch and the subscription provider using the customer ID. * **User updates payment method details** - The merchant will load Hyperswitch SDK to allow the user to select the payment method and add the relevant payment method details. Merchant will validate and add this payment method with Hyperswitch using $0 mandate and create a new mandate. * **User cancels subscriptions** - The merchant will revoke the mandate with Hyperswitch post which they will cancel the subscription with the subscription provider. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-1756e1626165d0733759850fef0e1c673dbff603%252Fimage.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=e675a44b&sv=2) ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#subscription-payment-retries) Subscription payment retries The payment made for subscriptions can fail * **When customer is present in the flow** - The user will retry the payment using same or different payment method * **When customer is not present in the flow** - Once the merchant receives payment failed notification from Hyperswitch, they need to update the same with their subscription provider. All subscription providers have their own retry logics (default or configured by the merchant). Their retry logic will then send retry payment webhooks to the merchant. The merchant needs to consume the webhook and retrigger the payment with Hyperswitch ([more details](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#what-subscription-use-cases-do-we-support) ) ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#subscription-reminder-emails) Subscription reminder emails The merchant can use the Hyperswitch Payment links when sending email reminders to customers who failed to make their subscription payments. Here's how it'll work: * The send email notification is a functionality offered by most subscription providers. They also allow customising the message and payment links shared inside the email * The merchant needs to host a standard page and share the link to that page on the email * When the customer click on that link requesting to pay, the merchant will call Hyperswitch with the customer ID to create and share the Payment link * The customer is redirected to the payment link hosted page (with a validity of 15-mins) which allows them to make the payment using any payment option * Once the payment is successful, the merchant should mark the invoice as paid with their subscription provider and return the invoice to the customer ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-4b6ce4628f08d89cdb624336e9e3573f88d62eb8%252Fimage.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=49c17f24&sv=2) chevron-rightFAQs[hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#faqs) **Can I bring in my own subscription provider ?** Yes, we support any subscription provider using the above framework. **Can I process both one-time payments and recurring payments via the same setup?** Yes, once you're integrated with Hyperswitch, you'll be able to process both one-time payments and recurring payments. Last updated 11 hours ago Was this helpful? * [What subscription providers do we support?](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#what-subscription-providers-do-we-support) * [Use cases supported](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#use-cases-supported) * [User flow-1](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#user-flow-1) * [User flow-2](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#user-flow-2) * [Subscription management portal](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#subscription-management-portal) * [Subscription payment retries](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#subscription-payment-retries) * [Subscription reminder emails](https://docs.hyperswitch.io/other-features/payment-orchestration/subscriptions#subscription-reminder-emails) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Automatic Tax calculation for Express Checkout wallets | Hyperswitch Hyperswitch supports configuring [Taxjararrow-up-right](https://www.taxjar.com/) in your dashboard as a tax connector so that tax amount can be calculated automatically whenever your customers change their shipping address on Express Checkout wallets like Apple pay and Paypal [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/automatic-tax-calculation-for-express-checkout-wallets#how-to-configure-taxjar-on-hyperswitch) How to configure Taxjar on Hyperswitch? ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- You can enable taxjar from the hyperswitch dashboard: * Go to Sandbox dashboard: [https://app.hyperswitch.ioarrow-up-right](https://app.hyperswitch.io/) * Click on Connectors and under Connectors click on Tax Processors. * To enable Taxjar click on the Connect button. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXfw_4V1zufm4H1g4NIRI_PLzz7GsYvDLcLjjqhC_ZvyOPa3fr0RavKs9dPCORPHDh-yDxtiLZ6oPt5aZgFUfb1Eo9uT7RYyuuIvt1KBT4_upYYcG0z6RZuK9WB4hzPKa2NEV9riSN4xpZC70AyiO8tAGMS8%3Fkey%3D60G18knFKBKAyEyzRsD8JA&width=768&dpr=3&quality=100&sign=434b5663&sv=2) * Select the profile id and fill the sandbox token from your Taxjar dashboard. Also add Connector label as well, then click Connect and proceed. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXfSQL9j8A1VSqoj0J4Lmh3Adws7Zjr_2wrqOygaIeUkCTl8mXTFzs47hhB63GtEYJIqs0Guk-QsCTzctd6zC_dKRO2TPleduk0blC9OS1oLqgESLmxfwhKOU9guxvG1zlJYlGYQUDpCHnu_2k-AMDryR8Q%3Fkey%3D60G18knFKBKAyEyzRsD8JA&width=768&dpr=3&quality=100&sign=236c4833&sv=2) You can now see Taxjar enabled on your account ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXecyIrQta6I2HnYLBvOAWlEuuRhjURWL70TgNAN45Ctb83XldY1ylNBpPIrY9Bl66z4-z1bUpJ14ySxwx14SKYwyH92kioaercqUK6On8OR4s-uZESL7NkykM-E1eDtXcSnKiC3kYhSG_Igr-BxtUV9wPp3%3Fkey%3D60G18knFKBKAyEyzRsD8JA&width=768&dpr=3&quality=100&sign=a64b88c7&sv=2) To enable collecting shipping details from Express checkout wallets, you need to enable '_Collect shipping details from wallets_' toggle. * Click on Developers then Payment Settings. * For the particular profile id enable the '_Collect shipping details from wallets_' ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXfcuPydxmKYpa-4hHwg9X6-SgJNg_2kz-MIiqHjvt8G-qKL-rk7nr1wLE8qP0vmO10xRXaDf3oNvzSR1g9tXXatXHraPB094wUDONI62yAn5sumturz9f6XWduNqScDndCa-ofR-BYtVJpQSjU2O-5Jvh0h%3Fkey%3D60G18knFKBKAyEyzRsD8JA&width=768&dpr=3&quality=100&sign=e214b67b&sv=2) ### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/automatic-tax-calculation-for-express-checkout-wallets#skipping-tax-calculation-for-a-particular-payment) Skipping Tax calculation for a particular payment: `skip_external_tax_calculation (boolean)` This field is optional for payments create calls and the default value is set to “false”, which means tax will be calculated dynamically. If you explicitly do not want to calculate taxes for a particular order, pass this boolean with value as “true” \\ Last updated 11 hours ago Was this helpful? * [How to configure Taxjar on Hyperswitch?](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/automatic-tax-calculation-for-express-checkout-wallets#how-to-configure-taxjar-on-hyperswitch) * [Skipping Tax calculation for a particular payment:](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/automatic-tax-calculation-for-express-checkout-wallets#skipping-tax-calculation-for-a-particular-payment) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Local Setup Guide | Self Hosting | Hyperswitch ### [hashtag](https://docs.hyperswitch.io/self-hosting/hyperswitch-open-source/local-setup-guide#setup-options) Setup Options - 1. [**Unified local Setup using Docker**arrow-up-right](https://github.com/juspay/hyperswitch-docs/blob/atulp-hyperswitch-patch-1/self-hosting-space/hyperswitch-open-source/readme-1/unified-local-setup-using-docker/README.md) **\-** Simplified local setup of all components, using a single command with the help of docker. 2. [**Local Setup of Individual Components**arrow-up-right](https://github.com/juspay/hyperswitch-docs/blob/atulp-hyperswitch-patch-1/self-hosting-space/hyperswitch-open-source/readme-1/local-setup-using-individual-components/README.md) **\-** Customised local setup to fulfil different use-cases. [](https://github.com/juspay/hyperswitch-docs/blob/atulp-hyperswitch-patch-1/self-hosting-space/hyperswitch-open-source/readme-1/unified-local-setup-using-docker/README.md) **Unified Local Setup using Docker** Simplified local setup of all components, using a single command. [](https://docs.hyperswitch.io/hyperswitch-open-source/local-setup-guide/local-setup-using-individual-components) **Local Setup of Individual Components** Customised local setup to fulfill different use-cases. ### [hashtag](https://docs.hyperswitch.io/self-hosting/hyperswitch-open-source/local-setup-guide#dashboard-signup) Dashboard Signup - To quickly experience the ease that Hyperswitch provides while handling the payment, You can signup on our [Dashboardarrow-up-right](https://app.hyperswitch.io/) , and try a payment. Last updated 10 hours ago Was this helpful? * [Setup Options -](https://docs.hyperswitch.io/self-hosting/hyperswitch-open-source/local-setup-guide#setup-options) * [Dashboard Signup -](https://docs.hyperswitch.io/self-hosting/hyperswitch-open-source/local-setup-guide#dashboard-signup) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Deployment Models | Self Hosting | Hyperswitch ### [hashtag](https://docs.hyperswitch.io/self-hosting/production-deployment/deployment-models#supported-deployment-models) Supported Deployment Models The Juspay Hyperswitch platform supports multiple deployment models depending on the level of infrastructure control, compliance responsibility, and operational ownership required. #### [hashtag](https://docs.hyperswitch.io/self-hosting/production-deployment/deployment-models#overview) Overview Model Best For **Self-Deployed (Enterprise Support)** Enterprises that require full control over infrastructure and deployment **Hosted Offering (SaaS)** Organizations that want a fully managed payments platform **Point Solutions** Teams that only need specific capabilities such as reconciliation or cost observability #### [hashtag](https://docs.hyperswitch.io/self-hosting/production-deployment/deployment-models#self-deployed-enterprise-support) Self-Deployed (Enterprise Support) > **Recommended for:** Enterprises requiring full infrastructure ownership and deployment flexibility. **Model** Merchant deploys and runs the platform within their own infrastructure environment, either **on-premise** or in a **cloud provider of their choice**. **Scope of Services** * Expert consultation from Juspay for deployment * Assistance with production readiness * Support during certification and go-live **PCI Compliance** Merchants can choose between: * **Self-certifying PCI compliance** * Using **Juspay's hosted PCI / Tokenization service** **Reliability & Scalability** * Infrastructure owned and managed by the merchant * Merchant responsible for scaling, monitoring, and reliability #### [hashtag](https://docs.hyperswitch.io/self-hosting/production-deployment/deployment-models#hosted-offering-saas) Hosted Offering (SaaS) > **Recommended for:** Teams that want a fully managed platform with minimal operational overhead. **Model** Juspay operates the platform and exposes its capabilities through **hosted APIs and SDKs**. **Scope of Services** * Fully managed infrastructure * Hosted APIs and SDK integrations * Continuous platform maintenance and upgrades **PCI Compliance** * PCI compliance handled entirely by Juspay * Out-of-the-box compliance for merchants **Reliability & Scalability** * **Guaranteed SLAs** * **99.999% uptime** * **Up to 3000 TPS processing capacity** #### [hashtag](https://docs.hyperswitch.io/self-hosting/production-deployment/deployment-models#point-solutions) Point Solutions > **Recommended for:** Organizations that need specific tools without deploying the full platform. **Model** Fully managed service provided by Juspay for targeted operational capabilities. **Scope of Services** Self-serve dashboards and tooling for: * **Reconciliation** * **Cost observability** **PCI Compliance** * No PCI compliance requirements **Reliability & Scalability** * Juspay provides guaranteed service SLAs #### [hashtag](https://docs.hyperswitch.io/self-hosting/production-deployment/deployment-models#feature-comparison) Feature Comparison Feature Self-Deployed Hosted Offering Point Solutions Infrastructure Ownership Merchant Juspay Juspay Platform Operations Merchant Juspay Juspay PCI Compliance Responsibility Merchant or Juspay Tokenization Juspay Not Required Scaling & Performance Merchant Juspay Juspay Typical Use Case Full platform deployment Managed payments infrastructure Operational tooling * * * This Production Deployment guide is to help merchants looking to self-deploy Juspay Hyperswitch in an enterprise-grade environment. It is designed to provide you detailed guidance on deploying and scaling Juspay Hyperswitch in a secure and compliant manner. Last updated 10 hours ago Was this helpful? Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # PG Agnostic Card Forwarding | Hyperswitch ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#how-does-pg-agnostic-mits-work) How does PG agnostic MITs work? The CIT used to set up recurring payments via MIT uses the PG token. This introduces a connector stickiness since the recurring payments can only go through the connector which issued the token. To mitigate this we would be storing the Network Transaction ID which will be a chaining identifier for the CIT in which the payment method was saved for off-session payments. In the following MIT payments basis the enablement of the feature and the availability of Network Transaction ID Juspay Hyperswitch will route your payments to the eligible set of connectors. (This will also be used for retries) ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-076d60698ac3fd5a3c54b2e2e023b64f7150ce8e%252FScreenshot%25202024-02-01%2520at%25203.58.28%2520AM.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=c2039818&sv=2) MIT payment flow ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#supported-payment-processors) Supported Payment processors Hyperswitch supports the following processors for PG Agnostic Recurring Payments. * Stripe * Adyen * Cybersource In case you wish more processors to be covered for PG Agnostic Recurring Payments, please submit a feature request [herearrow-up-right](https://github.com/juspay/hyperswitch/discussions/new?category=ideas-feature-requests) . ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#how-to-enable-pg-agnostic-mits) How to enable PG agnostic MITs? To start routing MIT payments across all supported connectors in addition to the connector through which the recurring payment was set up, use the below API to enable it for a business profile All the payment methods saved with `setup_future_usage : off_session` after enabling this feature would now be eligible to be routed across the list of supported connectors during the subsequent MIT payments ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#faqs) FAQs #### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#id-1.-how-are-authentication-rates-affected-in-pg-agnostic-mits) 1\. How are authentication rates affected in PG agnostic MITs? Network Transaction ID which is provided by the card network itself is a reference to the original payment authenticated by the customer and authorized for recurring payments. Hence the MIT exemption is expected to have better auth rates with this. So the internal precedence would be to try the payment with Network Transaction ID if present else the corresponding PG token would be used. #### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#id-2.-how-do-i-configure-a-routing-rule-so-that-all-cits-are-routed-through-one-connector-and-all-mits) 2\. How do I configure a routing rule so that all CITs are routed through one connector and all MITs through another? The [Hyperswitch dashboardarrow-up-right](https://app.hyperswitch.io/dashboard/routing/rule) provides UI to configure routing rules for PG Agnostic Recurring Payments. You can choose the profile for which you wish to configure the rule in the Smart Routing Configuration. Then, you can configure the rule as shown below using the metadata field in the Rule-Based Configuration. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-0e6b78a99f662cd1402b746539950b2b8509b642%252FRouting%2520rule%2520for%2520pg%2520agnostic%2520recurring%2520payments.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=6a3d4508&sv=2) This rule would be used in conjunction with the other active routing rules that you have configured. Once the rule is configured, you would need to send the following metadata as per the payment request: \-> Metadata to be sent in CITs \-> Metadata to be sent in MITs According to the above configured rule all the CITs for the specific business profile should be routed through Stripe and MITs through Adyen. Last updated 11 hours ago Was this helpful? * [How does PG agnostic MITs work?](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#how-does-pg-agnostic-mits-work) * [Supported Payment processors](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#supported-payment-processors) * [How to enable PG agnostic MITs?](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#how-to-enable-pg-agnostic-mits) * [FAQs](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/tokenization-and-saved-cards/pg-agnostic-recurring-payments#faqs) Was this helpful? sun-brightdesktopmoon Copy curl --location 'http://sandbox.hyperswitch.io/account/:merchant_id/business_profile/:profile_id/toggle_connector_agnostic_mit' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: api_key' \ --data '{ "enabled": true }' Copy "metadata": { "is_cit": "true" } Copy "metadata": { "is_mit": "true" } sun-brightdesktopmoon --- # Customizable and Native Integrations | Hyperswitch ### [hashtag](https://docs.hyperswitch.io/other-features/merchant-controls/integration-guide#how-to-get-started) How to get started? Pick the platform / framework of your choice to get started with integrating the client SDK on your application **Hyperswitch Web** [**Hyperswitch Android**](https://docs.hyperswitch.io/integration-guide/payment-experience/payment/mobile/android/kotlin-with-rest-api-integration) [**Hyperswitch iOS**](https://docs.hyperswitch.io/integration-guide/payment-experience/payment/mobile/ios/swift-with-rest-api-integration) [**Hyperswitch React Native**](https://docs.hyperswitch.io/integration-guide/payment-experience/payment/mobile/cross-platform/react-native/react-native-with-rest-api-integration) [**Hyperswitch Flutter**](https://docs.hyperswitch.io/integration-guide/payment-experience/payment/mobile/cross-platform/flutter/flutter-with-node-backend) [**Payment Features**](https://docs.hyperswitch.io/other-features/merchant-controls/payment-features) [**Server Setup**](https://docs.hyperswitch.io/integration-guide/payment-experience/payment/server-setup) ### [hashtag](https://docs.hyperswitch.io/other-features/merchant-controls/integration-guide#modify-and-experiment) Modify and Experiment Juspay Hyperswitch Unified Checkout is an inclusive, consistent and blended payment experience optimized for the best conversion rates. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-908c9ae33d183a3710168e5d13027716c662bfce%252Fimage.png%3Falt%3Dmedia&width=300&dpr=3&quality=100&sign=22c9771a&sv=2) **Inclusive** Global payments, diverse methods - cards, buy now pay later, and digital wallets. Unified Checkout adapts to local preferences, integrates languages for an inclusive solution. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-a344f33b8998919c5d8a6018efefd8f064698c3e%252Fimage.png%3Falt%3Dmedia&width=300&dpr=3&quality=100&sign=9bec1333&sv=2) **Consistent** Consistent payment experience on Web, Android, and iOS with smart forms, minimal redirects, and intelligent retries. Unified Checkout ensures reliability and uniformity. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-e30429a31a45cc4b3a277213d455d17660a8a38c%252Fimage.png%3Falt%3Dmedia&width=300&dpr=3&quality=100&sign=e00c3c2e&sv=2) **Blended** Tailor payment seamlessly with 40+ styling APIs for a native, cohesive, branded checkout in your Android app or website. While the Unified Checkout is pre-optimized for maximum conversions, Hyperswitch does not restrict you to stick to a one-size-fits-all approach. Using Hyperswitch SDK APIs, you get complete control over modifying the payment experience by, * **Including new fields to the payment form:** Quickly adapting to use cases such as collecting billing addresses, or zip code as additional information, since you will have complete control of your payment experience. * **Prioritizing payment methods:** You can make an impact on the payment mix or conversion rates by prioritizing/ promoting specific payment methods for your customers. * **Switching themes and layouts of checkout page:** The Unified Checkout comes with a wide range of pre-designed themes and layouts which you can choose from. Last updated 11 hours ago Was this helpful? * [How to get started?](https://docs.hyperswitch.io/other-features/merchant-controls/integration-guide#how-to-get-started) * [Modify and Experiment](https://docs.hyperswitch.io/other-features/merchant-controls/integration-guide#modify-and-experiment) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # E-commerce Platform Plugins by Hyperswitch | Hyperswitch Juspay Hyperswitch plugins enable businesses to extend and enhance the functionality of leading E-commerce platforms, offering seamless integration and advanced capabilities for payment optimization, user experience, and analytics. From enabling express checkout and multi-currency payments to ensuring compliance with tax regulations, Hyperswitch plugins are designed to scale with your business, delivering unmatched flexibility and control. ### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins#explore-our-plugins) Explore Our Plugins [](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/woocommerce-plugin) **WooCommerce Plugin** Unlock advanced payment features, express checkout options, and fraud protection for your WooCommerce store. [](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app) **Saleor App** Power your headless storefront with global payment support, intelligent routing, and unified analytics. [](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/automatic-tax-calculation-for-express-checkout-wallets) **Automatic Tax Calculation for Express Checkout Wallets** Simplify tax compliance during wallet-based express checkouts with real-time accuracy. Seamlessly integrate these plugins to elevate your platform's performance and optimize your payment operations. circle-info Need a plugin for another platform? Reach out to us at **[\[email protected\]](https://docs.hyperswitch.io/cdn-cgi/l/email-protection) ** Last updated 11 hours ago Was this helpful? Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Reconciliation V1 | Hyperswitch The Reconciliation module in Juspay Hyperswitch automates financial reconciliation, providing businesses with greater accuracy and control over their financial processes. It simplifies transaction matching for financial operations (FinOps) teams, ensuring seamless verification of payments, settlements, and ledger entries with 99% reconciliation accuracy. Financial reconciliation is essential for maintaining transparency, identifying revenue leakages, and ensuring regulatory compliance. Without an efficient reconciliation system, businesses risk financial discrepancies, accounting errors, and increased manual effort. Juspay Hyperswitch offers a robust solution that streamlines reconciliation and enhances operational efficiency. By integrating Juspay Hyperswitch's reconciliation module, businesses can: * **Ensure transactional accuracy** – Handle large transaction volumes with minimal discrepancies. * **Achieve high reconciliation rates** – Reduce financial mismatches and missing transactions with a 99% reconciliation rate. * **Automate error resolution** – Minimize manual intervention by automatically resolving 80% of reconciliation exceptions. * **Improve processing efficiency** – Accelerate reconciliation workflows, leading to a 60% increase in efficiency and faster financial closing. ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation#benefits-for-merchants) Benefits for Merchants * **Accurate Financial Reporting** * Ensures every transaction is properly recorded and reconciled. * Reduces accounting errors and revenue losses. * Generates audit-ready reports for compliance. * **Automated Reconciliation with Minimal Effort** * Matches transactions across PSPs, banks, and internal ledgers. * Resolves 80% of discrepancies automatically. * Reduces dependency on manual intervention. * **Improved Efficiency and Faster Closing** * Automates reconciliation workflows for 60% faster processing. * Provides real-time visibility into financial operations. * **Fraud Detection & Compliance** * Flags missing, duplicate, or suspicious transactions automatically. * Maintains audit-ready records to meet regulatory standards. * **Scalability for Business Growth** * Supports multi-region transactions with different currencies and tax structures. * Handles high transaction volumes efficiently. ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation#key-features) Key Features * **Multi-Source Reconciliation** * Matches transactions across PSPs, banks, and internal ledgers. * Supports global payments with multi-currency handling. * **Automated Anomaly Detection** * Instantly identifies mismatched or missing transactions. * Uses machine learning to reduce manual reviews. * **Error Categorization & Reporting** * Detects processing fee mismatches, chargebacks, refunds, and duplicate charges. * Provides structured reports for easy issue resolution. * **Custom Rules & Configurations** * Enables flexible reconciliation formats tailored to business needs. * Supports SaaS, on-premise, and open-source deployments. * **Seamless Automation** * Schedules reconciliation workflows for real-time transaction matching. * Generates instant reports and alerts for better financial control. ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation#use-cases) Use Cases 1. **Three-way recon** - Juspay Hyperswitch Recon Engine can execute 3-way reconciliation between merchant, PSP, and bank. This intricate reconciliation paradigm ensures that financial transactions traverse seamlessly across these entities, validated based on crucial attributes such as Amount, Status, Fees & Taxes, and more, as stipulated during configuration. 2. **Two-way recon** - Juspay Hyperswitch Recon Engine also offers the flexibility to execute 2-way reconciliation between the Merchant and PSP. ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation#activate-and-configure-the-reconciliation-module) Activate & Configure the Reconciliation module 1. Go to Reconciliation tab on the Juspay Hyperswitch control centre. 2. Click on send an email. Juspay Hyperswitch team will reach out to you over email. We will need to configure the file formats of PSPs and bank reports that you plan to use via the Reconciliation module. * To configure PSP or a bank report file format, you need to have sample data in the right format. PSPs support various API reports tailored for different use cases. You must select the report that aligns with your specific business requirements. We provide support for multiple file formats for a single PSP. * It usually take 2-5 days for the team to configure the module as per your requirements depending on the file formats and other specifications. * Merchants can also choose whether they want to do Manual reconciliation or Automated reconciliation. * We also allow merchants to specify the details of computations based on transaction values, fees, and taxes. * For instance, consider an order of $100 sent via Juspay Hyperswitch to the payment processor which will ultimately send this amount to the merchant's bank for settlement. However, in between, the payment procesor will deduct fees as well as taxes, let's say 5% each. Therefore, the settled amount will be $90, with a $5 fee and a $5 tax. * The payment processor report should contain these details. However, in case these details are not present in the report, the merchant can specify these values. Based on the merchant configured specifications, we will reconcile the bank's settled amount. 3. Once reconciliation is active for your merchant account, you will be notified through an email. You can log into Juspay Hyperswitch dashboard and click on 'Go to recon tab'. You will be redirected to the Reconciliation dashboard. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-aaf53ed14876d6249da2f568182b435afe104beb%252FScreenshot%25202024-01-23%2520at%25201.23.01%2520PM.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=5048b03f&sv=2) 1. The merchant will be granted **Merchant admin** access to the Reconciliation dashboard and will have the ability to add their internal team members as **Users** with customisable permissions from the Admin tab. [Know more about Juspay Hyperswitch Reconciliation module and how to use it](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon) . Last updated 11 hours ago Was this helpful? * [Benefits for Merchants](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation#benefits-for-merchants) * [Key Features](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation#key-features) * [Use Cases](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation#use-cases) * [Activate & Configure the Reconciliation module](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation#activate-and-configure-the-reconciliation-module) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Node | Hyperswitch circle-info In this section, we will cover the steps to do an easy integration of your Node Backend server [hashtag](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#using-node-sdk-for-app-server-is-optional.-you-can-use-our-rest-apis-for-the) Using Node SDK for app server is OPTIONAL. You can use our REST APIs for the ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- [hashtag](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#requirements) Requirements ----------------------------------------------------------------------------------------------------------------------------- Node 12 or higher. [hashtag](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#installation) Installation ----------------------------------------------------------------------------------------------------------------------------- Install the package with: Copy npm install @juspay-tech/hyperswitch-node --save # or yarn add @juspay-tech/hyperswitch-node [hashtag](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#usage) Usage --------------------------------------------------------------------------------------------------------------- The package needs to be configured with your account's secret key, which is available in the Hyperswitch Dashboard. Require it with the key's value: Copy const hyperswitch = require('hyperswitch')('snd_efe...'); hyperswitch.paymentIntents.create( { // Refer the request body of payments from this API https://app.swaggerhub.com/apis-docs/bernard-eugine/HyperswitchAPI/0.0.1#/Payments/Create%20a%20Payment amount: 10000, currency: "USD", capture_method: "automatic", amount_to_capture: 10000, customer_id: "hyperswitchCustomer", email: "[email protected]", name: "John Doe", phone: "999999999", phone_country_code: "+65", description: "Its my first payment request", authentication_type: "no_three_ds", return_url: "https://app.hyperswitch.io", shipping: { address: { line1: "1467", line2: "Harrison Street", line3: "Harrison Street", city: "San Fransico", state: "California", zip: "94122", country: "US", first_name: "John", last_name: "Doe" }, phone: { number: "123456789", country_code: "+1" } }, billing: { address: { line1: "1467", line2: "Harrison Street", line3: "Harrison Street", city: "San Fransico", state: "California", zip: "94122", country: "US", first_name: "John", last_name: "Doe" }, phone: { number: "123456789", country_code: "+1" } }, metadata: { order_details: { product_name: "Apple iphone 15", quantity: 1 }, } } ) .then(customer => console.log(customer.id)) .catch(error => console.error(error)); If you are using ES modules and `async`/`await`, [hashtag](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#sample-server-code-using-hyperswitch-node-sdk) Sample server code using Hyperswitch Node SDK ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- There is a sample server code that uses the node sdk. Below are the available functions that work with the current latest node sdk version. Payments * Create a payment * Retrieve a payment * Confirm a payment * Capture a payment * Cancel a payment Refunds * Create a refund * Retrieve a refund Customers * Create a customer * Retrieve a customer * Delete a customer Payment Methods * Create a payment method * List customer's payment methods * List merchant's payment methods The request body(req.body) for all API's below can be referred from [API referencearrow-up-right](https://app.swaggerhub.com/apis-docs/bernard-eugine/HyperswitchAPI/0.0.1) Last updated 11 hours ago Was this helpful? * [Using Node SDK for app server is OPTIONAL. You can use our REST APIs for the](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#using-node-sdk-for-app-server-is-optional.-you-can-use-our-rest-apis-for-the) * [Requirements](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#requirements) * [Installation](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#installation) * [Usage](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#usage) * [Sample server code using Hyperswitch Node SDK](https://docs.hyperswitch.io/integration-guide/payment-experience/sdk-reference/node#sample-server-code-using-hyperswitch-node-sdk) Was this helpful? sun-brightdesktopmoon Copy import Hyperswitch from 'hyperswitch'; const hyperswitch = new Hyperswitch('snd_efe...'); const payments_response = await hyperswitch.paymentIntents.create( { // Refer the request body of payments from this API https://app.swaggerhub.com/apis-docs/bernard-eugine/HyperswitchAPI/0.0.1#/Payments/Create%20a%20Payment amount: 10000, currency: "USD", capture_method: "automatic", amount_to_capture: 10000, customer_id: "hyperswitchCustomer", email: "[email protected]", name: "John Doe", phone: "999999999", phone_country_code: "+65", description: "Its my first payment request", authentication_type: "no_three_ds", return_url: "https://app.hyperswitch.io", shipping: { address: { line1: "1467", line2: "Harrison Street", line3: "Harrison Street", city: "San Fransico", state: "California", zip: "94122", country: "US", first_name: "John", last_name: "Doe" }, phone: { number: "123456789", country_code: "+1" } }, billing: { address: { line1: "1467", line2: "Harrison Street", line3: "Harrison Street", city: "San Fransico", state: "California", zip: "94122", country: "US", first_name: "John", last_name: "Doe" }, phone: { number: "123456789", country_code: "+1" } }, metadata: { order_details: { product_name: "Apple iphone 15", quantity: 1 }, } } ); console.log(customer.id); Copy const express = require("express"); const app = express(); // This is a public sample test API key. // Don't submit any personally identifiable information in requests made with this key. // Sign in to see your own test API key embedded in code samples. const hyperswitch = require('@juspay-tech/hyperswitch-node')('snd_b8df3xxx......'); app.use(express.static("public")); app.use(express.json()); // The request body(req.body) for all API's below can be referred from https://app.swaggerhub.com/apis-docs/bernard-eugine/HyperswitchAPI/0.0.1 // Customer API app.get("/customer_create", async (req, res) => { // Api Endpoint that the merchant has try { const resp = await hyperswitch.customers.create( req.body // send the customer request body as it is in openapi spec ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.get("/customer_retrieve/:customer_id", async (req, res) => { // Api endpoint that customer has try { const resp = await hyperswitch.customers.retrieve( req.params.customer_id, ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.get("/customer_delete/:customer_id", async (req, res) => { try { const resp = await hyperswitch.customers.del( req.params.customer_id, ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); // Payments API app.get("/payment_create", async (req, res) => { try { const resp = await hyperswitch.paymentIntents.create( req.body ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.get("/payment_confirm/:payment_id", async (req, res) => { try { const resp = await hyperswitch.paymentIntents.confirm( req.params.payment_id, req.body ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.get("/payment_retrieve/:payment_id", async (req, res) => { try { const resp = await hyperswitch.paymentIntents.retrieve( req.params.payment_id, ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.get("/payment_capture/:payment_id", async (req, res) => { try { const resp = await hyperswitch.paymentIntents.capture( req.params.payid, req.body ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.get("/payment_cancel/:payment_id", async (req, res) => { try { const resp = await hyperswitch.paymentIntents.cancel( req.params.payment_id, req.body ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); // Refunds API app.get("/refunds_create", async (req, res) => { try { const resp = await hyperswitch.refunds.create( req.body ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.get("/refunds_retrieve/:refund_id", async (req, res) => { try { const resp = await hyperswitch.refunds.retrieve( req.params.refund_id, req.body ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); // Payment Methods API app.get("/payment_method_create", async (req, res) => { try { const resp = await hyperswitch.paymentMethods.create( req.body ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.get("/payment_method_list", async (req, res) => { try { const resp = await hyperswitch.paymentMethods.list( ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.get("/payment_method_list_by_customer/:customer_id", async (req, res) => { try { const resp = await hyperswitch.customers.listPaymentMethods( req.params.customer_id, ); res.send(resp); } catch (e) { // handle error here res.send(e); } }); app.listen(4242, () => console.log("Node server listening on port 4242!")); sun-brightdesktopmoon --- # Manual Capture | Hyperswitch In most online payments use-cases, a merchant would want to capture the funds from their customers' accounts in one-step after the issuer authorizes the payment. This is called '**one-step'** payments flow and at Juspay Hyperswitch we term this the '**Automatic Capture**' flow. But in some cases, merchants would like to place a hold on the customer's funds post authorization so that they can capture the funds at a later time once they deliver the goods and services. This is called the '**two-step**' flow or '**Auth and Capture**' flow in general payments parlance. Here at Hyperswitch, we call this the '**Manual Capture'** flow. ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/manual-capture#benefits-of-manual-capture) Benefits of Manual Capture 1. **Improved Control**: Funds are captured only after goods or services are delivered. 2. **Flexibility**: You can capture the full amount or a partial amount as per the delivery. 3. **Customer Satisfaction**: Builds trust by charging customers only after fulfilling the order. ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/manual-capture#how-to-do-manual-capture) How to do Manual Capture? #### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/manual-capture#id-1.-create-a-payment-from-your-server-with-capture_method-manual) 1\. Create a payment from your server with "`capture_method" = "manual"` The 'capture\_method' field determines the type of capture for a particular payment and it defaults to 'automatic' if not passed. So, to do manual capture, set "`capture_method" = "manual"` when creating a payment from your server **Sample curl:** #### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/manual-capture#id-2.-confirm-the-payment-after-collecting-payment_method-details) 2\. Confirm the payment after collecting payment\_method details Confirm the payment after collecting the payment\_method details from your customer and informing them that the funds in their account would be blocked and charged later once the goods and services are delivered. Unified checkout handles this for automatically. On successful authorization, the payment would transition to `'requires_capture'` status. **Sample curl:** #### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/manual-capture#id-3.-capture-the-payment-after-delivering-the-goods-and-services) 3\. Capture the payment after delivering the goods and services: After delivering the goods and services, capture the payment by passing the `payment_id` from above step to `payments/capture` API endpoint. On successful capture, the payment would transition from `'requires_capture'` to `'succeeded'` status. **Sample curl:** ### [hashtag](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/manual-capture#full-vs-partial-capture) 'Full' vs 'Partial' Capture: Now, the merchant can either: * capture the full amount that was authorized - '**Full capture'**. Here the payments status transitions to 'SUCCEEDED'. * capture only a partial amount that was authorized - '**Partial Capture**'. Here the payments status transitions to 'PARTIALLY\_CAPTURED' and the remaining amount is automatically voided at the processor's end. Last updated 11 hours ago Was this helpful? * [Benefits of Manual Capture](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/manual-capture#benefits-of-manual-capture) * [How to do Manual Capture?](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/manual-capture#how-to-do-manual-capture) * ['Full' vs 'Partial' Capture:](https://docs.hyperswitch.io/other-features/payment-orchestration/quickstart/manual-capture#full-vs-partial-capture) Was this helpful? sun-brightdesktopmoon Copy curl --location 'https://sandbox.hyperswitch.io/payments' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data '{ "amount": 6540, "currency": "USD", "confirm": false, "capture_method": "manual", "authentication_type": "no_three_ds", "return_url": "https://duck.com", "billing": { "address": { "line1": "1467", "line2": "Harrison Street", "line3": "Harrison Street", "city": "San Fransico", "state": "California", "zip": "94122", "country": "US", "first_name": "John" } } }' Copy curl --location 'https://sandbox.hyperswitch.io/payments//confirm' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data '{ "payment_method": "card", "client_secret": "", "payment_method_data": { "card": { "card_number": "4242424242424242", "card_exp_month": "10", "card_exp_year": "25", "card_holder_name": "joseph Doe", "card_cvc": "123" } } }' Copy curl --location 'https://sandbox.hyperswitch.io/payments/pay_At7O43TJJZyP7OmrcdQD/capture' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header 'api-key: ' \ --data '{ "amount_to_capture": 6540, "statement_descriptor_name": "Joseph", "statement_descriptor_suffix": "JS" }' sun-brightdesktopmoon --- # Saleor App | Hyperswitch This app provides a seamless integration between Saleor (an open source ecommerce platform) and Juspay's payment orchestration products: Juspay Hyperswitch (for global payment acceptance) and Hypercheckout (for payment acceptance in India, complying with Financial data residency requirements). It enables merchants to utilize Juspay's secure and efficient payment processing directly within their Saleor storefront, delivering a smooth and dependable checkout experience for customers both within India and globally. ### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app#juspays-hypercheckout-for-accepting-payments-in-india-in-compliance-with-financial-data-residency-re) [Juspay's Hypercheckoutarrow-up-right](https://juspay.in/hypercheckout) - for accepting payments in India (in compliance with Financial data residency requirements) HyperCheckout combines the power of native checkout experiences, robust payment orchestration & advanced analytics. HyperCheckout is an Experience and Orchestration/Routing layer that connects with 100+ Payment Aggregators. ### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app#juspays-hyperswitch-for-global-payment-acceptance) [Juspay's Hyperswitcharrow-up-right](https://hyperswitch.io/) - for Global payment acceptance Access the entire payment ecosystem with a Single API. Hyperswitch connects you to multiple payment processors to embrace diversity. It improves payment success rates and reduces payment costs, ops & dev efforts. [Setupchevron-right](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup) Last updated 11 hours ago Was this helpful? * [Juspay's Hypercheckout - for accepting payments in India (in compliance with Financial data residency requirements)](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app#juspays-hypercheckout-for-accepting-payments-in-india-in-compliance-with-financial-data-residency-re) * [Juspay's Hyperswitch - for Global payment acceptance](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app#juspays-hyperswitch-for-global-payment-acceptance) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Payment Features | Hyperswitch Juspay Hyperswitch SDKs provide client-side payment capabilities across web and mobile platforms. Our frontend SDKs handle secure payment collection, user authentication, and seamless checkout experiences while maintaining PCI compliance. ### [hashtag](https://docs.hyperswitch.io/other-features/merchant-controls/payment-features#core-sdk-features) Core SDK Features #### [hashtag](https://docs.hyperswitch.io/other-features/merchant-controls/payment-features#payment-collection) Payment Collection * **Secure Card Input**: PCI-compliant form fields with real-time validation * **Payment Method Selection**: Support for cards, wallets, and local payment methods * **Tokenization**: Convert sensitive data to secure tokens on the client * **Auto-formatting**: Smart card number, expiry, and CVV formatting #### [hashtag](https://docs.hyperswitch.io/other-features/merchant-controls/payment-features#authentication-and-security) Authentication & Security * **3D Secure 2.0**: Seamless authentication with challenge flows when needed * **Biometric Authentication**: Touch ID, Face ID, and fingerprint support on mobile * **Encryption**: End-to-end encryption for all sensitive data * **Device Security**: Secure enclave and keystore utilization #### [hashtag](https://docs.hyperswitch.io/other-features/merchant-controls/payment-features#user-experience) User Experience * **Card Scanning**: Camera-based card input (mobile only) * **Saved Payment Methods**: Tokenized card storage and management * **One-Click Payments**: Express checkout with saved methods * **Auto-complete**: Browser and device autofill integration * **Real-time Validation**: Instant feedback on form inputs #### [hashtag](https://docs.hyperswitch.io/other-features/merchant-controls/payment-features#platform-specific-features) Platform-Specific Features **Web SDK** * Payment Request API integration * Browser autofill support * Apple Pay (with domain verification) * Google Pay web integration **Mobile SDKs (iOS/Android)** * Native wallet integration (Apple Pay/Google Pay) * NFC tap-to-pay support (Beta) * Camera-based card scanning * Biometric authentication * Native UI components **Cross-Platform (React Native/Flutter)** * Platform-appropriate wallet integration * Shared business logic with native UI * Camera access for card scanning * Cross-platform biometric support (Beta) Last updated 11 hours ago Was this helpful? Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Getting Started with Recon | Hyperswitch circle-info This section outlines the supported features of Juspay Hyperswitch Reconciliation module and provides guidance on how to use them. ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#using-the-reconciliation-module-is-a-5-step-process) Using the Reconciliation module is a 5-step process 1. [Upload & prepare file](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#id-1.-upload-and-prepare-files) 2. [Run Reconciliation](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#id-2.-run-reconciliation) 3. [Reconciliation Report](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#id-3.-reconciliation-reports) 4. [Reconciliation Analytics](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#id-4.-reconciliation-analytics) 5. [Post Reconciliation run](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#id-5.-post-reconciliation-run) ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#upload-and-prepare-files) Upload & prepare files Efficient file management is at the core of Juspay Hyperswitch Recon's data integration process. This entire stage usually takes < 30 secs post file upload. Following are the 3-steps involved in preparing files for reconciliation — Upload, Validate, and Transform #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#upload) Upload The first phase of the process involves uploading your data files into the Reconciliation system. Juspay Hyperswitch Reconciliation provides multiple methods for this purpose: * **Manual upload to the dashboard:** For ease of use, manually upload your files directly through the Reconciliation Dashboard. circle-info Files need to be uploaded in **PGName\_yyyymmdd/ MERCHANTNAME\_yyyymmdd/ BANK\_NAME\_yyyymmdd** format. * **Automated upload to dashboard:** In order to feed your PSP and bank files to the Reconciliation module you can select one of the below options during configuration. In case of automated upload of files, case all subsequent steps are also executed in an automated fashion and the reconciliation output is generated. * Via Recon uploader API: The Reconciliation module can ingest reports via APIs in case the payment processor and banks support that feature. This feature needs to be enabled during the activation and configuration stage. In order to enable this feature the merchant will need to specify * API endpoint, API keys and schedule * Via Merchant's SFTP: We allow files to be transferred to the Reconciliation module via pull based connection. You can specify a location where you'd place the files to be reconciled. Juspay Hyperswitch will pull the files from that location on a periodic basis using.an SFTP connection. This feature needs to be enabled during the activation and configuration. In order to enable this feature the merchant will need to specify * Portal User ID, Portal password and SFTP url and pick up schedule Possible errors at this stage are: * File naming convention error - The files need to be named as specified above to avoid any error in upload * Invalid file format - The following file formats are supported - csv, excel and XML #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#validate) Validate After the files are uploaded, they enter the Validate phase, where records undergo validation to ensure data integrity. This phase involves a series of checks to vet records based on various conditions, including: * **Column check:** Verify that all required columns are present and correctly formatted. * **Data type validation:** Validate data types to ensure they conform to the expected format. * **Duplicate value detection:** Identify and eliminate duplicate records to prevent redundancy. * **Date format verification:** Ensure date values are correctly formatted and are consistent. * **Other custom conditions:** Apply additional custom conditions relevant to your use case. Records that fail any of these validation checks are identified and separated from the dataset. These failed records are not forwarded to subsequent steps, minimising the risk of inaccurate reconciliations. Possible errors at this stage are: * Report content invalid - The format, structure and content of the files need to be in line with what was configured during the activation and configuration stage. #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#transform) Transform The final stage of the File Management process is the Transform phase. In this phase, various computations and transformations are applied to the validated records to prepare them for reconciliation within the engine. * **Settled amount calculation:** Compute settled amounts based on transaction values and statuses. * **Fee & tax computation:** These primarily include fees and tax calculations to enable us to reconcile the settlement report with the bank after deduction of these values. These transformations need to be enabled as part of the activation and configuration stage. In case those are not explicitly present in the payment processor's report, the merchant will need to specify them. This below specified table indicates the progress and outcome across each section. * **Yellow status:** The particular stage is being initiated for execution * **Green status:** The particular stage is successfully executed * **Red status:** The particular stage has some errors which need to be rectified * **Partial Red status:** Some of the records are invalid and have been excluded from the process ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#run-reconciliation) Run Reconciliation Once the files are uploaded and prepared, we need to run the reconciliation engine. In case of automated Reconciliation, the recon engine would move to the next step automatically. Automated reconciliation needs to be enabled during the activation and configuration stage. The Run Recon section is divided into 4 parts: Date selection, File selection, Recon status and Engine capabilities #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#date-selection) Date selection Specify the dates for which you want to see the output of Reconciliation engine run. In case of both automated and manual Reconciliation, all the records would be picked for processing. #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#file-selection) File selection Select the files on which you need to run reconciliation. In case of automated Reconciliation this step is not needed #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#recon-status) Recon status The Green status signifies that the reconciliation engine has run successfully In case you face any errors at this stage please contact the Juspay Hyperswitch support team. ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#reconciliation-reports) Reconciliation Reports Once the uploaded files are processed by the Reconciliation engine, the output is shown on the Reports section. The Reports section is largely divided into 3 parts: Date selection, Reconciliation reports and Reconciliation output table #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#date-selection-1) Date selection It allows you to see the reconciliation status for any time window of your choice. The Reconciliation modules stores all the data that is ingested in it to ensure you have a view of reconciliation that's driven by dates or length-of-time. The reconciliation engine performs backdated reconciliation by reviewing entries from previous dates. If matching entries are found, reconciliation is seamlessly executed, ensuring historical accuracy. By default, the engine considers backdated entries spanning the last 90-days, configurable based on merchant needs. #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#reconciliation-reports-1) Reconciliation reports Within the Reports module, users can access an array of essential reports that cover various aspects of the reconciliation process: * **Overall transaction report:** Gain a comprehensive view of reconciliation outcomes across all transactions. * **Merchant transaction report:** Focus specifically on merchant-level transaction alignment. * **PSP settlement report:** Analyse transaction reconciliation outcomes within the context of PSP settlements. * **Bank settlement report:** Gain insights into transaction alignment concerning bank settlements. #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#reconciliation-output-table) Reconciliation output table The output table provides access to specific information categories such as Gateway, Status, and Sub-status. These intricate details enable users to dissect reconciliation outcomes based on diverse attributes, facilitating pinpoint analysis. **Customisable column views:** Users have the ability to customise their column views within the output table: * **Select desired columns:** Choose which columns to view, tailoring the report to focus on specific attributes like transaction ID, amount, status, and reconciliation status. * **Column naming:** Assign specific names to columns, enhancing clarity and alignment with your business's terminology. This change needs to be done by the Juspay Hyperswitch team. * **Column positioning:** Assign a specific order to columns, enhancing clarity and alignment with your business' requirements. This change needs to be done by the Juspay Hyperswitch team. **Key columns and status definitions (these are the default names):** * **Recon status -** This is the reconciliation status between the Merchant report and the PSP report. Possible values are * Matched : Transactions that are matched across systems. * Mismatch: Transactions are present across the systems, but any of the fields, such as amount, tax, or currency, is mismatched. * Missing : Transactions which are not present in at least one of the files * **Recon sub-status -** This column is available only for 3-way recon. Possible values are * Matched: Transactions that are matched across systems. * Probable\_match : Potential match for a transaction which is identified using the secondary identifier column. * Amount\_mismatch : Transactions that have matched, but there is a discrepancy in the amount. Merchants can configure column-level mismatch statuses while onboarding. * Missing : Transactions which are not present in both the systems but present in bank file * Missing\_in : Transactions which are not present in at least one system * **Secondary status** - This is the reconciliation status between the PSP report and the Bank report. This column is available only for 3-way recon. Possible values are similar to Recon status * **Secondary sub-status** - This column is available only for 3-way recon. Possible values are similar to Recon sub status. In case of 3-way recon, the columns Recon status and Recon sub-status are used to indicate the reconciliation outcome of Juspay Hyperswitch and PSP file whereas columns secondary status and Secondary sub-status are used to indicate the reconciliation outcome of PSP and bank file. In case of 2-way recon a single column from the above is displayed along with the respective status. **Confidence score - potential matched:** Recon happens on transaction identifiers however at times payment entities (banks, PSPs) share different identifiers for refund, split transactions etc. For such cases, Reconciliation module would check for a nearby match and assign a confidence score to that reconciled row. **Download Data:** The reconciliation module allows merchants to download data in the form of excel. ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#reconciliation-analytics) Reconciliation Analytics The Recon Dashboard is characterised by several components that facilitate analysis: #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#user-controls) User controls The merchant can specify the date, type of report (monthly, daily), PSP and settlement currency for which analytics should be displayed on dashboard. #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#statistical-analytics) Statistical analytics This section contains of four components * Matched - Number of transactions and total amount that have been matched across all the systems after reconciliation. * Matched buffer - A buffer amount can be set by the merchant during the activation and configuration stage. Number of transactions and total amount that have been matched with the buffer across all the systems after reconciliation. * Mismatched - Number of transactions and total amount that have mismatched data in at least one of the systems. * Not found - Number of transactions and total amount that have not been found in at least one system. #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#graphical-analytics) Graphical analytics Bar graph representation of Number of transactions vs date range. #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#summary-table) Summary table This table contains information about pending amount from last period, amount expected, amount received and balance receivable for all PSP's after last reconciliation run. * Balance last period : Balance left to receive from all previous reconciliation runs. * Amount expected : Amount that is expected from PSP as per merchant report. * Amount received : Amount that is received from PSP as per PSP report. * Balance receivable : Sum of balance last period and difference between amount expected and amount received. ### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#post-reconciliation-run) Post reconciliation run Once the reconciliation engine has been executed, there maybe a few records which fall under the mismatched or missing category. #### [hashtag](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#missing-category) Missing category Majority of records that fall in this category are essentially missed in one of the files due to different systems following different cut over times. To elaborate, PSP or bank or Juspay Hyperswitch will have their own cut over times for generating report, settling transactions etc. Therefore a few records may just be missed due to the difference in the cut over time. The reconciliation engine performs backdated reconciliation by reviewing entries from previous dates. If matching entries are found, reconciliation is seamlessly executed, ensuring historical accuracy. By default, the engine considers backdated entries spanning the last 90-days, configurable based on merchant needs. Records that don't fall under the purview of the above examples will need to be investigated with the respective teams (Juspay Hyperswitch, PSP or bank). We are also working on a feature that will enable you to track and close Reconciliation issues within the Reconciliation module ([Recon open issuesarrow-up-right](https://github.com/juspay/hyperswitch-docs/blob/main/about-hyperswitch/payments-modules/reconciliation/broken-reference/README.md) ). Last updated 11 hours ago Was this helpful? * [Using the Reconciliation module is a 5-step process](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#using-the-reconciliation-module-is-a-5-step-process) * [Upload & prepare files](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#upload-and-prepare-files) * [Run Reconciliation](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#run-reconciliation) * [Reconciliation Reports](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#reconciliation-reports) * [Reconciliation Analytics](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#reconciliation-analytics) * [Post reconciliation run](https://docs.hyperswitch.io/other-features/payments-modules/reconciliation/getting-started-with-recon#post-reconciliation-run) Was this helpful? sun-brightdesktopmoon sun-brightdesktopmoon --- # Setup | Hyperswitch Connects Juspay's Hyperswitch and Hypercheckout with Saleor, enabling merchants to process payments securely and efficiently within their Saleor storefront for both Indian and international customers. circle-info This section covers the steps to setup Juspay payment app through Saleor ### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#prerequisites) Prerequisites #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#id-1.-sign-up-to-payments-dashboard) 1\. Sign up to payments dashboard **1.1 Non Indian payments dashboard sign up** [Sign uparrow-up-right](https://app.hyperswitch.io/) to Juspay Hyperswitch dashboard and navigate to connectors tab to configure connector(s) and enable various Payment Methods. > **Note:** While configuring connectors, please ensure that you also set up connector's webhook with Hyperswitch. **1.2 Indian payments dashboard sign up** [Sign uparrow-up-right](https://sandbox.portal.juspay.in/) to Hypercheckout dashboard and navigate to `Payments > PG Control Centre` to configure payment gateways and enable various Payment Methods. > **Note:** While configuring payment gateways, please ensure that you also set up it's webhook with Hypercheckout dashboard [referarrow-up-right](https://docs.juspay.in/resources/docs/common-resources/webhooks#Configuring-Webhooks) > . Juspay Saleor app relies on these webhooks to update the payment status accurately and in real-time. #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#id-2.-sign-up-to-saleor-dashboard) 2\. Sign up to Saleor dashboard Sign up to [Saleorarrow-up-right](https://auth.saleor.io/realms/saleor-cloud/login-actions/registration?client_id=cloud-console&tab_id=ZC70teubjvo) , set up a new project, and tailor your store to meet your unique needs. ### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#id-1.-setting-up-the-juspay-app-on-your-saleor-dashboard) 1\. Setting up the Juspay App on your Saleor Dashboard #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#id-1.1-install-the-app) 1.1 Install the App 1. To access the Juspay Saleor Payment App, [click herearrow-up-right](https://live.hyperswitch.io/saleor) . You will be directed to a form where you can enter your Saleor API URL. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-9393c74775637c181aa48e3f84e85a15f93dd3db%252FjuspaySaleorInstall.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=73331084&sv=2) 1. Input your Saleor API URL and click `Add to Saleor`. This action will start the installation process and display the installation page. 2. Finally, click on `Install App`, this will install the app in your dashboard #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#id-1.2-configure-the-app) 1.2 Configure the App **1.2.1 Configure for non Indian payments** 1. Open Hyperswitch App installed on your Saleor dashboard. 2. Click on `Add new configuration`, which opens a popup to select non Indian payments. This will open a form to collect credentials. * Enter a unique configuration name. This name will be used later to assign the configuration to Saleor channels. * Enter your Hyperswitch API key. For instructions on how to create an API Key with Hyperswitch, refer to [this guidearrow-up-right](https://docs.hyperswitch.io/hyperswitch-cloud/account-setup#user-content-create-an-api-key-1) . * Enter your Hyperswitch Publishable Key. You can find this key under the `Developers > API Keys` section of Hyperswitch dashboard. * Enter your Hyperswitch Payment Response Hash Key. You can find this key under the `Developers > API Keys` section of Hyperswitch dashboard. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-ed3dd9fea8dc1448b18582a75ef647989c398219%252FhyperswitchPublishableKey.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=2bf5bd2c&sv=2) * Enter your Hyperswitch Profile ID. For more information on Profile ID, please refer to [this guidearrow-up-right](https://docs.hyperswitch.io/features/account-management/multiple-accounts-and-profiles) 1. Click on `Save Configuration` 2. Once you save the configuration, You will be provided with a webhook URL, please update it in your [Hyperswitch dashboardarrow-up-right](https://docs.hyperswitch.io/hyperswitch-cloud/webhooks) > **Note:** To customize, your payment page. Please contact [Hyperswitch supportarrow-up-right](https://hyperswitch-io.slack.com/join/shared_invite/zt-2jqxmpsbm-WXUENx022HjNEy~Ark7Orw#/shared-invite/email) **1.2.2 Configure for Indian payments** 1. Open Hyperswitch App installed on your Saleor dashboard. 2. Click on `Add new configuration`, which opens a popup to select Indian payments. This will open a form to collect credentials. * Enter a unique configuration name. This name will be used later to assign the configuration to Saleor channels. * Enter your Hypercheckout API key. You can get API key in Hypercheckout dashboard under `Payments > Setting > Security`. For more instructions on how to create an API Key, refer to [this guidearrow-up-right](https://docs.juspay.in/dashboard/docs/ec-operations/settings-module#Settings-Security) . * Enter your Hypercheckout merchant id. You can find this by clicking on your account symbol in navbar. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-19de5e57bcf559ac7587f386657db5cc87c08ddb%252FhyperCheckoutMid.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=aac91a2f&sv=2) * Enter your username to receive webhooks. To get username visit `Payments > Setting > Webhooks`. * Enter your password to receive webhooks. To get password visit `Payments > Setting > Webhooks`. * Enter your Hypercheckout client id. To get client id you can visit studio from the sidebar `Payment Page > Studio`. ![](https://docs.hyperswitch.io/~gitbook/image?url=https%3A%2F%2F1943537505-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fkf7BGdsPkCw9nalhAIlE%252Fuploads%252Fgit-blob-3219e77d73a6f9d69cc6d4cb7d15445b475276d4%252FhyperCheckoutCid.png%3Falt%3Dmedia&width=768&dpr=3&quality=100&sign=9b694650&sv=2) 1. Click on `Save Configuration` 2. Once you save the configuration, you will be provided with a webhook URL, Please update it in your [Hypercheckout dashboardarrow-up-right](https://docs.juspay.in/hyper-checkout/android/base-sdk-integration/webhooks) #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#id-1.3-assign-channel-to-your-configuration) 1.3 Assign Channel to your configuration For each channel, payments will be processed according to configurations assigned to it. Now Hyperswitch Saleor App is configured to receive payments ### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#id-2.-accept-payments-through-juspay-saleor-app) 2\. Accept payments through Juspay Saleor App #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#get-available-payment-gateways) Get available payment gateways If you have configured Juspay in your Saleor dashboard, you will receive the Juspay App ID in the response Response #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#initialize-the-payment-gateway) Initialize the payment gateway This call returns whether the payment is going through Hyperswitch or Hypercheckout. Response #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#initialize-the-transaction) Initialize the transaction To initialize the transaction with Hyperswitch, one needs to create a transaction in Saleor by calling the transactionInitialize mutation. You can pass additional fields while initiating the transaction through the $data JSON object. The additional fields you can pass include: 1. `customerId`: \[Optional String\] The identifier for the customer 2. `authenticationType`: This is used for non Indian payments. Pass this parameter to force 3DS or non 3DS auth for this payment. Some connectors will still force 3DS auth even in case of passing 'no\_three\_ds' here and vice versa. Default value is 'no\_three\_ds' if not set Available options: `three_ds`, `no_three_ds` 3. `billingEmail`: \[Optional String\] customer's billing email 4. `shippingEmail` : \[Optional String\] customer's shipping email 5. `statementDescriptorName`: \[Optional String\] This is used for non Indian payments. For non-card charges, you can use this value as the complete description that appears on your customers' statements. Must contain at least one letter, maximum 22 characters 6. `statementDescriptorSuffix`: \[Optional String\] This is used for non Indian payments. Provides information about a card payment that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor that's set on the account to form the complete statement descriptor. Maximum 22 characters for the concatenated descriptor. 7. `description`: \[Optional String\] A description for the payment 8. `returnUrl`: \[Optional String\] The URL to which you want the user to be redirected after the completion of the payment operation (Mandatory Field for Payment Links), 9. `manualRetryAllowed`: \[Optional Boolean\] This is used for non Indian payments. If true the payment can be retried with same or different payment method which means the confirm call can be made again. 10. `gatewayReferenceId`: \[Optional String\] This is used for Indian payments. The id refers to the payment gateway reference id which you configured in Hypercheckout dashboard. It becomes mandatory when multiple instances of the same gateway are configured. Sending this id will route the transaction via selected gateway.Refer [herearrow-up-right](https://docs.juspay.in/resources/docs/common-resources/gateway-reference-id) for details. 11. `allowedPaymentMethods`: \[Optional JSON\] This helps you to select which payment options you want to show on your payment page. * **Indian Payments**: This expects a json object to enable and disable payment options. For more info refer [herearrow-up-right](https://docs.juspay.in/hyper-checkout/android/resources/payment-locking) . * **Non-Indian Payments**: This expects a json array of enums to enable and disable payment options. For more info refer `allowed_payment_method_types` in [payments-createarrow-up-right](https://api-reference.hyperswitch.io/api-reference/payments/payments--create) . **Example Response for Initializing a Non-Indian Transaction** Handle Response for Initializing Non-Indian Payment Transactions * You can use `clientSecret` and `publishableKey` to invoke the [Hyperswitch SDKarrow-up-right](https://docs.hyperswitch.io/learn-more/sdk-reference) OR * You can use the `paymentLinks.web` to redirect the customer to Hyperswitch payment page. Additionally, this URL can also be embedded within an iframe **Example Response for Initializing a Indian Transaction** Handle Response for Initializing Indian Payment Transactions * You can use `sdkPayload` to invoke the [Hypercheckout SDKarrow-up-right](https://docs.juspay.in/hyper-checkout/android/base-sdk-integration/initiating-sdk) OR * You can use the `paymentLinks.web` to redirect the customer to Hypercheckout payment page. Additionally, this URL can also be embedded within an iframe #### [hashtag](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#retrieve-the-transaction) Retrieve the transaction The payment status will be automatically updated by the App in the backend upon Juspay receiving a webhook from the connector. Alternatively, you can call Saleor's Transaction Process mutation to retrieve the status of an initiated payment. The Juspay Saleor App also supports additional flows such as payment capture, cancellation, and refunds. These actions can be triggered directly through the Saleor dashboard. > Note: If you trigger refunds through the Hyperswitch/Hypercheckout dashboard instead of the Saleor dashboard, you will need to manually update the refund status in the Saleor dashboard. Last updated 11 hours ago Was this helpful? * [Prerequisites](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#prerequisites) * [1\. Setting up the Juspay App on your Saleor Dashboard](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#id-1.-setting-up-the-juspay-app-on-your-saleor-dashboard) * [2\. Accept payments through Juspay Saleor App](https://docs.hyperswitch.io/other-features/e-commerce-platform-plugins/saleor-app/setup#id-2.-accept-payments-through-juspay-saleor-app) Was this helpful? sun-brightdesktopmoon Copy query { checkout(id: "saleor_checkout_id") { availablePaymentGateways { id name } } } Copy { "data": { "checkout": { "availablePaymentGateways": [\ {\ "id": "app.saleor.juspay-test",\ "name": "Juspay"\ }\ ] } } } Copy mutation JuspaypaymentGatewayInitialize { paymentGatewayInitialize(id: "payment_gateway_id") { gatewayConfigs { data id } } } Copy { "data": { "paymentGatewayInitialize": { "gatewayConfigs": [\ {\ "data": {\ "orchestra": "HYPERSWITCH/HYPERCHECKOUT"\ },\ "id": "app.saleor.juspay-test"\ }\ ] } }, "extensions": { "cost": { "requestedQueryCost": 0, "maximumAvailable": 50000 } } } Copy mutation JuspayTransactionInitialize($data: JSON!) { transactionInitialize( id: "saleor_checkout_id" amount: 54.24 paymentGateway: { id: "app.saleor.juspay-test", data: $data } ) { transactionEvent { pspReference amount { amount currency } type } data errors { field message code } } } Copy { "data": { "transactionInitialize": { "transactionEvent": { "pspReference": "pay_ezKjsngnqMCYbx0ke8PK", "amount": { "amount": 18, "currency": "USD" }, "type": "CHARGE_ACTION_REQUIRED" }, "data": { "paymentLinks": { "paymentLinkId": "payment_link_id", "web": "payment_link" }, "sdkPayload": { "payload": { "clientSecret": "pay_exxxxxxxxxxx", "publishableKey": "pk_snd_xxxxxxx" } }, "errors": [] }, "errors": [], "transaction": { "id": "VHJhbnNhY3Rxxxxxxxxxxxx, "token": "a795d869xxxxxxxx" } } }, "extensions": { "cost": { "requestedQueryCost": 0, "maximumAvailable": 50000 } } } Copy { "data": { "transactionInitialize": { "transactionEvent": { "pspReference": "8b2e87ac-xxxxx-xxxx-xxxx", "amount": { "amount": 200, "currency": "INR" }, "type": "CHARGE_ACTION_REQUIRED" }, "data": { "paymentLinks": { "web": "https://sandbox.assets.juspay.in/payment-page/order/ordeh_9b82xxxxxxxxxxx", "expiry": "2024-08-15T11:33:59Z" }, "sdkPayload": { "requestId": "f2724dd953394f04bxxxxxxxxxxxxx", "service": "in.juspay.hyperpay", "payload": { "clientId": "xxxxxx", "amount": "200.0", "merchantId": "merchant_success", "clientAuthToken": "tkn_5f2c7edebf7143a7bfxxxxxxxxxxxxx", "clientAuthTokenExpiry": "2024-08-12T11:48:59Z", "environment": "sandbox", "lastName": "Doe", "action": "paymentPage", "returnUrl": "https://www.google.com/", "currency": "INR", "firstName": "Rayan", "customerEmail": "[email protected]", "orderId": "8b2e87ac-a238-4d79-bedb-xxxxxxxxxxxxx" }, "expiry": "2024-08-15T11:33:59Z" }, "errors": [] }, "errors": [], "transaction": { "id": "VHJhbnNhY3Rpb25JdGVtOjUzYzdjNTFjLTY5NWYtxxxxxxxxxxxxx==", "token": "53c7c51c-695f-464d-b78d-xxxxxxxxxxxxx" } } }, "extensions": { "cost": { "requestedQueryCost": 0, "maximumAvailable": 50000 } } } Copy mutation JuspayTransactionProcess { transactionProcess( id: "saleor_transaction_id" ) { data errors { code field message } transaction { actions } transactionEvent { type pspReference } } } sun-brightdesktopmoon ---