1. Partner API (OAuth)
Payday Payments
  • API Transaccional (API KEY)
    • Crear Clabe
      POST
    • Listar Transacciones
      GET
    • Listar Transaccion
      GET
    • Listar Transacciones X CLABE
      GET
    • Crear Payment Intent
      POST
    • Listar Payment Intents
      GET
    • Obtener Payment Intent
      GET
    • Cancelar Payment Intent
      POST
    • Crear webhook
      POST
    • Borrar Webhook
      DELETE
    • Evento - Transaction Income
    • Evento - Payment Receive
    • Consultar Transferencia X TxID
      GET
    • Consultar Detalle Transferencia
      GET
    • Cancelar Transferencia
      POST
  • Connect API
    • Implementacion Connect
    • Crear regla de split
      POST
    • Listar Reglas Split
      GET
    • Obtener regla split por id
      GET
    • Actualizar regla split
      PUT
    • Eliminar regla split
      DELETE
    • Enlazar Connect
      PUT
    • Desactivar Connect
      PUT
    • Crear cuentas conectadas
      POST
    • Listar cuentas conectadas
      GET
    • Obtener cuenta conectada por id
      GET
    • Actualizar cuenta conectada
      PUT
    • Eliminar cuenta conectada
      DELETE
    • Listar Transferencias Manuales
      GET
    • Libera un transfer de hold manual
      POST
  • Partner API (OAuth)
    • Obtener Token
      POST
    • Crear Cuenta
      POST
    • Configurar Cuenta Bancaria
      PUT
    • Crear API Key Transaccional
      POST
    • Rotar API Key Transaccional
      POST
    • Revocar API Key
      DELETE
  1. Partner API (OAuth)

Crear API Key Transaccional

POST
/api/partner/v1/accounts/{ACCOUNT_ID}/api-keys
Crea una nueva API Key transaccional para el tenant asociado al ACCOUNT_ID.
La llave se guarda cifrada/hasheada y el token en claro se muestra una sola vez en la respuesta.
Propósito
Emitir credenciales de consumo para operaciones del account.
Registrar metadata de seguridad y vigencia de la key.
Seguridad
Requiere Bearer token de partner.
Scope requerido: apikey.manage.
Requiere headers de seguridad firmados:
Authorization: Bearer access_token
Idempotency-Key
X-Request-Id
X-Timestamp
X-Nonce
Content-Digest
X-Signature
X-Signature-Key-Id
Path parameter
ACCOUNT_ID (string, requerido): ID del account (acc_...) previamente creado.
Request body
  "name": "prod-main",
  "scopes": ["payment_intents:write", "transactions:read", "webhooks:write"],
  "expiresInDays": 90,
  "ipAllowlist": ["187.190.10.20/32"],
  "ratePlan": "partner-standard"
}
Campos
name (string, recomendado): nombre lógico de la key (único por tenant).
scopes (string[]): permisos funcionales asociados.
expiresInDays (number): días de vigencia.
ipAllowlist (string[]): lista de CIDRs permitidos.
ratePlan (string): plan de consumo/rate limit.
Reglas de negocio
El ACCOUNT_ID debe existir y pertenecer al partner autenticado.
Si name se repite para el mismo tenant, responde conflicto.
El token plano se devuelve solo una vez; después no puede consultarse.
La key se almacena de forma segura con prefix + salt + keyHash.
Se indexa tanto en tenant storage como en índice master para lookup y revocación.
Respuesta exitosa 201.
  "apiKeyId": "6801abcdef777666",
  "prefix": "ak_rP3dQ7vL",
  "token": "ak_rP3dQ7vL9mKx2wNt5fHs8jYa6bCe0iUo4gZl1nFqAsB",
  "name": "prod-main",
  "scopes": ["payment_intents:write", "transactions:read", "webhooks:write"],
  "expiresAt": "2026-07-10T00:00:00.000Z",
  "createdAt": "2026-04-11T12:00:00.000Z"
}
💡
Errores comunes
400 Bad Request: body inválido o campos requeridos faltantes.
401 Unauthorized: token inválido/expirado o firma inválida.
403 Forbidden: falta scope apikey.manage o account no pertenece al partner.
404 Not Found: account no encontrado.
409 Conflict: nombre de API key ya existe para ese tenant.
📌
Notas de firma
Método firmado: POST.
Path firmado (según implementación actual):
/accounts/{ACCOUNT_ID}/api-keys
No firmar con el path completo /api/partner/v1/... dentro del canonical string.
Content-Digest debe calcularse sobre el body exacto enviado (mismo JSON/raw).

Solicitud

Autorización
Proporciona tu token bearer en el encabezado
Authorization
al realizar solicitudes a recursos protegidos.
Ejemplo:
Authorization: Bearer ********************
Parámetros de ruta

Parámetros de Header

Parámetros del Body application/jsonRequerido

Ejemplos

Respuestas

🟢200Éxito
application/json
Bodyapplication/json

Solicitud Ejemplo de Solicitud
Shell
JavaScript
Java
Swift
curl --location 'https://stp.paydaymx.com/api/partner/v1/accounts/acc_e92fACyl1R_DeoQE/api-keys' \
--header 'Idempotency-Key: ' \
--header 'X-Request-Id: ' \
--header 'X-Timestamp: ' \
--header 'X-Nonce: ' \
--header 'Content-Digest: ' \
--header 'X-Signature: ' \
--header 'X-Signature-Key-Id: v1' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
    "name": "prod-main",
    "scopes": ["payment_intents:write", "transactions:read", "webhooks:write"],
    "expiresInDays": 90,
    "ipAllowlist": ["187.190.10.20/32"],
    "ratePlan": "partner-standard"
  }'
Respuesta Ejemplo de Respuesta
{
    "apiKeyId": "69db39cad6c14afe9b126187",
    "prefix": "ak_4g9ml5Tcv",
    "token": "ak_4g9ml5TcvYiuHhyj_DgJueS5rD7a5DCsT_jWyY76UUI",
    "name": "prod-main",
    "scopes": [
        "payment_intents:write",
        "transactions:read",
        "webhooks:write"
    ],
    "expiresAt": "2026-07-11T06:20:58.889Z",
    "createdAt": "2026-04-12T06:20:59.095Z"
}
Modificado en 2026-04-12 21:34:22
Anterior
Configurar Cuenta Bancaria
Siguiente
Rotar API Key Transaccional
Built with