Categorização de transações card-on-file

Desde outubro de 2022, devido a mudanças regulatórias de bandeiras, as transações card-on-file da bandeira Mastercard passarão a ser categorizadas em 12 tipos de categorias CIT (Iniciadas pelo portador do cartão – Card Holder) e MIT (Iniciadas pelo estabelecimento – Merchant). Desde 1 de junho de 2023, a bandeira passou a monitorar o envio do campo, fique atento pois podem ocorrer ações de compliance.

O crescimento contínuo do comércio eletrônico, juntamente com o aumento dos tipos de transação, exige a necessidade de entender a intenção do consumidor. A introdução do indicador CIT ou MIT fornece transparência permitindo o uso para:

  • Lógica de autorização do emissor
  • Detecção de fraude
  • Gestão de disputas

Por isso, é necessário realizar ajustes em sua integração com o e.Rede para envio do campo chamado “credentialId”, que fará parte do grupo “transactionCredentials”. Desse modo, quando storageCard for igual a 1 ou 2, indicando que o cartão está sendo ou já foi armazenado, será obrigatório indicar em qual categoria a transação card-on-file (credencial armazenada) está enquadrada.

O envio também deve ser feito em transações Zero Dollar que pretendem armazenar o cartão.

O envio deste campo passou a ser obrigatório para a operação Mastercard desde 01 de junho de 2023, e a partir de 01 de junho de 2024, a bandeira Mastercard poderá aplicar penalidades em caso de não conformidade dos estabelecimentos, referente ao período fora da norma. Entre os benefícios do envio do campo, está a capacidade de apoiar a bandeira e o emissor na análise de suas transações, o que pode ajudar na conversão. Os outros campos já utilizados atualmente para finalidades semelhantes como storageCard, subscription e installments, precisam continuar a ser populados.

Para o envio correto do campo Storage Card e Credential Id nas Transações 3DS Rede é necessário seguir tabela de parâmetros contida na Documentação do e.Rede:

Tabela de Categorização de transações card-on-file Rede

URLs para Tokenizar durante uma venda

SANDBOX: https://testapi.maxipago.net/UniversalAPI/postXML

PRODUÇÃO: https://api.maxipago.net/UniversalAPI/postXML

Exemplo de Request

Importante: ao enviar essa requisição, é preciso que o <customerToken> venha preenchido; dessa forma, os dados serão atrelados ao cartão que crédito e no retorno, será entregue o <token>.

Nos casos de retorno de sucesso as próximas vendas já poderão ser feitas com o <customerToken> e o <token>.

<?xml version="1.0" encoding="UTF-8"?>
<transaction-request>
	<version>3.1.1.15</version>
	<verification>
		<merchantId>storeId</merchantId>
		<merchantKey>storeKey</merchantKey>
	</verification>
	<order>
		<sale>
			<processorID>1</processorID>
			<referenceNum>testemp</referenceNum>
			<fraudCheck>N</fraudCheck>
			<customerIdExt>77067497035</customerIdExt>
			<billing>
				<name>Cliente Gateway</name>
				<address>R. Volkswagen 1</address>
				<address2>11º Andar</address2>
				<district>Jabaquara</district>
				<city>Sao Paulo</city>
				<state>SP</state>
				<postalcode>04344902</postalcode>
				<country>BR</country>
				<phone>1140044828</phone>
				<email>clientegateway@clientegateway.com.br</email>
				<companyName>maxiPago!</companyName>
			</billing>
			<transactionDetail>
				<payType>
					<creditCard>
						<number>5234745068937710</number>
						<expMonth>07</expMonth>
						<expYear>2030</expYear>
						<cvvNumber>600</cvvNumber>
						<storageCard>1</storageCard>
						<credentialId>03</credentialId>
					</creditCard>
				</payType>
			</transactionDetail>
			<payment>
				<chargeTotal>1.00</chargeTotal>
				<currencyCode>BRL</currencyCode>
				<creditInstallment>
					<numberOfInstallments>1</numberOfInstallments>
					<chargeInterest>N</chargeInterest>
				</creditInstallment>
			</payment>
			<saveOnFile>
				<customerToken>3703434</customerToken>
			</saveOnFile>
		</sale>
	</order>
</transaction-request>

Retorno de Request – Sucesso

<?xml version="1.0" encoding="UTF-8"?>
<transaction-response>
	<authCode>123456</authCode>
	<orderID>0A0104AB:018D618BE5BF:FB31:4E28CEED</orderID>
	<referenceNum>testemp</referenceNum>
	<transactionID>15997283</transactionID>
	<transactionTimestamp>1706738574</transactionTimestamp>
	<responseCode>0</responseCode>
	<responseMessage>CAPTURED</responseMessage>
	<avsResponseCode>YYY</avsResponseCode>
	<cvvResponseCode>M</cvvResponseCode>
	<processorCode>A</processorCode>
	<processorMessage>APPROVED</processorMessage>
	<processorName>SIMULATOR</processorName>
	<creditCardBin>523474</creditCardBin>
	<creditCardLast4>7710</creditCardLast4>
	<errorMessage/>
	<processorTransactionID>737096</processorTransactionID>
	<processorReferenceNumber>333404</processorReferenceNumber>
	<creditCardCountry>US</creditCardCountry>
	<creditCardScheme>Mastercard</creditCardScheme>
	<brandCode>0</brandCode>
	<brandMessage>BRAND MESSAGE</brandMessage>
	<brandTransactionID>123456</brandTransactionID>
	<save-on-file>
		<token>AjAHYc5IXfc=</token>
		<creditCardNumber>5234********7710</creditCardNumber>
	</save-on-file>
</transaction-response>

A requisição enviada com sucesso, vai retornar o parâmetro <token>.

Quer saber mais sobre o assunto?

Você encontra mais sobre Salvar Cartões na Base (tokenização) e Criar cadastro de clientes; além das tabelas de parâmetros, acessando links abaixo: