RecaSmart
Docs

API Reference.

Todo lo que necesitas para integrar y escalar tus pagos en Latam. Una sola API, tres países, cero fricción.

ARG · BRA · PRY
HMAC-SHA256
REST API + SDK
Transferencias · PIX · Tarjeta
¿Integrás con IA? Apuntá a tu agente arecasmart.online/llms.txt
SDK Oficial
npm

De cero a cobrando en 5 líneas

@recasmart/sdk es la forma recomendada de integrar. TypeScript, cero dependencias, corre en Node 18+, Next.js, Edge, Cloudflare Workers, Deno y Bun.
  • Idempotencia automática: cada POST lleva una Idempotency-Key estable entre reintentos. Un corte de red nunca duplica un cobro.
  • Errores que se explican solos: cada error trae un hint con la acción concreta para resolverlo.
  • Webhooks verificados en una línea: constructEvent() valida la firma HMAC y la ventana anti-replay.
  • Tres países, un código: la moneda elige el riel — ARS→CVU, BRL→PIX, PYG→tarjeta o QR (Bancard). Y en los tres hay QR interoperable: interoperable_qr_data (string cruda) y qr_image (PNG base64 listo para <img src> o pantallas de máquinas) en cada checkout.
¿Estás integrando con Claude Code o Cursor?
Apuntá a tu agente a https://recasmart.online/llms.txt — es este mismo contrato en formato optimizado para que el modelo escriba la integración correcta al primer intento. También hay un servidor MCP oficial (ver la sección MCP).
import { RecaSmart } from "@recasmart/sdk";

const reca = new RecaSmart(); // lee RECASMART_API_KEY

const checkout = await reca.checkouts.create({
  amount: 15000,
  description: "Plan Pro - Marzo",
  external_reference: "order_1234",
});

// Redirigí al pagador acá:
console.log(checkout.payment_url);
Autenticación

Bearer Token

Todas las requests requieren tu API Key en el header Authorization. Obtén tus claves en el Panel → Configuración → API Keys.
sk_live_...Producción — transacciones reales
sk_test_...Sandbox — sin movimientos reales
El sandbox no requiere KYC
Al registrarte recibís una API key sk_test_ lista para usar: podés integrar y probar punta a punta (incluidos los webhooks reales, con /simulate) sin verificación previa. El KYC se exige recién para operar en producción con sk_live_. El código es idéntico: cambiar de ambiente es cambiar la key.
Seguridad
Nunca expongas tus API keys de Producción en el frontend. Solo úsalas desde tu servidor (backend-to-backend). Las keys inválidas o expiradas retornarán 401 Unauthorized.
Motor de Retenciones
El cálculo e impacto de retenciones impositivas aplica únicamente en el entorno de Producción. Transaccionar con API Keys sk_test_... en Sandbox no generará impacto fiscal ni retenciones a la AFIP/IIBB reales.
curl -X POST "https://recasmart.online/api/public/checkout/create" \
  -H "Authorization: Bearer sk_live_abc123..." \
  -H "Content-Type: application/json" \
  -d '{ "amount": 1500 }'
Crear Checkout
POST

Crear Orden de Cobro

POST/api/public/checkout/create
Genera una orden de cobro con un link de pago y/o CVU variable para recibir transferencias. Si usás currency: "BRL", se genera automáticamente un QR de PIX.
ParámetroTipoDescripción
amount*numberMonto a cobrar. Mín 1; máx 10M (ARS/USD/BRL) o 100M (PYG, solo enteros)
currencystringARS (default), USD, BRL o PYG. La moneda elige el riel: BRL→PIX, PYG→tarjeta
payment_methodstringOpcional: "qr" fuerza el riel QR del país (en PYG usa Bancard QR Express en vez de tarjeta)
description*stringDescripción del cobro (3-500 chars)
payment_methodstring"transfer" o "pix". Auto si BRL
external_referencestringTu ID interno de orden (alfanumérico, -, _)
itemsarrayArray de items (suma = amount)
customerobject{ name, email, document }
webhook_urlstringURL para notificaciones de este checkout
success_urlstringRedirigir al pagar exitosamente
failure_urlstringRedirigir si falla el pago
expires_in_hoursnumberExpiración en horas (1-720, default: 72)
Validación Automática
Si envías items, la suma de los montos debe coincidir con amount. La API valida con tolerancia de centavos.
import { RecaSmart } from "@recasmart/sdk";

