> 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/integrations/connectors-integrations/payment-processor-capabilities/available-connectors/dlocal.md).

# dLocal

Configure dLocal card and voucher payments with Hyperswitch.

<div align="left"><img src="https://hyperswitch.io/icons/homePageIcons/logos/dlocalLogo.svg" alt=""></div>

OXXO vouchers give dLocal's payment gateway route a cash-based option beside credit and debit cards. Cards accept automatic, manual, and sequential automatic capture, while OXXO uses automatic capture. Refunds are supported for each route, and mandates are not supported.

### Status and capabilities

**Integration status:** sandbox

**Category:** payment gateway

**Webhook flows:** None declared in code

| Payment method | Type        | Mandates      | Refunds   | Capture methods                         | 3DS                 | Card networks                                                                                       | Countries | Currencies |
| -------------- | ----------- | ------------- | --------- | --------------------------------------- | ------------------- | --------------------------------------------------------------------------------------------------- | --------- | ---------- |
| card           | Credit Card | not supported | supported | automatic, manual, sequential automatic | supported, optional | American Express, Cartes Bancaires, Diners Club, Discover, Interac, JCB, Mastercard, UnionPay, Visa | -         | -          |
| card           | Debit Card  | not supported | supported | automatic, manual, sequential automatic | supported, optional | American Express, Cartes Bancaires, Diners Club, Discover, Interac, JCB, Mastercard, UnionPay, Visa | -         | -          |
| voucher        | OXXO        | not supported | supported | automatic                               | not applicable      | -                                                                                                   | -         | MXN        |

### Activate dLocal with Hyperswitch

#### Before you start

1. Register with dLocal.
2. Sign in to the [Hyperswitch control center](https://app.hyperswitch.io/register) or create your Hyperswitch account.
3. Copy your Login, Secret Key, and Trans Key from the dLocal dashboard.
4. Enable the same payment methods in dLocal and in your Hyperswitch connector configuration.

To connect dLocal to your Hyperswitch account, follow [Activate a connector on Hyperswitch](/integrations/connectors-integrations/activate-connector-on-hyperswitch.md), then return here for what dLocal supports.

### Connector-Specific Notes

Each API request is signed with HMAC-SHA256. For an empty body, Hyperswitch concatenates the login and request date with no delimiter. Otherwise it concatenates the login, request date, and request body in that order with no delimiter. It hex-encodes the signature and sends `Authorization: V2-HMAC-SHA256, Signature: <hex signature>`. See [`build_headers()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/dlocal.rs#L82-L133).

### Authentication

Provide a `<login>`, `<transaction key>`, and `<secret key>`. The `SignatureKey` mapping assigns `api_key` to the login, `key1` to the transaction key, and `api_secret` to the secret key. The login and transaction key are also sent separately as `X-Login: <login>` and `X-Trans-Key: <transaction key>`; the secret key is the HMAC key and is not sent as a header value. See [`DlocalAuthType::try_from()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/dlocal/transformers.rs#L225-L249) and [`build_headers()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/dlocal.rs#L82-L133).

### Webhooks

Webhooks are not currently supported. Payment status updates rely on syncing with the API. The webhook implementation returns `EventNotSupported` and does not provide a resource object. See [`get_webhook_event_type()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/dlocal.rs#L692-L715).

### Source reference

The connector implementation is [`dlocal.rs`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/dlocal.rs).


---

# 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/integrations/connectors-integrations/payment-processor-capabilities/available-connectors/dlocal.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.
