---
updatedAt: 2026-09-10T09:38:39.000Z
agentTools:
  projectIndex: https://docs.dlocal.com/llms.txt
---

# Guatemala

Learn about the dLocal supported payment methods in Guatemala.

<HTMLBlock>{`
<style>
  
  .main {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Tres columnas */
    width: 740px; /* Ancho máximo de la caja */
}

.overview-card1 {
    position: relative; /* Asegúrate de que el contenedor sea relativo para posicionar el pseudoelemento */
    width: 100%;
    max-width: 233px;
    box-sizing: border-box;
    margin: 0;
}

.overview-card1::after {
    content: '';
    position: absolute;
    right: 0; /* Pega la línea al borde derecho */
    top: 30%; /* Ajusta la posición superior de la línea */
    height: 70%; /* Establece el alto de la línea al 60% */
    width: 1px; /* Grosor de la línea */
    background-color: #D2D8EC; /* Color de la línea */
}
  
.overview-card2 {
    position: relative; /* Asegúrate de que el contenedor sea relativo para posicionar el pseudoelemento */
    width: 100%;
    max-width: 233px;
    box-sizing: border-box;
    margin: 0;
}

.overview-card-upper-side1 {
    height: 105px;
    padding: 20px;
    background-color: transparent;
    text-align: left;
}

.overview-card-bottom-side {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 30px;
    padding-right: 20px;
    background-color: transparent;
    border-radius: 16px;
}

.overview-card-title1 {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 26.4px;
}

.overview-card-content1 {
    font-size: 14px;
    font-weight: 300;
    margin-top: 20px;
    line-height: 20px;
    margin-bottom: 40px!important;
}

.overview-icon1 {
    margin-bottom: -5px;
    margin-top: 20px;
}
  
.doc-link {
        position: relative;
        font-weight: 500;
        color: #21A35B !important;
        text-decoration: none;
        display: block;
    }
  

div:not(.markdown-body) .doc-link:hover {
            text-decoration: none;
            color: #1043FA !important;
            transform: translateX(0.2em);
        }

.overview-card-title1:hover {
    color: #2D59F5 !important;
    cursor:pointer;
    transform: none!important;
}

    div:not(.markdown-body) .doc-link_arrow {
        display: inline-block;
        height: 1em;
        width: auto;
        vertical-align: middle;
        margin-left: 0.2em;
        margin-top: -0.1em;
    }
  
     div:not(.markdown-body) .doc-link:hover .doc-link_arrow-color {
            fill: #1043FA !important;
        }
  
      [data-color-mode="dark"] .overview-icon1 img {
  filter: brightness(0) invert(1);
  transition: filter 0.3s ease;
}
  
  
/* Media Queries para dispositivos móviles */
@media (max-width: 768px) {
  .main {
    grid-template-columns: repeat(2, 1fr); /* Dos columnas en pantallas medianas */
  }
}

@media (max-width: 480px) {
  .main {
    grid-template-columns: 1fr; /* Una columna en pantallas pequeñas */
}
</style>
  
    <div class="main">

     
      <div class="overview-card1" onclick="parent.location='/docs/guatemala#market-specifications'">
     <div class="overview-card-bottom-side">
      <div class="overview-icon1"><img width="48" src="https://files.readme.io/922681fecfb238c94f7213fa9e0aa1675f1e190ec55beff2b6994169c77fdefc-adjust-circle.svg"  alt="" loading="lazy"><div class="img_overlay img_color_rgba(0,0,0,.2)"></div></div>
           <h3 class="overview-card-title1">Market specifications</h3>
          <p class="overview-card-content1">
            Take a look of all the payment methods available.   
        </p>
          <a href="#country-reference" class="doc-link">Country reference</a>
          <a href="#cards-supported" class="doc-link">Cards supported</a>
          <a href="#alternative-payment-method-supported" class="doc-link">APM supported</a>
        </div>
      </div>
      
      
      <div
        class="overview-card1" onclick="parent.location='/docs/guatemala#cards'">
        <div class="overview-card-bottom-side">
                 <div class="overview-icon1"><img width="48" src="https://files.readme.io/8d450ada4af3880f85f70c5daedebb0bec1b2b6d64479be929af48fdc8d66f40-credit-card.svg"  alt="" loading="lazy"><div class="img_overlay img_color_rgba(0,0,0,.2)"></div></div>
           <h3 class="overview-card-title1">Cards</h3><br>
          <p class="overview-card-content1">
           Find all the information about the card supported capabilities.   
          </p>
          <a href="#capabilities" class="doc-link">Capabilities</a>
          <a href="#how-to-process-card-payments" class="doc-link">Process Card Payments</a>
        </div>
      </div>  
      
      
      <div class="overview-card2" onclick="parent.location='/docs/guatemala#alternative-payment-method'">
    <div class="overview-card-bottom-side">
              <div class="overview-icon1"><img width="48" src="https://files.readme.io/5a59519487455e7af361db8b67a2dee8d71627d4d6e1ed0a0bd805f5da861fcc-money-stack.svg"  alt="" loading="lazy"><div class="img_overlay img_color_rgba(0,0,0,.2)"></div></div>
           <h3 class="overview-card-title1">Alternative Payments</h3>
          <p class="overview-card-content1">
             Learn how to integrate cash, bank transfer or wallet payment.  
        </p>
          <a href="#paycash" class="doc-link">PayCash</a>
          <a href="#soyfri" class="doc-link">SoyFri</a>
        </div>
      </div> 
      
    </div>
`}</HTMLBlock>