const reca = new RecaSmart(); // lee RECASMART_API_KEY

// El SDK genera la Idempotency-Key automáticamente
const checkout = await reca.checkouts.create({
  amount: 1500.50,
  currency: "ARS",
  description: "Plan Premium mensual",
  external_reference: "ORDER_123",
  webhook_url: "https://tu-sitio.com/webhook",
});

console.log(checkout.payment_url);
Listar Checkouts
GET

Consultar Órdenes

GET/api/public/checkouts
Lista todas las órdenes de pago de tu comercio con filtrado avanzado y paginación. Solo retorna checkouts de tu merchant.
ParámetroTipoDescripción
statusstringpending, completed, failed, expired
external_referencestringBuscar por tu referencia externa
start_dateISO 8601Fecha inicio (ej: 2026-01-01T00:00:00Z)
end_dateISO 8601Fecha fin
limitnumber1-100 (default: 50)
offsetnumberPara paginación (default: 0)
curl "https://recasmart.online/api/public/checkouts?status=pending&limit=20" \
  -H "Authorization: Bearer sk_live_..."
Estado de Checkout
GET

Consultar Estado

GET/api/public/checkout/{checkoutId}/status
Consulta el estado actual de un checkout por su ID. Si el checkout expiró pero aún figura como PENDING, la API lo actualiza automáticamente a EXPIRED.
PENDING
COMPLETED
FAILED
EXPIRED
No requiere API Key. Este endpoint es público para que tu frontend pueda hacer polling del estado del pago.
curl "https://recasmart.online/api/public/checkout/14b1abb3-1458-4f3d-8740-83e457a4596e/status"
Intent de Pago
POST

Iniciar Intento de Pago

POST/api/public/checkout/{checkoutId}/intent
Crea un intento de pago dentro de un checkout existente. Cada intento genera una nueva transacción. Si el método es pix, la API genera automáticamente un QR de PIX con conversión ARS→BRL al tipo de cambio actual.
ParámetroTipoDescripción
method*string"transfer" o "pix"
customerEmailstringEmail del cliente pagador
Conversión Automática
Si el checkout es en ARS y el intent es PIX, la API consulta el tipo de cambio vía dolarapi.com y genera el PIX en BRL al valor actual.
curl -X POST "https://recasmart.online/api/public/checkout/14b1abb3-1458-4f3d-8740-83e457a4596e/intent" \
  -H "Content-Type: application/json" \
  -d '{
    "method": "pix",
    "customerEmail": "[email protected]"
  }'
Generación Masiva de Facturas (B2B)
POST

Crear Lote de Facturas

POST/api/public/invoices/bulk
Genera miles de facturas y QRs interoperables de una sola vez sin demoras. Soporta hasta 5000 registros por petición.
ParámetroTipoDescripción
invoices*arrayArray de objetos factura. (Alternativa: mandar el Array plano en el body)
invoice.amount*numberMonto del primer vencimiento
invoice.first_due_dateISO 8601Fecha de vencimiento (default: +30 días)
invoice.second_amountnumberMonto si se cobra en el segundo vencimiento
invoice.second_due_dateISO 8601Fecha del segundo vencimiento
invoice.external_referencestringID de tu factura/cliente para fácil reconciliación
invoice.currencystringMoneda (default: ARS)
  • Límite Seguro (5000): Prevención estricta contra latencia de base de datos interrumpiendo procesamientos que excedan el límite por payload.
  • Magia QR CRUDA: El retorno de interoperable_qr_data permite imprimir directamente en papel para escaneo MODO MercadoPago nativo sin apps intermediarias.
