Ir para o conteúdo

Envía pagos a Paystore.


Se debe llamar a este método para enviar pagos desde la terminal a Paystore. Envía datos de transacciones a la API de Paystore, así como información adicional. Este mecanismo lo ejecuta automáticamente el terminal, cada 2 minutos. Sin embargo, llamar a este método realiza un envío inmediato.

Métodos

Suscripciones Descripción
void startPushPayments(PaymentCallback paymentCallback) Envía pagos a Paystore.

Parámetros

Nombre Tipo Obligatorio Descripción
callback 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.

Ejemplo

public class MyActivity extends Activity implements PaymentClient.PaymentCallback {

    private PaymentClient paymentClient;

    @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(){
        ApplicationInfo appInfo = new ApplicationInfo();
        appInfo.setCredentials(new Credentials("demo-app", "TOKEN-KEY-DEMO"));
        appInfo.setSoftwareVersion("1.0.0.0");

        try {
            paymentClient.startPushPayments(this);
        } catch (ClientException e) {
            Log.e(TAG, "Error while sending payments to Paystore.", e);
        }
    }

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

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