***

# Market specifications

Do you want to know more information about Guatemala's market? Go to the [Tap Into Latin America’s High-Growth Potential](https://dlocal.com/payment-processors-in-latin-america/) article.

## Country reference

| `country` code | `currency` code | `amount` decimals | `document` name | `document` format | `document` required? |
| :------------: | :-------------: | :---------------: | :-------------: | :---------------: | :------------------: |
|      `GT`      |      `GTQ`      |         2         |       CUI       |     13 digits     |          Yes         |

## Cards supported

| `payment_method_id` | Brand ID | Name               | `payment_method_type` | Details       | Allowed Flows       | Logo                                                                                |
| :------------------ | :------- | :----------------- | :-------------------- | :------------ | :------------------ | :---------------------------------------------------------------------------------- |
| `CARD`              | `VI`     | Visa               | `CARD`                | Credit Card ​ | `DIRECT` `REDIRECT` | <img src="https://static.dlocal.com/images/providers/checkout/VI.svg" width="40px"> |
| `CARD`              | `VD`     | Visa Debit ​       | `CARD`                | Debit Card ​  | `DIRECT` `REDIRECT` | <img src="https://static.dlocal.com/images/providers/checkout/VD.svg" width="40px"> |
| `CARD`              | `MC`     | Mastercard         | `CARD`                | Credit Card ​ | `DIRECT` `REDIRECT` | <img src="https://static.dlocal.com/images/providers/checkout/MC.svg" width="40px"> |
| `CARD`              | `MD`     | Mastercard Debit ​ | `CARD`                | Debit Card ​  | `DIRECT` `REDIRECT` | <img src="https://static.dlocal.com/images/providers/checkout/MD.svg" width="40px"> |
| `CARD`              | `AE`     | American Express   | `CARD`                | Credit Card ​ | `DIRECT` `REDIRECT` | <img src="https://static.dlocal.com/images/providers/checkout/AE.svg" width="40px"> |
| `CARD`              | `DC`     | Diners             | `CARD`                | Credit Card ​ | `DIRECT` `REDIRECT` | <img src="https://static.dlocal.com/images/providers/checkout/DC.svg" width="40px"> |
| `CARD`              | `DI`     | Discover           | `CARD`                | Credit Card ​ | `DIRECT` `REDIRECT` | <img src="https://static.dlocal.com/images/providers/checkout/DI.svg" width="40px"> |
| `CARD`              | `JC`     | JCB                | `CARD`                | Credit Card ​ | `DIRECT` `REDIRECT` | <img src="https://static.dlocal.com/images/providers/checkout/JC.svg" width="40px"> |

<Callout icon="ℹ️" theme="info">
  To offer all the card options that may be available in your integration, send the `payment_method_id` as `CARD`.
</Callout>

## Alternative Payment Method supported

| `payment_method_id` | Name    | `payment_method_type` | Details       | Allowed Flows       | Logo                                                                       |
| :------------------ | :------ | :-------------------- | :------------ | :------------------ | :------------------------------------------------------------------------- |
| `CY`                | PayCash | `TICKET`              | Cash Payment  | `DIRECT` `REDIRECT` | <img src="https://static.dlocal.com/images/providers/CY.png" width="40px"> |
| `FR`                | SoyFRI  | `TICKET`              | Mobile Wallet | `REDIRECT`          | <img src="https://static.dlocal.com/images/providers/FR.png" width="40px"> |

<br />

***

# Cards

## Capabilities

|                               | Visa Credit   | Visa Debit    | Mastercard Credit | Mastercard Debit | American Express | Diners        | Discover      | JCB           |
| :---------------------------- | :------------ | :------------ | :---------------- | :--------------- | :--------------- | :------------ | :------------ | :------------ |
| **Minimum amount**            | 1 GTQ         | 1 GTQ         | 1 GTQ             | 1 GTQ            | 1 GTQ            | 1 GTQ         | 1 GTQ         | 1 GTQ         |
| **Refunds**                   | Yes           | Yes           | Yes               | Yes              | Yes              | Yes           | Yes           | Yes           |
| **Recurring**                 | Yes           | Yes           | Yes               | Yes              | Yes              | Yes           | Yes           | Yes           |
| **Chargeback option**         | Yes           | Yes           | Yes               | Yes              | Yes              | Yes           | Yes           | Yes           |
| **Chargeback Dispute option** | Yes           | Yes           | Yes               | Yes              | Yes              | Yes           | Yes           | Yes           |
| **Descriptor**                | Merchant name | Merchant name | Merchant name     | Merchant name    | Merchant name    | Merchant name | Merchant name | Merchant name |

## How to process Card Payments?

Learn how to process payments with credit and debit cards with dLocal in our [Card Payments](https://docs.dlocal.com/docs/card-payments) section.

<br />

***

# Alternative Payment Method

## PayCash

PayCash is a payment system enabled in the main commercial chains and banks in Latin America, which allows customers to receive and process cash payments and transfers immediately.

### Capabilities

|                                    | PayCash                    |
| :--------------------------------- | :------------------------- |
| **Min. amount**                    | 1 GTQ                      |
| **Max. expiration time supported** | 5 days                     |
| **Notification delay**             | Immediate                  |
| **Refunds**                        | Yes                        |
| **Flow**                           | `DIRECT` <br /> `REDIRECT` |

### Request parameters

| Property              | Type   | Description                                                                                                            | Mandatory? |
| :-------------------- | :----- | :--------------------------------------------------------------------------------------------------------------------- | :--------- |
| `amount`              | Number | Amount to be charged.                                                                                                  | Yes        |
| `currency`            | String | `GTQ`<br /><br />Transaction currency in [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217).                            | Yes        |
| `country`             | String | `GT` <br /><br />Transaction country in [ISO 3166](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes).      | Yes        |
| `payment_method_id`   | String | `CY` <br /><br />ID of the selected payment method.                                                                    | Yes        |
| `payment_method_flow` | String | `DIRECT` or `REDIRECT`                                                                                                 | Yes        |
| `payer.name`          | String | Name of the payer.                                                                                                     | Yes        |
| `payer.email`         | String | Email of the payer.                                                                                                    | Yes        |
| `payer.document`      | String | Document of the payer.                                                                                                 | Yes        |
| `order_id`            | String | ID of the capture given by the merchant in their system. Think of it as an external ID of the capture.                 | No         |
| `notification_url`    | String | Notifications will be sent in every change of status of a payment to the `notification_url` specified by the merchant. | No         |

### Examples

```json Request Example
{
    "amount": 20,
    "currency": "GTQ",
    "country": "GT",
    "payment_method_id": "CY",
    "payment_method_flow": "DIRECT",
    "payer": {
        "name": "Jane Doe",
        "email": "janedoe@mymail.com",
        "document": "1234567890123",
        "address": {
            "country": "GT",
            "state": "Guatemala",
            "city": "Guatemala",
            "zip_code": "8858",
            "street": "Av. Principal",
            "number": "5940"
        }
    },
    "order_id": "34545sk3483kqw0",
    "description": "Tshirt",
    "notification_url": "http://merchantsite.com/notification/new",
    "callback_url": "http://merchantsite.com/success_page"
}
```
```json Response Example
{
    "id": "D-4-ff8aedac-3b47-rffd-9fe4-cb0385e568d4",
    "amount": 20,
    "currency": "GTQ",
    "payment_method_id": "CY",
    "payment_method_type": "TICKET",
    "payment_method_flow": "DIRECT",
    "country": "GT",
    "bank_transfer": {},
    "ticket": {
        "type": "CUSTOM",
        "reference": 4201686593745791,
        "expiration_date": "2023-06-17T23:59:59.000+0000",
        "provider_name": "apm-paycash",
        "provider_logo": "logo",
        "image_url": "https://pay.dlocal.com/gmf-apm/payments/M-8ebc0757-b772-44d9-edsw-a4501ac959c7",
        "amount": 20,
        "currency": "GTQ"
    },
    "created_date": "2023-06-12T22:04:54.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "34545sk3483kqw0",
    "notification_url": "http://merchantsite.com/notification/new"
}
```

### Example ticket

<Image src="https://files.readme.io/3926d0cfa0a9cbaf347c1e1ed03bab81a7075c433f97b8f221d7222a32f2344b-APM_-_PayCash.png" alt="PayCash UI built with the information in the example above." align="center" caption="PayCash UI built with the information in the example above." />

## SoyFRI

SoyFRI is a wallet payment method in Guatemala that allows users to approve a merchant payment request directly from the SoyFRI app. Users receive a push notification, open the SoyFRI app, review the pending payment, enter their security PIN, choose the funds origin, and confirm the transaction.

### Capabilities

|                                    | SoyFRI     |
| :--------------------------------- | :--------- |
| **Min. amount**                    | 1 GTQ      |
| **Max. expiration time supported** | 15 days    |
| **Daily limit**                    | GTQ 10,000 |
| **Notification delay**             | Immediate  |
| **Refunds**                        | No         |
| **Flow**                           | `REDIRECT` |

### Request parameters

| Property              | Type   | Description                                                                                                                                       | Mandatory? |
| :-------------------- | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------ | :--------- |
| `amount`              | Number | Amount to be charged.                                                                                                                             | Yes        |
| `currency`            | String | `GTQ`<br /><br />Transaction currency in [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217).                                                       | Yes        |
| `country`             | String | `GT`<br /><br />Transaction country in [ISO 3166](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes).                                  | Yes        |
| `payment_method_id`   | String | `FR`<br /><br />ID of the selected payment method.                                                                                                | Yes        |
| `payment_method_flow` | String | `REDIRECT`                                                                                                                                        | Yes        |
| `payer.name`          | String | Name of the payer.                                                                                                                                | Yes        |
| `payer.phone`         | String | Phone number of the payer. **Required to deliver the payment request to the user's SoyFRI account.**                                              | Yes        |
| `payer.document`      | String | Document of the payer.                                                                                                                            | No         |
| `payer.email`         | String | Email of the payer.                                                                                                                               | No         |
| `order_id`            | String | Merchant reference for the payment.                                                                                                               | No         |
| `description`         | String | Description of the purchase.                                                                                                                      | No         |
| `callback_url`        | String | Optional callback URL. There is currently no automatic return-URL behavior in the SoyFRI UX; users must manually switch back to the merchant app. | No         |
| `notification_url`    | String | Notifications will be sent on every status change to the `notification_url` specified by the merchant.                                            | No         |

### Examples

[block:html]
{
  "html": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n  <meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n  <title>URL Selector with Opacity</title>\n  <style>\n    .url-container {\n      display: flex;\n      align-items: center;\n      border-radius: 16px;\n      background-color: #fff;\n      padding: 10px;\n      box-shadow: 0 0 0px 1px #F5F5F5;\n      box-sizing: border-box;\n      border-color: transparent;\n      margin-top: 20px;\n      margin-bottom: 20px;\n      gap: 10px;\n      width: 100%;\n    }\n    \n         [data-color-mode=\"dark\"] .url-container {\n      background-color: #F7F7F7;\n    }\n\n    .url-container .url-selector {\n      display: none;\n    }\n\n    .url-container label {\n      padding: 5px 5px;\n      border: 1px solid #ccc;\n      border-radius: 8px;\n      font-size: 11px;\n      color: #333;\n      background-color: #f9f9f9;\n      cursor: pointer;\n      transition: opacity 0.3s ease;\n    }\n\n    /* Reduce opacity for unselected labels */\n    #base-a:not(:checked) ~ label[for=\"base-a\"],\n    #sandbox-a:not(:checked) ~ label[for=\"sandbox-a\"] {\n      opacity: 0.5;\n    }\n\n    .url-container .pill-button {\n      border: none;\n      box-shadow: var(--box-shadow-pill);\n      background-color: #0171c2;\n      color: white;\n      padding: 5px 15px;\n      font-size: 14px;\n      border-radius: 25px;\n      text-transform: uppercase;\n      cursor: default; /* Cambia el cursor para indicar que no es clickeable */\n      text-shadow: 1px 1px 0 #0168b3, 0 1px 0 #0168b3, 1px 0 0 #0168b3;\n      margin-left: 5px;\n      white-space: nowrap !important;\n    }\n\n\n    .url-input {\n      display: none;\n      flex-grow: 1; /* Permitir que el input ocupe todo el espacio disponible */\n    }\n\n    #base-a:checked ~ .url-input[data-url=\"base-a\"],\n    #sandbox-a:checked ~ .url-input[data-url=\"sandbox-a\"] {\n     display: block;\n    }\n\n    .url-input input {\n      width: 100%;\n      border: none;\n      outline: none;\n      flex-grow: 1;\n      border-radius: 8px;\n      padding: 5px;\n      font-size: 12px;\n      color: #333;\n      user-select: all;\n    }\n\n    .url-input input:focus {\n      outline: 1px solid #F5F5F5;\n      border-radius: 16px;\n    }\n    \n\n/* Mobile-specific styles */\n@media screen and (max-width: 768px) {\n.url-container {\n    display: flex;\n    align-items: center;\n    flex-wrap: wrap; \n    width: 100%; \n    max-width: 100%; \n    box-sizing: border-box; \n}\n  \n.url-input input {\n    border: none;\n    outline: none;\n    border-radius: 8px;\n    padding: 5px;\n    font-size: 12px;\n    color: #333;\n    user-select: all;\n    width: 100%; /* Ocupa todo el ancho disponible */\n    max-width: 100%; /* No permite desbordarse */\n}\n}\n  </style>\n</head>\n<body>\n  <div class=\"url-container\">\n    <!-- Botón visual -->\n    <div class=\"pill-button\">Post</div>\n    \n    <!-- Radio inputs for URL options -->\n    <input id=\"base-a\" type=\"radio\" name=\"url\" class=\"url-selector\" checked>\n    <label for=\"base-a\">Production URL</label>\n    <input id=\"sandbox-a\" type=\"radio\" name=\"url\" class=\"url-selector\">\n    <label for=\"sandbox-a\">Sandbox URL</label>\n\n    <!-- URL Display (readonly inputs) -->\n    <div class=\"url-input\" data-url=\"base-a\">\n      <input type=\"text\" readonly value=\"https://api.dlocal.com/payments\">\n    </div>\n    <div class=\"url-input\" data-url=\"sandbox-a\">\n      <input type=\"text\" readonly value=\"https://sandbox.dlocal.com/payments\">\n    </div>\n  </div>\n</body>\n</html>"
}
[/block]

```json Request
{
    "amount": 100,
    "currency": "GTQ",
    "country": "GT",
    "payment_method_id": "FR",
    "payment_method_flow": "REDIRECT",
    "payer": {
        "name": "carlossh",
        "phone": "22222222",
        "email": "janedoe@mymail.com",
        "document": "1234567890123"
    },
    "order_id": "34545sk3483kqw0",
    "description": "test-101",
    "callback_url": "http://merchantsite.com/success_page",
    "notification_url": "http://merchantsite.com/notification/new"
}
```
```json Response
{
    "id": "R-4-g1l9h2d5-2hpsp1qfql6prb-r0k7984ol1ig",
    "amount": 100,
    "currency": "GTQ",
    "payment_method_id": "FR",
    "payment_method_type": "BANK_TRANSFER",
    "payment_method_flow": "REDIRECT",
    "country": "GT",
    "created_date": "2026-09-02T20:40:05.000+0000",
    "status": "PENDING",
    "status_detail": "The payment is pending.",
    "status_code": "100",
    "order_id": "34545sk3483kqw0",
    "redirect_url": "https://pay.dlocal.com/collect/pay/",
    "description": "test-101"
}
```
```json Notification
{
    "id": "R-4-9f359a37-621c-423b-b552-6d464fe890dd",
    "amount": 100,
    "status": "PAID",
    "status_detail": "The payment was paid.",
    "status_code": "200",
    "currency": "GTQ",
    "country": "GT",
    "payment_method_id": "FR",
    "payment_method_type": "TICKET",
    "payment_method_flow": "REDIRECT",
    "payer": {
        "name": "carlossh",
        "phone": "22222222"
    },
    "order_id": "34545sk3483kqw0",
    "description": "test-101",
    "notification_url": "http://merchantsite.com/notification/new",
    "created_date": "2025-06-11T13:13:54.634Z"
}
```

### UI guidelines<br />

![](https://files.readme.io/d8deb6d18a9aece1a07bf3b98c3ad8763fb97e7a5dc1a8b6d9c7e4d6e5b8fbc3-GT_-_FR_-_SoyFri_-_UX_Flow_1.png)

<br />

<Callout icon="📘" theme="info">
  ### **SoyFRI payment flow**

  SoyFRI delivers the payment request to the user via push notification in the SoyFRI app. There is no automatic return URL after the user confirms payment; the user must manually switch back to the merchant app or page. The `payer.phone` value must match the phone number or username registered in the user's SoyFRI account for the payment request to be delivered correctly.
</Callout>