Getnet DocsGetnet Docs

Crear un pago

Esta guía te muestra cómo procesar una transacción de pago estándar utilizando la aplicación Get Mini. El pago cobra un importe especificado a una tarjeta en una sola operación. Esta integración depende de un PIN pad conectado por Bluetooth para gestionar la lectura de la tarjeta y la introducción del PIN.

Requisitos

Antes de empezar, asegúrate de tener:

  • La aplicación Get Mini instalada en el dispositivo Android
  • El dispositivo PIN pad emparejado por Bluetooth y conectado dentro de la aplicación Get Mini
  • El ActivityResultLauncher registrado en tu Activity para recibir los resultados

Asegúrate de que el PIN pad está encendido y correctamente emparejado antes de iniciar las transacciones.

Proceso de la transacción de pago

Esta sección te guía en el proceso de creación y ejecución de una transacción de pago con la integración Get Mini App2App. Aprenderás a construir el intent y a gestionar el resultado de la transacción.

Paso 1: Crear e iniciar el intent de pago

Una transacción de pago implica crear un intent con la acción de Get Mini, añadir los parámetros de la transacción e iniciarlo utilizando tu ActivityResultLauncher. La aplicación Get Mini gestiona la interacción con el PIN pad y procesa el pago.

La siguiente tabla enumera los parámetros que debes incluir en tu intent:

ParámetroTipoObligatorioDescripción
amountdoubleSíEl importe total a cobrar
invoiceStringNoNúmero de pedido o identificador opcional para el seguimiento

El siguiente ejemplo de código muestra cómo crear e iniciar un intent de pago:

// Initialize the Intent with the Get Mini action
Intent intent = new Intent("es.redsys.paysys.mPOSRedsys_PAYMENT_REQUEST");

// Add transaction parameters
intent.putExtra("amount", 25.50);
intent.putExtra("invoice", "ORD-1001"); // Optional identifier

// Launch the Intent
paymentLauncher.launch(intent);

Paso 2: Recibir y gestionar el resultado de la transacción

Una vez que el titular de la tarjeta completa la transacción en el PIN pad, la aplicación Get Mini devuelve el control a tu aplicación a través de la devolución de llamada (callback) ActivityResult. Debes comprobar que el código de resultado es RESULT_OK y extraer los detalles de la transacción de los extras del intent devuelto.

Un estado RESULT_OK indica que la aplicación ha devuelto el control correctamente. A continuación, debes inspeccionar el extra STATE para confirmar que la operación se ha realizado correctamente.

El siguiente ejemplo de código muestra cómo gestionar el resultado de la transacción:

private final ActivityResultLauncher<Intent> paymentLauncher = registerForActivityResult(
    new ActivityResultContracts.StartActivityForResult(),
    result -> {
        if (result.getResultCode() == Activity.RESULT_OK) {
            Intent data = result.getData();
            if (data != null) {
                String transactionResult = data.getStringExtra("RESULT");

                if ("AUTORIZADA".equals(transactionResult)) {
                    // Transaction successful - extract response data
                    String authCode = data.getStringExtra("AUTHORIZATION");
                    String orderId = data.getStringExtra("ORDER");
                    // Process successful payment
                } else {
                    // Transaction denied
                    // Handle error appropriately
                }
            }
        } else {
            // Transaction cancelled or failed
            // Handle cancellation
        }
    }
);

Para obtener detalles completos sobre todos los campos de respuesta y la gestión de errores, consulta Gestionar los resultados de la transacción.

Próximos pasos

Ahora que has procesado correctamente una transacción de pago, puedes explorar más funciones de la integración Get Mini App2App: