> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.supay.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.supay.dev/_mcp/server.

# 9 · Moneda Extranjera

Compra y venta de divisa, sin crédito fiscal. La cabecera describe la
**operación cambiaria**; sin detalle sectorial.

## Cabecera (`data`)

| Campo                       | Tipo   | Obligatorio | Qué significa                    |
| --------------------------- | ------ | ----------- | -------------------------------- |
| `codigo_tipo_operacion`     | int    | No          | Tipo de operación cambiaria      |
| `tipo_cambio_oficial`       | number | No          | Tipo de cambio oficial aplicado  |
| `ingreso_diferencia_cambio` | number | No          | Ingreso por diferencia de cambio |

## Detalle (`items[].data`)

Sin campos sectoriales.

#### SDK TypeScript

```typescript
const factura = await supay.invoices.emit({
  point_of_sale_id: pos.id,
  customer: {
    document_type: "ci",
    document_number: "6677889",
    name: "Cliente Divisa",
  },
  items: [
    {
      sku: "USD-VENTA",
      description: "Venta USD 1.000",
      codigo_producto_sin: 5412100,
      unidad_medida: 58,
      quantity: 1000,
      price: 6.96,
    },
  ],
  sector: "9",

  // La operación cambiaria en cabecera
  data: {
    codigo_tipo_operacion: 1,
    tipo_cambio_oficial: 6.96,
    ingreso_diferencia_cambio: 0,
  },
});
```

#### REST API

```bash
curl -s -X POST "$BASE/v1/invoices/emit" \
  -H "X-API-Key: $KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "point_of_sale_id": "'$POS'",
    "customer": {
      "document_type": "ci",
      "document_number": "6677889",
      "name": "Cliente Divisa"
    },
    "items": [
      {
        "sku": "USD-VENTA",
        "description": "Venta USD 1.000",
        "codigo_producto_sin": 5412100,
        "unidad_medida": 58,
        "quantity": 1000,
        "price": 6.96
      }
    ],
    "sector": "9",
    "data": {
      "codigo_tipo_operacion": 1,
      "tipo_cambio_oficial": 6.96
    }
  }' | jq '{id, status}'
```