Ir para o conteúdo

Inicia el proceso de inicialización con PayStore y Acquirer


Se debe llamar a este método para inicializar el terminal con Paystore y con el (los) adquirente (s) instalado (s).

Tras la inicialización, el terminal primero se registra en Paystore, ya sea enviando el token o uniéndose al portal. Luego recibe los parámetros de inicialización, como qué adquirentes están configurados, URL para comunicarse con los adquirentes, productos habilitados, etc. Luego de este paso, el terminal se inicializa con los adquirentes habilitados, en este punto recibe configuraciones específicas para cada adquirente, como tablas AID, productos, bins y configuraciones relacionadas con el flujo transaccional.

Métodos

Suscripciones Descripción
void startInitialization(String activityAction, PaymentCallback paymentCallback) Inicia el proceso de inicialización con Paystore y Acquirer.
void startInitialization(InitializationRequest initializationRequest, PaymentCallback paymentCallback) Inicia el proceso de inicialización con Paystore y Acquirer, utilizando InitializationRequest.

Parámetros

Nombre Tipo Obligatorio Descripción
activityAction String Action da activity de la aplicación externa a la que se debe llamar una vez completada la inicialización.
callback PaymentCallback Interfaz que se ejecutará para notificaciones de éxito o error.
initializationRequest InitializationRequest Objeto de transferencia de datos que contendrá la información de solicitud la inicialización.
paymentCallback PaymentCallback Interfaz que se ejecutará para notificaciones de éxito o error.

Detalle de los Parámetros

callback

Nombre Tipo Obligatorio Descripción
onSuccess Método de notificación de éxito
onError Método de notificación en caso de error.
ErrorData.paymentsResponseCode String Código de respuesta para el error que ocurrió. Ver Códigos de Respuesta
ErrorData.responseMessage String Mensaje descriptivo de la causa de no autorización. Si la transacción ha sido denegada por el adquirente, contendrá el mensaje devuelto por el adquirente.

request (InitializationRequest)

Nome Tipo Obrigatório Descrição
activityAction String No Action da activity de la aplicación externa a la que se debe llamar una vez completada la inicialización.
installToken String No Token de instalación para acreditación de terminales en Paystore. Este parámetro solo se considerará en la primera inicialización del terminal.

Ejemplo

public class MyActivity extends Activity implements PaymentClient.PaymentCallback {

    private PaymentClient paymentClient;
    private String action = "br.com.phoebus.payments.demo.ACTION_INITIALIZE";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_payment);

        paymentClient = new PaymentClientImpl();
    }

    @Override
    protected void onResume() {
        super.onResume();
        paymentClient.bind(this);
    }

    @Override
    protected void onDestroy() {
         try {
            paymentClient.unbind(this);
        } catch (Exception e) {
            Log.e(TAG, e.getMessage());
        }
        super.onDestroy();
    }

    public void doExecute(){
         InitializationRequest request = new InitializationRequest();
        request.setInstallToken("1a2b3cdef");
        request.setActivityAction("123456abcde");

        ApplicationInfo appInfo = new ApplicationInfo();
        appInfo.setCredentials(new Credentials("demo-app", "TOKEN-KEY-DEMO"));
        appInfo.setSoftwareVersion("1.0.0.0");

        try {
            paymentClient.startInitialization(request, this);
        } catch (ClientException e) {
            Log.e(TAG, "Error while initialization.", e);
        }
    }

    @Override
    public void onError(ErrorData errorData) {
        Log.e(TAG, "Error: " + errorData.getResponseMessage());
    }

    @Override
    public void onSuccess(Object data) {
        Log.i(TAG, "Success!");
    }
}