curl -X POST "https://recasmart.online/api/public/invoices/bulk" \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '[
      {
        "amount": 15000.00,
        "first_due_date": "2026-04-10T23:59:59Z",
        "currency": "ARS"
      }
  ]'
Misión Especial: PIX

Cobrar con PIX

RecaSmart es el puente para cobrar en Brasil. Al usar currency: "BRL", se genera un QR PIX dinámico Copy & Paste automáticamente.
  • Liquidación en ARS o USD a tu cuenta local.
  • Conciliación automática vía Webhook en milisegundos.
  • Conversión automática ARS → BRL al tipo de cambio actual.
Doble Moneda
También podés crear checkouts en ARS y luego generar un intent PIX: la API convierte automáticamente.
curl -X POST "https://recasmart.online/api/public/checkout/create" \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 100.00,
    "currency": "BRL",
    "payment_method": "pix",
    "description": "Venda Teste PIX",
    "customer": {
      "name": "Cliente Brasil",
      "email": "[email protected]"
    }
  }'
Paraguay: Tarjeta y QR vía Bancard
NUEVO

Cobrar en Paraguay

Con currency: "PYG" el cobro se procesa vía Bancard, el procesador local, en dos modalidades: tarjeta (default — formulario seguro embebido en tu payment_url; los datos nunca pasan por RecaSmart) o QR interoperable con payment_method: "qr" — un QR dinámico que el pagador escanea desde la app de más de 25 entidades. Con QR, la respuesta incluye interoperable_qr_data (string EMVCo cruda) y qr_image (imagen PNG en base64): tu máquina o caja la muestra con un simple <img src=qr_image>, sin librerías de QR. El mismo par también lo devuelve GET /status mientras la orden esté pendiente — ideal si la pantalla se reinicia.
  • Mismo código, otro país: solo cambia la moneda. El webhook checkout.completed es idéntico al de Argentina y Brasil.
  • Montos enteros: el guaraní no tiene centavos. 150000.50 devuelve 400.
  • Sin CVU: en este riel cvu viene null — no hay transferencia, hay tarjeta.
  • Sandbox completo: con sk_test_ el flujo se prueba con /simulate, igual que los demás rieles.
Suscripciones en PYG
Todavía no disponibles: los planes aceptan ARS, USD y BRL. El cobro recurrente en guaraníes requiere tokenización de tarjetas (catastro Bancard), que está en el roadmap.
import { RecaSmart } from "@recasmart/sdk";
const reca = new RecaSmart();

// PYG → tarjeta vía Bancard, automático
const checkout = await reca.checkouts.create({
  amount: 150000, // guaraníes, solo enteros
  currency: "PYG",
  description: "Plan Pro - Paraguay",
  external_reference: "order_py_001",
});

// checkout.cvu es null en este riel:
// el pagador paga con tarjeta en payment_url
console.log(checkout.payment_url);
Máquinas y Cajas (POS)
NUEVO

Cobrar en máquinas físicas

POST/api/public/pos/[posId]/checkout
El riel para todo lo que hoy cobra en efectivo: máquinas de vending, líneas de caja de supermercado, kioscos de autoservicio, dispensers, tragamonedas. La máquina manda la intención de pago, recibe qr_image listo para su pantalla, y despacha cuando el estado pasa a completed. Funciona en los 3 países con el mismo código: currency elige el riel (ARS→Transferencias 3.0, BRL→PIX, PYG→Bancard QR).
  • Device keys: cada terminal lleva su propia key atada a ella (se emite desde el dashboard o vía POST /api/private/pos/:id/device-key, con rotación automática). Si una máquina se compromete, revocás esa key sola — la flota sigue cobrando.
  • Un QR vigente por terminal: cada intención nueva expira la anterior — la pantalla nunca muestra un QR viejo cobrable.
  • TTL corto: el QR vive 5 minutos por default (expires_in_seconds, 60–3600). El polling de estado es público: la máquina no expone su key para consultar.
  • Confirmación en segundos: como alternativa al polling, el webhook checkout.completed firmado llega al backend del operador — útil para flotas con backend central que comanda las máquinas.
  • Sucursales: cada terminal tiene store_branch — las liquidaciones y el dashboard agrupan por sucursal, ideal para cadenas de supermercados.
