Desarrolladores

Construye con Baynoy

Una API REST con OpenAPI 3.1, claves de idempotencia y webhooks. SDKs tipados en JavaScript, Python, PHP, Ruby, Go y C#. Claves de sandbox listas en 30 segundos.

<150ms

Latencia API P50

99.95%

SLA de disponibilidad

6

SDKs oficiales

8

Eventos webhook

Inicio rápido

Crea tu primer cobro

Un POST, cualquier método de pago. Pasa Idempotency-Key en cada reintento — nunca cobrarás dos veces.

curl https://api.baynoy.com/v1/payments \
  -H "Authorization: Bearer sk_test_••••" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 4900,
    "currency": "USD",
    "methods": ["card","usdc"],
    "payout":  { "type": "bank", "currency": "USD" }
  }'

Verifica un webhook

Firmado, reintentado, reproducible

Cada evento está firmado con HMAC SHA-256 y se reintenta hasta 7 días con backoff exponencial. Reproduce cualquier entrega pasada desde el dashboard.

import crypto from "node:crypto";

export async function POST(req: Request) {
  const header = req.headers.get("Baynoy-Signature")!; // t=...,v1=...
  const body = await req.text();
  const { t, v1 } = Object.fromEntries(
    header.split(",").map((p) => p.split("=")),
  );
  const expected = crypto
    .createHmac("sha256", process.env.BAYNOY_WHSEC!)
    .update(`${t}.${body}`)
    .digest("hex");
  if (v1 !== expected) return new Response("bad signature", { status: 401 });
  const evt = JSON.parse(body); // evt.type === "payment.succeeded"
  return new Response("ok");
}

API REST

Llámala desde cualquier lenguaje

Baynoy es una API REST sencilla con autenticación Bearer — sin SDK que instalar. La misma petición funciona desde cualquier cliente HTTP.

cURL

curl https://baynoy.com/api/v1/payments \
  -H "Authorization: Bearer sk_live_..."

JavaScript / TypeScript

await fetch("https://baynoy.com/api/v1/payments", {
  headers: { Authorization: "Bearer sk_live_..." },
});

Python

requests.get(
  "https://baynoy.com/api/v1/payments",
  headers={"Authorization": "Bearer sk_live_..."},
)

Eventos webhook

Ocho tipos, una forma

payment.succeeded

Un pago se acreditó en tu saldo.

payment.failed

Un pago fue rechazado o expiró.

payment.refunded

Un reembolso se completó, total o parcial.

payout.paid

Un pago llegó a la cuenta o wallet de destino.

payout.failed

Un pago fue rechazado y revertido.

dispute.opened

Un tarjetahabiente abrió una disputa o chargeback.

customer.created

Un nuevo cliente fue añadido vía API o checkout.

invoice.paid

Una factura recurrente o única fue pagada.

Confiabilidad

Construido para mantenerse arriba

Despliegue multi-región detrás de Cloudflare, failover automático y paging 24/7 para nuestro SRE de guardia. La página de estado publica cada incidente y post-mortem en menos de 48 horas.

  • SLA de uptime 99.95% en Pro y superior
  • PCI DSS Level 1, SOC 2 Type II (en progreso)
  • API versionada — sin cambios disruptivos silenciosos

Changelog

Últimas versiones
  • USDC multi-cadena + tasa FX fijada

    Pagos USDC en Solana, Base, Ethereum y Polygon con enrutamiento automático al menor costo.

    2026-05
  • Hosted Checkout v2

    Puente sandbox, detección automática de 12 idiomas, logo personalizado + color de acento.

    2026-04
  • API REST v1, webhooks, SDKs

    API REST inicial, 8 eventos webhook y 5 SDKs oficiales lanzados.

    2026-03
  • Idempotency-Key obligatoria en POST

    Protección contra doble cobro en solicitudes POST reintentadas.

    2026-02

Lanza la integración esta noche

Claves sandbox, CLI y SDK tipado. Producción se desbloquea después de la verificación Tier 1.