Ir para o conteúdo

Remover transação

removeTransaction()


Método para realizar o processo de remoção de uma transação, utilizado em cenários de teste.

Métodos

Assinatura Descrição
void removeTransaction(RemoveTransactionRequest removeTransactionRequest, PaymentCallback<Void> insertTransactionCallback) Realiza o processo de remoção de uma transação.

Parâmetros

Nome Tipo Obrigatório Descrição
request RemoveTransactionRequest Sim Objeto de transferência de dados que conterá as informações da requisição da transação.
callback PaymentCallback Sim Interface que será executada para notificações de sucesso ou erro do processo da transação.

Detalhe dos parâmetros request (RemoveTransactionRequest)

Nome Tipo Obrigatório Descrição
acquirerId String Sim Identificador da transação para a adquirente. Este é o identificador que consta no arquivo que a adquirente fornece (EDI). Desta forma, é possível realizar a conciliação do pagamento com a transação integrada.
acquirerPackage String Sim Pacote ou conjunto de informações que descreve a forma de pagamento utilizada pelo adquirente.
externalAppTransactionId String Sim ID da transação na aplicação externa.
paymentDate Date Sim Data da transação.

callback (PaymentCallback)

Nome Tipo Obrigatório Descrição
onSuccess Método para notificação em caso de sucesso.
onError Método para notificação em caso de falha.
ErrorData.paymentsResponseCode String Sim Código de resposta para o erro que ocorreu. Vide Códigos de Resposta
ErrorData.acquirerResponseCode String Não Código de resposta para o erro ocorrido retornado pela adquirente. Observe que apenas este erro será retornado se a transação não for autorizada pela adquirente.
ErrorData.responseMessage String Sim Mensagem descritiva da causa da não autorização. Se a transação foi negada pela adquirente, conterá a mensagem retornada pela adquirente.
ErrorData.acquirerAdditionalMessage String Não Mensagem enviada no campo 63 de resposta EPS, para ser impressa ou exibida no final do fluxo transacional. O aplicativo de pagamentos permanece responsável por exibir na tela ou verificar o conteúdo presente neste campo, mas também deve enviar o valor recebido para a aplicação integrada para que ela possa aplicar suas regras de negócios baseadas no conteúdo deste campo.

Exemplo

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() {

    RemoveTransactionRequest removeTransactionRequest = new RemoveTransactionRequest();
    //setar informações obrigatórias do request

    try {
      paymentClient.removeTransaction(removeTransactionRequest, this);
    } catch (ClientException e) {
      Log.e(TAG, "Error", e);
    }
  }

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

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