# La máquina (vending, caja de súper, kiosco)
# pide su QR con su DEVICE KEY:
curl -X POST "https://recasmart.online/api/public/pos/POS_ID/checkout" \
  -H "Authorization: Bearer sk_test_DEVICE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 12000,
    "currency": "PYG",
    "description": "Coca-Cola 500ml",
    "external_reference": "vend12-slot4",
    "expires_in_seconds": 300
  }'
Generación Masiva (Lotes B2B)
POST

Emisión Masiva de QRs Interoperables

POST/api/public/invoices/bulk
Envía un lote de hasta 5,000 registros para generar de forma determinista y offline todos los strings EMVCo o PIX necesarios para tus facturas físicas, sin tiempos de latencia HTTP externos por cada registro.
  • QR Físico (interoperable_qr_data): El payload crudo que debes usar para que la imprenta grabe un QR cuadrado en tus facturas físicas de papel o PDFs. Un cliente podrá escanearlo y abonar nativamente sin fricción.
  • Fallback/Link (recasmart_url): Ideal para incrustar un botón "Pagar Ahora" en el PDF o correo electrónico si no pueden escanear el QR físico con su cámara. Llevándolos al Magic Checkout.
  • Doble Vencimiento e Intereses: Al declarar second_amount, tanto el QR físico nativo como el Web URL exigen el segundo importe automáticamente si el cliente intenta pagar en mora (después del first_due_date).
curl -X POST "https://recasmart.online/api/public/invoices/bulk" \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "invoices": [
      {
        "amount": 15000.00,
        "first_due_date": "2026-04-10T23:59:59Z",
        "second_amount": 17500.00,
        "second_due_date": "2026-04-20T23:59:59Z",
        "external_reference": "FACT-10023",
        "currency": "ARS"
      }
    ]
  }'
Magic Checkout (UI Embed)

Embeber Checkout

Incrusta nuestra interfaz optimizada para conversión directamente en tu sitio web. Sin redirecciones, sin fricción.
Experiencia de Clase Mundial (DX)
El script magic.js crea un IFRAME seguro superpuesto en tu tienda. Cuando el usuario escanea el QR o el PIX y paga con éxito, nuestro motor en tiempo real detecta el pago instantáneamente y dispara el evento onSuccess en tu frontend.
  • Conversión: El cliente nunca abandona tu sitio.
  • PIX & Transferencias: Generación dinámica de QR en iframe.
<!-- 1. Agrega el script en tu <head> -->
<script src="https://recasmart.online/sdk/js/magic.js"></script>

<!-- 2. Abre el checkout cuando el cliente haga clic en Pagar -->
<script>
  window.RecaSmart.openCheckout({
    checkoutId: "14b1abb3-1458-...", // ID generado en tu backend
    onSuccess: (data) => {
      console.log("¡Pago exitoso!", data);
      window.location.href = "/gracias";
    },
    onClose: () => {
      console.log("El cliente cerró el modal");
    }
  });
</script>
Transactions API
GET

Consulta de Transacciones

GET/api/public/transactions
GET/api/public/transactions/{id}
Lista o consulta transacciones individuales. El UUID de cada transacción es visible en el dashboard (columna ID API) y en el comprobante de pago.
ParámetroTipoDescripción
statusstringPENDING, COMPLETED, FAILED
start_datedateFormato YYYY-MM-DD
end_datedateFormato YYYY-MM-DD
limitnumberDefault: 50
offsetnumberPara paginación (default: 0)
curl "https://recasmart.online/api/public/transactions?status=COMPLETED&start_date=2026-01-01&end_date=2026-02-01&limit=20" \
  -H "Authorization: Bearer sk_live_..."
