Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.pay-me.com/llms.txt

Use this file to discover all available pages before exploring further.

Genera un Nonce temporal para inicializar Pay-me Flex en el frontend.
Este valor debe solicitarse desde backend usando un Bearer Token vigente.

Endpoint

POST /token
endpoint
Antes de llamar a este endpoint, genera un Access Token con Autenticación. El token debe enviarse en el header Authorization.

Scope requerido

Define el permiso asociado al nonce.

post:charges

Permite inicializar Flex para crear cargos y autorizaciones.

Bearer Token

El token enviado en Authorization debe estar vigente y habilitado para solicitar este permiso.

Request

Headers

CampoDescripciónValorTipoObligatorio
Content-TypeFormato del requestapplication/jsonStringSI
ALG-API-VERSIONVersión del API1709847567StringSI
AuthorizationToken de autenticaciónBearer {access_token}StringSI
Content-Type: application/json
ALG-API-VERSION: 1709847567
Authorization: Bearer {access_token}

Body

CampoDescripciónEjemploTipoObligatorio
actionAcción a ejecutarcreate.nonceStringSI
audienceURL base del API según ambientehttps://api.preprod.alignet.io/StringSI
client_idIdentificador público del comercioyour_client_idStringSI
scopePermiso solicitado para el noncepost:chargesStringSI
El valor de audience debe coincidir con el ambiente que usarás para autorizar el pago: https://api.preprod.alignet.io/ para Pre-Producción o https://api.alignet.io/ para Producción.

Ejemplo (JSON)

{
  "action": "create.nonce",
  "audience": "https://api.preprod.alignet.io/",
  "client_id": "your_client_id",
  "scope": "post:charges"
}

Ejemplo (cURL)

curl --request POST 'https://auth.preprod.alignet.io/nonce' \
  --header 'Content-Type: application/json' \
  --header 'ALG-API-VERSION: 1709847567' \
  --header 'Authorization: Bearer {access_token}' \
  --data '{
    "action": "create.nonce",
    "audience": "https://api.preprod.alignet.io/",
    "client_id": "your_client_id",
    "scope": "post:charges"
  }'

Response

Body

CampoDescripciónTipo
actionAcción ejecutadaString
successResultado de la operaciónBoolean
nonceCódigo temporal para inicializar FlexString
scopePermiso asociado al nonceString
expires_inTiempo de vigencia en segundosInteger
nonce_creationMetadata del resultadoObject
nonce_creation.meta.status.codeCódigo interno del resultadoString
nonce_creation.meta.status.message_ilgn[].localeIdioma del mensajeString
nonce_creation.meta.status.message_ilgn[].valueMensaje del resultadoString

Ejemplo (JSON)

{
  "action": "create.nonce",
  "success": true,
  "nonce": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...",
  "scope": "post:charges",
  "expires_in": 30,
  "nonce_creation": {
    "meta": {
      "status": {
        "code": "00",
        "message_ilgn": [
          {
            "locale": "es_PE",
            "value": "Código Nonce creado"
          }
        ]
      }
    }
  }
}

Usar el Nonce en Flex

Después de recibir el nonce, envíalo al frontend e inclúyelo en la inicialización del componente junto con el payload.
var paymentForm = new FlexPaymentForms({
    nonce,
    payload,
    settings: {
        display_result_screen: true,
        show_close_button: true,
        show_border: false,
        show_operation_number: true
    },
    display_settings: {
        methods: ["QR", "BANK_TRANSFER", "CARD"]
    },
    i18n: {
        mode: "multi",
        default_language: "es",
        languages: ["es", "en"]
    }
});

Flujo recomendado

1

Genera el Access Token

Consume el API de Seguridad desde backend.
2

Solicita el Nonce

Envía action, audience, client_id y scope al endpoint POST /nonce.
3

Inicializa Flex

Usa el nonce en FlexPaymentForms junto con el payload de pago.
4

Valida el resultado

Confirma la operación desde backend usando notificaciones o API de consulta.

Buenas prácticas

  • Solicita el nonce desde backend.
  • Usa el mismo ambiente para auth, audience, librerías Flex y APIs de pago.
  • No expongas client_id, tokens ni metadata sensible en logs públicos.
  • Genera un nuevo nonce si el anterior expiró antes de inicializar Flex.
  • Controla reintentos para evitar múltiples solicitudes innecesarias.

Errores comunes

400 Bad Request

El body está incompleto, el action no es válido o el audience no corresponde al ambiente.

401 Unauthorized

El Bearer Token no fue enviado, expiró o tiene un formato incorrecto.

403 Forbidden

El token no cuenta con el scope necesario para solicitar el nonce.

5xx Error

Ocurrió un error temporal en el servicio. Reintenta de forma controlada desde backend.
El nonce no reemplaza la validación backend del resultado. Después de la respuesta de Flex, confirma el estado de la operación con tu backend.

Siguiente paso

Incluir librería y estilos básicos

Continúa con la inclusión del CSS y JS del ambiente antes de inicializar el formulario.