Realiza el proceso de resolución de pagos pendientes con QRCode - Lista de pagos¶
Se debe llamar a este método para resolver pagos pendientes realizados con QRCode - Lista de Pagos
Métodos¶
| Assinatura | Descripción |
|---|---|
void resolveQRCodePendencies(QRCodePendenciesRequest request, PaymentCallback paymentCallback) |
Realiza el proceso de resolución de pagos pendientes con QRCode para lista de pagos. |
Parámetros
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
request |
QRCodePendenciesRequest |
Si | Objeto de transferencia de datos que contendrá la información de solicitud de resolución de la lista de pagos pendientes con QRCode. |
callback |
PaymentCallback |
Si | Interfaz que se ejecutará para notificaciones de éxito o error del proceso. |
Detalle de los Parámetros request (QRCodePendenciesRequest)
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
applicationId |
Credentials |
Si | Identificación de la aplicación que está realizando la consulta. |
secretToken |
Credentials |
Si | Token de acesso do aplicativo que está solicitando a consulta. |
softwareVersion |
String |
Si | Token de acceso de la aplicación que está realizando la consulta.. |
response
| Nombre | Tipo | Descripción |
|---|---|---|
Value |
BigDecimal |
Monto del pago. Este es el monto que fue aprobado por la adquirente. Siempre debe estar validado en la respuesta, incluso si se pasó como parámetro, ya que hay adquirentes que, para algunas situaciones, aprueban valores diferentes a los solicitados. |
QRType |
QRCodeIntentType |
Tipo de QR (venta, anulación, devolución).. |
appTransactionId |
String |
Identificador de transacción integrado. El identificador referido es el de la aplicación que originó la solicitud de pago. Debe ser lo mismo identificador enviado en la transacción de pago. |
Date |
String |
Fecha / hora de pago para la aplicación de pagos. |
qrId |
String |
Identificador de QrCode generado por el terminal de captura. |
Ejemplo¶
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.jakewharton.threetenabp.AndroidThreeTen;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.TimeZone;
import br.com.phoebus.android.payments.api.ApplicationInfo;
import br.com.phoebus.android.payments.api.Credentials;
import br.com.phoebus.android.payments.api.Payment;
import br.com.phoebus.android.payments.api.PaymentClient;
import br.com.phoebus.android.payments.api.PaymentStatus;
import br.com.phoebus.android.payments.api.provider.PaymentContract;
import br.com.phoebus.android.payments.api.provider.PaymentProviderApi;
import br.com.phoebus.android.payments.api.provider.PaymentProviderRequest;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
Button bt_start;
private PaymentClient paymentClient;
public static final String TEST_APPLICATION_ID = "0";
public static final String TEST_SECRET_TOKEN = "000000000000000000000000";
public static final String TAG = "TAG_DEMO";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt_start = (Button) this.findViewById(R.id.button);
bt_start.setOnClickListener(this);
paymentClient = new PaymentClient();
AndroidThreeTen.init(getApplication());
}
@Override
public void onClick(View view) {
doExecute();
}
public void doExecute() {
//definindo as credenciais
Credentials credentials = new Credentials();
credentials.setApplicationId(TEST_APPLICATION_ID);
credentials.setSecretToken(TEST_SECRET_TOKEN);
ApplicationInfo applicationInfo = new ApplicationInfo();
applicationInfo.setCredentials(credentials);
applicationInfo.setSoftwareVersion("1.0");
//criando objeto de request para o payment
QRCodePendenciesRequest request = createRequest(applicationInfo);
}
private QRCodePendenciesRequest createRequest(ApplicationInfo appInfo) {
QRCodePendenciesRequest request = new QRCodePendenciesRequest();
request.setApplicationInfo(appInfo);
request.setSecretToken(appInfo.getCredentials());
request.setApplicationId(appInfo.getCredentials());
request.setSoftwareVersion(appInfo.getSoftwareVersion());
return request;
}
}