Settlements (Liquidaciones)
GET

Gestión de Liquidaciones

GET/api/public/settlements
GET/api/public/settlements/{id}
Accede a los reportes de liquidación de tu comercio. Las liquidaciones incluyen detalle de comisiones, monto bruto, neto, y fecha de payout.
ParámetroTipoDescripción
start_dateYYYY-MM-DDFecha inicio de payout (ej: 2026-01-01)
end_dateYYYY-MM-DDFecha fin de payout (ej: 2026-02-28)
limitnumberDefault: 20
offsetnumberPara paginación (default: 0)
Puntos Clave
  • Conciliación bancaria automatizada
  • Detalle de comisiones e impuestos
  • Historial completo de payouts
  • Ordenadas por fecha de payout (más reciente primero)
curl "https://recasmart.online/api/public/settlements?limit=10" \
  -H "Authorization: Bearer sk_live_..."
Suscripciones — Cobros Recurrentes
NUEVO

Cobros Recurrentes

Automatiza tus cobros sin intervención manual. Cada período el sistema genera un link de pago, notifica al cliente por email y dispara el webhook correspondiente.
Cuándo Usarlo
  • SaaS y software: licencia mensual/anual sin recordatorios manuales.
  • Membresías y gimnasios: cuota mensual automática.
  • Servicios profesionales: honorarios recurrentes o retainers.
  • Planes a medida: bimestral, trimestral, anual — cualquier intervalo.
Endpoints
POST/api/public/subscriptions/plans
GET/api/public/subscriptions/plans
POST/api/public/subscriptions/create
GET/api/public/subscriptions
GET/api/public/subscriptions/{id}
POST/api/public/subscriptions/{id}/cancel
Parámetros del Plan
ParámetroTipoDescripción
name*stringNombre del plan (2-100 chars)
amount*numberMonto a cobrar por período
currencystringARS (default), USD, BRL
interval_unitstring"month" (default) o "day"
interval_countnumberCada cuántos intervalos. Default: 1
trial_period_daysnumberDías de prueba gratis (0-90)
grace_period_daysnumberDías antes de pasar a past_due (0-30, default: 3)
descriptionstringDescripción del plan
Parámetros de Suscripción
ParámetroTipoDescripción
plan_id*UUIDID del plan al que se suscribe
customer.name*stringNombre del suscriptor
customer.email*stringEmail para notificaciones de cobro
customer.external_idstringTu ID interno del cliente
external_referencestringTu referencia de suscripción
webhook_urlstringURL para webhooks de esta suscripción
trial_period_daysnumberSobreescribe días de prueba del plan
Estados de la Suscripción
pendingEsperando primer pago
trialingEn período de prueba
activeAl corriente de pagos
past_duePago vencido, en gracia
cancelledCancelada
expiredExpirada
Webhooks de Suscripción
subscription.createdNueva suscripción registrada
subscription.activatedPrimer pago confirmado
subscription.renewedNuevo período generado
subscription.payment_succeededCuota pagada con éxito
subscription.payment_failedCuota no cobrada
subscription.past_duePasó al período de gracia
subscription.cancelledSuscripción cancelada
Portal del Cliente
Cada suscripción incluye una customer_portal_url donde el cliente puede ver el estado, historial de cobros y pagar cuotas pendientes — sin intervención tuya.
Intervalos Soportados
month / 1Mensual
month / 3Trimestral
month / 12Anual
day / 7Semanal
curl -X POST "https://recasmart.online/api/public/subscriptions/plans" \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Plan Mensual Pro",
    "description": "Acceso completo a la plataforma",
    "amount": 5000,
    "currency": "ARS",
    "interval_unit": "month",
    "interval_count": 1,
    "trial_period_days": 7,
    "grace_period_days": 3
  }'
Notificaciones en Tiempo Real

Webhooks Firmados

Recibe notificaciones POST automáticas en tu servidor. Los webhooks son la forma recomendada de sincronizar tu backend.
Eventos Disponibles
Éxitocheckout.completed
Fallocheckout.failed
Expiradocheckout.expired
Ordenorder.completed
Reembolsorefund.created
Orden Falloorder.failed
ParámetroTipoDescripción
checkout_id*stringID del checkout
transaction_id*stringID de la transacción
status*stringCOMPLETED / FAILED / EXPIRED
amount*numberMonto cobrado
currency*stringARS / USD / BRL / PYG
external_reference*stringTu ID de orden
paid_at*stringFecha de pago (ISO 8601)
timestamp*stringFecha del evento
Reintentos Automáticos

Si tu servidor responde con un código distinto a 2xx:

1 min → 2 min → 4 min → 1 hora (máx. 4 intentos)

{
  "type": "checkout.completed",
  "data": {
    "checkout_id": "14b1abb3-1458-4f3d-8740-83e457a4596e",
    "transaction_id": "a3f8c2d1-9b7e-4f3a-bc21-5d8e1f2a9c4b",
    "status": "COMPLETED",
    "amount": 1500.50,
    "currency": "ARS",
    "external_reference": "ORDER_123",
    "paid_at": "2026-02-19T12:05:22Z"
  },
  "timestamp": "2026-02-19T12:05:23Z"
}
Seguridad de Webhooks

Verificar Firma HMAC

Cada webhook incluye una firma HMAC-SHA256 para validar autenticidad.
Headers de Seguridad
X-RecaSmart-Signaturesha256=firma_hmac
X-RecaSmart-TimestampUnix timestamp
Best Practices
  • Verificá sobre el body CRUDO — re-serializar el JSON parseado reordena las claves y rompe la firma. Es la causa #1 de "firma inválida".
  • Verifica la firma antes de procesar el webhook
  • Rechaza timestamps > 5 minutos (replay attack)
  • Responde 200 OK inmediatamente, procesa async
  • Tu endpoint debe ser idempotente
Webhook Secret
Tu clave secreta está en Panel → Configuración → API Keys. Nunca la expongas en tu frontend.
import { constructEvent } from "@recasmart/sdk";

// Next.js App Router
export async function POST(req: Request) {
  const body = await req.text(); // ← CRUDO, sin parsear

  // Valida firma + ventana anti-replay.
  // Lanza WebhookSignatureError si no valida.
  const event = await constructEvent(
    body,
    req.headers,
    process.env.RECASMART_WEBHOOK_SECRET!
  );

  if (event.type === "checkout.completed") {
    await activarCuenta(event.data.external_reference);
  }
  return new Response("ok");
}
Plugins & E-commerce

E-commerce. Sin código.

Si usas plataformas de e-commerce, no necesitas escribir código. Usa nuestros plugins oficiales para integrar RecaSmart en minutos.

WooCommerce

Soporte nativo para checkout, gestión de órdenes y webhooks automáticos. Compatible con HPOS.

Descargar Plugin

Tiendanube

Integración oficial por OAuth2. Habilita transferencias y PIX en tu tienda en 3 clics.

Conectar Tienda
1. Descarga el plugin ZIP desde nuestro portal.
2. En WordPress: Plugins → Añadir nuevo → Subir.
3. Configuración: Ingresa tu API Key y Webhook Secret.
4. Verifica el endpoint de webhook: ?wc-api=recasmart
Integración con IA (MCP)
NUEVO

RecaSmart MCP Server

