> ## Documentation Index
> Fetch the complete documentation index at: https://yn-c9bb3266.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Cash Vouchers

> Accept cash payments at retail locations across Latin America

## Overview

Cash voucher payment methods allow customers to pay for online purchases at physical retail locations using a reference code or printed voucher. These methods are critical in Latin America where a significant portion of the population is unbanked or prefers cash transactions.

Supported cash voucher methods:

* **Efecty** (Colombia) -- Payment at Efecty points and partner locations
* **PagoEfectivo** (Peru) -- CIP code for payment at banks and agents
* **Rapipago** (Argentina) -- Payment at Rapipago locations
* **Pago Facil** (Argentina) -- Payment at Pago Facil locations

<Note>
  For OXXO (Mexico), see the dedicated [OXXO guide](/guides/payment-methods/oxxo).
</Note>

## Efecty (Colombia)

### Overview

Efecty is Colombia's largest cash payment network with thousands of points of service across the country, including convenience stores, pharmacies, and dedicated Efecty locations.

### Requirements

| Field               | Value         | Description            |
| ------------------- | ------------- | ---------------------- |
| `country`           | `CO`          | Colombia only          |
| `amount.currency`   | `COP`         | Colombian Peso only    |
| `customer.email`    | Valid email   | Voucher delivery       |
| `customer.document` | `CC` or `NIT` | Colombian ID or tax ID |

### Creating an Efecty Payment

<CodeGroup>
  ```javascript Node.js theme={"theme":{"light":"github-dark","dark":"github-dark"}}
  const response = await fetch('https://api-sandbox.y.uno/v1/payments', {
    method: 'POST',
    headers: {
      'public-api-key': process.env.YUNO_PUBLIC_KEY,
      'private-secret-key': process.env.YUNO_PRIVATE_KEY,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      checkout_session: 'session-id',
      payment_method: { type: 'EFECTY' },
      amount: { currency: 'COP', value: 75000 },
      country: 'CO',
      customer: {
        email: 'cliente@example.com',
        first_name: 'Carlos',
        last_name: 'Rodriguez',
        document: {
          document_type: 'CC',
          document_number: '1234567890',
        },
      },
    }),
  });
  const payment = await response.json();
  ```

  ```python Python theme={"theme":{"light":"github-dark","dark":"github-dark"}}
  import requests

  response = requests.post(
      'https://api-sandbox.y.uno/v1/payments',
      headers={
          'public-api-key': YUNO_PUBLIC_KEY,
          'private-secret-key': YUNO_PRIVATE_KEY,
          'Content-Type': 'application/json',
      },
      json={
          'checkout_session': 'session-id',
          'payment_method': {'type': 'EFECTY'},
          'amount': {'currency': 'COP', 'value': 75000},
          'country': 'CO',
          'customer': {
              'email': 'cliente@example.com',
              'first_name': 'Carlos',
              'last_name': 'Rodriguez',
              'document': {
                  'document_type': 'CC',
                  'document_number': '1234567890',
              },
          },
      },
  )
  payment = response.json()
  ```
</CodeGroup>

### Efecty Response

```json theme={"theme":{"light":"github-dark","dark":"github-dark"}}
{
  "id": "pay_efecty_abc123",
  "status": "PENDING",
  "payment_method": {
    "type": "EFECTY",
    "cash_voucher": {
      "reference": "9876543210",
      "voucher_url": "https://provider.com/voucher/abc123.pdf",
      "expiration_date": "2026-03-03T23:59:59Z",
      "instructions": "Present this reference at any Efecty point"
    }
  }
}
```

## PagoEfectivo (Peru)

### Overview

PagoEfectivo generates a CIP (Codigo de Pago Interbancario) code that customers use to pay at banks, agents, and participating stores across Peru.

### Requirements

| Field                             | Value          | Description           |
| --------------------------------- | -------------- | --------------------- |
| `country`                         | `PE`           | Peru only             |
| `amount.currency`                 | `PEN`          | Peruvian Sol only     |
| `customer.email`                  | Valid email    | CIP code delivery     |
| `customer.document.document_type` | `DNI` or `RUC` | National ID or tax ID |

### PagoEfectivo Response

```json theme={"theme":{"light":"github-dark","dark":"github-dark"}}
{
  "id": "pay_pe_abc123",
  "status": "PENDING",
  "payment_method": {
    "type": "PAGOEFECTIVO",
    "cash_voucher": {
      "reference": "CIP-12345678",
      "voucher_url": "https://provider.com/cip/abc123.pdf",
      "expiration_date": "2026-03-03T23:59:59Z",
      "instructions": "Pay using CIP code at any bank or agent"
    }
  }
}
```

## Rapipago and Pago Facil (Argentina)

### Overview

Rapipago and Pago Facil are Argentina's two largest cash payment networks. They operate through thousands of payment points including convenience stores and dedicated service locations.

### Requirements

| Field                             | Value       | Description           |
| --------------------------------- | ----------- | --------------------- |
| `country`                         | `AR`        | Argentina only        |
| `amount.currency`                 | `ARS`       | Argentine Peso only   |
| `customer.email`                  | Valid email | Voucher delivery      |
| `customer.document.document_type` | `DNI`       | Argentine National ID |

### Creating a Payment

Use `RAPIPAGO` or `PAGO_FACIL` as the payment method type:

```json theme={"theme":{"light":"github-dark","dark":"github-dark"}}
{
  "checkout_session": "session-id",
  "payment_method": { "type": "RAPIPAGO" },
  "amount": { "currency": "ARS", "value": 5000 },
  "country": "AR",
  "customer": {
    "email": "cliente@example.com",
    "document": {
      "document_type": "DNI",
      "document_number": "12345678"
    }
  }
}
```

## Voucher Display and Customer Instructions

For all cash voucher methods, provide clear instructions to the customer:

1. **Show the reference code** prominently on the confirmation page
2. **Provide the voucher PDF link** for printing
3. **Include expiration date** so the customer knows the deadline
4. **List accepted payment locations** for the specific method

```html theme={"theme":{"light":"github-dark","dark":"github-dark"}}
<div class="voucher-instructions">
  <h3>Pay at any {method_name} location</h3>
  <p>Reference: <strong>{reference}</strong></p>
  <p>Amount: <strong>{amount} {currency}</strong></p>
  <p>Expires: <strong>{expiration_date}</strong></p>
  <a href="{voucher_url}">Download voucher PDF</a>
</div>
```

<Warning>
  Customers must pay the exact amount shown. Partial payments are not supported for cash vouchers. If the customer pays a different amount, the payment may fail to reconcile.
</Warning>

## Expiration Handling

Cash voucher expiration varies by method:

| Method       | Typical Expiration | Configurable      |
| ------------ | ------------------ | ----------------- |
| Efecty       | 24-48 hours        | Yes, via provider |
| PagoEfectivo | 24-72 hours        | Yes, via provider |
| Rapipago     | 24-72 hours        | Yes, via provider |
| Pago Facil   | 24-72 hours        | Yes, via provider |

After expiration, the payment status transitions to `EXPIRED` and the reference code becomes invalid.

## Settlement Timelines

| Method       | Country | Confirmation Time             | Settlement Time   |
| ------------ | ------- | ----------------------------- | ----------------- |
| Efecty       | CO      | Same day or next business day | 1-3 business days |
| PagoEfectivo | PE      | Same day or next business day | 1-3 business days |
| Rapipago     | AR      | Same day or next business day | 2-5 business days |
| Pago Facil   | AR      | Same day or next business day | 2-5 business days |

<Note>
  Cash voucher refunds are not supported through the API. If a refund is needed, it must be handled through a manual bank transfer to the customer.
</Note>

## Response Handling

### Synchronous Response

Cash voucher payments return `PENDING` status with voucher details:

```json theme={"theme":{"light":"github-dark","dark":"github-dark"}}
{
  "id": "pay_abc123",
  "status": "PENDING",
  "payment_method": {
    "type": "CASH_VOUCHER",
    "voucher": {
      "reference": "REF-1234567890",
      "barcode": "base64-encoded-barcode",
      "instructions": "Pay at any authorized store",
      "expiration": "2026-03-12T23:59:59Z"
    }
  }
}
```

### Webhook Events

| Event               | Status      | Action                                                 |
| ------------------- | ----------- | ------------------------------------------------------ |
| `payment.succeeded` | `SUCCEEDED` | Customer paid at store. Fulfill the order              |
| `payment.expired`   | `EXPIRED`   | Voucher expired. Notify customer or create new payment |

<Tip>
  Send the voucher reference via email and SMS to improve payment completion rates. Include the expiration date prominently so customers know their deadline.
</Tip>
