> For the complete documentation index, see [llms.txt](https://docs.hyperswitch.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hyperswitch.io/~/revisions/QSGzCRIrWguIX4tCwjpZ/about-hyperswitch/payment-suite-1/direct-payment-control-model.md).

# Direct Payment Control Model

Best for merchants who do not want to handle card data and want to maintain their current integration with the processors.

In this approach, the Direct Payment Control Model functions by treating Hyperswitch as a secure "pipe." This setup grants you full control over your orchestration logic and the specific API calls sent to processors. The process initiates when the customer enters payment details into the Hyperswitch SDK, where the data is directly tokenized within the Hyperswitch Vault.

Subsequently, your backend constructs a request intended for your specific processor, such as Stripe or Adyen, utilizing placeholders instead of raw card data. This request is then routed through the Hyperswitch Proxy. The proxy injects the actual card details immediately before forwarding the request to the processor, ensuring that raw card data never touches your servers.

This architecture allows you to maintain your legacy backend logic while significantly reducing PCI scope. It is particularly well-suited for scenarios where you plan to keep existing processor integrations. but require the removal of sensitive card data from your internal systems.

#### **Understanding Payment and Vault Flow**&#x20;

<figure><img src="https://1943537505-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf7BGdsPkCw9nalhAIlE%2Fuploads%2FCFMSRBwwOmBXsZhj1WP0%2Fimage%20(3).png?alt=media&amp;token=82056d73-39d6-48f9-b026-aaaec84e16cb" alt=""><figcaption></figcaption></figure>

**Vaulting :**

Instead of processing the card immediately, we secure it first and give you a safe reference token. Sensitive payment data is sent directly from the client to the Hyperswitch Vault. You receive a non-sensitive token in return.

**Making Proxy Payment** &#x20;

* **Custom Orchestration:** Your backend decides exactly when and where to process the payment.
* **Secure Passthrough (Proxy):** When you are ready to charge, you send the request to the Hyperswitch Proxy API along with the payment method id, targeting the processor's native endpoint.
* **Redaction & Injection:** The Proxy identifies the token in your payload, injects the real card data from the Vault based on the payment method id, and forwards the full request to the processor.

**Integration Documetation :**&#x20;

* [Vault SDK Integration](https://docs.hyperswitch.io/~/revisions/TGn71uwTlQJmyyiYgHpt/explore-hyperswitch/payments-modules/vault/vault-sdk-integration)
* [Proxy Payment Integration Guide](https://docs.hyperswitch.io/~/revisions/01bZ2maqjwpnmrttix7i/explore-hyperswitch/payments-modules/vault/hyperswitch-vault-pass-through-proxy-payments)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.hyperswitch.io/~/revisions/QSGzCRIrWguIX4tCwjpZ/about-hyperswitch/payment-suite-1/direct-payment-control-model.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