Primera plataforma de pagos Latam con soporte MCP
@recasmart/mcp le da a tu asistente de IA la capacidad de integrar y probar cobros por vos: crea checkouts, simula pagos en sandbox, verifica que tu webhook los reciba y diagnostica firmas inválidas. Elegí tu herramienta en las pestañas de la derecha → el JSON es el mismo en todas, solo cambia dónde va el archivo.
¿Ya tenés cuenta? Conectá en 1 click.
Desde el dashboard generamos tu credencial sandbox y te damos el snippet listo para pegar — sin editar JSON a mano.
Conectar IA →
Requisitos y notas
  • Atajo total: npx @recasmart/mcp init crea la credencial sandbox desde tu cuenta (autorizás en el navegador) y configura tu cliente en un solo paso.
  • Node 18+ instalado (el server corre con npx, no hay que instalar nada más).
  • Usá una key sk_test_: el sandbox no requiere KYC y el agente puede simular pagos libremente.
  • En Windows, si el cliente no encuentra npx, usá "command": "cmd", "args": ["/c", "npx", "-y", "@recasmart/mcp"].
  • Para verificar la conexión, pedile al agente: "llamá a recasmart_status" — te dice ambiente y permisos.
  • Cualquier otro cliente MCP funciona con el mismo bloque mcpServers.
  • Sin API key: desde claude.ai conectás el MCP como custom connector y autorizás con tu cuenta (OAuth). Ver la pestaña claude.ai (OAuth).
Conectar sin API key (OAuth 2.1)

El MCP remoto es también un authorization server: implementa el descubrimiento de RFC 9728, registro dinámico de clientes (RFC 7591) y authorization code con PKCE. Alcanza con darle https://recasmart.online/api/mcp a un cliente compatible: te va a mandar a una pantalla de consentimiento donde ves qué permisos pide y con qué cuenta los estás dando.

  • Cada app conectada recibe su propia credencial sandbox; nunca ve una key de producción.
  • Si tenés 2FA activo, el consentimiento te pide el código igual que crear una key a mano.
  • Se corta desde Developers → API Keys, revocando la key MCP – <app> (OAuth).
13 herramientas
🔧 Operar
recasmart_create_checkout, recasmart_get_checkout, recasmart_list_checkouts, recasmart_simulate_payment, recasmart_list_transactions, recasmart_create_plan, recasmart_list_plans, recasmart_create_subscription, recasmart_list_subscriptions, recasmart_cancel_subscription
📚 Contexto y diagnóstico
recasmart_api_reference (el contrato completo, para que el modelo no invente campos), recasmart_status, recasmart_debug_webhook
🛡️ Guardrails
Con sk_test_ todo está habilitado (no hay plata real). Con sk_live_ las escrituras se bloquean salvo RECASMART_ALLOW_LIVE=true — y simular pagos nunca funciona en producción.
# Un solo comando desde tu proyecto:
claude mcp add recasmart \
  -e RECASMART_API_KEY=sk_test_... \
  -- npx -y @recasmart/mcp

# O compartilo con tu equipo versionando .mcp.json
# en la raíz del repo:
# {
#   "mcpServers": {
#     "recasmart": {
#       "command": "npx",
#       "args": ["-y", "@recasmart/mcp"],
#       "env": { "RECASMART_API_KEY": "sk_test_..." }
#     }
#   }
# }

Seguridad y Aislamiento

Multi-tenancy robusto y protección de datos

Aislamiento de Organización

Cada request es validado a nivel de middleware. El merchant_id se deriva del hash SHA-256 de tu API Key, asegurando que tus consultas jamás puedan acceder a datos de otra organización.

Hashing de Keys

No guardamos tus API Keys en texto plano. Almacenamos únicamente el hash irrevertible, protegiéndote incluso en caso de una filtración de base de datos.

Firma de Webhooks

Cada notificación enviada por RecaSmart viaja firmada con HMAC-SHA256 usando tu webhook_secret personal, garantizando autenticidad e integridad.

Conformidad Regional

Nuestros sistemas cumplen con normativas de protección de datos personales de Argentina, Brasil y Paraguay, manejando la información sensible bajo estrictos estándares de seguridad. En cobros con tarjeta (Bancard), los datos de la tarjeta viven solo en el iframe del procesador: nunca tocan RecaSmart.

¿Listo para escalar tus cobros?

Únete a los cientos de comercios que ya están transformando sus finanzas con RecaSmart.