Inserir transação
insertTransaction()¶
Método responsável por inserir uma transação, utilizado em cenários de teste para validar o fluxo de pagamento.
Métodos¶
| Assinatura | Descrição |
|---|---|
void insertTransaction(InsertTransactionRequest insertTransactionRequest, PaymentCallback<Void> insertTransactionCallback) |
Realiza o processo de inserção de uma transação. |
Parâmetros
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
request |
InsertTransactionRequest |
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 (InsertTransactionRequest)
| 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. |
acquirerSpecificId |
String |
Sim | Identificador específico do adquirente, utilizado para diferenciação de transações ou pacotes. |
PayStorePaymentRequest.payment |
PayStorePaymentRequest |
Sim | Detalhes sobre a solicitação de pagamento realizada pelo store, incluindo valores e métodos. |
PaymentServiceExecutionRequest.paymentServiceExecutionRequest |
PaymentServiceExecutionRequest |
Sim | Detalhes específicos sobre a execução do serviço de pagamento, incluindo os dados da transação. |
ReversalServiceExecutionRequest.reversalServiceExecutionRequest |
ReversalServiceExecutionRequest |
Sim | Detalhes sobre a solicitação de estorno de pagamento, incluindo o motivo e os dados da transação original. |
authAppVersion |
String |
Sim | Versão do aplicativo de autenticação utilizado no processo de pagamento ou verificação. |
paymentAppVersion |
String |
Sim | Versão do aplicativo de pagamento utilizado para realizar a transação. |
PayStorePaymentRequest¶
| Nome | Tipo | Descrição |
|---|---|---|
uuid |
String |
Identificador único da transação. |
nsu |
long |
Número sequencial único da transação. |
value |
BigDecimal |
Valor da transação. |
cashback |
BigDecimal |
Valor do cashback aplicado na transação. |
paymentDate |
Date |
Data da transação. |
paymentDateStatus |
Integer |
Status da data de pagamento. |
paymentStatus |
Integer |
Status do pagamento. |
resolutionType |
Integer |
Tipo de resolução da transação. |
maskedPan |
String |
Número do cartão mascarado. |
panLast4Digits |
String |
Últimos 4 dígitos do número do cartão. |
requiredPanSequenceNumber |
boolean |
Indica se o número de sequência do cartão é necessário. |
panSequenceNumber |
Integer |
Número da sequência do cartão. |
aid |
String |
Identificador da aplicação. |
cardHolder |
String |
Nome do titular do cartão. |
cardExpirationDate |
Date |
Data de expiração do cartão. |
captureType |
Integer |
Tipo de captura da transação. |
cardType |
String |
Tipo de cartão (por exemplo, crédito, débito). |
appLabel |
String |
Rótulo da aplicação. |
cryptoPan |
String |
Número do cartão criptografado. |
issuerScriptResults |
String |
Resultados do script do emissor. |
finalRequiredData |
String |
Dados finais obrigatórios. |
cardRequiredData |
String |
Dados obrigatórios do cartão. |
paymentMerchantReceipt |
String |
Comprovante de pagamento do comerciante. |
paymentClientReceipt |
String |
Comprovante de pagamento do cliente. |
installmentQuantity |
Integer |
Quantidade de parcelas. |
requiredPassword |
boolean |
Indica se a senha é necessária para a transação. |
requiredSignature |
boolean |
Indica se a assinatura é necessária para a transação. |
currencySymbol |
String |
Símbolo da moeda usada na transação. |
merchantSpecificId |
String |
Identificador específico do comerciante. |
terminalSpecificId |
String |
Identificador específico do terminal. |
productType |
Integer |
Tipo do produto envolvido na transação. |
ksn |
String |
Número de sequência do terminal. |
reverseMerchantReceipt |
String |
Comprovante de reversão do comerciante. |
reverseClientReceipt |
String |
Comprovante de reversão do cliente. |
canUndoReverse |
boolean |
Indica se a reversão pode ser desfeita. |
cardBrandName |
String |
Nome da bandeira do cartão (ex: Visa, MasterCard). |
externalAppId |
String |
Identificador da aplicação externa. |
externalAppVersion |
String |
Versão da aplicação externa. |
externalAppTransactionId |
String |
ID da transação na aplicação externa. |
ticketNumber |
Long |
Número do cupom da transação. |
batchNumber |
Long |
Número do lote da transação. |
pinCaptureType |
Integer |
Tipo de captura do PIN. |
authCode |
String |
Código de autorização da transação. |
reverseAuthCode |
String |
Código de autorização da reversão. |
validityPreAuthorization |
String |
Validade da pré-autorização. |
terminalAcquirerSpecificId |
String |
Identificador específico do adquirente no terminal. |
softDescriptor |
String |
Descrição do produto ou serviço. |
transactionType |
String |
Tipo da transação (ex: venda, cancelamento). |
transactionDesc |
String |
Descrição da transação. |
plainTextPan |
String |
Número do cartão em texto simples. |
cardBrandId |
Long |
ID da marca do cartão. |
paymentAppVersionCode |
Integer |
Código da versão do aplicativo de pagamento. |
planId |
String |
ID do plano associado à transação. |
productShortName |
String |
Nome abreviado do produto. |
accountTypeId |
String |
Tipo de conta associada à transação. |
reversable |
Boolean |
Indica se a transação é reversível. |
acquirerResponseCode |
String |
Código de resposta do adquirente. |
merchantCode |
String |
Código do comerciante. |
batchId |
Long |
ID do lote. |
devolution |
Boolean |
Indica se a transação é uma devolução. |
allowVeps |
Boolean |
Indica se é permitido o VEPS (Virtual Electronic Payment System). |
vepsContactLimit |
String |
Limite de contato VEPS. |
lastUpdate |
Date |
Data da última atualização. |
acquirerNsu |
String |
NSU do adquirente. |
cardHolderNameExtended |
String |
Nome completo do titular do cartão. |
doc |
String |
Documento do titular do cartão. |
originalAcquirerNsu |
String |
NSU original do adquirente. |
acquirerResponseDate |
Date |
Data da resposta do adquirente. |
acquirerResponseMessage |
String |
Mensagem de resposta do adquirente. |
acquirerResponseSuccessMessage |
String |
Mensagem de sucesso do adquirente. |
acquirerReverseResponseCode |
String |
Código de resposta da reversão do adquirente. |
acquirerReverseResponseDate |
Date |
Data da resposta de reversão do adquirente. |
additionalValueType |
Integer |
Tipo de valor adicional da transação. |
authorizedOriginalValue |
BigDecimal |
Valor original autorizado da transação. |
balance |
String |
Saldo após a transação. |
cashbackValue |
BigDecimal |
Valor do cashback associado à transação. |
correlationId |
String |
ID de correlação da transação. |
cvv |
String |
Código de segurança do cartão. |
cvvLegibleType |
String |
Tipo legível do CVV. |
dni |
String |
Documento Nacional de Identidade. |
finalApplicationCryptogram |
String |
Criptograma final da aplicação. |
hasCardData |
Boolean |
Indica se os dados do cartão estão presentes. |
initializeAfterPayment |
Boolean |
Indica se o sistema deve ser inicializado após o pagamento. |
installmenPlanDescription |
String |
Descrição do plano de parcelas. |
issuerName |
String |
Nome do emissor do cartão. |
maskFirst6Digits |
Boolean |
Indica se os primeiros 6 dígitos do cartão devem ser mascarados. |
merchantPhoneNumber |
String |
Número de telefone do comerciante. |
notes |
String |
Notas adicionais relacionadas à transação. |
originalAC |
String |
Código de autorização original. |
originalAID |
String |
AID original da transação. |
originalAuto |
String |
Código original do terminal de automação. |
originalDate |
String |
Data original da transação. |
originalHour |
String |
Hora original da transação. |
originalTerm |
String |
Terminal original de onde a transação foi realizada. |
originalTicketNumber |
String |
Número do ticket original. |
originalValue |
String |
Valor original da transação. |
pan |
String |
Número completo do cartão (PAN). |
payerDataName |
String |
Nome do pagador. |
paymentPrintedReceipt |
Boolean |
Indica se o recibo de pagamento foi impresso. |
paymentUuid |
String |
UUID do pagamento. |
printMessage |
String |
Mensagem a ser exibida na impressão do recibo. |
printParcialPan |
Boolean |
Indica se o PAN parcial deve ser impresso no recibo. |
qrDiscountedValue |
BigDecimal |
Valor com desconto em transações via QR code. |
qrId |
Long |
ID do QR code gerado para a transação. |
qrOriginalValue |
BigDecimal |
Valor original da transação via QR code, antes do desconto. |
rawAdditionalMessage |
String |
Mensagem adicional bruta fornecida pela transação. |
receiptDisplayMessage |
String |
Mensagem a ser exibida no recibo. |
receiptPrintMessage |
String |
Mensagem a ser impressa no recibo. |
requestedTokenizeCard |
Boolean |
Indica se o cartão foi solicitado para tokenização. |
restored |
Boolean |
Indica se a transação foi restaurada. |
reversalBatchId |
Long |
ID do lote de reversão. |
reversalPrintedReceipt |
Boolean |
Indica se o recibo da reversão foi impresso. |
reversalSignature |
String |
Assinatura da reversão da transação. |
reverseAcquirerNsu |
String |
NSU de reversão do adquirente. |
saleCode |
String |
Código de venda associado à transação. |
signature |
String |
Assinatura digital ou física associada à transação. |
statisticAPNSIM |
String |
Informação estatística sobre o SIM no APN (Rede de Acesso à Pacote). |
statisticBatteryPercentage |
String |
Percentual de bateria no dispositivo durante a transação. |
statisticCommunicationType |
String |
Tipo de comunicação usada na transação (ex: Wi-Fi, 4G, etc.). |
statisticLatitude |
String |
Latitude no momento da transação. |
statisticLongitude |
String |
Longitude no momento da transação. |
statisticOperatorSIM |
String |
Operadora do SIM card usado no dispositivo durante a transação. |
statisticSIMSerialNumber |
String |
Número de série do SIM card utilizado. |
statisticStrengthSIM |
String |
Força do sinal do SIM card. |
statisticStrengthWireless |
String |
Força do sinal sem fio no momento da transação. |
track1 |
String |
Dados da faixa 1 do cartão (usado em transações de cartões magnéticos). |
track2 |
String |
Dados da faixa 2 do cartão (usado em transações de cartões magnéticos). |
version |
Long |
Versão da transação ou do sistema. |
trxType |
Integer |
Tipo de transação (por exemplo, compra, estorno, etc.). |
PaymentServiceExecutionRequest¶
| Nome | Tipo | Descrição |
|---|---|---|
serviceStatus |
Integer |
Status do serviço. |
serviceStatusDetail |
Integer |
Detalhamento do status do serviço. |
serviceAcquirerStatus |
Integer |
Status do serviço no adquirente. |
startDate |
Date |
Data de início do serviço ou transação. |
finishDate |
Date |
Data de finalização do serviço ou transação. |
clientRequestDate |
Date |
Data do pedido do cliente. |
serviceType |
String |
Tipo de serviço (por exemplo, compra, estorno, etc.). |
responseCode |
String |
Código de resposta do serviço ou transação. |
responseMessage |
String |
Mensagem de resposta do serviço ou transação. |
responseDate |
Date |
Data da resposta do serviço ou transação. |
acquirerNsu |
String |
NSU (Número Sequencial Único) fornecido pelo adquirente. |
processingCode |
String |
Código de processamento da transação. |
mti |
Integer |
MTI (Message Type Indicator) da transação, que indica o tipo de mensagem. |
authCode |
String |
Código de autorização da transação. |
chipSerialNumber |
String |
Número de série do chip do cartão. |
chipNameProvider |
String |
Nome do fornecedor do chip do cartão. |
phastTransactionProviderId |
String |
ID do provedor da transação PHAST (sistema de pagamentos). |
phastTransactionServiceSpecificId |
String |
ID específico do serviço da transação PHAST. |
connectionType |
String |
Tipo de conexão usada na transação (ex: Wi-Fi, 4G, etc.). |
statisticAPNSIM |
String |
Informação estatística sobre o SIM no APN (Rede de Acesso à Pacote). |
statisticBatteryPercentage |
String |
Percentual de bateria no dispositivo durante a transação. |
statisticCommunicationType |
String |
Tipo de comunicação usada na transação (ex: Wi-Fi, 4G, etc.). |
statisticLatitude |
String |
Latitude no momento da transação. |
statisticLongitude |
String |
Longitude no momento da transação. |
statisticOperatorSIM |
String |
Operadora do SIM card usado no dispositivo durante a transação. |
statisticStrengthSIM |
String |
Força do sinal do SIM card durante a transação. |
statisticStrengthWireless |
String |
Força do sinal sem fio no momento da transação. |
acquirerNsuAuthApi |
String |
NSU de autorização obtido via API do adquirente. |
correlationId |
String |
ID de correlação entre a transação e outros sistemas envolvidos. |
initializationType |
String |
Tipo de inicialização do processo de pagamento ou transação. |
lastTryDay |
Date |
Data da última tentativa de processamento. |
numberAttemptsDay |
Integer |
Número de tentativas realizadas no dia. |
numberAttemptsTotal |
Integer |
Número total de tentativas realizadas. |
paymentAppVersion |
String |
Versão do aplicativo de pagamento usado na transação. |
paymentNotify |
Boolean |
Indica se a notificação de pagamento foi enviada ou não. |
sdkResponseCode |
String |
Código de resposta do SDK para a transação. |
sdkResponseMessage |
String |
Mensagem de resposta do SDK para a transação. |
synced |
Boolean |
Indica se os dados foram sincronizados. |
syncedAdditionalInfo |
Boolean |
Indica se as informações adicionais foram sincronizadas. |
totalDays |
Integer |
Número total de dias envolvidos na transação ou serviço. |
version |
Long |
Versão do sistema ou transação. |
ReversalServiceExecutionRequest¶
| Nome | Tipo | Descrição |
|---|---|---|
serviceStatus |
Integer |
Status do serviço. |
serviceStatusDetail |
Integer |
Detalhamento do status do serviço. |
serviceAcquirerStatus |
Integer |
Status do serviço no adquirente. |
startDate |
Date |
Data de início do serviço ou transação. |
finishDate |
Date |
Data de finalização do serviço ou transação. |
clientRequestDate |
Date |
Data do pedido do cliente. |
serviceType |
String |
Tipo de serviço (por exemplo, compra, estorno, etc.). |
responseCode |
String |
Código de resposta do serviço ou transação. |
responseMessage |
String |
Mensagem de resposta do serviço ou transação. |
responseDate |
Date |
Data da resposta do serviço ou transação. |
acquirerNsu |
String |
NSU (Número Sequencial Único) fornecido pelo adquirente. |
originalDate |
Date |
Data original da transação. |
originalNsu |
String |
NSU original fornecido pela adquirente. |
maskedPan |
String |
PAN (número do cartão) mascarado. |
panLast4Digits |
String |
Últimos 4 dígitos do PAN (número do cartão). |
aid |
String |
AID (Application Identifier) do cartão. |
cardHolder |
String |
Nome do titular do cartão. |
authCode |
String |
Código de autorização da transação. |
captureType |
Integer |
Tipo de captura da transação (ex: captura total, captura parcial, etc.). |
appLabel |
String |
Rótulo do aplicativo utilizado. |
nsu |
Long |
NSU (Número Sequencial Único) gerado para a transação. |
authAppVersion |
String |
Versão do aplicativo de autorização utilizado. |
paymentAppVersion |
String |
Versão do aplicativo de pagamento utilizado. |
requiredPassword |
Boolean |
Indica se a senha é necessária para a transação. |
chipSerialNumber |
String |
Número de série do chip do cartão. |
batchNumber |
Long |
Número do lote relacionado à transação. |
synced |
Boolean |
Indica se os dados foram sincronizados. |
chipNameProvider |
String |
Nome do fornecedor do chip do cartão. |
connectionType |
String |
Tipo de conexão utilizada na transação (ex: Wi-Fi, 4G, etc.). |
correlationId |
String |
ID de correlação entre a transação e outros sistemas envolvidos. |
initializationType |
String |
Tipo de inicialização do processo de pagamento ou transação. |
lastTryDay |
Date |
Data da última tentativa de processamento. |
numberAttemptsDay |
Integer |
Número de tentativas realizadas no dia. |
numberAttemptsTotal |
Integer |
Número total de tentativas realizadas. |
sdkResponseCode |
String |
Código de resposta do SDK para a transação. |
sdkResponseMessage |
String |
Mensagem de resposta do SDK para a transação. |
statisticAPNSIM |
String |
Informação estatística sobre o SIM no APN (Rede de Acesso à Pacote). |
statisticBatteryPercentage |
String |
Percentual de bateria no dispositivo durante a transação. |
statisticCommunicationType |
String |
Tipo de comunicação utilizada na transação (ex: Wi-Fi, 4G, etc.). |
statisticLatitude |
String |
Latitude no momento da transação. |
statisticLongitude |
String |
Longitude no momento da transação. |
statisticOperatorSIM |
String |
Operadora do SIM card usado no dispositivo durante a transação. |
statisticStrengthSIM |
String |
Força do sinal do SIM card durante a transação. |
statisticStrengthWireless |
String |
Força do sinal sem fio no momento da transação. |
syncedAdditionalInfo |
Boolean |
Indica se informações adicionais foram sincronizadas. |
ticketNumber |
Long |
Número do ticket relacionado à transação. |
totalDays |
Integer |
Número total de dias envolvidos na transação ou serviço. |
version |
Long |
Versão do sistema ou 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() {
InsertTransactionRequest insertTransactionRequest = new InsertTransactionRequest();
//setar informações obrigatórias do request
try {
paymentClient.insertTransaction(insertTransactionRequest, 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!");
}
}