Acesse o novo portal de desenvolvedores E-commerce docs.cielo.com.br.
Atenção: O conteúdo desta página está sendo descontinuado e não receberá atualizações a partir de 14/08/2024. Visite a nova documentação em docs.cielo.br.
O objetivo desta documentação é orientar o desenvolvedor sobre como integrar o seu e-commerce com a API do Pagador, gateway de pagamentos da Braspag, descrevendo os serviços disponíveis com exemplos de requisição e resposta.
A solução API Pagador foi desenvolvida com a tecnologia REST, que é padrão de mercado e independe da tecnologia utilizada por nossos clientes. Desta forma, é possível integrar-se utilizando as mais variadas linguagens de programação, tais como: ASP, ASP.Net, Java, PHP, Ruby e Python.
Conheça alguns dos atributos que se destacam no Gateway de Pagamentos:
O modelo empregado na integração das APIs é simples e se baseia na utilização de duas URLs:
Para executar uma operação:
Método HTTP | Descrição |
---|---|
GET | Retorna recursos já existentes, ex.: consulta de transações. |
POST | Cria um novo recurso, ex.: criação de uma transação. |
PUT | Atualiza um recurso existente, ex.: captura ou cancelamento de uma transação previamente autorizada. |
Todas a operações requerem as credenciais de acesso “Merchant ID” e “Merchant Key”, que devem ser enviadas no cabeçalho (header) da requisição.
Cada envio de requisição irá retornar um código de Status HTTP, indicando se ela foi realizada com sucesso ou não.
Utilize o ambiente Sandbox para realizar testes dos nossos produtos e serviços antes de disponibilizar sua solução no ambiente de Produção.
Para a fase de testes, crie uma conta em nosso sandbox e experimente as nossas APIs sem compromisso.
Informação | Descrição |
---|---|
Credenciais de acesso | MerchantId e MerchantKey recebidos após criação da conta de testes em Cadastro do Sandbox. |
Base da URL transacional | https://apisandbox.braspag.com.br/ |
Base da URL para consultas | https://apiquerysandbox.braspag.com.br/ |
Realizados os testes, disponibilize sua solução em ambiente de produção.
Informação | Descrição |
---|---|
Credenciais de acesso | MerchantId e MerchantKey fornecidos pela Braspag. Para mais informações, entre em contato com o Suporte Braspag. |
Base da URL transacional | https://api.braspag.com.br/ |
Base da URL para consultas | https://apiquery.braspag.com.br/ |
Para que possa aproveitar melhor todos os recursos disponíveis em nossa API, é importante você antes conhecer os seguintes conceitos envolvidos no processamento de uma transação de cartão de crédito:
Etapa | Descrição |
---|---|
Autorização | Operação que viabiliza o processamento de uma venda com um cartão de crédito. A autorização (também chamada pré-autorização) irá sensibilizar o limite do cliente, mas ainda não irá gerar cobrança em sua fatura |
Captura | Confirmação necessária para que a cobrança seja efetivada. O tempo limite para capturar uma transação pré-autorizada varia entre adquirentes, mas pode ser de até 5 dias após a data da pré-autorização. |
Captura Automática | Opção que permite que a transação possa ser autorizada e capturada num mesmo momento, isentando o lojista de enviar a confirmação. |
Cancelamento | Recurso de cancelamento de compra aplicável no dia em que a transação foi autorizada/capturada. No caso de uma transação apenas autorizada, o cancelamento irá liberar o limite do cartão que foi sensibilizado. Se a transação já tiver sido capturada, o cancelamento irá desfazer a venda, mas somente quando executado até às 23:59:59 da data da autorização/captura. |
Estorno | Recurso de cancelamento de compra aplicável no dia seguite ao da captura da transação. Neste caso, a transação será submetida ao processo de estorno pela adquirente. |
Os seguintes recursos são oferecidos, podendo ser aplicados em diferentes momentos do seu fluxo transacional:
Termo | Descrição |
---|---|
Antifraude | Plataforma de prevenção à fraude que fornece uma análise de risco detalhada das compras on-line. Este processo é totalmente transparente para o portador do cartão. De acordo com os critérios preestabelecidos, o pedido pode ser automaticamente aceito, recusado ou encaminhado para análise manual. Leia mais na seção Pagamentos com Análise de Fraude ou consulte o manual Antifraude. |
Autenticação | Processo que possibilita passagem da venda por autenticação do emissor do cartão, trazendo com isso mais segurança para a venda e transferindo para o emissor o risco de fraude. Leia mais na seção Autenticação 3DS ou consulte o manual Autenticação 3DS 2.2. |
Cartão Protegido | Plataforma que permite o armazenamento seguro de dados sensíveis de cartão de crédito no formato de token. Com a plataforma, a loja poderá oferecer recursos como “Compra com 1 clique” e “Retentativa” de envio de transação, sempre preservando a integridade e a confidencialidade das informações. Leia mais na seção Salvando e Reutilizando Cartões ou consulte o manual Cartão Protegido. |
Acesse nossa ferramenta de atendimento web Zendesk e consulte o nosso artigo Atendimento Braspag para mais informações sobre nosso serviço de suporte.
A API do Pagador trabalha com transações referentes às seguintes formas de pagamento: cartão de crédito, cartão de débito, Pix, QR Code, boleto bancário, transferência eletrônica, Buy Now Pay Later (BNPL), e-wallet e voucher. O fluxo da transação depende dos serviços utilizados e das configurações escolhidas pela loja.
Veja abaixo a representação de um fluxo transacional padrão seguida de uma pequena descrição das principais partes envolvidas:
Nota: Para evitar que a duplicidade de pedidos ocorra durante uma transação, o Pagador possui a opção de bloqueio de pedidos duplicados que, quando habilitado, retorna o código de erro “302”, informando que o
MerchantOrderId
enviado está duplicado. Para saber mais detalhes sobre essa feature, consulte este artigo.
Veja abaixo a representação de um fluxo transacional padrão na criação de uma transação de crédito:
Ao solicitar a autorização de uma transação de crédito, é necessário seguir o contrato abaixo. Os dados referentes à sua afiliação são enviados no nó Payment.Credentials
e devem ser enviados sempre que uma nova requisição de autorização for submetida para aprovação.
Caso a sua loja utilize os serviços de Retentativa ou Loadbalance, as afiliações devem ser cadastradas pela equipe de suporte ao cliente. Para solicitar o cadastro de afiliações, clique aqui e envie sua requisição.
Os parâmetros contidos dentro dos nós Address
e DeliveryAddress
são de preenchimento obrigatório quando a transação é submetida ao Antifraude ou à análise do Velocity. Na tabela de parâmetros, mais abaixo, esses parâmetros aparecem marcados com um * na coluna de obrigatoriedade.
Transações de crédito Mastercard e Hipercard com credenciais armazenadas: a bandeira Mastercard e Hipercard exige o envio do Indicador de Início da Transação para compras de cartão de crédito e débito que usam os dados armazenados de um cartão. O objetivo é indicar se a transação foi iniciada pelo comprador (titular do cartão) ou pela loja. Nesse cenário é obrigatório o envio do nó
InitiatedTransactionIndicator
com os parâmetrosCategory
eSubCategory
para transações Mastercard e Hipercard, dentro do nóPayment
. Confira a lista de categorias na descrição do parâmetroCategory
e a tabela completa de subcategorias em Indicador de Início da Transação.
Seguem exemplos de envio de requisição e resposta para criar uma transação de crédito:
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"Tip":false,
"CreditCard":{
"CardNumber":"4551870000000181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":"false",
"Alias":"",
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
}
},
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
"Credentials":{
"Code":"9999999",
"Key":"D8888888",
"Password":"LOJA9999999",
"Username":"#Braspag2018@NOMEDALOJA#",
"Signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
]
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051002",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"Tip":false,
"CreditCard":{
"CardNumber":"4551870000000181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":"false",
"Alias":"",
"CardOnFile":{
"Usage":"Used",
"Reason":"Unscheduled"
}
},
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
"Credentials":{
"Code":"9999999",
"Key":"D8888888",
"Password":"LOJA9999999",
"Username":"#Braspag2018@NOMEDALOJA#",
"Signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
]
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na Braspag. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na Braspag. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
MerchantOrderId |
Número de identificação do pedido. | texto | 50 | Sim |
Customer.Name |
Nome do comprador. | texto | 255 | Sim |
Customer.Identity |
Número do CPF ou CNPJ do cliente. | texto | 14 | Não |
Customer.IdentityType |
Tipo de documento de identificação do comprador (CPF ou CNPJ). | texto | 255 | Não |
Customer.Email |
Email do comprador. | texto | 255 | Não |
Customer.Birthdate |
Data de nascimento do comprador no formato AAAA-MM-DD. | data | 10 | Não |
Customer.IpAddress |
Endereço de IP do comprador. Suporte a IPv4 e IPv6. | texto | 45 | Não |
Customer.Address.Street |
Endereço de contato do comprador. | texto | 255 | Não* |
Customer.Address.Number |
Número do endereço de contato do comprador. | texto | 15 | Não* |
Customer.Address.Complement |
Complemento do endereço de contato do comprador. | texto | 50 | Não* |
Customer.Address.ZipCode |
CEP do endereço de contato do comprador. | texto | 9 | Não* |
Customer.Address.City |
Cidade do endereço de contato do comprador. | texto | 50 | Não* |
Customer.Address.State |
Estado do endereço de contato do comprador. | texto | 2 | Não* |
Customer.Address.Country |
País do endereço de contato do comprador. | texto | 35 | Não* |
Customer.Address.District |
Bairro do endereço de contato do comprador. | texto | 50 | Não* |
Customer.DeliveryAddress.Street |
Endereço de entrega do comprador. | texto | 255 | Não* |
Customer.DeliveryAddress.Number |
Número do endereço de entrega. | texto | 15 | Não* |
Customer.DeliveryAddress.Complement |
Complemento do endereço de entrega. | texto | 50 | Não* |
Customer.DeliveryAddress.ZipCode |
CEP do endereço de entrega. | texto | 9 | Não* |
Customer.DeliveryAddress.City |
Cidade do endereço de entrega. | texto | 50 | Não* |
Customer.DeliveryAddress.State |
Estado do endereço de entrega. | texto | 2 | Não* |
Customer.DeliveryAddress.Country |
País do endereço de entrega. | texto | 35 | Não* |
Customer.DeliveryAddress.District |
Bairro do endereço de entrega. | texto | 50 | Não* |
Payment.Provider |
Nome do provedor do meio de pagamento. Clique aqui para acessar a lista de provedores. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. Neste caso, “CreditCard”. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.ServiceTaxAmount |
Aplicável apenas para empresas aéreas. Montante do valor da autorização que deve ser destinado à taxa de serviço. Obs.: Esse valor não é adicionado ao valor da autorização. | número | 15 | Não |
Payment.Currency |
Moeda em que o pagamento será feito (BRL / USD / MXN / COP / CLP / ARS / PEN / EUR / PYN / UYU / VEB / VEF / GBP). | texto | 3 | Não |
Payment.Country |
País em que o pagamento será feito. | texto | 3 | Não |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
Payment.Interest |
Tipo de parcelamento - Loja (“ByMerchant”) ou Emissor (“ByIssuer”). | texto | 10 | Não |
Payment.Capture |
Indica se a autorização deve ser com captura automática (“true”) ou não (“false”). Deverá verificar junto à adquirente a disponibilidade desta funcionalidade. | booleano | — | Não (default “false”) |
Payment.Authenticate |
Indica se a transação deve ser autenticada (“true”) ou não (“false”). Deverá verificar junto à adquirente a disponibilidade desta funcionalidade. | booleano | — | Não (default “false”) |
Payment.Recurrent |
Indica se a transação é do tipo recorrente (“true”) ou não (“false”). O valor “true” não originará uma nova recorrência, apenas permitirá a realização de uma transação sem a necessidade de envio do CVV. Authenticate deve ser “false” quando Recurrent é “true”. Somente para transações Cielo, Cielo30 e Rede2. |
booleano | — | Não (default “false”) |
Payment.SoftDescriptor |
Valor que será concatenado com o valor de cadastro na adquirente para identificação na fatura. | texto | 13 | Não |
Payment.DoSplit |
Indica se a transação será dividida entre várias contas (“true”) ou não (“false”). | booleano | — | Não (default “false”) |
Payment.Tip |
As gorjetas são um tipo de transação que funcionam para cartão de crédito ou débito, tokenizados ou não. Se o valor for true, a transação é identificada como gorjeta, caso contrário, o valor deverá ser false. | booleano | — | Não (default “false”) |
Payment.CreditCard.CardNumber |
Número do cartão do comprador. | texto | 19 | Sim |
Payment.CreditCard.Holder |
Nome do portador impresso no cartão. Obs.: Regras de tamanho do campo podem variar de acordo com a adquirente. | texto | 25 | Sim |
Payment.CreditCard.ExpirationDate |
Data de validade impressa no cartão. | texto | 7 | Sim |
Payment.CreditCard.SecurityCode |
Código de segurança impresso no verso do cartão. | texto | 4 | Sim |
Payment.CreditCard.Brand |
Bandeira do cartão. | texto | 10 | Sim |
Payment.CreditCard.SaveCard |
Identifica se o cartão será salvo para gerar o token (CardToken). | booleano | — | Não (default “false”) |
Payment.CreditCard.Alias |
Nome atribuído pelo lojista ao cartão salvo como CardToken. | texto | 64 | Não |
Payment.CreditCard.CardOnFile.Usage |
“First” se o cartão foi armazenado e é seu primeiro uso. “Used” se o cartão foi armazenado e já utilizado em outra transação. Aplicável para Cielo30 e Rede2. |
texto | - | Não |
Payment.CreditCard.CardOnFile.Reason |
Indica o propósito de armazenamento de cartões, caso o campo Usage seja “Used”.“Recurring” - Compra recorrente programada, ex.: assinaturas. “Unscheduled” - Compra recorrente sem agendamento, ex.: aplicativos de serviços. “Installments” - Parcelamento através da recorrência. Aplicável para Cielo30 e Rede2. |
texto | - | Condicional |
Payment.InitiatedTransactionIndicator.Category |
Categoria do indicador de início da transação. Válido para bandeira Mastercard e Hipercard. Valores possíveis: - “C1”: transação inciada pelo portador do cartão; - “M1”: transação recorrente ou parcelada iniciada pela loja; - “M2”: transação iniciada pela loja. |
string | 2 | Condicional. Obrigatório para bandeira Mastercard e Hipercard |
Payment.InitiatedTransactionIndicator.Subcategory |
Subcategoria do indicador. Válido para bandeira Mastercard e Hipercard. Valores possíveis: Se InitiatedTransactionIndicator.Category = “C1” ou “M1”CredentialsOnFile StandingOrder Subscription Installment Se InitiatedTransactionIndicator.Category = “M2”PartialShipment RelatedOrDelayedCharge NoShow Resubmission Consulte a tabela com a descrição das subcategorias em Indicador de Início da Transação. |
string | - | Condicional. Obrigatório para bandeira Mastercard e Hipercard |
Payment.Credentials.Code |
Afiliação gerada pela adquirente. | texto | 100 | Condicional** |
Payment.Credentials.Key |
Chave de afiliação/token gerado pela adquirente. | texto | 100 | Condicional** |
Payment.Credentials.Username |
Usuário gerado no credenciamento com a adquirente Getnet (envio obrigatório se a transação é direcionada para Getnet). | texto | 50 | Condicional** |
Payment.Credentials.Password |
Senha gerada no credenciamento com a adquirente Getnet (envio obrigatório se a transação é direcionada para Getnet). | texto | 50 | Condicional** |
Payment.Credentials.Signature |
Envio do TerminalID da adquirente Global Payments, ex.: “001”. Para Safra colocar o nome do estabelecimento, cidade e o estado concatenados com ponto-e-vírgula (;), ex.: “NomedaLoja;São Paulo;SP”. | texto | – | Condicional** |
Payment.ExtraDataCollection.Name |
Nome do campo que será gravado como dado extra. | texto | 50 | Não |
Payment.ExtraDataCollection.Value |
Valor do campo que será gravado como dado extra. | texto | 1024 | Não |
**Obrigatório caso não estejam pré configurados nos meios de pagamento do MerchantID utilizado.
Se as suas transações forem uma chamada conjunta com o Antifraude, os tamanhos de campos podem ser diferentes. Consulte o tópico Pagamentos com Análise de Fraude.
{
"MerchantOrderId": "2017051002",
"Customer": {
"Name": "Nome do Comprador",
"Identity": "12345678909",
"IdentityType": "CPF",
"Email": "comprador@braspag.com.br",
"Birthdate": "1991-01-02",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"DoSplit":false,
"Tip":false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Visa"
"Alias": "",
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
}
},
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
"Credentials": {
"Code": "9999999",
"Key": "D8888888",
"Password": "LOJA9999999",
"Username": "#Braspag2018@NOMEDALOJA#"
},
"ProofOfSale": "20170510053219433",
"AcquirerTransactionId": "0510053219433",
"AuthorizationCode": "936403",
"SoftDescriptor": "Mensagem",
"VelocityAnalysis": {
"Id": "c374099e-c474-4916-9f5c-f2598fec2925",
"ResultMessage": "Accept",
"Score": 0
},
"PaymentId": "c374099e-c474-4916-9f5c-f2598fec2925",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-10 17:32:19",
"CapturedAmount": 10000,
"CapturedDate": "2017-05-10 17:32:19",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ExtraDataCollection": [{
"Name": "NomeDoCampo",
"Value": "ValorDoCampo"
}],
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Payment.MerchantAdviceCode":"1",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925/void"
}
]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId": "2017051002",
"Customer": {
"Name": "Nome do Comprador",
"Identity": "12345678909",
"IdentityType": "CPF",
"Email": "comprador@braspag.com.br",
"Birthdate": "1991-01-02",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"DoSplit":false,
"Tip":false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Visa"
"Alias": "",
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
}
},
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
"Credentials": {
"Code": "9999999",
"Key": "D8888888",
"Password": "LOJA9999999",
"Username": "#Braspag2018@NOMEDALOJA#"
},
"ProofOfSale": "20170510053219433",
"AcquirerTransactionId": "0510053219433",
"AuthorizationCode": "936403",
"SoftDescriptor": "Mensagem",
"VelocityAnalysis": {
"Id": "c374099e-c474-4916-9f5c-f2598fec2925",
"ResultMessage": "Accept",
"Score": 0
},
"PaymentId": "c374099e-c474-4916-9f5c-f2598fec2925",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-10 17:32:19",
"CapturedAmount": 10000,
"CapturedDate": "2017-05-10 17:32:19",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ExtraDataCollection": [{
"Name": "NomeDoCampo",
"Value": "ValorDoCampo"
}],
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925/void"
}
]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
AcquirerTransactionId |
Id da transação no provedor de meio de pagamento. | texto | 40 | texto alfanumérico |
ProofOfSale |
Número do comprovante de venda. | texto | 20 | texto alfanumérico |
AuthorizationCode |
Código de autorização. | texto | 300 | texto alfanumérico |
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
CapturedDate |
Data em que a transação foi capturada. | texto | 19 | AAAA-MM-DD HH:mm:SS |
CapturedAmount |
Valor capturado, sem pontuação. | número | 15 | 100 equivale a R$ 1,00 |
ECI |
Electronic Commerce Indicator. Representa o resultado da autenticação. | texto | 2 | Ex.: 5 |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | texto alfanumérico |
Status |
Status da transação. Veja a lista completa de Status da Transação. | byte | 2 | Ex.: 1 |
ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 32 | 57 |
ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 512 | Transação Aprovada |
Payment.MerchantAdviceCode |
Código de retorno da bandeira que define período para retentativa. Válido para bandeira Mastercard e Hipercard. Saiba mais em Programa de Retentativa das Bandeiras | texto | 2 | Numérico |
Uma transação com cartão de débito se efetua de forma semelhante à com cartão de crédito. É obrigatório, porém, submetê-la ao processo de autenticação.
Todas as transações de débito devem ser autenticadas por exigência dos bancos emissores e bandeiras, com o objetivo de promover maior segurança. Para autenticar uma transação de débito, usamos o protocolo EMV 3DS 2.2. Esse protocolo é um script integrado ao website do e-commerce que verifica a identidade do portador do cartão enquanto mantém uma boa experiência de compra ao consumidor e reduz o risco de fraude.
Para integrar o método de autenticação, consulte a documentação do 3DS 2.2.
Veja abaixo a representação de um fluxo transacional padrão na criação de uma transação de débito, com as etapas de autenticação e autorização:
Transações de débito Mastercard e Hipercard com credenciais armazenadas: a bandeira Mastercard e Hipercard exige o envio do Indicador de Início da Transação para compras de cartão de crédito e débito que usam os dados armazenados de um cartão. O objetivo é indicar se a transação foi iniciada pelo comprador (titular do cartão) ou pela loja. Nesse cenário é obrigatório o envio do nó
InitiatedTransactionIndicator
com os parâmetrosCategory
eSubCategory
para transações Mastercard e Hipercard, dentro do nóPayment
. Confira a lista de categorias na descrição do parâmetroCategory
e a tabela completa de subcategorias em Indicador de Início da Transação.
{
"MerchantOrderId":"202301131052",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678900",
"IdentityType":"CPF",
"Email":"comprador@email.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"DebitCard":{
"CardNumber":"************1106",
"Holder":"NOME DO TITULAR DO CARTÃO",
"ExpirationDate":"12/2030",
"SaveCard":false,
"Brand":"Master" },
"Authenticate":true,
"Recurrent":false,
"ReturnUrl":"https://braspag.com.br",
"ProofOfSale":"20230113",
"AcquirerTransactionId":"0510053219433",
"AuthorizationCode":"936403",
"Tip":false,
"ExternalAuthentication":{
"Cavv":"AAABB2gHA1B5EFNjWQcDAAAAAAB=",
"Xid":"Uk5ZanBHcWw2RjRCbEN5dGtiMTB=",
"Eci":"5",
"Version":"2",
"ReferenceId":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6" },
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
]
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
--header "MerchantKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
--data-binary
--verbose
{
"MerchantOrderId":"202301131052",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678900",
"IdentityType":"CPF",
"Email":"comprador@email.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"DebitCard":{
"CardNumber":"************1106",
"Holder":"NOME DO TITULAR DO CARTÃO",
"ExpirationDate":"12/2030",
"SaveCard":false,
"Brand":"Master" },
"Authenticate":true,
"Recurrent":false,
"ReturnUrl":"https://braspag.com.br",
"ProofOfSale":"20230113",
"AcquirerTransactionId":"0510053219433",
"AuthorizationCode":"936403",
"Tip":false,
"ExternalAuthentication":{
"Cavv":"AAABB2gHA1B5EFNjWQcDAAAAAAB=",
"Xid":"Uk5ZanBHcWw2RjRCbEN5dGtiMTB=",
"Eci":"5",
"Version":"2",
"ReferenceId":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6" },
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
]
}
}
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Payment.Provider |
Nome do provedor do meio de pagamento. Clique aqui para acessar a lista de provedores. Obs.: Atualmente somente a Cielo suporta esta forma de pagamento via Pagador. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. Neste caso, “DebitCard”. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
Payment.ReturnUrl |
URL para onde o usuário será redirecionado após o fim do pagamento. | texto | 1024 | Sim |
Payment.Tip |
As gorjetas são um tipo de transação que funcionam para cartão de crédito ou débito, tokenizados ou não. Se o valor for true, a transação é identificada como gorjeta, caso contrário, o valor deverá ser false. | booleano | — | Não (default “false”) |
Payment.DebitCard.CardNumber |
Número do cartão do comprador. | texto | 16 | Sim |
Payment.DebitCard.Holder |
Nome do comprador impresso no cartão. | texto | 25 | Sim |
Payment.DebitCard.ExpirationDate |
Data de validade impresso no cartão, no formato MM/AAAA. | texto | 7 | Sim |
Payment.DebitCard.SecurityCode |
Código de segurança impresso no verso do cartão. | texto | 4 | Sim |
Payment.DebitCard.Brand |
Bandeira do cartão. | texto | 10 | Sim |
Payment.DebitCard.CardOnFile.Usage |
“First” se o cartão foi armazenado e é seu primeiro uso. “Used” se o cartão foi armazenado e já utilizado em outra transação. Aplicável somente para Cielo. |
texto | - | Não |
Payment.DebitCard.CardOnFile.Reason |
Indica o propósito de armazenamento de cartões, caso o campo Usage seja “Used”.“Recurring” - Compra recorrente programada, ex.: assinaturas. “Unscheduled” - Compra recorrente sem agendamento, ex.: aplicativos de serviços. “Installments” - Parcelamento através da recorrência. Aplicável somente para Cielo. |
texto | - | Condicional |
Payment.Authenticate |
Define se o comprador será direcionado ao emissor para autenticação do cartão. | booleano (“true” / “false”) | - | Sim, caso a autenticação seja validada. |
Payment.ExternalAuthentication.ReturnUrl |
URL de retorno aplicável somente se a versão for “1”. | alfanumérico | 1024 | Sim. |
Payment.ExternalAuthentication.Cavv |
Assinatura retornada nos cenários de sucesso na autenticação. | texto | 28 | Sim, caso a autenticação seja validada. |
Payment.ExternalAuthentication.Xid |
XID retornado no processo de autenticação. | texto | 28 | Sim, quando a versão do 3DS for “1”. |
Payment.ExternalAuthentication.Eci |
Electronic Commerce Indicator retornado no processo de autenticação. | número | 1 | Sim. |
Payment.ExternalAuthentication.Version |
Versão do 3DS utilizado no processo de autenticação. | alfanumérico | 1 posição | Sim, quando a versão do 3DS for “2” ou maior. |
Payment.ExternalAuthentication.ReferenceId |
RequestID retornado no processo de autenticação. | GUID | 36 | Sim, quando a versão do 3DS for “2” ou maior. |
Payment.InitiatedTransactionIndicator.Category |
Categoria do indicador de início da transação. Válido para bandeira Mastercard e Hipercard. Valores possíveis: - “C1”: transação inciada pelo portador do cartão; - “M1”: transação recorrente ou parcelada iniciada pela loja; - “M2”: transação iniciada pela loja. |
string | 2 | Condicional. Obrigatório para bandeira Mastercard e Hipercard |
Payment.InitiatedTransactionIndicator.Subcategory |
Subcategoria do indicador. Válido para bandeira Mastercard e Hipercard. Valores possíveis: Se InitiatedTransactionIndicator.Category = “C1” ou “M1”CredentialsOnFile StandingOrder Subscription Installment Se InitiatedTransactionIndicator.Category = “M2”PartialShipment RelatedOrDelayedCharge NoShow Resubmission Consulte a tabela com a descrição das subcategorias em Indicador de Início da Transação. |
string | - | Condicional. Obrigatório para bandeira Mastercard e Hipercard |
{
"MerchantOrderId": "2017051002",
"Customer": {
"Name": "Nome do Comprador",
"Identity": "12345678909",
"IdentityType": "CPF",
"Email": "comprador@braspag.com.br",
"Birthdate": "1991-01-02",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"Payment": {
"DebitCard": {
"CardNumber": "455187******0181",
"Holder": "NOME DO TITULAR DO CARTÃO",
"ExpirationDate": "12/2031",
"SaveCard": false,
"Brand": "Visa" },
"Authenticate":true,
"Recurrent":false,
"ReturnUrl":"http://www.braspag.com.br",
"ProofOfSale":"20230115053219433",
"AcquirerTransactionId":"10069930690009D366FA",
"AuthorizationCode":"936403",
"Tip":false,
"SentOrderId":"10045146",
"ExternalAuthentication":{
"Cavv":"AAABB2gHA1B5EFNjWQcDAAAAAAB=",
"Xid":"Uk5ZanBHcWw2RjRCbEN5dGtiMTB=",
"Eci":"02",
"Version":"2",
"ReferenceId":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6" },
"PaymentId":"21423fa4-6bcf-448a-97e0-e683fa2581b",
"Type":"DebitCard",
"Amount":10000,
"ReceivedDate":"2023-01-09 16:24:14",
"CapturedAmount":10000,
"CapturedDate":"2023-01-09 16:24:15",
"Currency":"BRL",
"Country":"BRA",
"Provider":"Cielo",
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo" }
],
"ReasonCode":0,
"ReasonMessage":"Successful",
"Status":2,
"ProviderReturnCode":"00",
"ProviderReturnMessage":"Successful",
"Links":[
{
"Method":"GET",
"Rel":"self",
"Href":"https://apiquerysandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925" },
{
"Method":"PUT",
"Rel":"void",
"Href":"https://apisandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925/void" }
]
}
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId": "2017051002",
"Customer": {
"Name": "Nome do Comprador",
"Identity": "12345678909",
"IdentityType": "CPF",
"Email": "comprador@braspag.com.br",
"Birthdate": "1991-01-02",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"Payment": {
"DebitCard": {
"CardNumber": "455187******0181",
"Holder": "NOME DO TITULAR DO CARTÃO",
"ExpirationDate": "12/2031",
"SaveCard": false,
"Brand": "Visa" },
"Authenticate":true,
"Recurrent":false,
"ReturnUrl":"http://www.braspag.com.br",
"ProofOfSale":"20230115053219433",
"AcquirerTransactionId":"10069930690009D366FA",
"AuthorizationCode":"936403",
"Tip":false,
"SentOrderId":"10045146",
"ExternalAuthentication":{
"Cavv":"AAABB2gHA1B5EFNjWQcDAAAAAAB=",
"Xid":"Uk5ZanBHcWw2RjRCbEN5dGtiMTB=",
"Eci":"02",
"Version":"2",
"ReferenceId":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6" },
"PaymentId":"21423fa4-6bcf-448a-97e0-e683fa2581b",
"Type":"DebitCard",
"Amount":10000,
"ReceivedDate":"2023-01-09 16:24:14",
"CapturedAmount":10000,
"CapturedDate":"2023-01-09 16:24:15",
"Currency":"BRL",
"Country":"BRA",
"Provider":"Cielo",
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo" }
],
"ReasonCode":0,
"ReasonMessage":"Successful",
"Status":2,
"ProviderReturnCode":"00",
"ProviderReturnMessage":"Successful",
"Links":[
{
"Method":"GET",
"Rel":"self",
"Href":"https://apiquerysandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925" },
{
"Method":"PUT",
"Rel":"void",
"Href":"https://apisandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925/void" }
]
}
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
AcquirerTransactionId |
Id da transação no provedor de meio de pagamento. | texto | 40 | texto alfanumérico |
ProofOfSale |
Número do comprovante de venda. | texto | 20 | texto alfanumérico |
AuthorizationCode |
Código de autorização. | texto | 300 | texto alfanumérico |
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | Texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | texto alfanumérico |
Status |
Status da transação. Veja a lista completa de Status da Transação. | byte | 2 | Ex.: 1 |
ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 32 | Ex.: 57 |
ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 512 | Ex.: Transação Aprovada |
Payment.MerchantAdviceCode |
Código de retorno da bandeira que define período para retentativa. Válido para bandeira Mastercard e Hipercard. | texto | 2 | numérico |
Payment.ExternalAuthentication.Cavv |
Valor Cavv submetido na requisição de autorização. | texto | 28 | kBMaEAEAbV3FcwnExrXh4phhmpIj |
Payment.ExternalAuthentication.Xid |
Valor Xid submetido na requisição de autorização. | texto | 28 | ZGUzNzgwYzQxM2ZlMWMxMzVkMjc= |
Payment.ExternalAuthentication.Eci |
Valor ECI submetido na requisição de autorização. | número | 1 | Ex. 5 |
Payment.ExternalAuthentication.Version |
Versão do 3DS utilizado no processo de autenticação. | alfanumérico | 1 | Ex: 2 |
Payment.ExternalAuthentication.ReferenceId |
RequestID retornado no processo de autenticação. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
É possível processar um cartão de débito sem a necessidade de submeter o comprador ao processo de autenticação. Confira o artigo Débito sem Senha (Autenticação) para mais detalhes a respeito desse tipo de transação.Este é o caso do auxílio emergencial “Coronavoucher”, disponibilizado pelo governo, que pode ser consumido através do cartão de débito virtual da Caixa Econômica Federal. Desta forma, a requisição deverá ser do tipo Cartão de Débito, porém sem autenticação, conforme o exemplo abaixo.
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider": "Cielo30",
"Type": "DebitCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Capture": true,
"Authenticate": false,
"DebitCard":{
"CardNumber":"5067220000000001",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Elo"
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
},
[...]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider": "Cielo30",
"Type": "DebitCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Capture": true,
"Authenticate": false,
"DebitCard":{
"CardNumber":"5067220000000001",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Elo"
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
},
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Payment.Provider |
Nome do provedor do meio de pagamento. Obs.: Disponível apenas para Cielo30. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. Neste caso, “DebitCard”. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.Installments |
Número de parcelas. Fixo “1” para o cartão de débito. | número | 2 | Sim |
Payment.DebitCard.CardNumber |
Número do cartão do comprador. | texto | 16 | Sim |
Payment.DebitCard.Holder |
Nome do comprador impresso no cartão. | texto | 25 | Sim |
Payment.DebitCard.ExpirationDate |
Data de validade impresso no cartão, no formato MM/AAAA. | texto | 7 | Sim |
Payment.Payment.DebitCard.SecurityCode |
Código de segurança impresso no verso do cartão. | texto | 4 | Sim |
Payment.DebitCard.Brand |
Bandeira do cartão. Para este tipo de transação, sempre “Elo”. | texto | 10 | Sim |
Payment.DebitCard.CardOnFile.Usage |
“First” se o cartão foi armazenado e é seu primeiro uso. “Used” se o cartão foi armazenado e já utilizado em outra transação. Aplicável somente para Cielo. |
texto | - | Não |
Payment.DebitCard.CardOnFile.Reason |
Indica o propósito de armazenamento de cartões, caso o campo Usage seja “Used”.“Recurring” - Compra recorrente programada, ex.: assinaturas. “Unscheduled” - Compra recorrente sem agendamento, ex.: aplicativos de serviços. “Installments” - Parcelamento através da recorrência. Aplicável somente para Cielo. |
texto | - | Condicional |
{
[...]
"Payment": {
"DebitCard": {
"CardNumber": "506722******0001",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Elo"
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
},
"AcquirerTransactionId": "10069930690009D366FA",
"PaymentId": "21423fa4-6bcf-448a-97e0-e683fa2581ba",
"Type": "DebitCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 15:19:58",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Cielo30",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Payment.MerchantAdviceCode":"1",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
[...]
"Payment": {
"DebitCard": {
"CardNumber": "506722******0001",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Elo"
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
},
"AcquirerTransactionId": "10069930690009D366FA",
"PaymentId": "21423fa4-6bcf-448a-97e0-e683fa2581ba",
"Type": "DebitCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 15:19:58",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Cielo30",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Payment.MerchantAdviceCode":"1",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
AcquirerTransactionId |
Id da transação no provedor de meio de pagamento. | texto | 40 | texto alfanumérico |
ProofOfSale |
Número do comprovante de venda. | texto | 20 | texto alfanumérico |
AuthorizationCode |
Código de autorização. | Texto | 300 | texto alfanumérico |
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | Texto | 32 | texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
Texto | 512 | texto alfanumérico |
Status |
Status da transação. Clique aqui para ver lista de status. | byte | 2 | Ex.: 1 |
ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 32 | Ex.: 57 |
ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 512 | Ex.: Transação Aprovada |
Payment.MerchantAdviceCode |
Código de retorno da bandeira que define período para retentativa. Válido para bandeira Mastercard e Hipercard. | texto | 2 | numérico |
O que é?
É um protocolo de autenticação que confirma se o comprador é de fato o portador do cartão (de crédito ou débito). O objetivo do 3DS (também chamado de EMV 3DS) é evitar fraudes em transações de cartão não presente (CNP).
Por meio do 3DS, os dados do comprador são enviados para as bandeiras e emissores do cartão, que irão realizar a autenticação. Para uma transação autenticada pelo 3DS, a responsabilidade em caso de chargeback será das bandeiras ou emissores.
Todas as transações de cartão de débito devem ser autenticadas pelo protocolo 3DS.
Qual é o objetivo?
O 3DS realiza a autenticação validando dados do portador. A autenticação pode ser silenciosa ou com desafio (o desafio é uma interface para autenticação, ou seja, o cliente será submetido a uma validação adicional do emissor).
Qual é o impacto do uso no meu negócio?
Ao autenticar transações pelo protocolo 3DS, a responsabilidade em caso de chargeback será das bandeiras ou emissores.
Como usar o 3DS?
O processo de autorização de cartão autenticada via 3D Secure 2.2 ocorre em duas etapas:
O fluxo a seguir descreve as etapas de autenticação em alto nível:
1. O comprador escolhe pagar com cartão de crédito ou débito;
2. A loja executa um script, solicitando à Cielo autenticação através da solução 3DS 2.2;
3. A loja envia requisição com dados do comprador para a bandeira;
4. A bandeira envia a requisição para avaliação de risco do emissor;
5. O emissor avalia as informações e determina se fluxo será com ou sem desafio ao portador;
5.1. Se o emissor solicitar desafio, cria e envia a URL para a loja;
5.2. A loja apresenta lightbox do desafio na página de checkout para obter resposta do comprador;
5.3. O comprador responde o desafio, completando a autenticação;
6. O emissor envia o resultado da autenticação para o 3DS Server;
7. O 3DS Server envia resultado da autenticação no campo ECI. A loja decide seguir ou não para autorização.
A loja pode optar por submeter uma transação não autenticada para autorização; no entanto, nesse caso, a loja será responsável em caso de chargeback.
Como não utilizar? O que não fazer?
Como saber se a transação foi autenticada?
Isso irá depender do resultado da Tabela de ECI.
Detalhes importantes
O ECI (Eletronic Commerce Indicator) retornado na resposta da autenticação indica se o portador foi autenticado ou não pela bandeira ou emissor.
Se o ECI retornado indicar que o portador não foi autenticado, recomendamos a utilização de Antifraude para analisar o risco da transação.
Caso a loja envie suas transações primeiro para o Antifraude e a análise indique alto risco, recomendamos que o pedido seja encaminhado para autenticação no 3DS 2.2.
Integração do 3DS 2.2
Para integrar a autenticação às suas transações:
ExternalAuthentication
, conforme exemplos a seguir.Acesse o padrão mais atual do autenticador em 3DS 2.2, sendo que a versão 3DS 1.0 foi descontinuada.
As tabelas a seguir se aplicam para transações de crédito e débito Mastercard/Hipercard com credenciais armazenadas. O objetivo é identificar se a transação foi iniciada pelo titular do cartão ou pela loja:
Payment.InitiatedTransactionIndicator
. Este nó tem dois parâmetros, categoria (Category
) e subcategoria (Subcategory
); confira a seguir o exemplo do nó na requisição e as tabelas com os valores correspondentes: "Payment":{
(...)
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
(...)
}
"Payment":{
(...)
"InitiatedTransactionIndicator": {
"Category": "C1",
"Subcategory": "Standingorder"
},
(...)
}
Confira o exemplo de requisição completa em Criando uma transação de crédito ou em Criando uma transação de débito.
Parâmetro | Tipo | Tamanho | Obrigatório? | Descrição |
---|---|---|---|---|
Payment.InitiatedTransactionIndicator.Category |
string | 2 | Condicional. Obrigatório para as bandeira Mastercard e Hipercard. | Categoria do indicador de início da transação. Válido para bandeira Mastercard e Hipercard. Valores possíveis: - “C1”: transação inciada pelo portador do cartão; - “M1”: transação recorrente ou parcelada iniciada pela loja; - “M2”: transação iniciada pela loja. |
Payment.InitiatedTransactionIndicator.Subcategory |
string | - | Condicional. Obrigatório para as bandeira Mastercard e Hipercard. | Subcategoria do indicador. Válido para bandeira Mastercard e Hipercard. Valores possíveis: Se InitiatedTransactionIndicator.Category = “C1” ou “M1”CredentialsOnFile StandingOrder Subscription Installment Se InitiatedTransactionIndicator.Category = “M2”PartialShipment RelatedOrDelayedCharge NoShow Resubmission Consulte a tabela com a descrição das subcategorias em Indicador de início da transação. |
A resposta será o padrão da transação de crédito ou débito com o retorno do mesmo nó inserido na requisição.
As categorias (C1, M1 ou M2) devem ser informadas no parâmetro Payment.InitiatedTransactionIndicator.Category
.
Categoria | Quem iniciou a transação | Descrição |
---|---|---|
C1 |
Transação iniciada pelo portador do cartão (CIT). | A transação é iniciada pela pessoa titular do cartão, que fornece os dados do cartão e permite o armazenamento ou usa os dados do cartão armazenado previamente. A subcategoria indica a finalidade da compra/armazenamento do cartão. |
M1 |
Transação iniciada pela loja (MIT). | A loja já tem os dados do cartão do comprador armazenados de forma criptografada (com o consentimento do titular do cartão) e a autorização para iniciar uma ou mais transações futuras de compras recorrentes ou parceladas. |
M2 |
Transação iniciada pela loja (MIT). | A loja já tem os dados do cartão do comprador armazenados de forma criptografada (com o consentimento do titular do cartão) e a autorização para iniciar uma ou mais transações futuras, relacionadas a remessa parcial, cobranças atrasadas/adicionais, multas por no-show e retentativas. |
As subcategorias devem ser informadas no parâmetro Payment.InitiatedTransactionIndicator.Subcategory
.
Categoria do indicador | Subcategoria do indicador | Significado | Exemplo |
---|---|---|---|
C1 | CredentialsOnFile |
É uma transação iniciada pelo comprador (CIT), na qual o comprador autoriza a loja a salvar dados do cartão para compras futuras, ou na qual usa dados de cartão previamente armazenados pela loja. | Quando o titular do cartão inicia uma compra e a loja solicita autorização para salvar os dados do cartão para futuras compras iniciadas pelo titular do cartão, como compra com um clique. |
C1 | StandingOrder |
É uma transação iniciada pelo comprador (CIT), na qual o comprador autoriza a loja a salvar dados do cartão para pagamentos futuros de valor variável e frequência fixa. | Quando é uma transação inicial para armazenar os dados do cartão para um pagamento mensal de serviços públicos. |
C1 | Subscription |
É uma transação iniciada pelo comprador (CIT), na qual o comprador autoriza a loja a salvar dados do cartão para compras recorrentes de valor e frequência fixos. | Quando é uma transação inicial para armazenar os dados do cartão para uma assinatura mensal, como jornais, revistas e cursos. |
C1 | Installment |
É uma transação iniciada pelo comprador (CIT), na qual o comprador inicia a transação da primeira parcela e autoriza a loja a salvar dados do cartão para pagamento das parcelas seguintes. | Quando é uma transação inicial para armazenar os dados do cartão para uma compra a ser paga por meios de pagamentos parcelados. |
M1 | CredentialsOnFile |
São transações iniciadas pela loja (MIT), de valor fixo ou variável e sem intervalo fixo ou data programada. | Quando o consumidor permite que uma concessionária inicie transações de cobrança de pedágio quando o saldo em sua conta estiver abaixo de uma quantia estabelecida (auto recarga). |
M1 | StandingOrder |
São transações iniciadas pela loja (MIT), de valor variável e intervalo fixo. | Pagamentos mensais de serviços públicos. |
M1 | Subscription |
São transações iniciadas pela loja (MIT), de valor e intervalo fixos. | Assinatura mensal ou pagamento de serviço mensal fixo. |
M1 | Installment |
São transações iniciadas pela loja (MIT), de valor conhecido e período definido. | Quando o consumidor compra uma televisão por R$2000,00 e faz o pagamento em quatro parcelas iguais de R$500,00; nesse cenário, a primeira transação é iniciada pelo titular do cartão (CIT) e as três transações restantes são iniciadas pela loja (MIT). |
M2 | PartialShipment |
São transações iniciadas pela loja (MIT) quando a compra será dividida em mais de uma remessa de entrega. | Quando uma quantidade acordada de mercadorias encomendadas por e-commerce não está disponível para envio no momento da compra - cada remessa é uma transação separada. |
M2 | RelatedOrDelayedCharge |
São transações iniciadas pela loja (MIT) para despesas adicionais, ou seja, é uma cobrança adicional da conta após a prestação dos serviços iniciais e o processamento do pagamento. | Quando um hotel faz uma cobrança do frigobar do após o titular do cartão fazer check-out do hotel. |
M2 | NoShow |
São transações iniciadas pela loja (MIT) para cobrar multas de acordo com a política de cancelamento do estabelecimento. | Quando o comprador cancela uma reserva sem aviso prévio adequado ao estabelecimento. |
M2 | Resubmission |
São transações iniciadas pela loja (MIT) como retentativa de transações negadas anteriormente, ou seja, quando a tentativa anterior de obter autorização para uma transação foi recusada, mas a resposta do emissor não proíbe a loja de tentar novamente mais tarde. | Quando o retorno do emissor/bandeira indica fundos insuficientes/resposta acima do limite de crédito. |
Atenção: Os dados do cartão são armazenados de forma criptografada.
Quando uma transação é submetida com o parâmetro Payment.Capture
igual a “false”, é necessário que seja feita, posteriormente, uma solicitação de captura para confirmar a transação.
Transações que não são capturadas até a data limite são automaticamente desfeitas pelas adquirentes. Clientes podem ter negociações específicas com as adquirentes para que alterem esse prazo limite de captura.
--request PUT "https://apisandbox.braspag.com.br/v2/sales/{PaymentId}/capture?amount=xxx&serviceTaxAmount=xxx"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
PaymentId |
Campo identificador do pedido. | GUID | 36 | Sim (envio no endpoint) |
Amount |
Valor a ser capturado, em centavos. Verificar se a adquirente utilizada suporta uma captura parcial. Caso não seja especificado um valor, a captura será total. | número | 15 | Não |
ServiceTaxAmount |
Aplicável para companhias aéreas. Montante do valor da autorização que deve ser destinado à taxa de serviço. Obs.: Esse valor não é adicionado ao valor da autorização. | número | 15 | Não |
{
"Status": 2,
"ReasonCode": 0,
"ReasonMessage": "Successful",
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/{PaymentId}"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/{PaymentId}/void"
}
]
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"Status": 2,
"ReasonCode": 0,
"ReasonMessage": "Successful",
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/{PaymentId}"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/{PaymentId}/void"
}
]
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
Status |
Status da transação. Clique aqui para ver lista de status. | byte | 2 | Ex.: 1 |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | texto alfanumérico |
A disponibilidade do serviço de estorno varia de adquirente para adquirente. Cada adquirente tem seus prazos-limites para permitir o estorno de uma transação. Neste artigo você poderá conferir cada um deles.
Para cancelar uma transação de cartão de crédito, é necessário o envio de mensagem HTTP através do método PUT para o recurso Payment, conforme o exemplo:
--request PUT "https://apisandbox.braspag.com.br/v2/sales/{PaymentId}/void?amount=xxx"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
PaymentId |
Campo identificador do pedido. | GUID | 36 | Sim (envio no endpoint) |
Amount |
Valor, em centavos, a ser cancelado/estornado. Observações.: 1. Verifique se a adquirente contratada suporta a operação de cancelamento ou estorno. 2. Caso o valor de Amount seja informado como “0” (zero), ou esse parâmetro não seja enviado, será considerado um estorno total do valor capturado. |
número | 15 | Não (envio no endpoint) |
{
"Status": 10,
"ReasonCode": 0,
"ReasonMessage": "Successful",
"ProviderReturnCode": "9",
"ProviderReturnMessage": "Operation Successful",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/{PaymentId}"
}
]
}
{
"Status": 10,
"ReasonCode": 0,
"ReasonMessage": "Successful",
"ProviderReturnCode": "9",
"ProviderReturnMessage": "Operation Successful",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/{PaymentId}"
}
]
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
Status |
Status da transação. Clique aqui para ver lista de status. | byte | 2 | Ex.: 1 |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | Texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | Texto alfanumérico |
O Velocity Check é uma ferramenta de combate a fraudes massivas, que disparam rajadas de transações com dados de pagamento repetidos. A ferramenta analisa a frequência de elementos de rastreabilidade, tais como Número do Cartão, CPF, CEP de entrega, entre outros, bloqueando transações suspeitas.
A funcionalidade deve ser contratada à parte, e posteriormente habilitada em sua loja via painel. Quando o Velocity está ativo, a resposta da transação traz o nó Velocity
com os detalhes da análise.
No caso da rejeição pela regra de Velocity, o ProviderReasonCode será “BP 171 - Rejected by fraud risk” (Velocity, com “ReasonCode 16 - AbortedByFraud”).
{
[...]
"VelocityAnalysis": {
"Id": "2d5e0463-47be-4964-b8ac-622a16a2b6c4",
"ResultMessage": "Reject",
"Score": 100,
"RejectReasons": [
{
"RuleId": 49,
"Message": "Bloqueado pela regra CardNumber. Name: Máximo de 3 Hits de Cartão em 1 dia. HitsQuantity: 3. HitsTimeRangeInSeconds: 1440. ExpirationBlockTimeInSeconds: 1440"
}]
[...]
}
}
{
[...]
"VelocityAnalysis": {
"Id": "2d5e0463-47be-4964-b8ac-622a16a2b6c4",
"ResultMessage": "Reject",
"Score": 100,
"RejectReasons": [
{
"RuleId": 49,
"Message": "Bloqueado pela regra CardNumber. Name: Máximo de 3 Hits de Cartão em 1 dia. HitsQuantity: 3. HitsTimeRangeInSeconds: 1440. ExpirationBlockTimeInSeconds: 1440"
}]
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho |
---|---|---|---|
VelocityAnalysis.Id |
Identificador da análise efetuada. | GUID | 36 |
VelocityAnalysis.ResultMessage |
Resultado da análise feita (“Accept” / “Reject”). | texto | 25 |
VelocityAnalysis.Score |
Número de pontos dado à operação. Ex.: 100. | número | 10 |
O DCC (Dynamic Currency Conversion) é um conversor de moedas da adquirente Global Payments que permite que o portador de um cartão estrangeiro escolha entre pagar em reais ou em sua moeda local, convertendo o valor do pedido no momento da compra com total transparência para o comprador. A solução é indicada para estabelecimentos que recebem pagamentos com cartões emitidos no exterior como hotéis, pousadas, polos comerciais e comércios em pontos turísticos.
Quando o estabelecimento possui o produto DCC habilitado, o processo de autorização é realizado em 3 etapas, explicadas a seguir:
Na primeira etapa, quando é solicitada uma autorização com um cartão internacional, a Global Payments identifica o país do cartão e aplica a conversão de moeda seguindo os cálculos específicos de cada bandeira, retornando as informações de conversão em seguida.
Não há diferença entre uma requisição de autorização padrão e uma de DCC.
{
[...]
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "123412******1234",
"Holder": "Comprador Teste",
"ExpirationDate": "12/2022",
"SaveCard": false,
"Brand": "Visa"
},
"ReturnUrl": "http://www.braspag.com.br/",
"PaymentId": "fa0c3119-c730-433a-123a-a3b6dfaaad67",
"Type": "CreditCard",
"Amount": 100,
"ReceivedDate": "2018-08-23 10:46:25",
"Currency": "BRL",
"Country": "BRA",
"Provider": "GlobalPayments",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 12,
"ProviderReturnCode": "0",
"ProviderReturnMessage": "Transação autorizada",
"CurrencyExchangeData": {
"Id": "fab6f3a752d700af1d50fdd19987b95df497652b",
"CurrencyExchanges": [{
"Currency": "EUR",
"ConvertedAmount": 31,
"ConversionRate": 3.218626,
"ClosingDate": "2017-03-09T00:00:00"
},
{
"Currency": "BRL",
"ConvertedAmount": 100
}
]
},
[...]
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
[...]
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "123412******1234",
"Holder": "Comprador Teste",
"ExpirationDate": "12/2022",
"SaveCard": false,
"Brand": "Visa"
},
"ReturnUrl": "http://www.braspag.com.br/",
"PaymentId": "fa0c3119-c730-433a-123a-a3b6dfaaad67",
"Type": "CreditCard",
"Amount": 100,
"ReceivedDate": "2018-08-23 10:46:25",
"Currency": "BRL",
"Country": "BRA",
"Provider": "GlobalPayments",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 12,
"ProviderReturnCode": "0",
"ProviderReturnMessage": "Transação autorizada",
"CurrencyExchangeData": {
"Id": "fab6f3a752d700af1d50fdd19987b95df497652b",
"CurrencyExchanges": [{
"Currency": "EUR",
"ConvertedAmount": 31,
"ConversionRate": 3.218626,
"ClosingDate": "2017-03-09T00:00:00"
},
{
"Currency": "BRL",
"ConvertedAmount": 100
}
]
}
[...]
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
AcquirerTransactionId |
Id da transação no provedor de meio de pagamento. | texto | 40 | Texto alfanumérico |
ProofOfSale |
Número do comprovante de venda. | texto | 20 | Texto alfanumérico |
AuthorizationCode |
Código de autorização. | texto | 300 | Texto alfanumérico |
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
ReasonCode |
Código de retorno da operação. | texto | 32 | Texto alfanumérico |
ReasonMessage |
Mensagem de retorno da operação. | texto | 512 | Texto alfanumérico |
Status |
Status da transação. Veja a lista completa de Status da Transação. | byte | 2 | Ex.: 12 |
ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 32 | 57 |
ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 512 | Transação Aprovada |
CurrencyExchangeData.Id |
Id da ação da troca de moeda. | Texto | 50 | 1b05456446c116374005602dcbaf8db8879515a0 |
CurrencyExchangeData.CurrencyExchanges.Currency |
Moeda local do comprador/cartão de crédito. | numérico | 4 | EUR |
CurrencyExchangeData.CurrencyExchanges.ConvertedAmount |
Valor convertido. | numérico | 12 | 23 |
CurrencyExchangeData.CurrencyExchanges.ConversionRate |
Taxa de conversão. | numérico | 9 | 3.218626 |
CurrencyExchangeData.CurrencyExchanges.ClosingDate |
Data de finalização da transação. | texto | 19 | AAAA-MM-DD HH:mm:SS |
CurrencyExchangeData.CurrencyExchanges.Currency |
Código da moeda “real”. | texto | 3 | BRA |
CurrencyExchangeData.CurrencyExchanges.ConvertedAmount |
Valor do pedido em reais. | numérico | 12 | 100 |
Na segunda etapa, o sistema da loja apresenta ao comprador as opções de pagar em reais ou com a moeda de seu país (moeda do cartão de crédito), seguindo as melhores práticas solicitadas pela bandeira. O texto é apresentado em inglês e o layout do site não precisa ser alterado, desde que as opções de escolha da moeda tenham as mesmas características de fonte, cor e dimensões.
Na tela da Global Payments são exibidas as opções de pagamento (em reais ou na moeda do cartão), ao lado de um resumo com os dados da compra.
Na terceira etapa, o sistema da loja envia a confirmação da transação com as informações da moeda escolhida pelo comprador. Neste ponto é retornada a resposta da autorização.
Segue um exemplo de confirmação da transação com a moeda escolhida pelo comprador:
{
"Id":"1b05456446c116374005602dcbaf8db8879515a0",
"Currency":"EUR",
"Amount":23
}
--request PUT " https://apisandbox.braspag.com.br/v2/sales/{PaymentId}/confirm"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"Id":"1b05456446c116374005602dcbaf8db8879515a0",
"Currency":"EUR",
"Amount":23
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Id |
Id da ação da troca de moeda. | texto | 50 | Sim |
Currency |
Moeda selecionada pelo comprador. | numérico | 4 | Sim |
Amount |
Valor convertido. | numérico | 12 | Sim |
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": false,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "123412******1234",
"Holder": "TesteDcc",
"ExpirationDate": "12/2022",
"SecurityCode": "***",
"Brand": "Visa"
},
"ProofOfSale": "20170510053219433",
"AcquirerTransactionId": "0510053219433",
"AuthorizationCode": "936403",
"SoftDescriptor": "Mensagem",
"PaymentId": "fa0c3119-c730-433a-123a-a3b6dfaaad67",
"Type": "CreditCard",
"Amount": 23,
"ReceivedDate": "2017-05-10 17:32:19",
"CapturedAmount": 23,
"CapturedDate": "2017-05-10 17:32:19",
"Currency": "BRL",
"Country": "BRA",
"Provider": "GlobalPayments",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": false,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "123412******1234",
"Holder": "TesteDcc",
"ExpirationDate": "12/2022",
"SecurityCode": "***",
"Brand": "Visa"
},
"ProofOfSale": "20170510053219433",
"AcquirerTransactionId": "0510053219433",
"AuthorizationCode": "936403",
"SoftDescriptor": "Mensagem",
"PaymentId": "fa0c3119-c730-433a-123a-a3b6dfaaad67",
"Type": "CreditCard",
"Amount": 23,
"ReceivedDate": "2017-05-10 17:32:19",
"CapturedAmount": 23,
"CapturedDate": "2017-05-10 17:32:19",
"Currency": "BRL",
"Country": "BRA",
"Provider": "GlobalPayments",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
AcquirerTransactionId |
Id da transação no provedor de meio de pagamento. | texto | 40 | Texto alfanumérico |
ProofOfSale |
Número do comprovante de venda. | texto | 20 | Texto alfanumérico |
AuthorizationCode |
Código de autorização. | texto | 300 | Texto alfanumérico |
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | Texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | Texto alfanumérico |
Status |
Status da transação. Veja a lista completa de Status da Transação. | byte | 2 | Ex.: 2 |
ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 32 | 57 |
ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 512 | Transação Aprovada |
Todos os clientes de E-Commerce que são Facilitadores de Pagamento, por obrigatoriedade das bandeiras e do Banco Central devem enviar campos específicos na mensageria transacional. A Braspag transmitirá as informações para as bandeiras por meio da mensageria transacional no momento da autorização.
Os campos específicos estão contidos dentro do nó PaymentFacilitator
. Além dos campos deste nó, os facilitadores também precisam enviar obrigatoriamente o campo SoftDescriptor
do nó Payment
. Veja a seguir o exemplo de requisição e resposta.
Atenção: As bandeiras, ao identificarem inconformidade devido ao não envio dos dados obrigatórios na mensageria transacional, aplicarão multas ao Facilitador responsável pelo envio dos dados transacionais.
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"CreditCard":{
"CardNumber":"4551870000000181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":"false",
"Alias":"",
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
}
},
"PaymentFacilitator":{
"EstablishmentCode":"1234",
"SubEstablishment":{
"EstablishmentCode":"1234",
"Identity":"11111111000100",
"Mcc":"1234",
"Address":"Alameda Grajau, 512",
"City":"Barueri",
"State":"SP",
"CountryCode":"076",
"PostalCode":"06455914",
"PhoneNumber":"1155855585"
}
}
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051002",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"CreditCard":{
"CardNumber":"4551870000000181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":"false",
"Alias":"",
"CardOnFile":{
"Usage":"Used",
"Reason":"Unscheduled"
}
},
"PaymentFacilitator":{
"EstablishmentCode":"1234",
"SubEstablishment":{
"EstablishmentCode":"1234",
"Identity":"11111111000100",
"Mcc":"1234",
"Address":"Alameda Grajau, 512",
"City":"Barueri",
"State":"SP",
"CountryCode":"076",
"PostalCode":"06455914",
"PhoneNumber":"1155855585"
}
}
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Payment.PaymentFacilitator.EstablishmentCode |
Código do estabelecimento do facilitador. “Facilitator ID” (cadastro do facilitador com as bandeiras). Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 11 | Sim para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.EstablishmentCode |
Código do estabelecimento do sub-merchant. “Sub-Merchant ID” (cadastro do subcredenciado com o facilitador). Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 15 | Sim, para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.Mcc |
MCC do sub-merchant. Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 4 | Sim, para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.Address |
Endereço do sub-merchant. Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 22 | Sim, para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.City |
Cidade do sub-merchant. Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 13 | Sim, para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.State |
Estado do sub-merchant. Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 2 | Sim, para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.PostalCode |
Código postal do sub-merchant. Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 9 | Sim, para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.PhoneNumber |
Número de telefone do sub-merchant. Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 13 | Sim, para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.Identity |
CNPJ ou CPF do sub-merchant. Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 14 | Sim, para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.CountryCode |
Código do país do sub-merchant com base no ISO 3166. Aplicável para Cielo30, Rede2 e PagSeguro. |
texto* | 3 | Sim, para facilitadores |
Payment.PaymentFacilitator.SubEstablishment.CompanyName |
Razão Social do sub-merchant. | texto* | 60 | Somente para PagSeguro |
Payment.PaymentFacilitator.SubEstablishment.AddressNumber |
Número do endereço do sub-merchant. | texto* | 60 | Somente para PagSeguro |
Payment.PaymentFacilitator.SubEstablishment.District |
Bairro do sub-merchant. | texto* | 60 | Somente para PagSeguro |
*Evite usar acentos pois eles são considerados como dois caracteres.
{
"MerchantOrderId": "2017051002",
"Customer": {
"Name": "Nome do Comprador",
"Identity": "12345678909",
"IdentityType": "CPF",
"Email": "comprador@braspag.com.br",
"Birthdate": "1991-01-02",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"DoSplit":false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Visa"
"Alias": "",
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
}
},
"Credentials": {
"Code": "9999999",
"Key": "D8888888",
"Password": "LOJA9999999",
"Username": "#Braspag2018@NOMEDALOJA#"
},
"ProofOfSale": "20170510053219433",
"AcquirerTransactionId": "0510053219433",
"AuthorizationCode": "936403",
"SoftDescriptor": "Mensagem",
"VelocityAnalysis": {
"Id": "c374099e-c474-4916-9f5c-f2598fec2925",
"ResultMessage": "Accept",
"Score": 0
},
"PaymentId": "c374099e-c474-4916-9f5c-f2598fec2925",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-10 17:32:19",
"CapturedAmount": 10000,
"CapturedDate": "2017-05-10 17:32:19",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ExtraDataCollection": [{
"Name": "NomeDoCampo",
"Value": "ValorDoCampo"
}],
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Payment.MerchantAdviceCode":"1",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925/void"
}
]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId": "2017051002",
"Customer": {
"Name": "Nome do Comprador",
"Identity": "12345678909",
"IdentityType": "CPF",
"Email": "comprador@braspag.com.br",
"Birthdate": "1991-01-02",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District": "Alphaville"
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"DoSplit":false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Visa"
"Alias": "",
"CardOnFile":{
"Usage": "Used",
"Reason":"Unscheduled"
}
},
"Credentials": {
"Code": "9999999",
"Key": "D8888888",
"Password": "LOJA9999999",
"Username": "#Braspag2018@NOMEDALOJA#"
},
"ProofOfSale": "20170510053219433",
"AcquirerTransactionId": "0510053219433",
"AuthorizationCode": "936403",
"SoftDescriptor": "Mensagem",
"VelocityAnalysis": {
"Id": "c374099e-c474-4916-9f5c-f2598fec2925",
"ResultMessage": "Accept",
"Score": 0
},
"PaymentId": "c374099e-c474-4916-9f5c-f2598fec2925",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-10 17:32:19",
"CapturedAmount": 10000,
"CapturedDate": "2017-05-10 17:32:19",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ExtraDataCollection": [{
"Name": "NomeDoCampo",
"Value": "ValorDoCampo"
}],
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925/void"
}
]
}
}
No Pix, a transmissão da ordem de pagamento e a disponibilidade de fundos para o usuário recebedor ocorrem em tempo real, 24 horas por dia e sem a necessidade de intermediários. Sendo assim, é um meio que viabiliza pagamentos rápidos e com menores custos de transação.
Conheça o ciclo de vida de uma transação Pix:
SEQUÊNCIA | RESPONSÁVEL | DESCRIÇÃO | STATUS DA TRANSAÇÃO |
---|---|---|---|
1 | Loja | Geração do QR code. | 12 - Pendente |
2 | Comprador | Pagamento do QR code. | 2 - Pago |
3 | Loja | Recebimento da notificação de confirmação do pagamento. | 2 - Pago |
4 | Loja | Consulta ao status da transação. | 2 - Pago |
5 | Loja | Liberação do pedido. | 2 - Pago |
6 | Loja | Caso necessário, solicitação da devolução da transação Pix (semelhante ao estorno do cartão). | 2 - Pago |
7 | Loja | Recebimento da notificação de confirmação de devolução. | 11 - Estornado |
8 | Loja | Consulta ao status da transação. | 11 - Estornado |
Para gerar um QR code Pix através da API Pagador, basta realizar a integração conforme a especificação abaixo.
Entre os campos de envio obrigatório, destacam-se dois: Type
, que deve ser enviado como “Pix”; e Provider
, que deve ser “Cielo30” ou “Bradesco2”. Na resposta da requisição será retornado o código base64 da imagem do QR code Pix, que deve ser disponibilizado ao comprador.
Veja abaixo a representação do fluxo transacional na geração do QR code Pix:
O comprador então realiza a leitura do QR code através de um dos aplicativos habilitados para o pagamento Pix e efetiva o pagamento. Nesta etapa não há participação da loja nem da Braspag, como demonstrado abaixo:
Seguem exemplos de envio de requisição e resposta para a geração do QR code Pix:
{
"MerchantOrderId":"2020102601",
"Customer":{
"Name":"Nome do Pagador",
"Identity":"12345678909",
"IdentityType":"CPF"
},
"Payment":{
"Type":"Pix",
"Provider":"Bradesco2",
"Amount":100,
"QrCodeExpiration":36000
}
}
--request POST "https://(...)/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2020102601",
"Customer":{
"Name":"Nome do Pagador",
"Identity":"12345678909",
"IdentityType":"CPF"
},
"Payment":{
"Type":"Pix",
"Provider":"Bradesco2",
"Amount":100,
"QrCodeExpiration":36000
}
}
--verbose
PROPRIEDADE | DESCRIÇÃO | TIPO | TAMANHO | OBRIGATÓRIO? |
---|---|---|---|---|
MerchantOrderId |
Número de identificação do pedido. | texto | 50 | Sim |
Customer.Name |
Nome do pagador. | texto | 255 | Sim |
Customer.Identity |
Número do CPF ou CNPJ do cliente. | texto | 14 | Sim |
Customer.IdentityType |
Tipo de documento de identificação do comprador (CPF ou CNPJ). | texto | 255 | Sim |
Payment.Type |
Tipo do meio de pagamento. Neste caso, “Pix”. | texto | - | Sim |
Payment.Provider |
Nome do provedor do meio de pagamento. Neste caso, “Cielo30” ou “Bradesco2”. | texto | - | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.QrCodeExpiration |
Tempo de expiração do QR Code, em segundos. Para provider Cielo30: o tempo de expiração é de duas horas e não é parametrizavel. Para provider Bradesco2: o tempo de expiração do QR Code pode ser configurado no painel Shopfácil ou no momento da autorização pelo parâmetro Payment.QrCodeExpiration , em segundos (exemplo: 24 horas = 86400). |
número | 3600 | Não |
{
"MerchantOrderId":"2020102601",
"Customer":{
"Name": "Nome comprador",
"Identity": "12345678900",
"IdentityType": "CPF"
},
"Payment":{
(...)
"PaymentId":"1997be4d-694a-472e-98f0-e7f4b4c8f1e7",
"Type":"Pix",
"Provider":"Bradesco2",
"AcquirerTransactionId":"86c200c7-7cdf-4375-92dd-1f62dfa846ad",
"ProofOfSale":"123456",
"QrcodeBase64Image":"rfhviy64ak+zse18cwcmtg==[...]",
"QrCodeString":"00020101021226880014br.gov.bcb.pix2566qrcodes-h.cielo.com.br/pix-qr/d05b1a34-ec52-4201-ba1e-d3cc2a43162552040000530398654041.005802BR5918Merchant Teste HML6009Sao Paulo62120508000101296304031C",
"QrCodeExpiration": 86400,
"SentOrderId": "10045146",
"Amount":100,
"ReceivedDate":"2020-10-15 18:53:20",
"Status":12,
"ProviderReturnCode":"0",
"ProviderReturnMessage":"Pix gerado com sucesso",
(...)
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2020102601",
"Customer":{
"Name": "Nome comprador",
"Identity": "12345678900",
"IdentityType": "CPF"
},
"Payment":{
(...)
"Paymentid":"1997be4d-694a-472e-98f0-e7f4b4c8f1e7",
"Type":"Pix",
"Provider":"Bradesco2",
"AcquirerTransactionId":"86c200c7-7cdf-4375-92dd-1f62dfa846ad",
"ProofOfSale":"123456",
"QrcodeBase64Image":"rfhviy64ak+zse18cwcmtg==[...]",
"QrCodeString":"00020101021226880014br.gov.bcb.pix2566qrcodes-h.cielo.com.br/pix-qr/d05b1a34-ec52-4201-ba1e-d3cc2a43162552040000530398654041.005802BR5918Merchant Teste HML6009Sao Paulo62120508000101296304031C",
"QrCodeExpiration": 36000,
"SentOrderId": "10045146",
"Amount":100,
"ReceivedDate":"2020-10-15 18:53:20",
"Status":12,
"ProviderReturnCode":"0",
"ProviderReturnMessage":"Pix gerado com sucesso",
(...)
}
}
--verbose
PROPRIEDADE | DESCRIÇÃO | TIPO | TAMANHO | FORMATO |
---|---|---|---|---|
Payment.PaymentId |
Campo identificador do pedido. | GUID | 40 | texto |
Payment.AcquirerTransactionId |
Id da transação no provedor de meio de pagamento. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Payment.ProofOfSale |
NSU Pix. | texto | 20 | texto alfanumérico |
Payment.SentOrderId |
Número único enviado ao emissor Pix para representar o número do pedido. Utilizado para realizar a conciliação financeira. | número | 8 | 10045146 |
Payment.QrcodeBase64Image |
Código em base64 da imagem do QR code. | texto | - | texto |
Payment.QrCodeString |
Texto codificado para o comprador “copiar” e “colar” no campo do internet banking em pagamentos feitos no ambiente mobile. | texto | Variável | texto alfanumérico |
Payment.Status |
Status da transação. Em caso de sucesso, o status inicial é “12” (Pendente). Veja a lista completa de Status da Transação. | número | - | 12 |
Payment.ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento. | texto | 32 | 0 |
Payment.ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento. | texto | 512 | “Pix gerado com sucesso”. |
Caso o lojista precise “cancelar” uma transferência Pix, é possível realizar uma operação chamada de “devolução”. É importante ressaltar que a devolução não é uma operação instantânea, podendo ser acatada ou não pelo provedor Pix. Quando uma devolução é acatada, uma notificação é recebida pela loja.
--request PUT "https://(...)/sales/{PaymentId}/void?Amount=xxx"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não |
PaymentId |
Campo identificador do pedido. | GUID | 36 | Sim |
Amount |
Valor a ser cancelado/estornado, em centavos. Verifique se a adquirente contratada suporta a operação de cancelamento ou estorno. | número | 15 | Não |
{
"Status": 12,
"ReasonCode": 0,
"ReasonMessage": "Successful",
"ProviderReturnCode": "0",
"ProviderReturnMessage": "Reembolso solicitado com sucesso",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://(...)/sales/{PaymentId}"
}
]
}
{
"Status": 12,
"ReasonCode": 0,
"ReasonMessage": "Successful",
"ProviderReturnCode": "0",
"ProviderReturnMessage": "Reembolso solicitado com sucesso",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://(...)/sales/{PaymentId}"
}
]
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
Status |
Status da transação. | byte | 2 | Ex.: “1” |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | texto alfanumérico |
Abaixo segue os códigos Pix do Bradesco:
STATUS | DESCRIÇÃO | |
---|---|---|
0 | Operação realizada com sucesso. | |
120 | A pagar | Status informando que o pagamento por Pix ainda não foi realizado. |
121 | Pago | Status informando que o pagamento por Pix foi realizado com sucesso. |
124 | Expirado | Status informando que o tempo para pagamento por Pix foi expirado. |
125 | Cancelado | Status informando que o pagamento por Pix foi cancelado. |
126 | Devolvido completamente | Status informando que o pagamento por Pix teve o valor pago devolvido em sua totalidade. |
127 | Devovildo parcialmente | Status informando que o pagamento por Pix teve uma fração do valor pago devolvido. |
130 | Pix Removido pelo SPS | Status informando que o QRCode/Payload encontra-se vencido e foi removido, pelo banco da lista de Pix disponíveis. |
Veja abaixo a representação de um fluxo transacional padrão na criação de uma transação com QR code:
Uma transação com QR code se efetua com o envio de uma requisição através do método POST conforme o exemplo abaixo. Essa requisição irá criar a transação, que ficará com o status Pendente na Braspag, e gerar o QR code para realizar o pagamento. Usando um dos aplicativos compatíveis, o comprador efetua o pagamento e a transação muda de status (ex.: Pago, Não pago ou Não autorizado).
O exemplo abaixo contempla o mínimo de campos necessários a serem enviados para a autorização:
{
"MerchantOrderId":"20191123",
"Customer":{
"Name":"QRCode Test"
},
"Payment":{
"Provider":"Cielo30",
"Type":"qrcode",
"Amount":100,
"Installments":1,
"Capture":false
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"20191023",
"Customer":{
"Name":"QRCode Test"
},
"Payment":{
"Provider":"Cielo30",
"Type":"qrcode",
"Amount":500,
"Installments":1,
"Capture":false
}
}
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantOrderId |
Número de identificação do pedido. | texto | 50 | Sim |
Customer.Name |
Nome do comprador. | texto | 255 | Não |
Payment.Provider |
Nome do provedor do meio de pagamento. Obs.: Atualmente somente disponível para Cielo30. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. Neste caso, “qrcode”. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido (maior que zero), em centavos. | número | 15 | Sim |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
Payment.Capture |
Enviar “true” para uma transação de captura automática. | booleano | - | Não |
{
"MerchantOrderId":"20191023",
"Customer": {
"Name": "QRCode Test"
},
"Payment": {
"Installments": 1,
"Capture": false,
"AcquirerTransactionId": "52d641fb-2880-4024-89f4-7b452dc5d9cd",
"QrCodeBase64Image": "iVBORw0KGgoAAAA(...)",
"PaymentId": "403dba6-23e3-468b-92f8-f9af56d3b9d7",
"Type": "QrCode",
"Amount": 100,
"ReceivedDate": "2019-10-23 21:30:00",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Cielo30",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 12,
"ProviderReturnCode": "0",
"ProviderReturnMessage": "QRCode gerado com sucesso",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "http://apiquerysandbox.braspag.com.br/v2/sales/4031dba6-23e3-468b-92f8-f9af56d3b9d7"
}
]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"20191023",
"Customer": {
"Name": "QRCode Test"
},
"Payment": {
"Installments": 1,
"Capture": false,
"AcquirerTransactionId": "52d641fb-2880-4024-89f4-7b452dc5d9cd",
"QrCodeBase64Image": "iVBORw0KGgoAAAA(...)",
"PaymentId": "403dba6-23e3-468b-92f8-f9af56d3b9d7",
"Type": "QrCode",
"Amount": 100,
"ReceivedDate": "2019-10-23 21:30:00",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Cielo30",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 12,
"ProviderReturnCode": "0",
"ProviderReturnMessage": "QRCode gerado com sucesso",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "http://apiquerysandbox.braspag.com.br/v2/sales/4031dba6-23e3-468b-92f8-f9af56d3b9d7"
}
]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
QrCodeBase64Image |
QR code codificado em base64. A imagem do QR code poderá ser apresentada na página utilizando um código HTML como este: <img src=”data:image/png;base64,{código da imagem em base64}”>. |
texto | Variável | texto alfanumérico |
PaymentId |
Campo identificador do pedido. Necessário para operações como consulta, captura e cancelamento. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Status |
Status da transação. No caso da transação de geração com QR code, o status inicial é “12” (Pendente). Veja a lista completa de Status da Transação. | byte | - | 2 |
ReturnCode |
Código de retorno da adquirência. | texto | 32 | texto alfanumérico |
ReturnMessage |
Mensagem de retorno da adquirência. | texto | 512 | texto alfanumérico |
Com o objetivo de promover maior controle e segurança ao transacional de boletos no e-commerce e garantir mais confiabilidade e comodidade aos usuários, a FEBRABAN em conjunto com os bancos lançou a Nova Plataforma de Cobrança.
Desde 21 de julho de 2018 todos os boletos emitidos no e-commerce, obrigatoriamente, precisam ser registrados. Clique aqui para acessar o comunicado completo.
Abaixo seguem os procedimentos de configuração de boletos em cada banco:
Veja abaixo a representação de um fluxo transacional padrão na criação de uma transação com boleto:
Para gerar um boleto, inclusive em ambiente Sandbox, é necessário fornecer dados do comprador como CPF ou CNPJ e endereço. Abaixo temos um exemplo de como criar um pedido com este meio de pagamento.
Os parâmetros Payment.FineRate
e Payment.FineAmount
não devem ser utilizados em conjunto. A mesma regra se aplica aos parâmetros Payment.InterestRate
e Payment.InterestAmount
. Esses parâmetros, apresentados na tabela mais abaixo, estão marcados com um * na coluna de obrigatoriedade.
{
"MerchantOrderId":"2017091101",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"Boleto",
"Amount":10000,
"BoletoNumber":"2017091101",
"Assignor": "Empresa Teste",
"Demonstrative": "Desmonstrative Teste",
"ExpirationDate": "2017-12-31",
"Identification": "12346578909",
"Instructions": "Aceitar somente até a data de vencimento.",
"DaysToFine": 1,
"FineRate": 10.00000,
"FineAmount": 1000,
"DaysToInterest": 1,
"InterestRate": 5.00000,
"InterestAmount": 500,
"DiscountAmount": 100,
"DiscountLimitDate": "2017-12-31",
"DiscountRate": 5.00000
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017091101",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"Boleto",
"Amount":10000,
"BoletoNumber":"2017091101",
"Assignor": "Empresa Teste",
"Demonstrative": "Desmonstrative Teste",
"ExpirationDate": "2017-12-31",
"Identification": "12346578909",
"Instructions": "Aceitar somente até a data de vencimento.",
"DaysToFine": 1,
"FineRate": 10.00000,
"FineAmount": 1000,
"DaysToInterest": 1,
"InterestRate": 5.00000,
"InterestAmount": 500,
"DiscountAmount": 100,
"DiscountLimitDate": "2017-12-31",
"DiscountRate": 5.00000
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na Braspag. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na Braspag. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
MerchantOrderId |
Número de identificação do pedido. A regra varia de acordo com o provedor utilizado (consulte a tabela). | texto | Veja a tabela | Sim |
Customer.Name |
Nome do comprador. A regra varia de acordo com o provedor utilizado (consulte a tabela). | texto | Veja a tabela | Sim |
Customer.Identity |
Número do RG, CPF ou CNPJ do cliente. | texto | 14 | Sim |
Customer.IdentityType |
Tipo de documento de identificação do comprador (CPF ou CNPJ). | texto | 255 | Sim |
Customer.Address.Street |
Endereço de contato do comprador. A regra varia de acordo com o provedor utilizado (consulte a tabela). | texto | Veja a tabela | Sim |
Customer.Address.Number |
Número do endereço de contato do comprador. A regra varia de acordo com o provedor utilizado (consulte a tabela). | texto | Veja a tabela | Sim |
Customer.Address.Complement |
Complemento do endereço de contato do comprador. A regra varia de acordo com o provedor utilizado (consulte a tabela). | texto | Veja a tabela | Não |
Customer.Address.ZipCode |
CEP do endereço de contato do comprador. | texto | 8 | Sim |
Customer.Address.District |
Bairro do endereço de contato do comprador. A regra varia de acordo com o provedor utilizado (consulte a tabela). | texto | Veja a tabela | Sim |
Customer.Address.City |
Cidade do endereço de contato do comprador. A regra varia de acordo com o provedor utilizado (consulte a tabela). | texto | Veja a tabela | Sim |
Customer.Address.State |
Estado do endereço de contato do comprador. | texto | 2 | Sim |
Customer.Address.Country |
País do endereço de contato do comprador. | texto | 35 | Não |
Payment.Provider |
Nome do provedor do meio de pagamento do boleto. Clique aqui para acessar a lista de provedores. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. Neste caso, “Boleto”. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.BoletoNumber |
Número do boleto (“Nosso Número”). Caso preenchido, sobrepõe o valor configurado no meio de pagamento. A regra varia de acordo com o provedor utilizado (consulte a tabela). | número | Veja a tabela | Não |
Payment.Assignor |
Nome do cedente. Caso preenchido, sobrepõe o valor configurado no meio de pagamento. | texto | 200 | Não |
Payment.Demonstrative |
Texto de demonstrativo. Caso preenchido, sobrepõe o valor configurado no meio de pagamento. A regra varia de acordo com o provedor utilizado (consulte a tabela). | texto | Veja a tabela | Não |
Payment.ExpirationDate |
Data de vencimento do boleto. Caso não esteja previamente cadastrado no meio de pagamento, o envio deste campo é obrigatório. Se enviado na requisição, sobrepõe o valor configurado no meio de pagamento. | Date | AAAA-MM-DD | Não |
Payment.Identification |
CNPJ do Cedente. Caso preenchido, sobrepõe o valor configurado no meio de pagamento. | texto | 14 | Não |
Payment.Instructions |
Instruções do boleto. Caso preenchido, sobrepõe o valor configurado no meio de pagamento. A regra varia de acordo com o provedor utilizado (consulte a tabela). Para quebra de linhas no texto utilize sempre a notação em HTML <br> . |
texto | Veja a tabela | Não |
Payment.NullifyDays |
Prazo para baixa automática do boleto. O cancelamento automático do boleto acontecerá após o número de dias estabelecido neste campo, contado a partir da data de vencimento. Ex.: um boleto com vencimento para 15/12 que tenha em seu registro o prazo para baixa de 5 dias, poderá ser pago até 20/12; após esta data o título é cancelado. Obs.: Recurso válido somente para boletos registrados do Banco Santander. | número | 2 | Não |
Payment.DaysToFine |
Opcional e somente para o provedor Bradesco2. Quantidade de dias após o vencimento para cobrar o valor da multa, em número inteiro. Ex.: 3. | número | 15 | Não |
Payment.FineRate |
Opcional e somente para o provedor Bradesco2. Valor da multa após o vencimento, em percentual, com base no valor do boleto (%). Permitido decimal com até 5 casas decimais. Não utilizar em conjunto com FineAmount . Ex: 10.12345 = 10.12345%. |
número | 15 | Não* |
Payment.FineAmount |
Opcional e somente para o provedor Bradesco2. Valor da multa após o vencimento em valor absoluto em centavos. Não utilizar em conjunto com FineRate . Ex.: 1000 = R$ 10,00. |
número | 15 | Não* |
Payment.DaysToInterest |
Opcional e somente para o provedor Bradesco2. Quantidade de dias após o vencimento para início da cobrança de juros por dia sobre o valor do boleto, em número inteiro. Ex.: 3. | número | 15 | Não |
Payment.InterestRate |
Opcional e somente para o provedor Bradesco2. Valor de juros mensal após o vencimento em percentual, com base no valor do boleto (%). O valor de juros é cobrado proporcionalmente por dia (mensal dividido por 30). Permitido decimal com até 5 casas decimais. Não utilizar em conjunto com InterestAmount . Ex.: 10.12345. |
número | 15 | Não* |
Payment.InterestAmount |
Opcional e somente para o provedor Bradesco2. Valor absoluto de juros diários após o vencimento, em centavos. Não utilizar em conjunto com InterestRate . Ex.: 1000 = R$ 10,00. |
número | 15 | Não* |
Payment.DiscountAmount |
Opcional e somente para o provedor Bradesco2. Valor do desconto até a data limite estipulada pelo Payment.DiscountLimitDate. Em valor absoluto em centavos. Não utilizar em conjunto com “Payment.DiscountRate”. Ex.: 1000 = R$ 10,00. | número | 15 | Não* |
Payment.DiscountLimitDate |
Opcional e somente para o provedor Bradesco2. Data limite para conceder o desconto | data | AAAA-MM-DD | Não* |
Payment.DiscountRate |
Opcional e somente para o provedor Bradesco2. Valor de desconto após o vencimento em percentual, com base no valor do boleto (%). Não utilizar em conjunto com “Payment.DiscountAmount”. | número | 15 | Não* |
{
"MerchantOrderId": "2017091101",
"Customer": {
"Name": "Nome do Comprador",
"Identity": "12345678909",
"IdentityType": "CPF",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA"
}
},
"Payment": {
"Instructions": "Aceitar somente até a data de vencimento.",
"ExpirationDate": "2017-12-31",
"Demonstrative": "Desmonstrative Teste",
"Url": "https://homologacao.pagador.com.br/post/pagador/reenvia.asp/d24b0aa4-21c9-449d-b85c-6279333f070f",
"BoletoNumber": "2017091101",
"BarCodeNumber": "00091739000000100000494250000000263400656560",
"DigitableLine": "00090.49420 50000.000260 34006.565609 1 73900000010000",
"Assignor": "Empresa Teste",
"Address": "Av. Brigadeiro Faria Lima, 160",
"Identification": "12346578909",
"PaymentId": "d24b0aa4-21c9-449d-b85c-6279333f070f",
"Type": "Boleto",
"Amount": 10000,
"ReceivedDate": "2017-05-11 16:42:55",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"InterestAmount": 1,
"FineAmount": 5,
"DaysToFine": 1,
"DaysToInterest": 1,
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/d24b0aa4-21c9-449d-b85c-6279333f070f"
}
]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId": "2017091101",
"Customer": {
"Name": "Nome do Comprador",
"Identity": "12345678909",
"IdentityType": "CPF",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BRA",
"District":"Alphaville"
}
},
"Payment": {
"Instructions": "Aceitar somente até a data de vencimento.",
"ExpirationDate": "2017-12-31",
"Demonstrative": "Desmonstrative Teste",
"Url": "https://homologacao.pagador.com.br/post/pagador/reenvia.asp/d24b0aa4-21c9-449d-b85c-6279333f070f",
"BoletoNumber": "2017091101",
"BarCodeNumber": "00091739000000100000494250000000263400656560",
"DigitableLine": "00090.49420 50000.000260 34006.565609 1 73900000010000",
"Assignor": "Empresa Teste",
"Address": "Av. Brigadeiro Faria Lima, 160",
"Identification": "12346578909",
"PaymentId": "d24b0aa4-21c9-449d-b85c-6279333f070f",
"Type": "Boleto",
"Amount": 10000,
"ReceivedDate": "2017-05-11 16:42:55",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"InterestAmount": 1,
"FineAmount": 5,
"DaysToFine": 1,
"DaysToInterest": 1,
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/d24b0aa4-21c9-449d-b85c-6279333f070f"
}
]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ExpirationDate |
Data de expiração. | texto | 10 | 2014-12-25 |
Url |
URL do boleto gerado. | string | 256 | https://…/pagador/reenvia.asp/8464a692-b4bd-41e7-8003-1611a2b8ef2d |
BoletoNumber |
“NossoNumero” gerado. | número | 50 | 2017091101 |
BarCodeNumber |
Representação numérica do código de barras. | texto | 44 | 00091628800000157000494250100000001200656560 |
DigitableLine |
Linha digitável. | texto | 256 | 00090.49420 50100.000004 12006.565605 1 62880000015700 |
Address |
Endereço da loja cadastrada no banco emissor. | texto | 256 | Ex.: Av. Teste, 160 |
Status |
Status da transação. Veja a lista completa de Status da Transação. | byte | 2 | Ex.: 1 |
Para atualizar o status de um boleto para Pago, o Pagador deve receber dos bancos os arquivos CNAB com as liquidações referentes. Para habilitar sua loja a receber os arquivos bancários, basta seguir o procedimento descrito neste link.
Segue uma lista de propriedades e suas especificações de tamanho, relativas a regras distintas de cada banco emissor e seus respectivos providers:
Propriedade | Bradesco | Banco do Brasil | Itaú Shopline | Santander | Caixa Econômica | Citibank |
---|---|---|---|---|---|---|
Provider |
Bradesco2 | BancoDoBrasil2 | ItauShopline | Santander2 | Caixa2 | Citibank2 |
MerchantOrderId |
27 (*1 ) |
50 | 8 | 50 | 11 (*2 ) |
10 (*2 ) |
Payment.BoletoNumber |
11 (*3 ) |
9 (*4 ) |
8 (*5 ) |
13 (*3 ) |
12 (*6 ) |
11 (*7 ) |
Customer.Name |
34 | 60 (*8 ) |
30 | 40 | 40 | 50 (*9 ) |
Customer.Address.Street ;Customer.Address.Number ;Customer.Address.Complement ;Customer.Address.District |
Street: 70 Number: 10 Complement: 20 District: 50 |
Totalizar até 60 caracteres (*8 ) |
Street, Number e Complement devem totalizar até 40 caracteres District: 15 |
Street, Number e Complement devem totalizar até 40 caracteres District: 15 |
Street, Number e Complement devem totalizar até 40 caracteres District: 15 |
Street, Number e Complement devem totalizar até 40 caracteres District: 50 ( *9 ) |
Customer.Address.City |
50 | 18 (*8 ) |
15 | 30 | 15 | 50 (*9 ) |
Payment.Instructions |
450 | 450 | N/A | 450 | 450 | 450 |
Payment.Demonstrative |
255 | N/A | N/A | 255 | 255 | 255 |
Observações | Detalhes |
---|---|
*1 |
Apenas letras, números e caracteres como “_” e “$”. |
*2 |
Caso passe dos 11 dígitos, a API gerará um número incremental a partir da configuração definida. |
*3 |
O valor deve ser único, ou seja, o banco emissor não permite a repetição de valores previamente utilizados. |
*4 |
Quando enviado acima de 9 posições, a API considera os últimos 9 dígitos. |
*5 |
Deverá ser sempre igual ao número de pedido (MerchantOrderId ). |
*6 |
A API concatena automaticamente o valor “14” + 12 dígitos livres + dígito verificador, antes de mandar para o banco emissor. Caso o total ultrapasse os 14 dígitos, a API considera os últimos 14 dígitos. |
*7 |
Quando enviado mais que o permitido, a API gera um número aleatório. |
*8 |
São aceitos como caracteres válidos: números, letras de A a Z (MAIÚSCULAS) e caracteres especiais de conjunção (hífen “-“ e apóstrofo “‘”). Quando utilizados, não pode haver espaços entre as letras. Exemplos corretos: D’EL-REI / D’ALCORTIVO / SANT’ANA. Exemplos incorretos: D’EL - REI / um espaço em branco entre palavras. |
*9 |
Caracteres especiais e acentuações são removidos automaticamente. |
Buy Now, Pay Later (BNPL) é um tipo de financiamento de curto prazo, com ou sem taxas para o comprador, que considera uma avaliação de crédito instantânea permitindo o parcelamento de compras sem o uso de cartão de crédito.
A Braspag oferece a integração com o provider Koin para o meio de pagamento BPNL. Para fazer essa integração, consulte o nosso manual de BNPL.
E-wallets são cofres (repositórios) de cartões e dados de pagamento destinados a consumidores do e-commerce e do mundo físico. As carteiras digitais permitem que um consumidor realize o cadastro de seus dados de pagamento, tornando o processo de compra mais conveniente e seguro.
Entre em contato com o provedor de sua preferência para maiores informações sobre como contratar o serviço.
O Pagador possui suporte para as principais carteiras digitais disponíveis no mercado, listadas a seguir:
Consulte nosso manual E-Wallets e saiba mais detalhes sobre a integração dessas e-wallets em seu checkout.
Com a e-wallet já totalmente integrada, o seu fluxo transacional de pagamento será o seguinte:
Veja abaixo a representação de um fluxo transacional padrão na criação de uma transação com voucher:
Uma transação com cartão voucher se efetua de forma semelhante à com cartão de débito; porém, sem o processo de autenticação.
Atualmente, suportamos os providers Alelo e Ticket.
Provider | Características |
---|---|
Alelo | - Permite captura automática quando PaymentCapture = true ou não informado; - Não permite captura posterior; - Permite cancelamento total; |
Ticket | - Permite captura automática quando PaymentCapture = true ou captura posterior (pré-autorização) quando PaymentCapture = false. - Permite cancelamento/estorno total e parcial. Saiba mais sobre cancelamento parcial em Cancelando/estornando uma transação. |
Atenção: Em caso de pré-autorização para o voucher Ticket, a API retornará o
PaymentStatus
= 1 e não retornará os parâmetrosPayment.CapturedAmount
ePayment.PaidDate
.
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider": "Alelo",
"Type": "DebitCard",
"Amount": 10,
"Installments": 1,
"Authenticate": false,
"ReturnUrl": "http://www.braspag.com.br"
"DebitCard": {
"CardNumber": "****4903",
"Holder": "TesteBraspag",
"ExpirationDate": "02/2019",
"SecurityCode": "***",
"Brand": "Elo"
},
[...]
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider": "Alelo",
"Type": "DebitCard",
"Amount": 10,
"Installments": 1,
"Authenticate":false,
"ReturnUrl": "http://www.braspag.com.br"
"DebitCard": {
"CardNumber": "****4903",
"Holder": "TesteBraspag",
"ExpirationDate": "02/2019",
"SecurityCode": "***",
"Brand": "Elo"
},
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Payment.Provider |
Nome do provedor do meio de pagamento. Clique aqui para acessar a lista de provedores. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. Neste caso, “DebitCard”. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
Payment.ReturnUrl |
URL para onde o usuário será redirecionado após o fim do pagamento. | texto | 1024 | Sim |
DebitCard.CardNumber |
Número do cartão do comprador. | texto | 16 | Sim |
DebitCard.Holder |
Nome do comprador impresso no cartão. | texto | 25 | Sim |
DebitCard.ExpirationDate |
Data de validade impressa no cartão, no formato MM/AAAA. Obs.: Vouchers “Ticket” não possuem data de validade impressa no cartão. Envie uma data posterior ao dia atual para que a transação seja processada. | texto | 7 | Sim |
DebitCard.SecurityCode |
Código de segurança impresso no verso do cartão. | texto | 4 | Sim |
DebitCard.Brand |
Bandeira do cartão. | texto | 10 | Sim |
{
[...]
"Payment": {
"DebitCard": {
"CardNumber": "527637******4903",
"Holder": "TesteBraspag",
"ExpirationDate": "02/2019",
"SaveCard": false,
"Brand": "Elo"
},
"ProofOfSale": "004045",
"AcquirerTransactionId": "c63fb9f7-02ad-42b3-a182-c56e26238a00",
"AuthorizationCode": "128752",
"Eci": "0",
"PaymentId": "562a8563-9181-4f12-bee8-0ccc89c8f931",
"Type": "DebitCard",
"Amount": 10,
"ReceivedDate": "2018-02-21 10:59:57",
"CapturedAmount": 10,
"CapturedDate": "2018-02-21 11:00:48",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Alelo",
"Authenticate": false,
"ReturnUrl": "http://www.braspag.com.br"
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "00",
"ProviderReturnMessage": "Transacao capturada com sucesso",
[...]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
[...]
"Payment": {
"DebitCard": {
"CardNumber": "527637******4903",
"Holder": "TesteBraspag",
"ExpirationDate": "02/2019",
"SaveCard": false,
"Brand": "Elo"
},
"ProofOfSale": "004045",
"AcquirerTransactionId": "c63fb9f7-02ad-42b3-a182-c56e26238a00",
"AuthorizationCode": "128752",
"Eci": "0",
"PaymentId": "562a8563-9181-4f12-bee8-0ccc89c8f931",
"Type": "DebitCard",
"Amount": 10,
"ReceivedDate": "2018-02-21 10:59:57",
"CapturedAmount": 10,
"CapturedDate": "2018-02-21 11:00:48",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Alelo",
"Authenticate": false,
"ReturnUrl": "http://www.braspag.com.br"
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "00",
"ProviderReturnMessage": "Transacao capturada com sucesso",
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
AcquirerTransactionId |
Id da transação no provedor de meio de pagamento. | texto | 40 | texto alfanumérico |
ProofOfSale |
Número do comprovante de venda. | texto | 20 | texto alfanumérico |
AuthorizationCode |
Código de autorização. | texto | 300 | texto alfanumérico |
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | texto alfanumérico |
Status |
Status da transação. Veja a lista completa de Status da Transação. | byte | 2 | Ex.: 1 |
ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 32 | 57 |
ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 512 | Transação Aprovada |
AuthenticationUrl |
URL para o qual o portador será redirecionado para autenticação. | texto | 56 | https://qasecommerce.cielo.com.br/web/index.cbmp?id=13fda1da8e3d90d3d0c9df8820b96a7f |
Diferente dos pagamentos com cartão de crédito ou boleto tradicionais, os pagamentos recorrentes se repetem automaticamente por períodos e em intervalos determinados, cobrando sempre o mesmo valor de um mesmo cartão ou conta.
É muito utilizado para assinaturas de revistas, mensalidades, licenças de software, entre outros. Além da integração técnica, é necessário que o seu estabelecimento comercial esteja habilitado na adquirente para receber pagamentos recorrentes.
A sua loja conta com recursos diferenciados para modelar a cobrança de acordo com o seu negócio, tais como: parametrização e alteração de periodicidade, data de início e fim, quantidade de tentativas e intervalo entre tentativas. Para saber mais detalhes, leia nosso artigo sobre Recorrência.
Vendas recorrentes com cartão de crédito não exigem CVV.
Adicione o nó RecurrentPayment
ao nó Payment
para agendar as recorrências futuras ao autorizar uma transação pela primeira vez na série de recorrências.
Os parâmetros Payment.RecurrentPayment.Interval
e Payment.RecurrentPayment.DailyInterval
, marcados com um “*” na coluna “OBRIGATÓRIO”, não devem ser utilizados em conjunto.
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider":"Simulado",
"Type":"CreditCard",
"Amount": 10000,
"Installments": 1,
"CreditCard": {
"CardNumber":"5412217070050381",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa"
},
"RecurrentPayment": {
"AuthorizeNow":"true",
"EndDate":"2019-12-31",
"Interval":"Monthly"
}
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider":"Simulado",
"Type":"CreditCard",
"Amount": 10000,
"Installments": 1,
"CreditCard": {
"CardNumber":"5412217070050381",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa"
},
"RecurrentPayment": {
"AuthorizeNow":"true",
"EndDate":"2019-12-31",
"Interval":"Monthly"
}
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Payment.Provider |
Nome do provedor do meio de pagamento. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
Payment.RecurrentPayment.EndDate |
Data para término da recorrência. | texto | 10 | Não |
Payment.RecurrentPayment.Interval |
Intervalo da recorrência. Não utilizar em conjunto com DailyInterval .Monthly (default) / Bimonthly / Quarterly / SemiAnnual / Annual |
texto | 10 | Não* |
Payment.RecurrentPayment.DailyInterval |
Padrão da recorrência em dias. Não utilizar em conjunto com Interval . |
número | 2 | Não* |
Payment.RecurrentPayment.AuthorizeNow |
“true” - autoriza no momento da requisição. “false” - para agendamento futuro. | booleano | — | Sim |
CreditCard.CardNumber |
Número do cartão do comprador. | texto | 19 | Sim |
CreditCard.Holder |
Nome do comprador impresso no cartão. Obs.: Regras de tamanho do campo podem variar de acordo com a adquirente. | texto | 25 | Sim |
CreditCard.ExpirationDate |
Data de validade impresso no cartão, no formato MM/AAAA. | texto | 7 | Sim |
CreditCard.SecurityCode |
Código de segurança impresso no verso do cartão. | texto | 4 | Sim |
CreditCard.Brand |
Bandeira do cartão. | texto | 10 | Sim |
*Não use os parâmetros Payment.RecurrentPayment.Interval
e Payment.RecurrentPayment.DailyInterval
em conjunto.
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Visa"
},
"ProofOfSale": "5646418",
"AcquirerTransactionId": "0511045646418",
"AuthorizationCode": "100024",
"PaymentId": "067f73ce-62fb-4d76-871d-0bcbb88fbd22",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 16:56:46",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
"RecurrentPayment": {
"RecurrentPaymentId": "808d3631-47ca-43b4-97f5-bd29ab06c271",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"NextRecurrency": "2017-06-11",
"EndDate": "2019-12-31",
"Interval": "Monthly",
[...]
}
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Visa"
},
"ProofOfSale": "5646418",
"AcquirerTransactionId": "0511045646418",
"AuthorizationCode": "100024",
"PaymentId": "067f73ce-62fb-4d76-871d-0bcbb88fbd22",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 16:56:46",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
"RecurrentPayment": {
"RecurrentPaymentId": "808d3631-47ca-43b4-97f5-bd29ab06c271",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"NextRecurrency": "2017-06-11",
"EndDate": "2019-12-31",
"Interval": "Monthly",
[...]
}
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
RecurrentPaymentId |
ID que representa a recorrência, utilizada para consultas e alterações futuras. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
NextRecurrency |
Data de quando acontecerá a próxima recorrência. | texto | 10 | 2019-12-11 (YYYY-MM-DD) |
EndDate |
Data do fim da recorrência. | texto | 10 | 2019-12-31 (YYYY-MM-DD) |
Interval |
Intervalo entre as recorrências. | texto | 10 | Monthly / Bimonthly / Quarterly / SemiAnnual / Annual |
AuthorizeNow |
Define se a primeira recorrência já irá ser autorizada ou não. | booleano | — | “true” ou “false” |
Diferente da recorrência anterior, este exemplo não autoriza imediatamente, mas agenda uma autorização futura.
Para programar a primeira transação da série de recorrências, passe o parâmetro Payment.RecurrentPayment.AuthorizeNow
como “false” e adicione o parâmetro Payment.RecurrentPayment.StartDate
.
{
"MerchantOrderId":"2017091101",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Installments":1,
"CreditCard":{
"CardNumber":"5412217070050381",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa"
},
"RecurrentPayment":{
"AuthorizeNow":false,
"StartDate":"2017-12-31",
"EndDate":"2019-12-31",
"Interval":"Monthly"
}
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017091101",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Installments":1,
"CreditCard":{
"CardNumber":"5412217070050381",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa"
},
"RecurrentPayment":{
"AuthorizeNow":false,
"StartDate":"2017-12-31",
"EndDate":"2019-12-31",
"Interval":"Monthly"
}
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Payment.Provider |
Nome do provedor do meio de pagamento. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
Payment.RecurrentPayment.StartDate |
Data para início da recorrência. | texto | 10 | Não |
Payment.RecurrentPayment.EndDate |
Data para término da recorrência. | texto | 10 | Não |
Payment.RecurrentPayment.Interval |
Intervalo da recorrência. Monthly (default) / Bimonthly / Quarterly / SemiAnnual / Annual |
texto | 10 | Não |
Payment.RecurrentPayment.DailyInterval |
Padrão da recorrência em dias. Não utilizar em conjunto com Interval . |
número | 2 | Não* |
Payment.RecurrentPayment.AuthorizeNow |
“true” - autoriza no momento da requisição. “false” - para agendamento futuro. | booleano | — | Sim |
CreditCard.CardNumber |
Número do cartão do comprador. | texto | 19 | Sim |
CreditCard.Holder |
Nome do comprador impresso no cartão. Obs.: Regras de tamanho do campo podem variar de acordo com a adquirente. | texto | 25 | Sim |
CreditCard.ExpirationDate |
Data de validade impressa no cartão, no formato MM/AAAA. | texto | 7 | Sim |
CreditCard.SecurityCode |
Código de segurança impresso no verso do cartão. | texto | 4 | Sim |
CreditCard.Brand |
Bandeira do cartão. | texto | 10 | Sim |
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Undefined"
},
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"Status": 20,
"RecurrentPayment": {
"RecurrentPaymentId": "32703035-7dfb-4369-ac53-34c7ff7b84e8",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"NextRecurrency": "2017-12-31",
"StartDate": "2017-12-31",
"EndDate": "2019-12-31",
"Interval": "Monthly",
[...]
"AuthorizeNow": false
}
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": false,
"Brand": "Undefined"
},
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"Status": 20,
"RecurrentPayment": {
"RecurrentPaymentId": "32703035-7dfb-4369-ac53-34c7ff7b84e8",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"NextRecurrency": "2017-12-31",
"StartDate": "2017-12-31",
"EndDate": "2019-12-31",
"Interval": "Monthly",
[...]
"AuthorizeNow": false
}
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
RecurrentPaymentId |
Campo identificador da próxima recorrência. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
NextRecurrency |
Data da próxima recorrência. | texto | 7 | 05/2019 (MM/YYYY) |
StartDate |
Data do início da recorrência. | texto | 7 | 05/2019 (MM/YYYY) |
EndDate |
Data do fim da recorrência. | texto | 7 | 05/2019 (MM/YYYY) |
Interval |
Intervalo entre as recorrências. | texto | 10 | Monthly / Bimonthly / Quarterly / SemiAnnual / Annual |
AuthorizeNow |
Define se a primeira recorrência já irá ser autorizada ou não. | booleano | — | true ou false |
Para alterar os dados do comprador de uma recorrência existente, basta fazer uma chamada PUT para o endpoint especificado.
Em resposta, a API irá retornar o código do Status HTTP, informando se a operação foi realizada com sucesso ou não.
{
"Name":"Outro nome do Comprador",
"Email":"outrocomprador@braspag.com.br",
"Birthdate":"1999-12-12",
"Identity":"0987654321",
"IdentityType":"CPF",
"Address":{
"Street":"Avenida Brigadeiro Faria Lima",
"Number":"1500",
"Complement":"AP 201",
"ZipCode":"05426200",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Avenida Brigadeiro Faria Lima",
"Number":"1500",
"Complement":"AP 201",
"ZipCode":"05426200",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
}
}
--request PUT "https://apisandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}/Customer"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"Name":"Outro nome do Comprador",
"Email":"outrocomprador@braspag.com.br",
"Birthdate":"1999-12-12",
"Identity":"0987654321",
"IdentityType":"CPF",
"Address":{
"Street":"Avenida Brigadeiro Faria Lima",
"Number":"1500",
"Complement":"AP 201",
"ZipCode":"05426200",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Avenida Brigadeiro Faria Lima",
"Number":"1500",
"Complement":"AP 201",
"ZipCode":"05426200",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Número de identificação da recorrência. | texto | 50 | Sim (envio no endpoint) |
Name |
Nome do comprador. | texto | 255 | Sim |
Email |
Email do comprador. | texto | 255 | Não |
Birthdate |
Data de nascimento do comprador. | data | 10 | Não |
Identity |
Número do RG, CPF ou CNPJ do cliente. | texto | 14 | Não |
IdentityType |
Tipo do documento de identificação do comprador (CFP/CNPJ). | texto | 255 | Não |
Address.Street |
Endereço do comprador. | texto | 255 | Não |
Address.Number |
Número do endereço do comprador. | texto | 15 | Não |
Address.Complement |
Complemento do endereço do comprador. | texto | 50 | Não |
Address.ZipCode |
CEP do endereço do comprador. | texto | 9 | Não |
Address.City |
Cidade do endereço do comprador. | texto | 50 | Não |
Address.State |
Estado do endereço do comprador. | texto | 2 | Não |
Address.Country |
País do endereço do comprador. | texto | 35 | Não |
Address.District |
Bairro do endereço do comprador. | texto | 50 | Não |
DeliveryAddress.Street |
Endereço de entrega do comprador. | texto | 255 | Não |
DeliveryAddress.Number |
Número do endereço de entrega do comprador. | texto | 15 | Não |
DeliveryAddress.Complement |
Complemento do endereço de entrega do comprador. | texto | 50 | Não |
DeliveryAddress.ZipCode |
CEP do endereço de entrega do comprador. | texto | 9 | Não |
DeliveryAddress.City |
Cidade do endereço de entrega do comprador. | texto | 50 | Não |
DeliveryAddress.State |
Estado do endereço de entrega do comprador. | texto | 2 | Não |
DeliveryAddress.Country |
País do endereço de entrega do comprador. | texto | 35 | Não |
DeliveryAddress.District |
Bairro do endereço de entrega do comprador. | texto | 50 | Não |
HTTP Status 200
Consulte o anexo HTTP Status Code para ver a lista com todos os códigos de status HTTP possivelmente retornados pela API.
Para alterar a data final da recorrência já existente, basta fazer um PUT conforme o exemplo.
"2021-01-09"
--request PUT "https://apisandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}/EndDate"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
"2021-01-09"
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Número de identificação da recorrência. | texto | 50 | Sim (envio no endpoint) |
EndDate |
Data para término da recorrência. | texto | 10 | Sim |
HTTP Status 200
Consulte o anexo HTTP Status Code para ver a lista com todos os códigos de status HTTP possivelmente retornados pela API.
Para alterar o intervalo de uma recorrência já existente, basta fazer um PUT conforme o exemplo:
{
"Interval":"Annual"
}
--request PUT "https://apisandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}/Interval"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
"Interval":"Annual"
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Número de identificação da recorrência. | texto | 50 | Sim (envio no endpoint) |
Interval |
Intervalo da recorrência. Monthly / Bimonthly / Quarterly / SemiAnnual / Annual. |
texto | 10 | Sim |
HTTP Status 200
Consulte o anexo HTTP Status Code para ver a lista com todos os códigos de status HTTP possivelmente retornados pela API.
Ao efetuar a alteração do dia da recorrência, devem ser levadas em consideração as seguintes regras utilizadas para execução da atualização na API:
1. Se o novo dia informado for depois do dia atual, iremos atualizar o dia da recorrência com efeito na próxima recorrência.
Ex.: Hoje é dia 05/05 e a próxima recorrência é dia 25/05. Quando atualizado para o dia 10, a data da próxima recorrência será dia 10/05.
2. Se o novo dia informado for antes do dia atual, iremos atualizar o dia da recorrência, mas este só terá efeito depois que a próxima recorrência for executada com sucesso.
Ex.: Hoje é dia 05/05 e a próxima recorrência é dia 25/05. Quando atualizado para o dia 03, a data da próxima recorrência permanecerá dia 25/05. Após sua execução, a recorrência seguinte será agendada para o dia 03/06.
3. Se o novo dia informado for antes do dia atual, mas a próxima recorrência for em outro mês, iremos atualizar o dia da recorrência com efeito na próxima recorrência.
Ex.: Hoje é dia 05/05 e a próxima recorrência é dia 25/09. Quando atualizado para o dia 03, a data da próxima recorrência será 03/09.
Para modificar o dia de vencimento de uma recorrência já existente, basta fazer um PUT conforme o exemplo:
16
--request PUT "https://apisandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}/RecurrencyDay"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
16
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Número de identificação da recorrência. | texto | 50 | Sim (envio no endpoint) |
RecurrencyDay |
Dia da recorrência. | número | 2 | Sim |
HTTP Status 200
Consulte o anexo HTTP Status Code para ver a lista com todos os códigos de status HTTP possivelmente retornados pela API.
Para modificar o valor da transação de uma recorrência já existente, basta fazer um PUT conforme o exemplo.
156
--request PUT "https://apisandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}/Amount"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
156
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Número de identificação da recorrência. | texto | 50 | Sim (envio no endpoint) |
Amount |
Valor do pedido, em centavos. Ex.: 156 equivale a R$ 1,56. | número | 15 | Sim |
HTTP Status 200
Consulte o anexo HTTP Status Code para ver a lista com todos os códigos de status HTTP possivelmente retornados pela API.
Para alterar somente a data do pagamento seguinte, basta fazer um PUT conforme o exemplo abaixo.
"2017-06-15"
--request PUT "https://apisandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}/NextPaymentDate"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
"2016-06-15"
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Número de identificação da recorrência. | texto | 50 | Sim (envio no endpoint) |
NextPaymentDate |
Data de pagamento da próxima recorrência. | texto | 10 | Sim |
HTTP Status 200
Consulte o anexo HTTP Status Code para ver a lista com todos os códigos de status HTTP possivelmente retornados pela API.
Durante o ciclo de vida de uma recorrência, é possível alterar:
Para alterar os dados de pagamento, basta fazer um PUT conforme o exemplo.
{
"Type":"CreditCard",
"Amount":"20000",
"Installments":3,
"Country":"USA",
"Currency":"USD",
"SoftDescriptor":"Mensagem",
"Provider":"Simulado",
"CreditCard":{
"Brand":"Master",
"Holder":"Nome do Portador",
"CardNumber":"5412217070050381",
"ExpirationDate":"05/2019"
},
"Credentials": {
"Code": "9999999",
"Key": "D8888888",
"Password": "LOJA9999999",
"Username": "#Braspag2018@NOMEDALOJA#",
"Signature": "001"
}
}
--request PUT "https://apisandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}/Payment"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"Type":"CreditCard",
"Amount":"20000",
"Installments":3,
"Country":"USA",
"Currency":"USD",
"SoftDescriptor":"Mensagem",
"Provider":"Simulado",
"CreditCard":{
"Brand":"Master",
"Holder":"Nome do Portador",
"CardNumber":"5412217070050381",
"ExpirationDate":"05/2019"
},
"Credentials": {
"Code": "9999999",
"Key": "D8888888",
"Password": "LOJA9999999",
"Username": "#Braspag2018@NOMEDALOJA#",
"Signature": "001"
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Número de identificação da recorrência. | texto | 50 | Sim (envio no endpoint) |
Provider |
Nome do provedor do meio de pagamento. | texto | 15 | Sim |
Type |
Tipo do meio de pagamento. | texto | 100 | Sim |
Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Installments |
Número de parcelas. | número | 2 | Sim |
SoftDescriptor |
Texto que será impresso na fatura do portador. | texto | 13 | Não |
CreditCard.CardNumber |
Número do cartão do comprador. | texto | 19 | Sim |
CreditCard.Holder |
Nome do comprador impresso no cartão. Obs.: Regras de tamanho do campo podem variar de acordo com a adquirente. | texto | 25 | Sim |
CreditCard.ExpirationDate |
Data de validade impressa no cartão. | texto | 7 | Sim |
CreditCard.SecurityCode |
Código de segurança impresso no verso do cartão. | texto | 4 | Sim |
CreditCard.Brand |
Bandeira do cartão. | texto | 10 | Sim |
Credentials.Code |
Afiliação gerada pela adquirente. | texto | 100 | Condicional* |
Credentials.Key |
Chave de afiliação/token gerado pela adquirente. | texto | 100 | Condicional* |
Credentials.Username |
Usuário gerado no credenciamento com a adquirente (provedores como Rede e Getnet utilizam usuário e senha nas comunicações, logo o campo deve obrigatoriamente ser enviado). | texto | 50 | Condicional* |
Credentials.Password |
Senha gerada no credenciamento com a adquirente (provedores como Rede e Getnet utilizam usuário e senha nas comunicações, logo o campo deve obrigatoriamente ser enviado). | texto | 50 | Condicional* |
Credentials.Signature |
Enviar o TerminalID da adquirente Global Payments Ex.: 001. Para Safra, colocar nome do estabelecimento, cidade e estado concatenados com ponto-e-vírgula “;”. Ex.: NomedaLoja;São Paulo;SP. | texto | – | Condicional* |
**Obrigatório caso não estejam pré configurados nos meios de pagamento do MerchantID
utilizado. Em ambiente sandbox usando o provider Simulado, não é necessário enviar o nó Credentials
.
HTTP Status 200
Consulte o anexo HTTP Status Code para ver a lista com todos os códigos de status HTTP possivelmente retornados pela API.
Para desabilitar um pedido recorrente, basta fazer um PUT conforme o exemplo:
--request PUT "https://apisandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}/Deactivate"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Número de identificação da recorrência. | texto | 50 | Sim (envio no endpoint) |
HTTP Status 200
Consulte o anexo HTTP Status Code para ver a lista com todos os códigos de status HTTP possivelmente retornados pela API.
Para reabilitar um pedido recorrente, basta fazer um PUT conforme o exemplo:
--request PUT "https://apisandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}/Reactivate"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Número de identificação da recorrência. | texto | 50 | Sim (envio no endpoint) |
HTTP Status 200
Consulte o anexo HTTP Status Code para ver a lista com todos os códigos de status HTTP possivelmente retornados pela API.
O Renova Fácil é um serviço desenvolvido pela Cielo em conjunto com os emissores cujo objetivo é aumentar a taxa de conversão de vendas recorrentes com cartão de crédito.
Através da identificação de cartões vencidos no momento da transação, é feita a autorização com um novo cartão, que é então retornado para armazenagem.
Como usar o Renova Fácil?
NewCard
, que informa os dados do novo cartão;NewCard
, é necessário que a loja informe os dados do novo cartão na próxima autorização.Veja a seguir o exemplo de resposta de uma transação de crédito com o nó NewCard
.
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0183",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2016",
"SaveCard": false,
"Brand": "Visa"
},
"AcquirerTransactionId": "0512105630844",
"NewCard": {
"CardNumber": "4551870000512353",
"Holder": "Nome do Portador",
"ExpirationDate": "05/2020",
"SaveCard": false,
"Brand": "Visa"
},
"PaymentId": "ca81c3c9-2dfa-4e6e-9c77-37e33a77ac84",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-12 10:56:30",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 15,
"ReasonMessage": "CardExpired",
"Status": 3,
"ProviderReturnCode": "57",
"ProviderReturnMessage": "Card Expired",
[...]
}
}
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0183",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2016",
"SaveCard": false,
"Brand": "Visa"
},
"AcquirerTransactionId": "0512105630844",
"NewCard": {
"CardNumber": "4551870000512353",
"Holder": "Nome do Portador",
"ExpirationDate": "05/2020",
"SaveCard": false,
"Brand": "Visa"
},
"PaymentId": "ca81c3c9-2dfa-4e6e-9c77-37e33a77ac84",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-12 10:56:30",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 15,
"ReasonMessage": "CardExpired",
"Status": 3,
"ProviderReturnCode": "57",
"ProviderReturnMessage": "Card Expired",
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho |
---|---|---|---|
NewCard.CardNumber |
Novo número do cartão do comprador. | texto | 16 |
NewCard.Holder |
Nome do portador impresso no novo cartão. | texto | 25 |
NewCard.ExpirationDate |
Data de validade impressa no novo cartão. | texto | 7 |
NewCard.SecurityCode |
Código de segurança impresso no verso do novo cartão. | texto | 4 |
NewCard.Brand |
Bandeira do novo cartão. | texto | 10 |
Para clientes Cartão Protegido e Renova Fácil, o nó NewCard
irá retornar o número mascarado do cartão e um novo token do cartão atualizado. Dessa forma o lojista pode submeter uma nova cobrança, usando o retorno do Renova Fácil de uma forma segura.
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardToken":"19077eb8-5d84-352f-10cd-6a4280b8c089"
"SaveCard": false,
"Brand": "Visa"
},
"AcquirerTransactionId": "0512105630844",
"NewCard": {
"CardNumber": "455187******4731",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2028",
"SaveCard": false,
"CardToken": "be7fg5a8-3ac8-59bc-dgf2-344516e20b68",
"Brand": "Visa"
},
"PaymentId": "ca81c3c9-2dfa-4e6e-9c77-37e33a77ac84",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-12 10:56:30",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 15,
"ReasonMessage": "CardExpired",
"Status": 3,
"ProviderReturnCode": "57",
"ProviderReturnMessage": "Card Expired",
[...]
}
}
{
[...]
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardToken":"19077eb8-5d84-352f-10cd-6a4280b8c089"
"SaveCard": false,
"Brand": "Visa"
},
"AcquirerTransactionId": "0512105630844",
"NewCard": {
"CardNumber": "455187******4731",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2028",
"SaveCard": false,
"CardToken": "be7fg5a8-3ac8-59bc-dgf2-344516e20b68",
"Brand": "Visa"
},
"PaymentId": "ca81c3c9-2dfa-4e6e-9c77-37e33a77ac84",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-12 10:56:30",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 15,
"ReasonMessage": "CardExpired",
"Status": 3,
"ProviderReturnCode": "57",
"ProviderReturnMessage": "Card Expired",
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho | |
---|---|---|---|---|
NewCard.CardNumber |
BIN e 4 últimos dígitios do novo número do cartão do comprador. | texto | 16 | |
NewCard.Holder |
Nome do portador impresso no novo cartão. | texto | 25 | |
NewCard.ExpirationDate |
Data de validade impressa no novo cartão. | texto | 7 | |
NewCard.SecurityCode |
Código de segurança impresso no verso do novo cartão. | texto | 4 | |
NewCard.CardToken |
Token no Cartão Protegido que representa os dados do cartão. OBS.: Se a origem da transação for do Silent Order Post então o retorno será NewCard.PaymentToken |
GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
NewCard.Brand |
Bandeira do novo cartão. | texto | 10 |
Ao contratar o Cartão Protegido, é possível salvar um cartão de forma segura e de acordo com as normas PCI. A Braspag salva e criptografa os dados do cartão (nome do portador, número, bandeira e data de validade) em um token, que chamamos de CardToken
.
O token viabiliza o envio e processamento de transações e garante a integridade dos cartões armazenados. Além disso, geramos um novo token a cada transação do mesmo comprador.
Além da geração do CardToken
, é possível associar um nome (um identificador em formato de texto) ao cartão salvo. Esse identificador será o Alias
.
ATENÇÃO: O Cartão Protegido não salva o CVV do cartão. Sendo assim:
- O comprador deverá preencher o CVV a cada transação; ou
- A sua loja pode realizar transações sem o CVV desde que esteja autorizada pela adquirente.
Para salvar um cartão de crédito utilizado em uma transação, basta enviar o parâmetro Payment.SaveCard
como “true” na requisição padrão de autorização. A numeração do cartão utilizado pode ser validada através da técnica do mod10, explicada neste artigo.
Abaixo veja a representação do fluxo transacional com a solicitação do token pela API do Pagador:
Consulte também os fluxos de tokenização direta com a API do Cartão Protegido, com a opção dos serviços da API do VerifyCard.
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"CreditCard":{
"CardNumber":"4551870000000181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":true,
"Alias":"",
},
"Credentials":{
"Code":"9999999",
"Key":"D8888888",
"Password":"LOJA9999999",
"Username":"#Braspag2018@NOMEDALOJA#",
"Signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
]
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"CreditCard":{
"CardNumber":"4551870000000181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":true,
"Alias":"",
},
"Credentials":{
"Code":"9999999",
"Key":"D8888888",
"Password":"LOJA9999999",
"Username":"#Braspag2018@NOMEDALOJA#",
"Signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
]
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Payment.Provider |
Nome do provedor do meio de pagamento. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
CreditCard.CardNumber |
Número do cartão do comprador. | texto | 19 | Sim |
CreditCard.Holder |
Nome do comprador impresso no cartão. Obs.: Regras de tamanho do campo podem variar de acordo com a adquirente. | texto | 25 | Sim |
CreditCard.ExpirationDate |
Data de validade impressa no cartão, no formato MM/AAAA. | texto | 7 | Sim |
CreditCard.SecurityCode |
Código de segurança impresso no verso do cartão. | texto | 4 | Sim |
CreditCard.Brand |
Bandeira do cartão. | texto | 10 | Sim |
CreditCard.SaveCard |
“true” - para salvar o cartão. / “false” - para não salvar o cartão. | booleano | 10 | Não (default “false”) |
CreditCard.Alias |
Alias (apelido) do cartão de crédito. | texto | 64 | Não |
O parâmetro CreditCard.CardToken
retornará o token a ser salvo para transações futuras com o mesmo cartão.
{
[...]
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": true,
"CardToken": "250e7c7c-5501-4a7c-aa42-a33d7ad61167",
"Brand": "Visa",
"Alias": "Cliente1"
},
"ProofOfSale": "3519928",
"AcquirerTransactionId": "0511023519928",
"AuthorizationCode": "536934",
"PaymentId": "3af00b2d-dbd0-42d6-a669-d4937f0881da",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 14:35:19",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
[...]
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"SaveCard": true,
"CardToken": "250e7c7c-5501-4a7c-aa42-a33d7ad61167",
"Brand": "Visa",
"Alias": "Cliente1"
},
"ProofOfSale": "3519928",
"AcquirerTransactionId": "0511023519928",
"AuthorizationCode": "536934",
"PaymentId": "3af00b2d-dbd0-42d6-a669-d4937f0881da",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 14:35:19",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
AcquirerTransactionId |
Id da transação no provedor do meio de pagamento. | texto | 40 | texto alfanumérico |
ProofOfSale |
Número do comprovante de venda. | texto | 20 | texto alfanumérico |
AuthorizationCode |
Código de autorização. | Texto | 300 | texto alfanumérico |
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | texto alfanumérico |
Status |
Status da transação. Veja a lista completa de Status da Transação. | byte | 2 | Ex.: 1 |
ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 32 | 57 |
ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 512 | Transação Aprovada |
CreditCard.CardToken |
Token no Cartão Protegido que representa os dados do cartão. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Este é um exemplo de como utilizar o CardToken
, previamente salvo, para criar uma transação.
Por questões de segurança, um CardToken
não armazena o Código de Segurança (CVV). Desta forma, a sua aplicação precisa solicitar esta informação ao portador para cada nova transação e enviar o CVV no campo CreditCard.SecurityCode
.
Caso seu estabelecimento tenha autorização da adquirente para submeter transações sem o CVV, o campo CreditCard.SecurityCode
passa a ser opcional.
Para transacionar sem o CVV, solicite autorização à sua adquirente.
O nó CreditCard
dentro do nó Payment
enviará o CardToken
conforme exemplo a seguir:
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider": "Simulado",
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"SoftDescriptor": "Mensagem",
"CreditCard": {
"CardToken":"250e7c7c-5501-4a7c-aa42-a33d7ad61167",
"SecurityCode":"123",
"Brand":"Visa"
},
"Credentials":{
"Code":"9999999",
"Key":"D8888888",
"Password":"LOJA9999999",
"Username":"#Braspag2018@NOMEDALOJA#",
"Signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
]
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider": "Simulado",
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"SoftDescriptor": "Mensagem",
"CreditCard": {
"CardToken":"250e7c7c-5501-4a7c-aa42-a33d7ad61167",
"SecurityCode":"123",
"Brand":"Visa"
},
"Credentials":{
"Code":"9999999",
"Key":"D8888888",
"Password":"LOJA9999999",
"Username":"#Braspag2018@NOMEDALOJA#",
"Signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
]
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Payment.Provider |
Nome do provedor do meio de pagamento. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
CreditCard.CardToken |
Token no Cartão Protegido que representa os dados do cartão. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
CreditCard.SecurityCode |
Código de segurança impresso no verso do cartão. Para processar vendas sem o CVV, é necessário solicitar liberação na adquirente. | texto | 4 | Não |
CreditCard.Brand |
Bandeira do cartão. | texto | 10 | Sim |
{
[...]
},
"Payment": {
"Provider": "Simulado",
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"SoftDescriptor": "Mensagem",
"CreditCard": {
"CardToken":"250e7c7c-5501-4a7c-aa42-a33d7ad61167",
"SecurityCode":"123",
"Brand":"Visa"
},
"ProofOfSale": "124305",
"AcquirerTransactionId": "0511030124305",
"AuthorizationCode": "065964",
"PaymentId": "23cd8bf5-2251-4991-9042-533ff5608788",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 15:01:24",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
[...]
},
"Payment": {
"Provider": "Simulado",
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"SoftDescriptor": "Mensagem",
"CreditCard": {
"CardToken":"250e7c7c-5501-4a7c-aa42-a33d7ad61167",
"SecurityCode":"123",
"Brand":"Visa"
},
"ProofOfSale": "124305",
"AcquirerTransactionId": "0511030124305",
"AuthorizationCode": "065964",
"PaymentId": "23cd8bf5-2251-4991-9042-533ff5608788",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 15:01:24",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
AcquirerTransactionId |
Id da transação no provedor de meio de pagamento. | texto | 40 | texto alfanumérico |
ProofOfSale |
Número do comprovante de venda. | texto | 20 | texto alfanumérico |
AuthorizationCode |
Código de autorização. | texto | 300 | texto alfanumérico |
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | texto alfanumérico |
Status |
Status da transação. Veja a lista completa de Status da Transação. | byte | 2 | Ex.: 1 |
ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 32 | 57 |
ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 512 | Transação Aprovada |
Este é um exemplo de como utilizar o Alias
, previamente salvo, para criar uma transação. O Alias
é um nome (identificador em formato de texto) associado ao cartão salvo.
Por questões de segurança, um Alias
não armazena o Código de Segurança (CVV). Desta forma, a sua aplicação precisa solicitar esta informação ao portador para cada nova transação e enviar o CVV no campo CreditCard.SecurityCode
.
Caso seu estabelecimento tenha autorização da adquirente para submeter transações sem o CVV, o campo CreditCard.SecurityCode
passa a ser opcional.
Para transacionar sem o CVV, solicite autorização à sua adquirente.
O nó CreditCard
dentro do nó Payment
enviará o Alias
conforme exemplo a seguir:
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider": "Simulado",
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"SoftDescriptor": "Mensagem",
"CreditCard": {
"Alias":"Cliente1",
"SecurityCode":"123",
"Brand":"Visa"
},
"Credentials":{
"Code":"9999999",
"Key":"D8888888",
"Password":"LOJA9999999",
"Username":"#Braspag2018@NOMEDALOJA#",
"Signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
]
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051001",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678909",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"IpAddress":"127.0.0.1",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BRA",
"District":"Alphaville"
}
},
"Payment": {
"Provider": "Simulado",
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"SoftDescriptor": "Mensagem",
"CreditCard": {
"Alias":"Cliente1",
"SecurityCode":"123",
"Brand":"Visa"
},
"Credentials":{
"Code":"9999999",
"Key":"D8888888",
"Password":"LOJA9999999",
"Username":"#Braspag2018@NOMEDALOJA#",
"Signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
]
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
Payment.Provider |
Nome do provedor do meio de pagamento. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. | texto | 100 | Sim |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | Sim |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
CreditCard.CardToken |
Token no Cartão Protegido que representa os dados do cartão. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
CreditCard.SecurityCode |
Código de segurança impresso no verso do cartão. Para processar vendas sem o CVV, é necessário solicitar liberação na adquirente. | texto | 4 | Não |
CreditCard.Brand |
Bandeira do cartão. | texto | 10 | Sim |
CreditCard.Alias |
Alias (apelido) do cartão de crédito. | texto | 64 | Não |
{
[...]
},
"Payment": {
"Provider": "Simulado",
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"SoftDescriptor": "Mensagem",
"CreditCard": {
"Alias":"Cliente1",
"SecurityCode":"123",
"Brand":"Visa"
},
"ProofOfSale": "124305",
"AcquirerTransactionId": "0511030124305",
"AuthorizationCode": "065964",
"PaymentId": "23cd8bf5-2251-4991-9042-533ff5608788",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 15:01:24",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
[...]
},
"Payment": {
"Provider": "Simulado",
"Type": "CreditCard",
"Amount": 10000,
"Currency": "BRL",
"Country": "BRA",
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"SoftDescriptor": "Mensagem",
"CreditCard": {
"Alias":"Cliente1",
"SecurityCode":"123",
"Brand":"Visa"
},
"ProofOfSale": "124305",
"AcquirerTransactionId": "0511030124305",
"AuthorizationCode": "065964",
"PaymentId": "23cd8bf5-2251-4991-9042-533ff5608788",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-11 15:01:24",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
[...]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
AcquirerTransactionId |
Id da transação no provedor de meio de pagamento. | texto | 40 | texto alfanumérico |
ProofOfSale |
Número do comprovante de venda. | texto | 20 | texto alfanumérico |
AuthorizationCode |
Código de autorização. | texto | 300 | texto alfanumérico |
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
ReasonCode |
Código de retorno da API para indicar sucesso ou erro na operação. | texto | 32 | texto alfanumérico |
ReasonMessage |
Mensagem correspondente ao ReasonCode . |
texto | 512 | texto alfanumérico |
Status |
Status da transação. Veja a lista completa de Status da Transação. | byte | 2 | Ex.: 1 |
ProviderReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 32 | 57 |
ProviderReturnMessage |
Mensagem retornada pelo provedor do meio de pagamento (adquirente ou emissor). | texto | 512 | Transação Aprovada |
É possível exportar os cartões tokenizados (CardToken
) armazenados no cofre Braspag para uso em outros provedores de pagamento e também trazer para a Braspag os cartões tokenizados criados pela sua loja em outros serviços de tokenização.
Exportação de token de cartão: é quando a loja deseja exportar cartões tokenizados (CardToken
) e armazenados no cofre Braspag para uso em outros provedores de pagamento. Esse processo está sujeito à cobranças pela Braspag, além de ser necessário assinar um termo de responsabilidade, informar o certificado PCI DSS de quem vai receber os tokens, preparar o ambiente SFTP; fornecer uma chave pública PGP e informar credenciais. Para informações detalhadas deste processo, consulte o artigo Exportação de tokens do Cartão Protegido.
Importação de token de cartão: é quando a loja deseja importar para o ambiente Braspag os tokens de cartão criados pela loja em outros serviços de tokenização. Para isso, a loja deverá listar os tokens de cartão dentro de um layout fornecido pela Braspag, preparar o ambiente SFTP, informar credenciais e usar a chave pública PGP Braspag/Cielo. Para informações detalhadas deste processo, consulte o suporte.
Para que o processo de exportação e importação ocorra com segurança, usamos a criptografia PGP.
Faça o download da chave pública Braspag/Cielo para importação de tokens.
Ao efetuar um pagamento, é possível verificar qual o risco de uma transação ser fraudulenta. Essa verificação pode ocorrer antes ou depois da autorização da transação, de acordo com as regras definidas pelo cliente.
A sequência mais comum, em que acontece a autorização antes da análise, pode ocorrer com ou sem a captura automática da transação.
Com Autorização
Neste fluxo, a loja (plataforma) envia a requisição para a API do Pagador, que então envia a transação para autorização na Adquirente cadastrada na loja. Uma vez autorizada, o valor da venda estará sensibilizado, mas ainda não terá sido cobrado no cartão.
O Pagador faz a chamada para o Antifraude, onde ocorre a análise de risco do pedido.
Caso seja aceita pelo Antifraude, a transação é então capturada e a cobrança é realizada no cartão. Caso seja rejeitada pelo Antifraude, a API do Pagador solicita o cancelamento da transação à Adquirente e informa a loja. O valor bloqueado no cartão deverá retornar 100% para o cliente final.
Com Captura Automática
Este fluxo é similar ao primeiro, com a diferença da captura automática no lugar da autorização. Se o Antifraude rejeita o pedido, que foi previamente autorizado pela Adquirente e já cobrado no cartão do cliente, a API do Pagador irá solicitar o cancelamento da transação à Adquirente e informar a loja. Neste caso, o valor já cobrado no cartão deverá igualmente ser estornado 100% para o cliente final.
Para maiores detalhes sobre o fluxo em que acontece a análise antes da autorização, consulte o Manual do Antifraude.
Confira a seguir o comportamento da análise de risco de acordo com cada tipo de integração:
Tipo de Integração | Descrição | Parâmetros Necessários |
---|---|---|
Autorização antes | A transação é enviada para a autorização e então analisada pelo Antifraude. | FraudAnalysis.Sequence igual a “AuthorizeFirst” |
Análise antes | A transação é analisada pelo Antifraude e então enviada para autorização. Dessa forma, evita-se o envio de transações de alto risco para autorização. | FraudAnalysis.Sequence igual a “AnalyseFirst” |
Análise das transações autorizadas | O Antifraude é acionado apenas para analisar transações autorizadas, evitando-se o custo com análises de transações que não receberiam autorização. | FraudAnalysis.Sequence igual a “AuthorizeFirst” e FraudAnalysis.SequenceCriteria igual a “OnSuccess” |
Análise em qualquer hipótese | O Antifraude é acionado independentemente do status da transação após a autorização. | FraudAnalysis.Sequence igual a “AuthorizeFirst” e FraudAnalysis.SequenceCriteria igual a “Always” |
Autorização em qualquer hipótese | A transação será enviada para autorização independentemente de seu score de fraude. | FraudAnalysis.Sequence igual a “AnalyseFirst” e FraudAnalysis.SequenceCriteria igual a “Always” |
Captura de transações seguras | Após a análise de fraude, a captura será automática para transações autorizadas definidas como de baixo risco. Para a loja que utiliza revisão manual, a transação será capturada automaticamente assim que a Braspag receber notificação do novo status “Accept”. | FraudAnalysis.Sequence igual a “AuthorizeFirst”, FraudAnalysis.CaptureOnLowRisk igual a “true” e Payment.Capture igual a “false” |
Cancelamento de transações comprometidas | Caso a análise de fraude retorne um alto risco para uma transação já autorizada ou capturada, ela será imediamente cancelada ou estornada. Para a loja que utiliza revisão manual, a transação será cancelada ou estornada automaticamente assim que a Braspag receber notificação do novo status “Reject”. | FraudAnalysis.Sequence igual a “AuthorizeFirst” e FraudAnalysis.VoidOnHighRisk igual a “true” |
Caso não seja especificado durante a autorização, a Braspag irá processar sua transação pelo seguinte fluxo:
FraudAnalysis.Sequence
igual a “AuthorizeFirst”,FraudAnalysis.SequenceCriteria
igual a “OnSuccess”,FraudAnalysis.VoidOnHighRisk
igual a “false”,FraudAnalysis.CaptureOnLowRisk
igual a “false”.Para que a análise de fraude via Cybersource seja efetuada durante uma transação de cartão de crédito, é necessário complementar o contrato de autorização com os nós FraudAnalysis
, Cart
, MerchantDefinedFields
e Travel
(este somente para venda de passagens aéreas).
Durante implantação do Cybersource, informações adicionais podem ser armazenadas através de MDDs (Merchand Defined Data), que são campos numerados de 0 a N utilizados para armazenar informações exclusivas do merchant. Confira este artigo com detalhes sobre o preenchimento desses campos.
{
"MerchantOrderId":"2017051002",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678910",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"Phone": "5521976781114",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"CreditCard":{
"CardNumber":"4551870000000181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":false
},
"Credentials":{
"Code":"9999999",
"Key":"D8888888",
"Password":"LOJA9999999",
"Username":"#Braspag2018@NOMEDALOJA#",
"Signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
],
"FraudAnalysis":{
"Sequence":"AnalyseFirst",
"SequenceCriteria":"Always",
"Provider":"Cybersource",
"CaptureOnLowRisk":false,
"VoidOnHighRisk":false,
"TotalOrderAmount":10000,
"FingerPrintId":"074c1ee676ed4998ab66491013c565e2",
"Browser":{
"CookiesAccepted":false,
"Email":"comprador@braspag.com.br",
"HostName":"Teste",
"IpAddress":"127.0.0.1",
"Type":"Chrome"
},
"Cart":{
"IsGift":false,
"ReturnsAccepted":true,
"Items":[
{
"GiftCategory":"Undefined",
"HostHedge":"Off",
"NonSensicalHedge":"Off",
"ObscenitiesHedge":"Off",
"PhoneHedge":"Off",
"Name":"ItemTeste1",
"Quantity":1,
"Sku":"20170511",
"UnitPrice":10000,
"Risk":"High",
"TimeHedge":"Normal",
"Type":"AdultContent",
"VelocityHedge":"High"
},
{
"GiftCategory":"Undefined",
"HostHedge":"Off",
"NonSensicalHedge":"Off",
"ObscenitiesHedge":"Off",
"PhoneHedge":"Off",
"Name":"ItemTeste2",
"Quantity":1,
"Sku":"20170512",
"UnitPrice":10000,
"Risk":"High",
"TimeHedge":"Normal",
"Type":"AdultContent",
"VelocityHedge":"High"
}
]
},
"MerchantDefinedFields":[
{
"Id":2,
"Value":"100"
},
{
"Id":4,
"Value":"Web"
},
{
"Id":9,
"Value":"SIM"
}
],
"Shipping":{
"Addressee":"João das Couves",
"Method":"LowCost",
"Phone":"551121840540"
},
"Travel":{
"JourneyType":"OneWayTrip",
"DepartureTime":"2018-01-09 18:00",
"Passengers":[
{
"Name":"Passenger Test",
"Identity":"212424808",
"Status":"Gold",
"Rating":"Adult",
"Email":"email@mail.com",
"Phone":"5564991681074",
"TravelLegs":[
{
"Origin":"AMS",
"Destination":"GIG"
}
]
}
]
}
}
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051002",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678910",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"Phone": "5521976781114",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"CreditCard":{
"CardNumber":"4551870000000181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":false
},
"Credentials":{
"code":"9999999",
"key":"D8888888",
"password":"LOJA9999999",
"username":"#Braspag2018@NOMEDALOJA#",
"signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
],
"FraudAnalysis":{
"Sequence":"AnalyseFirst",
"SequenceCriteria":"Always",
"Provider":"Cybersource",
"CaptureOnLowRisk":false,
"VoidOnHighRisk":false,
"TotalOrderAmount":10000,
"FingerPrintId":"074c1ee676ed4998ab66491013c565e2",
"Browser":{
"CookiesAccepted":false,
"Email":"comprador@braspag.com.br",
"HostName":"Teste",
"IpAddress":"127.0.0.1",
"Type":"Chrome"
},
"Cart":{
"IsGift":false,
"ReturnsAccepted":true,
"Items":[
{
"GiftCategory":"Undefined",
"HostHedge":"Off",
"NonSensicalHedge":"Off",
"ObscenitiesHedge":"Off",
"PhoneHedge":"Off",
"Name":"ItemTeste1",
"Quantity":1,
"Sku":"20170511",
"UnitPrice":10000,
"Risk":"High",
"TimeHedge":"Normal",
"Type":"AdultContent",
"VelocityHedge":"High"
},
{
"GiftCategory":"Undefined",
"HostHedge":"Off",
"NonSensicalHedge":"Off",
"ObscenitiesHedge":"Off",
"PhoneHedge":"Off",
"Name":"ItemTeste2",
"Quantity":1,
"Sku":"20170512",
"UnitPrice":10000,
"Risk":"High",
"TimeHedge":"Normal",
"Type":"AdultContent",
"VelocityHedge":"High"
}
]
},
"MerchantDefinedFields":[
{
"Id":2,
"Value":"100"
},
{
"Id":4,
"Value":"Web"
},
{
"Id":9,
"Value":"SIM"
}
],
"Shipping":{
"Addressee":"João das Couves",
"Method":"LowCost",
"Phone":"551121840540"
},
"Travel":{
"JourneyType":"OneWayTrip",
"DepartureTime":"2018-01-09 18:00",
"Passengers":[
{
"Name":"Passenger Test",
"Identity":"212424808",
"Status":"Gold",
"Rating":"Adult",
"Email":"email@mail.com",
"Phone":"5564991681074",
"TravelLegs":[
{
"Origin":"AMS",
"Destination":"GIG"
}
]
}
]
}
}
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na Braspag. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na Braspag. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja. | GUID | 36 | Não (envio no header) |
MerchantOrderId |
Número do pedido da loja. | texto | 50 | Sim |
Customer.Name |
Nome completo do comprador. | texto | 120 | Sim |
Customer.Identity |
Número do documento de identificação do comprador. | texto | 14 | Sim |
Customer.IdentityType |
Tipo de documento de identificação do comprador. Possíveis valores: “CPF” ou “CNPJ”. |
texto | 255 | Não |
Customer.Email |
E-mail do comprador. | texto | 100 | Sim |
Customer.Birthdate |
Data de nascimento do comprador. Ex.: 1991-01-10. |
data | 10 | Sim |
Customer.Phone |
Número do telefone do comprador. Ex.: 5521976781114. |
texto | 15 | Sim |
Customer.Address.Street |
Logradouro do endereço de cobrança. | texto | 54 | Sim |
Customer.Address.Number |
Número do endereço de cobrança. | texto | 5 | Sim |
Customer.Address.Complement |
Complemento do endereço de cobrança. | texto | 14 | Não |
Customer.Address.ZipCode |
CEP do endereço de cobrança. | texto | 9 | Sim |
Customer.Address.City |
Cidade do endereço de cobrança. | texto | 50 | Sim |
Customer.Address.State |
Estado do endereço de cobrança. | texto | 2 | Sim |
Customer.Address.Country |
País do endereço de cobrança. Mais informações em ISO 2-Digit Alpha Country Code. |
texto | 2 | Sim |
Customer.Address.District |
Bairro do endereço de cobrança. | texto | 45 | Sim |
Customer.DeliveryAddress.Street |
Logradouro do endereço de entrega. | texto | 54 | Não |
Customer.DeliveryAddress.Number |
Número do endereço de entrega. | texto | 5 | Não |
Customer.DeliveryAddress.Complement |
Complemento do endereço de entrega. | texto | 14 | Não |
Customer.DeliveryAddress.ZipCode |
CEP do endereço de entrega. | texto | 9 | Não |
Customer.DeliveryAddress.City |
Cidade do endereço de entrega. | texto | 50 | Não |
Customer.DeliveryAddress.State |
Estado do endereço de entrega. | texto | 2 | Não |
Customer.DeliveryAddress.Country |
País do endereço de entrega. Mais informações em ISO 2-Digit Alpha Country Code. |
texto | 2 | Não |
Customer.DeliveryAddress.District |
Bairro do endereço de entrega. | texto | 45 | Não |
Payment.Provider |
Nome do provedor da autorização. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. Obs.: Somente o tipo “CreditCard” funciona com análise de fraude. |
texto | 100 | Sim |
Payment.Amount |
Valor da transação financeira, em centavos. Ex.: 150000 = R$ 1.500,00. |
número | 15 | Sim |
Payment.ServiceTaxAmount |
Aplicável apenas para empresas aéreas. Montante do valor da autorização que deve ser destinado à taxa de serviço. Obs.: Esse valor não é adicionado ao valor da autorização. |
número | 15 | Não |
Payment.Currency |
Moeda na qual o pagamento será feito. Possíveis valores: “BRL” / “USD” / “MXN” / “COP” / “CLP” / “ARS” / “PEN” / “EUR” / “PYN” / “UYU” / “VEB” / “VEF” / “GBP”. |
texto | 3 | Não |
Payment.Country |
País na qual o pagamento será realizado. | texto | 3 | Não |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
Payment.Interest |
Tipo de parcelamento. Possíveis valores: “ByMerchant” (loja) / “ByIssuer” (emissor). |
texto | 10 | Não |
Payment.Capture |
Indica se a autorização deverá ser com captura automática. Possíveis valores: “true” / “false” (default). Obs1.: Deverá verificar junto à adquirente a disponibilidade desta funcionalidade. Obs2.: Este campo deverá ser preenchido de acordo com o fluxo da análise de fraude. |
booleano | — | Não |
Payment.Authenticate |
Indica se a transação deve ser autenticada. Possíveis valores: “true” / “false” (default). Obs1.: Deverá verificar junto à adquirente a disponibilidade desta funcionalidade. Obs2. O campo Payment.Recurrent deve ser igual a “true” quando este for igual a “false”. |
booleano | — | Não |
Payment.Recurrent |
Indica se a transação é do tipo recorrente. Possíveis valores: “true” / “false” (default). Obs1.: Este campo igual a “true” não irá criar uma recorrência; apenas permitirá a realização de uma transação sem a necessidade de envio do CVV, indicando para a adquirente que é a cobrança de uma transação de uma recorrência. Obs2.: Somente para transações Cielo. Obs3.: O campo Payment.Authenticate deve ser igual a “false” quando este for igual a “true”. |
booleano | — | Não |
Payment.SoftDescriptor |
Texto que será impresso na fatura do portador. Obs.: O valor deste campo deve tornar fácil para o portador a identificação do estabelecimento onde foi realizada a compra, pois é um dos principais ofensores para chargeback. |
texto | 13 | Não |
Payment.DoSplit |
Indica se a transação será dividida entre vários participantes. Possíveis valores: “true” / “false” (default). Para utilizar a funcionalidade de split de pagamentos, é necessário a contratação da solução junto à Braspag. |
booleano | — | Não |
Payment.ExtraDataCollection.Name |
Identificador do campo extra que será enviado. | texto | 50 | Não |
Payment.ExtraDataCollection.Value |
Valor do campo extra que será enviado. | texto | 1024 | Não |
Payment.Credentials.Code |
Afiliação gerada pela adquirente. | texto | 100 | Sim |
Payment.Credentials.Key |
Chave de afiliação/token gerado pela adquirente. | texto | 100 | Sim |
Payment.Credentials.Username |
Usuário gerado no credenciamento com a adquirente Getnet. Obs.: O campo deve ser obrigatoriamente enviado se a transação é direcionada para Getnet. |
texto | 50 | Não |
Payment.Credentials.Password |
Senha gerada no credenciamento com a adquirente Getnet. Obs.: O campo deve ser obrigatoriamente enviado se a transação é direcionada para Getnet. |
texto | 50 | Não |
Payment.Credentials.Signature |
Id do terminal no credenciamento com a adquirente Global Payments. Obs.: O campo deve ser obrigatoriamente enviado se a transação é direcionada para Global Payments. |
texto | 3 | Não |
Payment.CreditCard.CardNumber |
Número do cartão de crédito. | texto | 19 | Sim |
Payment.CreditCard.Holder |
Nome do portador impresso no cartão de crédito. Obs.: Regras de tamanho do campo podem variar de acordo com a adquirente. | texto | 25 | Sim |
Payment.CreditCard.ExpirationDate |
Data de validade do cartão de crédito. | texto | 7 | Sim |
Payment.CreditCard.SecurityCode |
Código de segurança no verso do cartão de crédito. | texto | 4 | Sim |
Payment.CreditCard.Brand |
Bandeira do cartão de crédito. | texto | 10 | Sim |
Payment.CreditCard.SaveCard |
Indica se os dados do cartão de crédito serão armazenados no Cartão Protegido. | booleano | — | Não |
Payment.CreditCard.Alias |
Alias (apelido) do cartão de crédito salvo no Cartão Protegido. | texto | 64 | Não |
Payment.FraudAnalysis.Sequence |
Tipo de fluxo da análise de fraude. Possíveis valores: “AnalyseFirst” / “AuthorizeFirst”. |
texto | 14 | Sim |
Payment.FraudAnalysis.SequenceCriteria |
Critério do fluxo da análise de fraude. Possíveis valores: “OnSuccess” / “Always”. |
texto | 9 | Sim |
Payment.FraudAnalysis.Provider |
Provedor de Antifraude. Possível valor: “Cybersource”. |
texto | 10 | Sim |
Payment.FraudAnalysis.CaptureOnLowRisk |
Indica se a transação após a análise de fraude será capturada. Possíveis valores: “true” / “false” (default) Obs1.: Quando enviado igual a “true” e o retorno da análise de fraude for de baixo risco (“Accept”), a transação anteriormente autorizada será capturada. Obs2.: Quando enviado igual a “true” e o retorno da análise de fraude for revisão (“Review”), a transação ficará autorizada, sendo capturada após a Braspag receber notificação de alteração do status para baixo risco (“Accept”). Obs3.: Para a utilização deste parâmetro, a sequência do fluxo de análise de risco ( FraudAnalysis.Sequence ) deve ser obrigatoriamente “AuthorizeFirst”. |
booleano | — | Não |
Payment.FraudAnalysis.VoidOnHighRisk |
Indica se a transação após a análise de fraude será cancelada. Possíveis valores: “true” / “false” (default). Obs1.: Quando enviado igual a “true” e o retorno da análise de fraude for de alto risco (“Reject”), a transação anteriormente autorizada será cancelada. Obs2.: Quando enviado igual a “true” e o retorno da análise de fraude for revisão (“Review”), a transação ficará autorizada, sendo cancelada após a Braspag receber notificação de alteração do status para alto risco (“Reject”). Obs3.: Para a utilização deste parâmetro, a sequência do fluxo de análise de risco ( FraudAnalysis.Sequence ) deve ser obrigatoriamente “AuthorizeFirst”. |
booleano | — | Não |
Payment.FraudAnalysis.TotalOrderAmount |
Valor total do pedido, em centavos. Ex.: 123456 = R$ 1.234,56. |
número | 15 | Sim |
Payment.FraudAnalysis.FingerPrintId |
É o valor do ProviderIdentifier . Identificador utilizado para cruzar informações obtidas do dispositivo do comprador. Obs.: Este identificador poderá ser qualquer valor ou o número do pedido, mas deverá ser único durante 48 horas. Saiba mais em Fingerprint com a Cybersource. |
texto | 88 | Sim |
Payment.FraudAnalysis.Browser.HostName |
Nome do host informado pelo browser do comprador e identificado através do cabeçalho HTTP. | texto | 60 | Não |
Payment.FraudAnalysis.Browser.CookiesAccepted |
Identifica se o browser do comprador aceita cookies. Possíveis valores: “true” / “false” (default). |
booleano | — | Sim |
Payment.FraudAnalysis.Browser.Email |
E-mail registrado no browser do comprador. Pode ser diferente do e-mail de cadastro na loja (Customer.Email ). |
texto | 100 | Não |
Payment.FraudAnalysis.Browser.Type |
Nome do browser utilizado pelo comprador e identificado através do cabeçalho HTTP. Ex.: “Google Chrome”, “Mozilla Firefox”, “Safari”, etc. |
texto | 40 | Não |
Payment.FraudAnalysis.Browser.IpAddress |
Endereço de IP do comprador. Formato IPv4 ou IPv6. | texto | 45 | Sim |
Payment.FraudAnalysis.Cart.IsGift |
Indica se o pedido realizado pelo comprador é para presente. | booleano | — | Não |
Payment.FraudAnalysis.Cart.ReturnsAccepted |
Indica se o pedido realizado pelo comprador pode ser devolvido à loja. Possíveis valores: “true” / “false” (default). |
booleano | — | Não |
Payment.FraudAnalysis.Cart.Items.GiftCategory |
Identifica a avaliação dos endereços de cobrança e entrega para diferentes cidades, estados ou países. Lista de Valores - GiftCategory. |
texto | 9 | Não |
Payment.FraudAnalysis.Cart.Items.HostHedge |
Nível de importância dos endereços de IP e e-mail do comprador na análise de fraude. Lista de Valores - HostHedge. |
texto | 6 | Não |
Payment.FraudAnalysis.Cart.Items.NonSensicalHedge |
Nível de importância das verificações sobre os dados do comprador sem sentido na análise de fraude. Lista de Valores - NonSensicalHedge. |
texto | 6 | Não |
Payment.FraudAnalysis.Cart.Items.ObscenitiesHedge |
Nível de importância das verificações sobre os dados do comprador com obscenidade na análise de fraude. Lista de Valores - ObscenitiesHedge. |
texto | 6 | Não |
Payment.FraudAnalysis.Cart.Items.PhoneHedge |
Nível de importância das verificações sobre os números de telefone do comprador na análise de fraude. Lista de Valores - PhoneHedge. |
texto | 6 | Não |
Payment.FraudAnalysis.Cart.Items.Name |
Nome do produto. | texto | 255 | Sim |
Payment.FraudAnalysis.Cart.Items.Quantity |
Quantidade do produto. | número | 15 | Sim |
Payment.FraudAnalysis.Cart.Items.Sku |
SKU (Stock Keeping Unit - Unidade de Controle de Estoque) do produto. | texto | 255 | Sim |
Payment.FraudAnalysis.Cart.Items.UnitPrice |
Preço unitário do produto, em centavos. Ex.: 10950 = R$ 109,50. |
número | 15 | Sim |
Payment.FraudAnalysis.Cart.Items.Risk |
Nível de risco do produto associado a quantidade de chargebacks. | texto | 6 | Não |
Payment.FraudAnalysis.Cart.Items.TimeHedge |
Nível de importância, na análise de fraude, da hora do dia em que o comprador realizou o pedido. Lista de Valores - TimeHedge. |
texto | 6 | Não |
Payment.FraudAnalysis.Cart.Items.Type |
Categoria do produto. Lista de Valores - Type. |
texto | 19 | Não |
Payment.FraudAnalysis.Cart.Items.VelocityHedge |
Nível de importância, na análise de fraude, da frequência de compra do comprador dentro dos 15 minutos anteriores. Lista de Valores - VelocityHedge. |
texto | 6 | Não |
Payment.FraudAnalysis.MerchantDefinedFields.Id |
Id das informações adicionais a serem enviadas. Tabela de MDDs. |
número | 2 | Sim |
Payment.FraudAnalysis.MerchantDefinedFields.Value |
Valor das informações adicionais a serem enviadas. Tabela de MDDs. |
texto | 255 | Sim |
Payment.FraudAnalysis.Shipping.Addressee |
Nome completo do responsável a receber o produto no endereço de entrega. | texto | 120 | Não |
Payment.FraudAnalysis.Shipping.Method |
Meio de entrega do pedido. Lista de Valores - Method. |
texto | 8 | Não |
Payment.FraudAnalysis.Shipping.Phone |
Número do telefone do responsável a receber o produto no endereço de entrega. Ex.: 552121114700. |
texto | 15 | Não |
Payment.FraudAnalysis.Travel.JourneyType |
Tipo de viagem. Lista de Valores - JourneyType. |
texto | 32 | Não |
Payment.FraudAnalysis.Travel.DepartureTime |
Data e hora de partida. Ex.: 2018-03-31 19:16:38. |
datetime | — | Não |
Payment.FraudAnalysis.Travel.Passengers.Name |
Nome completo do passageiro. | texto | 120 | Não |
Payment.FraudAnalysis.Travel.Passengers.Identity |
Número do documento do passageiro. | texto | 32 | Não |
Payment.FraudAnalysis.Travel.Passengers.Status |
Classificação da empresa aérea. Lista de Valores - Status. |
texto | 15 | Não |
Payment.FraudAnalysis.Travel.Passengers.Rating |
Tipo do passageiro. Lista de Valores - Rating. |
texto | 13 | Não |
Payment.FraudAnalysis.Travel.Passengers.Email |
E-mail do passageiro. | texto | 255 | Não |
Payment.FraudAnalysis.Travel.Passengers.Phone |
Telefone do passageiro. Ex.: 552121114700. |
texto | 15 | Não |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Origin |
Código do aeroporto de partida. Mais informações em IATA 3-Letter Codes. |
texto | 3 | Não |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Destination |
Código do aeroporto de chegada. Mais informações em IATA 3-Letter Codes. |
texto | 3 | Não |
{
"MerchantOrderId":"2017051002",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678910",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"Phone": "5521976781114"
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"CreditCard":{
"CardNumber":"455187******0181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":false
},
"Credentials":{
"code":"9999999",
"key":"D8888888",
"password":"LOJA9999999",
"username":"#Braspag2018@NOMEDALOJA#",
"signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
],
"FraudAnalysis":{
"Sequence":"AnalyseFirst",
"SequenceCriteria":"Always",
"Provider":"Cybersource",
"CaptureOnLowRisk":false,
"VoidOnHighRisk":false,
"TotalOrderAmount":10000,
"FingerPrintId":"074c1ee676ed4998ab66491013c565e2",
"Browser":{
"CookiesAccepted":false,
"Email":"comprador@braspag.com.br",
"HostName":"Teste",
"IpAddress":"127.0.0.1",
"Type":"Chrome"
},
"Cart":{
"IsGift":false,
"ReturnsAccepted":true,
"Items":[
{
"GiftCategory":"Undefined",
"HostHedge":"Off",
"NonSensicalHedge":"Off",
"ObscenitiesHedge":"Off",
"PhoneHedge":"Off",
"Name":"ItemTeste1",
"Quantity":1,
"Sku":"20170511",
"UnitPrice":10000,
"Risk":"High",
"TimeHedge":"Normal",
"Type":"AdultContent",
"VelocityHedge":"High"
},
{
"GiftCategory":"Undefined",
"HostHedge":"Off",
"NonSensicalHedge":"Off",
"ObscenitiesHedge":"Off",
"PhoneHedge":"Off",
"Name":"ItemTeste2",
"Quantity":1,
"Sku":"20170512",
"UnitPrice":10000,
"Risk":"High",
"TimeHedge":"Normal",
"Type":"AdultContent",
"VelocityHedge":"High"
}
]
},
"MerchantDefinedFields":[
{
"Id":2,
"Value":"100"
},
{
"Id":4,
"Value":"Web"
},
{
"Id":9,
"Value":"SIM"
}
],
"Shipping":{
"Addressee":"João das Couves",
"Method":"LowCost",
"Phone":"551121840540"
},
"Travel":{
"JourneyType":"OneWayTrip",
"DepartureTime":"2018-01-09 18:00",
"Passengers":[
{
"Name":"Passenger Test",
"Identity":"212424808",
"Status":"Gold",
"Rating":"Adult",
"Email":"email@mail.com",
"Phone":"5564991681074",
"TravelLegs":[
{
"Origin":"AMS",
"Destination":"GIG"
}
]
}
]
},
"Id":"0e4d0a3c-e424-4fa5-a573-4eabbd44da42",
"Status":1,
"FraudAnalysisReasonCode":100,
"ReplyData":{
"AddressInfoCode":"COR-BA^MM-BIN",
"FactorCode":"B^D^R^Z",
"Score":42,
"BinCountry":"us",
"CardIssuer":"FIA CARD SERVICES, N.A.",
"CardScheme":"VisaCredit",
"HostSeverity":1,
"InternetInfoCode":"FREE-EM^RISK-EM",
"IpRoutingMethod":"Undefined",
"ScoreModelUsed":"default_lac",
"CasePriority":3,
"ProviderTransactionId":"5220688414326697303008"
}
},
"PaymentId": "c374099e-c474-4916-9f5c-f2598fec2925",
"ProofOfSale": "20170510053219433",
"AcquirerTransactionId": "0510053219433",
"AuthorizationCode": "936403",
"ReceivedDate": "2017-05-10 17:32:19",
"CapturedAmount": 10000,
"CapturedDate": "2017-05-10 17:32:19",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925/void"
}]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId":"2017051002",
"Customer":{
"Name":"Nome do Comprador",
"Identity":"12345678910",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"Phone": "5521976781114"
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":false,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"CreditCard":{
"CardNumber":"4551870000000181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2021",
"SecurityCode":"123",
"Brand":"Visa",
"SaveCard":false
},
"Credentials":{
"code":"9999999",
"key":"D8888888",
"password":"LOJA9999999",
"username":"#Braspag2018@NOMEDALOJA#",
"signature":"001"
},
"ExtraDataCollection":[
{
"Name":"NomeDoCampo",
"Value":"ValorDoCampo"
}
],
"FraudAnalysis":{
"Sequence":"AnalyseFirst",
"SequenceCriteria":"Always",
"Provider":"Cybersource",
"CaptureOnLowRisk":false,
"VoidOnHighRisk":false,
"TotalOrderAmount":10000,
"FingerPrintId":"074c1ee676ed4998ab66491013c565e2",
"Browser":{
"CookiesAccepted":false,
"Email":"comprador@braspag.com.br",
"HostName":"Teste",
"IpAddress":"127.0.0.1",
"Type":"Chrome"
},
"Cart":{
"IsGift":false,
"ReturnsAccepted":true,
"Items":[
{
"GiftCategory":"Undefined",
"HostHedge":"Off",
"NonSensicalHedge":"Off",
"ObscenitiesHedge":"Off",
"PhoneHedge":"Off",
"Name":"ItemTeste1",
"Quantity":1,
"Sku":"20170511",
"UnitPrice":10000,
"Risk":"High",
"TimeHedge":"Normal",
"Type":"AdultContent",
"VelocityHedge":"High"
},
{
"GiftCategory":"Undefined",
"HostHedge":"Off",
"NonSensicalHedge":"Off",
"ObscenitiesHedge":"Off",
"PhoneHedge":"Off",
"Name":"ItemTeste2",
"Quantity":1,
"Sku":"20170512",
"UnitPrice":10000,
"Risk":"High",
"TimeHedge":"Normal",
"Type":"AdultContent",
"VelocityHedge":"High"
}
]
},
"MerchantDefinedFields":[
{
"Id":2,
"Value":"100"
},
{
"Id":4,
"Value":"Web"
},
{
"Id":9,
"Value":"SIM"
}
],
"Shipping":{
"Addressee":"João das Couves",
"Method":"LowCost",
"Phone":"551121840540"
},
"Travel":{
"JourneyType":"OneWayTrip",
"DepartureTime":"2018-01-09 18:00",
"Passengers":[
{
"Name":"Passenger Test",
"Identity":"212424808",
"Status":"Gold",
"Rating":"Adult",
"Email":"email@mail.com",
"Phone":"5564991681074",
"TravelLegs":[
{
"Origin":"AMS",
"Destination":"GIG"
}
]
}
]
},
"Id":"0e4d0a3c-e424-4fa5-a573-4eabbd44da42",
"Status":1,
"FraudAnalysisReasonCode":100,
"ReplyData":{
"AddressInfoCode":"COR-BA^MM-BIN",
"FactorCode":"B^D^R^Z",
"Score":42,
"BinCountry":"us",
"CardIssuer":"FIA CARD SERVICES, N.A.",
"CardScheme":"VisaCredit",
"HostSeverity":1,
"InternetInfoCode":"FREE-EM^RISK-EM",
"IpRoutingMethod":"Undefined",
"ScoreModelUsed":"default_lac",
"CasePriority":3,
"ProviderTransactionId":"5220688414326697303008"
}
},
"PaymentId": "c374099e-c474-4916-9f5c-f2598fec2925",
"ProofOfSale": "20170510053219433",
"AcquirerTransactionId": "0510053219433",
"AuthorizationCode": "936403",
"ReceivedDate": "2017-05-10 17:32:19",
"CapturedAmount": 10000,
"CapturedDate": "2017-05-10 17:32:19",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/c374099e-c474-4916-9f5c-f2598fec2925/void"
}]
}
}
Propriedade | Descrição | Tipo |
---|---|---|
MerchantOrderId |
Número do pedido da loja. | texto |
Customer.Name |
Nome completo do comprador. | texto |
Customer.Identity |
Número do documento de identificação do comprador. | texto |
Customer.IdentityType |
Tipo de documento de identificação do comprador. | texto |
Customer.Email |
E-mail do comprador. | texto |
Customer.Birthdate |
Data de nascimento do comprador. | data |
Customer.Phone |
Número do telefone do comprador. | texto |
Customer.Address.Street |
Logradouro do endereço de cobrança. | texto |
Customer.Address.Number |
Número do endereço de cobrança. | texto |
Customer.Address.Complement |
Complemento do endereço de cobrança. | texto |
Customer.Address.ZipCode |
CEP do endereço de cobrança. | texto |
Customer.Address.City |
Cidade do endereço de cobrança. | texto |
Customer.Address.State |
Estado do endereço de cobrança. | texto |
Customer.Address.Country |
País do endereço de cobrança. | texto |
Customer.Address.District |
Bairro do endereço de cobrança. | texto |
Customer.DeliveryAddress.Street |
Logradouro do endereço de entrega. | texto |
Customer.DeliveryAddress.Number |
Número do endereço de entrega. | texto |
Customer.DeliveryAddress.Complement |
Complemento do endereço de entrega. | texto |
Customer.DeliveryAddress.ZipCode |
CEP do endereço de entrega. | texto |
Customer.DeliveryAddress.City |
Cidade do endereço de entrega. | texto |
Customer.DeliveryAddress.State |
Estado do endereço de entrega. | texto |
Customer.DeliveryAddress.Country |
País do endereço de entrega. | texto |
Customer.DeliveryAddress.District |
Bairro do endereço de entrega. | texto |
Payment.Provider |
Nome do provedor da autorização. | texto |
Payment.Type |
Tipo do meio de pagamento. | texto |
Payment.Amount |
Valor da transação financeira, em centavos. | número |
Payment.ServiceTaxAmount |
Montante do valor da autorização que deve ser destinado à taxa de serviço. | número |
Payment.Currency |
Moeda na qual o pagamento será feito. | texto |
Payment.Country |
País na qual o pagamento será realizado. | texto |
Payment.Installments |
Número de parcelas. | número |
Payment.Interest |
Tipo de parcelamento. | texto |
Payment.Capture |
Indica se a autorização deverá ser com captura automática. | booleano |
Payment.Authenticate |
Indica se a transação deve ser autenticada. | booleano |
Payment.Recurrent |
Indica se a transação é do tipo recorrente. | booleano |
Payment.SoftDescriptor |
Texto que será impresso na fatura do portador. | texto |
Payment.DoSplit |
Indica se a transação será dividida entre vários participantes. | booleano |
Payment.ExtraDataCollection.Name |
Identificador do campo extra que será enviado. | texto |
Payment.ExtraDataCollection.Value |
Valor do campo extra que será enviado. | texto |
Payment.Credentials.Code |
Afiliação gerada pela adquirente. | texto |
Payment.Credentials.Key |
Chave de afiliação/token gerado pela adquirente. | texto |
Payment.Credentials.Username |
Usuário gerado no credenciamento com a adquirente Getnet. | texto |
Payment.Credentials.Password |
Senha gerada no credenciamento com a adquirente Getnet. | texto |
Payment.Credentials.Signature |
Id do terminal no credenciamento com a adquirente Global Payments. | texto |
Payment.CreditCard.CardNumber |
Número do cartão de crédito truncado. | texto |
Payment.CreditCard.Holder |
Nome do portador impresso no cartão de crédito. | texto |
Payment.CreditCard.ExpirationDate |
Data de validade do cartão de crédito. | texto |
Payment.CreditCard.SecurityCode |
Código de segurança no verso do cartão de crédito. | texto |
Payment.CreditCard.Brand |
Bandeira do cartão de crédito. | texto |
Payment.CreditCard.SaveCard |
Indica se os dados do cartão de crédito foram armazenados no Cartão Protegido. | booleano |
Payment.CreditCard.Alias |
Alias (apelido) do cartão de crédito salvo no Cartão Protegido. | texto |
Payment.CreditCard.CardToken |
Identificador do cartão de crédito salvo no Cartão Protegido. | GUID |
Payment.FraudAnalysis.Sequence |
Tipo de fluxo da análise de fraude. | texto |
Payment.FraudAnalysis.SequenceCriteria |
Critério do fluxo da análise de fraude. | texto |
Payment.FraudAnalysis.Provider |
Provedor de Antifraude. | texto |
Payment.FraudAnalysis.CaptureOnLowRisk |
Indica se a transação após a análise de fraude será capturada. | booleano |
Payment.FraudAnalysis.VoidOnHighRisk |
Indica se a transação após a análise de fraude será cancelada. | booleano |
Payment.FraudAnalysis.TotalOrderAmount |
Valor total do pedido, em centavos. | número |
Payment.FraudAnalysis.FingerPrintId |
Identificador utilizado para cruzar informações obtidas do dispositivo do comprador. | texto |
Payment.FraudAnalysis.Browser.HostName |
Nome do host informado pelo browser do comprador e identificado através do cabeçalho HTTP. | texto |
Payment.FraudAnalysis.Browser.CookiesAccepted |
Identifica se o browser do comprador aceita cookies. | booleano |
Payment.FraudAnalysis.Browser.Email |
E-mail registrado no browser do comprador. Pode ser diferente do e-mail de cadastro na loja (Customer.Email ). |
texto |
Payment.FraudAnalysis.Browser.Type |
Nome do browser utilizado pelo comprador e identificado através do cabeçalho HTTP. | texto |
Payment.FraudAnalysis.Browser.IpAddress |
Endereço de IP do comprador. Formato IPv4 ou IPv6. | texto |
Payment.FraudAnalysis.Cart.IsGift |
Indica se o pedido realizado pelo comprador é para presente. | booleano |
Payment.FraudAnalysis.Cart.ReturnsAccepted |
Indica se o pedido realizado pelo comprador pode ser devolvido à loja. | booleano |
Payment.FraudAnalysis.Cart.Items.GiftCategory |
Identifica a avaliação dos endereços de cobrança e entrega para diferentes cidades, estados ou países. | texto |
Payment.FraudAnalysis.Cart.Items.HostHedge |
Nível de importância dos endereços de IP e e-mail do comprador na análise de fraude. | texto |
Payment.FraudAnalysis.Cart.Items.NonSensicalHedge |
Nível de importância das verificações sobre os dados do comprador sem sentido na análise de fraude. | texto |
Payment.FraudAnalysis.Cart.Items.ObscenitiesHedge |
Nível de importância das verificações sobre os dados do comprador com obscenidade na análise de fraude. | texto |
Payment.FraudAnalysis.Cart.Items.PhoneHedge |
Nível de importância das verificações sobre os números de telefones do comprador na análise de fraude. | texto |
Payment.FraudAnalysis.Cart.Items.Name |
Nome do produto. | texto |
Payment.FraudAnalysis.Cart.Items.Quantity |
Quantidade do produto. | número |
Payment.FraudAnalysis.Cart.Items.Sku |
SKU (Stock Keeping Unit - Unidade de Controle de Estoque) do produto. | texto |
Payment.FraudAnalysis.Cart.Items.UnitPrice |
Preço unitário do produto. | número |
Payment.FraudAnalysis.Cart.Items.Risk |
Nível de risco do produto associado à quantidade de chargebacks. | texto |
Payment.FraudAnalysis.Cart.Items.TimeHedge |
Nível de importância, na análise de fraude, da hora do dia em que o comprador realizou o pedido. | texto |
Payment.FraudAnalysis.Cart.Items.Type |
Categoria do produto. | texto |
Payment.FraudAnalysis.Cart.Items.VelocityHedge |
Nível de importância, na análise de fraude, da frequência de compra do comprador dentro dos 15 minutos anteriores. | texto |
Payment.FraudAnalysis.MerchantDefinedFields.Id |
Id das informações adicionais a serem enviadas. | número |
Payment.FraudAnalysis.MerchantDefinedFields.Value |
Valor das informações adicionais a serem enviadas. | texto |
Payment.FraudAnalysis.Shipping.Addressee |
Nome completo do responsável a receber o produto no endereço de entrega. | texto |
Payment.FraudAnalysis.Shipping.Method |
Meio de entrega do pedido. | texto |
Payment.FraudAnalysis.Shipping.Phone |
Número do telefone do responsável a receber o produto no endereço de entrega. | número |
Payment.FraudAnalysis.Travel.JourneyType |
Tipo de viagem. | texto |
Payment.FraudAnalysis.Travel.DepartureTime |
Data e hora de partida. | datetime |
Payment.FraudAnalysis.Travel.Passengers.Name |
Nome completo do passageiro. | texto |
Payment.FraudAnalysis.Travel.Passengers.Identity |
Número do documento do passageiro. | texto |
Payment.FraudAnalysis.Travel.Passengers.Status |
Classificação da empresa aérea. | texto |
Payment.FraudAnalysis.Travel.Passengers.Rating |
Tipo do passageiro. | texto |
Payment.FraudAnalysis.Travel.Passengers.Email |
E-mail do passageiro. | texto |
Payment.FraudAnalysis.Travel.Passengers.Phone |
Telefone do passageiro. | número |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Origin |
Código do aeroporto de partida. | texto |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Destination |
Código do aeroporto de chegada. | texto |
Payment.FraudAnalysis.Id |
Id da transação no Antifraude Braspag. | GUID |
Payment.FraudAnalysis.Status |
Status da transação no Antifraude Braspag. Lista de Valores - Status. |
número |
Payment.FraudAnalysis.FraudAnalysisReasonCode |
Código de retorno da Cybersouce. Lista de Valores - FraudAnalysisReasonCode. |
número |
Payment.FraudAnalysis.ReplyData.AddressInfoCode |
Códigos indicam incompatibilidades entre os endereços de cobrança e entrega do comprador. Os códigos são concatenados usando o caractere “^”. Ex.: COR-BA^MM-BIN. Lista de Valores - AddressInfoCode. |
texto |
Payment.FraudAnalysis.ReplyData.FactorCode |
Códigos que afetaram a pontuação da análise. Os códigos são concatenados usando o caractere “^”. Ex.: B^D^R^Z. Lista de Valores - FactorCode. |
texto |
Payment.FraudAnalysis.ReplyData.Score |
Score da análise de fraude. Valor entre 0 e 100. | número |
Payment.FraudAnalysis.ReplyData.BinCountry |
Código do país do BIN do cartão usado na análise. Mais informações em ISO 2-Digit Alpha Country Code. |
texto |
Payment.FraudAnalysis.ReplyData.CardIssuer |
Nome do banco ou entidade emissora do cartão de crédito. | texto |
Payment.FraudAnalysis.ReplyData.CardScheme |
Bandeira do cartão. | texto |
Payment.FraudAnalysis.ReplyData.HostSeverity |
Nível de risco do domínio de e-mail do comprador, de 0 a 5, onde 0 é risco indeterminado e 5 representa o risco mais alto. | número |
Payment.FraudAnalysis.ReplyData.InternetInfoCode |
Códigos que indicam problemas com o endereço de e-mail, endereço IP ou endereço de cobrança. Os códigos são concatenados usando o caractere “^”. Ex.: FREE-EM^RISK-EM Lista de Valores - InternetInfoCode. |
texto |
Payment.FraudAnalysis.ReplyData.IpRoutingMethod |
Método de roteamento do comprador obtido a partir do endereço de IP. Lista de Valores - IpRoutingMethod. |
texto |
Payment.FraudAnalysis.ReplyData.ScoreModelUsed |
Nome do modelo de score utilizado na análise. Caso não tenha nenhum modelo definido, o modelo padrão da Cybersource foi o utilizado. | texto |
Payment.FraudAnalysis.ReplyData.CasePriority |
Define o nível de prioridade das regras ou perfis do lojista. O nível de prioridade varia entre 1 (maior) e 5 (menor). O valor padrão é 3, e é atribuído caso não se tenha definido a prioridade das regras ou perfis. Este campo será retornado somente se a loja for assinante do Enhanced Case Management. | número |
Payment.FraudAnalysis.ReplyData.ProviderTransactionId |
Id da transação na Cybersource. | texto |
Payment.PaymentId |
Identificador da transação no Pagador Braspag. | GUID |
Payment.AcquirerTransactionId |
Identificador da transação na adquirente. | texto |
Payment.ProofOfSale |
Número do comprovante de venda na adquirente (NSU - Número Sequencial Único). | texto |
Payment.AuthorizationCode |
Código de autorização na adquirente. | texto |
Payment.ReceivedDate |
Data em que a transação foi recebida no Pagador Braspag. Ex.: 2018-01-16 16:38:19. |
datetime |
Payment.CapturedDate |
Data em que a transação foi capturada na adquirente. Ex.: 2018-01-16 16:38:20. |
datetime |
Payment.CapturedAmount |
Valor capturado da transação, em centavos. Ex.: 123456 = R$ 1.234,56. |
número |
Payment.ECI |
Electronic Commerce Indicator. Código gerado em uma transação de crédito com autenticação externa. | texto |
Payment.ReasonCode |
Código de retorno da operação. | texto |
Payment.ReasonMessage |
Mensagem de retorno da operação. | texto |
Payment.Status |
Status da transação no Pagador. Veja a lista completa de Status da Transação. | Número |
Payment.ProviderReturnCode |
Código retornado pela adquirente ou emissor. | texto |
Payment.ProviderReturnMessage |
Mensagem retornada pela adquirente ou emissor. | texto |
O Fingerprint é a identificação digital do dispositivo do comprador. Essa identificação é composta por uma série de dados coletados na página de checkout do site ou aplicativo.
Na integração da API do Pagador com análise de fraude, o valor do
ProviderIdentifier
deve ser enviado no parâmetroPayment.FraudAnalisys.FingerPrintId
.
Para configurar o Fingerprint com a Cybersource, consulte o manual do Antifraude Gateway.
Na requisição de análise de fraude com a ACI Worldwide, envie o campo
Payment.FraudAnalysis.Provider
como “RedShield”.
{
"MerchantOrderId":"123456",
"Customer":{
"Name":"Comprador Teste",
"Identity":"12345678910",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"Phone": "5521976781114",
"mobile": "5511940028922",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":true,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"CreditCard":{
"CardNumber":"455184******0181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2028",
"SecurityCode":"***",
"Brand":"Visa",
"SaveCard":"true"
},
"FraudAnalysis":{
"Sequence":"AnalyseFirst",
"SequenceCriteria":"OnSuccess",
"Provider":"RedShield",
"CaptureOnLowRisk":false,
"VoidOnHighRisk":false,
"TotalOrderAmount":10000,
"FingerPrintId":"074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2",
"Browser":{
"CookiesAccepted":true,
"IpAddress":"127.0.0.1"
},
"Cart":{
"IsGift":true,
"ReturnsAccepted":true,
"Items":[
{
"Name":"ItemTeste1",
"Quantity":2,
"Sku":"20170511",
"UnitPrice":20000
},
{
"Name":"ItemTeste2",
"Quantity":1,
"Sku":"20170512",
"UnitPrice":10000
}
]
},
"MerchantDefinedFields":[
{
"Id":26,
"Value":"nomedousuario"
},
{
"Id":27,
"Value":"120"
},
{
"Id":28,
"Value":"12"
},
{
"Id":29,
"Value":"WEB"
}
],
"Shipping":{
"Addressee":"Nome do destinatario",
"Method":"LowCost",
"Phone":"551121840540"
},
"Travel":{
"JourneyType":"OneWayTrip",
"DepartureTime":"2018-01-09 18:00",
"Passengers":[
{
"Name":"Passenger Test",
"Identity":"212424808",
"Status":"Gold",
"Rating":"Adult",
"Email":"email@mail.com",
"Phone":"5564991681074",
"TravelLegs":[
{
"Origin":"AMS",
"Destination":"GIG"
}
]
}
]
}
}
}
}
{
"MerchantOrderId":"123456",
"Customer":{
"Name":"Comprador Teste",
"Identity":"12345678910",
"IdentityType":"CPF",
"Email":"comprador@braspag.com.br",
"Birthdate":"1991-01-02",
"Phone": "5521976781114",
"mobile": "5511940028922",
"Address":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
},
"DeliveryAddress":{
"Street":"Alameda Xingu",
"Number":"512",
"Complement":"27 andar",
"ZipCode":"12345987",
"City":"São Paulo",
"State":"SP",
"Country":"BR",
"District":"Alphaville"
}
},
"Payment":{
"Provider":"Simulado",
"Type":"CreditCard",
"Amount":10000,
"Currency":"BRL",
"Country":"BRA",
"Installments":1,
"Interest":"ByMerchant",
"Capture":true,
"Authenticate":false,
"Recurrent":true,
"SoftDescriptor":"Mensagem",
"DoSplit":false,
"CreditCard":{
"CardNumber":"455184******0181",
"Holder":"Nome do Portador",
"ExpirationDate":"12/2028",
"SecurityCode":"***",
"Brand":"Visa",
"SaveCard":"true"
},
"FraudAnalysis":{
"Sequence":"AnalyseFirst",
"SequenceCriteria":"OnSuccess",
"Provider":"RedShield",
"CaptureOnLowRisk":false,
"VoidOnHighRisk":false,
"TotalOrderAmount":10000,
"FingerPrintId":"074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2",
"Browser":{
"CookiesAccepted":true,
"IpAddress":"127.0.0.1"
},
"Cart":{
"IsGift":true,
"ReturnsAccepted":true,
"Items":[
{
"Name":"ItemTeste1",
"Quantity":2,
"Sku":"20170511",
"UnitPrice":20000
},
{
"Name":"ItemTeste2",
"Quantity":1,
"Sku":"20170512",
"UnitPrice":10000
}
]
},
"MerchantDefinedFields":[
{
"Id":26,
"Value":"nomedousuario"
},
{
"Id":27,
"Value":"120"
},
{
"Id":28,
"Value":"12"
},
{
"Id":29,
"Value":"WEB"
}
],
"Shipping":{
"Addressee":"Nome do destinatario",
"Method":"LowCost",
"Phone":"551121840540"
},
"Travel":{
"JourneyType":"OneWayTrip",
"DepartureTime":"2018-01-09 18:00",
"Passengers":[
{
"Name":"Passenger Test",
"Identity":"212424808",
"Status":"Gold",
"Rating":"Adult",
"Email":"email@mail.com",
"Phone":"5564991681074",
"TravelLegs":[
{
"Origin":"AMS",
"Destination":"GIG"
}
]
}
]
}
}
}
}
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantOrderId |
Número do pedido da loja. | texto | 50 | Sim |
Customer.Name |
Nome completo do comprador. | texto | 120 | Sim |
Customer.Identity |
Número do documento de identificação do comprador. | texto | 16 | Sim |
Customer.IdentityType |
Tipo de documento de identificação do comprador. Possíveis valores: “CPF” ou “CNPJ”. |
texto | 255 | Não |
Customer.Email |
E-mail do comprador. | texto | 100 | Sim |
Customer.Birthdate |
Data de nascimento do comprador. Ex.: 1991-01-10. |
data | 10 | Sim |
Customer.Phone |
Número do telefone do comprador. Ex.: 5521976781114. |
texto | 15 | Sim |
Customer.Mobile |
Número do telefone celular do comprador. Ex.: 5521976781114. |
texto | 15 | Sim |
Customer.Address.Street |
Logradouro do endereço de cobrança. | texto | 54 | Sim |
Customer.Address.Number |
Número do endereço de cobrança. | texto | 5 | Sim |
Customer.Address.Complement |
Complemento do endereço de cobrança. | texto | 14 | Não |
Customer.Address.ZipCode |
CEP do endereço de cobrança. | texto | 9 | Sim |
Customer.Address.City |
Cidade do endereço de cobrança. | texto | 50 | Sim |
Customer.Address.State |
Estado do endereço de cobrança. | texto | 2 | Sim |
Customer.Address.Country |
País do endereço de cobrança. Mais informações em ISO 2-Digit Alpha Country Code. |
texto | 2 | Sim |
Customer.Address.District |
Bairro do endereço de cobrança. | texto | 45 | Sim |
Customer.DeliveryAddress.Street |
Logradouro do endereço de entrega. | texto | 54 | Não |
Customer.DeliveryAddress.Number |
Número do endereço de entrega. | texto | 5 | Não |
Customer.DeliveryAddress.Complement |
Complemento do endereço de entrega. | texto | 14 | Não |
Customer.DeliveryAddress.ZipCode |
CEP do endereço de entrega. | texto | 9 | Não |
Customer.DeliveryAddress.City |
Cidade do endereço de entrega. | texto | 50 | Não |
Customer.DeliveryAddress.State |
Estado do endereço de entrega. | texto | 2 | Não |
Customer.DeliveryAddress.Country |
País do endereço de entrega. Mais informações em ISO 2-Digit Alpha Country Code. |
texto | 2 | Não |
Customer.DeliveryAddress.District |
Bairro do endereço de entrega. | texto | 45 | Não |
Payment.Provider |
Nome do provedor da autorização. | texto | 15 | Sim |
Payment.Type |
Tipo do meio de pagamento. Obs.: Somente o tipo “CreditCard” funciona com análise de fraude. |
texto | 100 | Sim |
Payment.Amount |
Valor da transação financeira, em centavos. Ex.: 150000 = R$ 1.500,00. |
número | 15 | Sim |
Payment.Currency |
Moeda na qual o pagamento será feito. Possíveis valores: “BRL” / “USD” / “MXN” / “COP” / “CLP” / “ARS” / “PEN” / “EUR” / “PYN” / “UYU” / “VEB” / “VEF” / “GBP”. |
texto | 3 | Não |
Payment.Country |
País na qual o pagamento será realizado. | texto | 3 | Não |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
Payment.Interest |
Tipo de parcelamento. Possíveis valores: “ByMerchant” (loja) / “ByIssuer” (emissor). |
texto | 10 | Não |
Payment.Capture |
Indica se a autorização deverá ser com captura automática. Possíveis valores: “true” / “false” (default). Obs1.: Deverá verificar junto à adquirente a disponibilidade desta funcionalidade. Obs2.: Este campo deverá ser preenchido de acordo com o fluxo da análise de fraude. |
booleano | — | Não |
Payment.Authenticate |
Indica se a transação deve ser autenticada. Possíveis valores: “true” / “false” (default). Obs1.: Deverá verificar junto à adquirente a disponibilidade desta funcionalidade. Obs2. O campo Payment.Recurrent deve ser igual a “true” quando este for igual a “false”. |
booleano | — | Não |
Payment.Recurrent |
Indica se a transação é do tipo recorrente. Possíveis valores: “true” / “false” (default). Obs1.: Este campo igual a “true” não irá criar uma recorrência; apenas permitirá a realização de uma transação sem a necessidade de envio do CVV, indicando para a adquirente que é a cobrança de uma transação de uma recorrência. Obs2.: Somente para transações Cielo. Obs3.: O campo Payment.Authenticate deve ser igual a “false” quando este for igual a “true”. |
booleano | — | Não |
Payment.SoftDescriptor |
Texto que será impresso na fatura do portador. Obs.: O valor deste campo deve tornar fácil para o portador a identificação do estabelecimento onde foi realizada a compra, pois é um dos principais ofensores para chargeback. |
texto | 13 | Não |
Payment.DoSplit |
Indica se a transação será dividida entre vários participantes. Possíveis valores: “true” / “false” (default). Para utilizar a funcionalidade de split de pagamentos, é necessário a contratação da solução junto à Braspag. |
booleano | — | Não |
Payment.CreditCard.CardNumber |
Número do cartão de crédito. | texto | 19 | Sim |
Payment.CreditCard.Holder |
Nome do portador impresso no cartão de crédito. Obs.: Regras de tamanho do campo podem variar de acordo com a adquirente. | texto | 25 | Sim |
Payment.CreditCard.ExpirationDate |
Data de validade do cartão de crédito. | texto | 7 | Sim |
Payment.CreditCard.SecurityCode |
Código de segurança no verso do cartão de crédito. | texto | 4 | Sim |
Payment.CreditCard.Brand |
Bandeira do cartão de crédito. | texto | 10 | Sim |
Payment.CreditCard.SaveCard |
Indica se os dados do cartão de crédito serão armazenados no Cartão Protegido. | booleano | — | Não |
Payment.FraudAnalysis.Sequence |
Tipo de fluxo da análise de fraude. Possíveis valores: “AnalyseFirst” / “AuthorizeFirst”. |
texto | 14 | Sim |
Payment.FraudAnalysis.SequenceCriteria |
Critério do fluxo da análise de fraude. Possíveis valores: “OnSuccess” / “Always”. |
texto | 9 | Sim |
Payment.FraudAnalysis.Provider |
Provedor de Antifraude. Valor possível para o provedor ACI Worldwide: “RedShield”. |
texto | 10 | Sim |
Payment.FraudAnalysis.CaptureOnLowRisk |
Indica se a transação após a análise de fraude será capturada. Possíveis valores: “true” / “false” (default) Obs1.: Quando enviado igual a “true” e o retorno da análise de fraude for de baixo risco (“Accept”), a transação anteriormente autorizada será capturada. Obs2.: Quando enviado igual a “true” e o retorno da análise de fraude for revisão (“Review”), a transação ficará autorizada, sendo capturada após a Braspag receber notificação de alteração do status para baixo risco (“Accept”). Obs3.: Para a utilização deste parâmetro, a sequência do fluxo de análise de risco ( FraudAnalysis.Sequence ) deve ser obrigatoriamente “AuthorizeFirst”. |
booleano | — | Não |
Payment.FraudAnalysis.VoidOnHighRisk |
Indica se a transação após a análise de fraude será cancelada. Possíveis valores: “true” / “false” (default). Obs1.: Quando enviado igual a “true” e o retorno da análise de fraude for de alto risco (“Reject”), a transação anteriormente autorizada será cancelada. Obs2.: Quando enviado igual a “true” e o retorno da análise de fraude for revisão (“Review”), a transação ficará autorizada, sendo cancelada após a Braspag receber notificação de alteração do status para alto risco (“Reject”). Obs3.: Para a utilização deste parâmetro, a sequência do fluxo de análise de risco ( FraudAnalysis.Sequence ) deve ser obrigatoriamente “AuthorizeFirst”. |
booleano | — | Não |
Payment.FraudAnalysis.TotalOrderAmount |
Valor total do pedido, em centavos. Ex.: 123456 = R$ 1.234,56. |
número | 15 | Sim |
Payment.FraudAnalysis.FingerPrintId |
Identificador utilizado para cruzar informações obtidas do dispositivo do comprador. Este mesmo identificador deve ser utilizado para gerar o valor que será atribuído ao campo session_id do script que será incluído na página de checkout. Obs.: Este identificador poderá ser qualquer valor ou o número do pedido, mas deverá ser único durante 48 horas. |
texto | 88 | Sim |
Payment.FraudAnalysis.Browser.CookiesAccepted |
Identifica se o browser do comprador aceita cookies. Possíveis valores: “true” / “false” (default). |
booleano | — | Sim |
Payment.FraudAnalysis.Browser.IpAddress |
Endereço de IP do comprador. Formato IPv4 ou IPv6. | texto | 45 | Sim |
Payment.FraudAnalysis.Cart.IsGift |
Indica se o pedido realizado pelo comprador é para presente. | booleano | — | Não |
Payment.FraudAnalysis.Cart.ReturnsAccepted |
Indica se o pedido realizado pelo comprador pode ser devolvido à loja. Possíveis valores: “true” / “false” (default). |
booleano | — | Não |
Payment.FraudAnalysis.Cart.Items.Name |
Nome do produto. | texto | 255 | Sim |
Payment.FraudAnalysis.Cart.Items.Quantity |
Quantidade do produto. | número | 15 | Sim |
Payment.FraudAnalysis.Cart.Items.Sku |
SKU (Stock Keeping Unit - Unidade de Controle de Estoque) do produto. | texto | 255 | Sim |
Payment.FraudAnalysis.Cart.Items.UnitPrice |
Preço unitário do produto, em centavos. Ex.: 10950 = R$ 109,50. |
número | 15 | Sim |
Payment.FraudAnalysis.MerchantDefinedFields.Id |
Id das informações adicionais a serem enviadas. Tabela de MDDs. |
número | 2 | Sim |
Payment.FraudAnalysis.MerchantDefinedFields.Value |
Valor das informações adicionais a serem enviadas. Tabela de MDDs. |
texto | 255 | Sim |
Payment.FraudAnalysis.Shipping.Addressee |
Nome completo do responsável a receber o produto no endereço de entrega. | texto | 120 | Não |
Payment.FraudAnalysis.Shipping.Method |
Meio de entrega do pedido. Lista de Valores - Method. |
texto | 8 | Não |
Payment.FraudAnalysis.Shipping.Phone |
Número do telefone do responsável a receber o produto no endereço de entrega. Ex.: 552121114700. |
texto | 15 | Não |
Payment.FraudAnalysis.Travel.JourneyType |
Tipo de viagem. Lista de Valores - JourneyType. |
texto | 32 | Não* |
Payment.FraudAnalysis.Travel.DepartureTime |
Data e hora de partida. Ex.: 2018-03-31 19:16:38. |
datetime | — | Não* |
Payment.FraudAnalysis.Travel.Passengers.Name |
Nome completo do passageiro. | texto | 120 | Não* |
Payment.FraudAnalysis.Travel.Passengers.Identity |
Número do documento do passageiro. | texto | 32 | Não* |
Payment.FraudAnalysis.Travel.Passengers.Status |
Classificação da empresa aérea. Lista de Valores - Status. |
texto | 15 | Não* |
Payment.FraudAnalysis.Travel.Passengers.Rating |
Tipo do passageiro. Lista de Valores - Rating. |
texto | 13 | Não* |
Payment.FraudAnalysis.Travel.Passengers.Email |
E-mail do passageiro. | texto | 255 | Não* |
Payment.FraudAnalysis.Travel.Passengers.Phone |
Telefone do passageiro. Ex.: 552121114700. |
texto | 15 | Não* |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Origin |
Código do aeroporto de partida. Mais informações em IATA 3-Letter Codes. |
texto | 3 | Não* |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Destination |
Código do aeroporto de chegada. Mais informações em IATA 3-Letter Codes. |
texto | 3 | Não* |
{
"MerchantOrderId": "123456",
"Customer": {
"Name": "Comprador Teste",
"Identity": "12345678910",
"IdentityType": "CPF",
"Email": "comprador@braspag.com.br",
"Phone": "5521976781114",
"Birthdate": "1991-01-02",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BR",
"District": "Alphaville",
"AddressType": "NotInformed"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BR",
"District": "Alphaville",
"AddressType": "NotInformed"
},
"Mobile": "5511940028922"
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": true,
"CreditCard": {
"CardNumber": "455184******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2028",
"SaveCard": true,
"Brand": "Visa"
},
"ProofOfSale": "836045",
"AcquirerTransactionId": "0527060143139",
"AuthorizationCode": "095614",
"SoftDescriptor": "Mensagem",
"SentOrderId": "20220527180141FEC711",
"FraudAnalysis": {
"Sequence": "AnalyseFirst",
"SequenceCriteria": "OnSuccess",
"FingerPrintId": "074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2",
"Provider": "RedShield",
"CaptureOnLowRisk": false,
"VoidOnHighRisk": false,
"TotalOrderAmount": 10000,
"IsRetryTransaction": false,
"MerchantDefinedFields": [
{
"Id": "26",
"Value": "nomedousuario"
},
{
"Id": "27",
"Value": "120"
},
{
"Id": "28",
"Value": "12"
},
{
"Id": "29",
"Value": "WEB"
}
],
"Cart": {
"IsGift": true,
"ReturnsAccepted": true,
"Items": [
{
"Name": "ItemTeste1",
"Sku": "20170511",
"UnitPrice": 20000,
"Quantity": 2
},
{
"Name": "ItemTeste2",
"Sku": "20170512",
"UnitPrice": 10000,
"Quantity": 1
}
]
},
"Travel": {
"DepartureTime": "2018-01-09T18:00:00",
"JourneyType": "OneWayTrip",
"Passengers": [
{
"Name": "Passenger Test",
"Identity": "212424808",
"Status": "Gold",
"Rating": "Adult",
"Email": "email@mail.com",
"Phone": "5564991681074",
"TravelLegs": [
{
"Destination": "GIG",
"Origin": "AMS"
}
]
}
]
},
"Browser": {
"CookiesAccepted": true,
"IpAddress": "127.0.0.1"
},
"Shipping": {
"Addressee": "Nome do destinatario",
"Phone": "551121840540",
"Method": "LowCost"
},
"Id": "3c31b840-30f0-49a5-40c1-08da39ba639e",
"Status": 1,
"StatusDescription": "Accept",
"ReplyData": {
"FactorCode": "000.000.000",
"ProviderTransactionId": "153322379407",
"ReturnMessage": "Transaction succeeded",
"ProviderOrderId": "000591000001XAA20220527170142439",
"ReturnCode": "0100"
}
},
"DoSplit": false,
"PaymentId": "b705b792-e5c0-4386-9f44-b07a791fb972",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2022-05-27 18:01:41",
"CapturedAmount": 10000,
"CapturedDate": "2022-05-27 18:01:43",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/b705b792-e5c0-4386-9f44-b07a791fb972"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/b705b792-e5c0-4386-9f44-b07a791fb972/void"
}
]
}
}
{
"MerchantOrderId": "123456",
"Customer": {
"Name": "Comprador Teste",
"Identity": "12345678910",
"IdentityType": "CPF",
"Email": "comprador@braspag.com.br",
"Phone": "5521976781114",
"Birthdate": "1991-01-02",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BR",
"District": "Alphaville",
"AddressType": "NotInformed"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "12345987",
"City": "São Paulo",
"State": "SP",
"Country": "BR",
"District": "Alphaville",
"AddressType": "NotInformed"
},
"Mobile": "5511940028922"
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": true,
"CreditCard": {
"CardNumber": "455184******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2028",
"SaveCard": true,
"Brand": "Visa"
},
"ProofOfSale": "836045",
"AcquirerTransactionId": "0527060143139",
"AuthorizationCode": "095614",
"SoftDescriptor": "Mensagem",
"SentOrderId": "20220527180141FEC711",
"FraudAnalysis": {
"Sequence": "AnalyseFirst",
"SequenceCriteria": "OnSuccess",
"FingerPrintId": "074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2074c1ee676ed4998ab66491013c565e2",
"Provider": "RedShield",
"CaptureOnLowRisk": false,
"VoidOnHighRisk": false,
"TotalOrderAmount": 10000,
"IsRetryTransaction": false,
"MerchantDefinedFields": [
{
"Id": "26",
"Value": "nomedousuario"
},
{
"Id": "27",
"Value": "120"
},
{
"Id": "28",
"Value": "12"
},
{
"Id": "29",
"Value": "WEB"
}
],
"Cart": {
"IsGift": true,
"ReturnsAccepted": true,
"Items": [
{
"Name": "ItemTeste1",
"Sku": "20170511",
"UnitPrice": 20000,
"Quantity": 2
},
{
"Name": "ItemTeste2",
"Sku": "20170512",
"UnitPrice": 10000,
"Quantity": 1,
}
]
},
"Travel": {
"DepartureTime": "2018-01-09T18:00:00",
"JourneyType": "OneWayTrip",
"Passengers": [
{
"Name": "Passenger Test",
"Identity": "212424808",
"Status": "Gold",
"Rating": "Adult",
"Email": "email@mail.com",
"Phone": "5564991681074",
"TravelLegs": [
{
"Destination": "GIG",
"Origin": "AMS"
}
]
}
]
},
"Browser": {
"CookiesAccepted": true,
"IpAddress": "127.0.0.1"
},
"Shipping": {
"Addressee": "Nome do destinatario",
"Phone": "551121840540",
"Method": "LowCost"
},
"Id": "3c31b840-30f0-49a5-40c1-08da39ba639e",
"Status": 1,
"StatusDescription": "Accept",
"ReplyData": {
"FactorCode": "000.000.000",
"ProviderTransactionId": "153322379407",
"ReturnMessage": "Transaction succeeded",
"ProviderOrderId": "000591000001XAA20220527170142439",
"ReturnCode": "0100"
}
},
"DoSplit": false,
"PaymentId": "b705b792-e5c0-4386-9f44-b07a791fb972",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2022-05-27 18:01:41",
"CapturedAmount": 10000,
"CapturedDate": "2022-05-27 18:01:43",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 2,
"ProviderReturnCode": "6",
"ProviderReturnMessage": "Operation Successful",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/b705b792-e5c0-4386-9f44-b07a791fb972"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/b705b792-e5c0-4386-9f44-b07a791fb972/void"
}
]
}
}
Propriedade | Descrição | Tipo |
---|---|---|
MerchantOrderId |
Número do pedido da loja. | texto |
Customer.Name |
Nome completo do comprador. | texto |
Customer.Identity |
Número do documento de identificação do comprador. | texto |
Customer.IdentityType |
Tipo de documento de identificação do comprador. | texto |
Customer.Email |
E-mail do comprador. | texto |
Customer.Birthdate |
Data de nascimento do comprador. | data |
Customer.Phone |
Número do telefone do comprador. | texto |
Customer.Address.Street |
Logradouro do endereço de cobrança. | texto |
Customer.Address.Number |
Número do endereço de cobrança. | texto |
Customer.Address.Complement |
Complemento do endereço de cobrança. | texto |
Customer.Address.ZipCode |
CEP do endereço de cobrança. | texto |
Customer.Address.City |
Cidade do endereço de cobrança. | texto |
Customer.Address.State |
Estado do endereço de cobrança. | texto |
Customer.Address.Country |
País do endereço de cobrança. | texto |
Customer.Address.District |
Bairro do endereço de cobrança. | texto |
Customer.Address.AddressType |
Tipo do endereço de cobrança. | texto |
Customer.DeliveryAddress.Street |
Logradouro do endereço de entrega. | texto |
Customer.DeliveryAddress.Number |
Número do endereço de entrega. | texto |
Customer.DeliveryAddress.Complement |
Complemento do endereço de entrega. | texto |
Customer.DeliveryAddress.ZipCode |
CEP do endereço de entrega. | texto |
Customer.DeliveryAddress.City |
Cidade do endereço de entrega. | texto |
Customer.DeliveryAddress.State |
Estado do endereço de entrega. | texto |
Customer.DeliveryAddress.Country |
País do endereço de entrega. | texto |
Customer.DeliveryAddress.District |
Bairro do endereço de entrega. | texto |
Customer.DeliveryAddress.AddressType |
Tipo do endereço de entrega. | texto |
Customer.Mobile |
Número do telefone celular do comprador. | texto |
Payment.ServiceTaxAmount |
Montante do valor da autorização que deve ser destinado à taxa de serviço. | número |
Payment.Installments |
Número de parcelas. | número |
Payment.Interest |
Tipo de parcelamento. | texto |
Payment.Capture |
Indica se a autorização deverá ser com captura automática. | booleano |
Payment.Authenticate |
Indica se a transação deve ser autenticada. | booleano |
Payment.Recurrent |
Indica se a transação é do tipo recorrente. | booleano |
Payment.CreditCard.CardNumber |
Número do cartão de crédito truncado. | texto |
Payment.CreditCard.Holder |
Nome do portador impresso no cartão de crédito. | texto |
Payment.CreditCard.ExpirationDate |
Data de validade do cartão de crédito. | texto |
Payment.CreditCard.SaveCard |
Indica se os dados do cartão de crédito foram armazenados no Cartão Protegido. | booleano |
Payment.CreditCard.Brand |
Bandeira do cartão de crédito. | texto |
Payment.ProofOfSale |
Número do comprovante de venda na adquirente (NSU - Número Sequencial Único). | texto |
Payment.AcquirerTransactionId |
Identificador da transação na adquirente. | texto |
Payment.AuthorizationCode |
Código de autorização na adquirente. | texto |
Payment.SoftDescriptor |
Texto que será impresso na fatura do portador. | texto |
Payment.SentOrderId |
Número adicional ao MerchantOrderId gerado para o pedido e utilizado durante a transação. Esse número (SentOrderId) só será diferente em caso de adequação a regras da adquirente ou em caso de números de identificação do pedido (MerchantOrderId) repetidos. | texto |
Payment.FraudAnalysis.Sequence |
Tipo de fluxo da análise de fraude. | texto |
Payment.FraudAnalysis.SequenceCriteria |
Critério do fluxo da análise de fraude. | texto |
Payment.FraudAnalysis.FingerPrintId |
Identificador utilizado para cruzar informações obtidas do dispositivo do comprador. | texto |
Payment.FraudAnalysis.Provider |
Provedor de Antifraude. | texto |
Payment.FraudAnalysis.CaptureOnLowRisk |
Indica se a transação após a análise de fraude será capturada. | booleano |
Payment.FraudAnalysis.VoidOnHighRisk |
Indica se a transação após a análise de fraude será cancelada. | booleano |
Payment.FraudAnalysis.TotalOrderAmount |
Valor total do pedido, em centavos. | número |
Payment.FraudAnalysis.IsRetryTransaction |
Retentativa de uma análise, e deverá ser enviado com valor igual a TRUE quando o código de retorno na primeira tentativa for igual a BP900 | booleano |
Payment.FraudAnalysis.MerchantDefinedFields.Id |
Id das informações adicionais a serem enviadas. | número |
Payment.FraudAnalysis.MerchantDefinedFields.Value |
Valor das informações adicionais a serem enviadas. | texto |
Payment.FraudAnalysis.Cart.IsGift |
Indica se o pedido realizado pelo comprador é para presente. | booleano |
Payment.FraudAnalysis.Cart.ReturnsAccepted |
Indica se o pedido realizado pelo comprador pode ser devolvido à loja. | booleano |
Payment.FraudAnalysis.Cart.Items.Name |
Nome do produto. | texto |
Payment.FraudAnalysis.Cart.Items.Sku |
SKU (Stock Keeping Unit - Unidade de Controle de Estoque) do produto. | texto |
Payment.FraudAnalysis.Cart.Items.UnitPrice |
Preço unitário do produto. | número |
Payment.FraudAnalysis.Cart.Items.Quantity |
Quantidade do produto. | número |
Payment.FraudAnalysis.Travel.DepartureTime |
Data e hora de partida. | datetime |
Payment.FraudAnalysis.Travel.JourneyType |
Tipo de viagem. | texto |
Payment.FraudAnalysis.Travel.Passengers.Name |
Nome completo do passageiro. | texto |
Payment.FraudAnalysis.Travel.Passengers.Identity |
Número do documento do passageiro. | texto |
Payment.FraudAnalysis.Travel.Passengers.Status |
Classificação da empresa aérea. | texto |
Payment.FraudAnalysis.Travel.Passengers.Rating |
Tipo do passageiro. | texto |
Payment.FraudAnalysis.Travel.Passengers.Email |
E-mail do passageiro. | texto |
Payment.FraudAnalysis.Travel.Passengers.Phone |
Telefone do passageiro. | número |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Destination |
Código do aeroporto de chegada. | texto |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Origin |
Código do aeroporto de partida. | texto |
Payment.FraudAnalysis.Browser.CookiesAccepted |
Identifica se o browser do comprador aceita cookies. | booleano |
Payment.FraudAnalysis.Browser.IpAddress |
Endereço de IP do comprador. Formato IPv4 ou IPv6. | texto |
Payment.FraudAnalysis.Shipping.Addressee |
Nome completo do responsável a receber o produto no endereço de entrega. | texto |
Payment.FraudAnalysis.Shipping.Phone |
Número do telefone do responsável a receber o produto no endereço de entrega. | número |
Payment.FraudAnalysis.Shipping.Method |
Meio de entrega do pedido. | texto |
Payment.FraudAnalysis.Id |
Id da transação no Antifraude Braspag. | GUID |
Payment.FraudAnalysis.Status |
Status da transação no Antifraude Braspag. Lista de Valores - Status. |
número |
Payment.FraudAnalysis.StatusDescription |
Descrição do status | texto |
Payment.FraudAnalysis.ReplyData.FactorCode |
Códigos que afetaram a pontuação da análise. Os códigos são concatenados usando o caractere “^”. Ex.: B^D^R^Z. Lista de Valores - FactorCode. |
texto |
Payment.FraudAnalysis.ReplyData.ProviderTransactionId |
Id da transação na ACI Worldwide. | texto |
Payment.FraudAnalysis.ReplyData.ReturnMessage |
Mensagem retornada pelo provedor de Antifraude | texto |
Payment.FraudAnalysis.ReplyData.ProviderOrderId |
Id do pedido na ACI Worldwide | texto |
Payment.FraudAnalysis.ReplyData.ReturnCode |
Código retornado pelo provedor do meio de pagamento (adquirente ou emissor). | texto |
Payment.DoSplit |
Indica se a transação será dividida entre vários participantes. | booleano |
Payment.PaymentId |
Identificador da transação no Pagador Braspag. | GUID |
Payment.Type |
Tipo do meio de pagamento. Obs.: Somente o tipo “CreditCard” funciona com análise de fraude. | texto |
Payment.Amount |
Valor da transação financeira, em centavos. Ex.: 150000 = R$ 1.500,00. | texto |
Payment.ReceivedDate |
Data em que a transação foi recebida no Pagador Braspag. Ex.: 2018-01-16 16:38:19. |
datetime |
Payment.CapturedAmount |
Valor capturado da transação, em centavos. Ex.: 123456 = R$ 1.234,56. |
número |
Payment.CapturedDate |
Data em que a transação foi capturada na adquirente. Ex.: 2018-01-16 16:38:20. |
datetime |
Payment.Currency |
Moeda na qual o pagamento será feito. Possíveis valores: “BRL” / “USD” / “MXN” / “COP” / “CLP” / “ARS” / “PEN” / “EUR” / “PYN” / “UYU” / “VEB” / “VEF” / “GBP”. | Não |
Payment.Country |
País no qual o pagamento será realizado. | texto |
Payment.Provider |
Nome do provedor da autorização. | texto |
Payment.ReasonCode |
Código de retorno da operação. | texto |
Payment.ReasonMessage |
Mensagem de retorno da operação. | texto |
Payment.Status |
Status da transação no Pagador. Veja a lista completa de Status da Transação. | número |
Payment.ProviderReturnCode |
Código retornado pela adquirente ou emissor. | texto |
Payment.ProviderReturnMessage |
Mensagem retornada pela adquirente ou emissor. | texto |
O Fingerprint é a identificação digital do dispositivo do comprador. Essa identificação é composta por uma série de dados coletados na página de checkout do site ou aplicativo. Para configurar o Fingerprint com a ACI, consulte o manual do Antifraude Gateway.
Na requisição de análise de fraude com a ClearSale, envie o campo Payment.FraudAnalysis.Provider
como “ClearSale”.
{
"MerchantOrderId": 9094008,
"Customer": {
"Name": "Bruno Silva",
"Identity": "11111111111",
"IdentityType": "CPF",
"Email": "nome@email.com.br",
"Birthdate": "1996-11-14",
"Phone": "+55 11 5555-1001",
"Mobile": "+55 11 99999-9999",
"Workphone": "+55 11 5555-2002",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "21 andar",
"ZipCode": "06455030",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"District": "Alphaville"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "06455030",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"District": "Alphaville"
}
},
"Payment": {
"Type": "CreditCard",
"Provider": "Simulado",
"Amount": 45500,
"Installments": 1,
"Capture": false,
"Recurrent": false,
"SoftDescriptor": "Nome fantasia",
"CreditCard": {
"CardNumber": "4000021231111111",
"Holder": "Bruno Silva",
"ExpirationDate": "08/2033",
"SaveCard": false,
"Brand": "Visa"
},
"FraudAnalysis": {
"Provider": "ClearSale",
"Sequence": "AuthorizeFirst",
"SequenceCriteria": "OnSuccess",
"CaptureOnLowRisk": false,
"VoidOnHighRisk": false,
"TotalOrderAmount": 100000,
"FingerPrintId":"MzE5MjAzODg0NA==",
"Shipping": {
"Addressee": "Nome do destinatário",
"Method": "LowCost",
"Mobile": "+55 11 5555-1003",
"Identity": "99988877711",
"IdentityType": "CPF",
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "21 andar",
"Neighborhood": "Alphaville",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"ZipCode": "06455030",
"Email": "nome@email.com.br"
},
"Cart": {
"IsGift": false,
"ReturnsAccepted": true,
"Items": [
{
"Name": "Mouse",
"Quantity": 1,
"Sku": "100010",
"UnitPrice": 50000,
"Type": "EletronicGood"
},
{
"Name": "Windows 11 Professional",
"Quantity": 2,
"Sku": "50000",
"UnitPrice": 85515,
"Type": "EletronicSoftware"
}
]
},
"Travel": {
"Passengers": [
{
"Name": "Bruno Silva",
"TravelLegs": [
{
"Origin": "SDU",
"Destination": "CGH",
"DepartureDate": "2023-10-10T18:30:00",
"Boarding": "2023-10-10T18:45:00",
"Arriving": "2023-10-10T20:00:00"
}
]
},
{
"Name": "Guilherme Silva",
"TravelLegs": [
{
"Origin": "SDU",
"Destination": "CGH",
"DepartureDate": "2023-10-010T18:30:00",
"Boarding": "2023-10-10T18:45:00",
"Arriving": "2023-10-10T20:00:00"
}
]
}
]
}
}
}
}
--request POST "https://apisandbox.braspag.com.br/v2/sales/"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId": 9094008,
"Customer": {
"Name": "Bruno Silva",
"Identity": "11111111111",
"IdentityType": "CPF",
"Email": "nome@email.com.br",
"Birthdate": "1996-11-14",
"Phone": "+55 11 5555-1001",
"Mobile": "+55 11 99999-9999",
"Workphone": "+55 11 5555-2002",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "21 andar",
"ZipCode": "06455030",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"District": "Alphaville"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "06455030",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"District": "Alphaville"
}
},
"Payment": {
"Type": "CreditCard",
"Provider": "Simulado",
"Amount": 45500,
"Installments": 1,
"Capture": false,
"Recurrent": false,
"SoftDescriptor": "Nome fantasia",
"CreditCard": {
"CardNumber": "4000021231111111",
"Holder": "Bruno Silva",
"ExpirationDate": "08/2033",
"SaveCard": false,
"Brand": "Visa"
},
"FraudAnalysis": {
"Provider": "ClearSale",
"Sequence": "AuthorizeFirst",
"SequenceCriteria": "OnSuccess",
"CaptureOnLowRisk": false,
"VoidOnHighRisk": false,
"TotalOrderAmount": 100000,
"FingerPrintId":"MzE5MjAzODg0NA==",
"Shipping": {
"Addressee": "Nome do destinatário",
"Method": "LowCost",
"Phone": "+55 11 5555-1001",
"Identity": "99988877711",
"IdentityType": "CPF",
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "21 andar",
"Neighborhood": "Alphaville",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"ZipCode": "06455030",
"Email": "nome@email.com.br"
},
"Cart": {
"IsGift": false,
"ReturnsAccepted": true,
"Items": [
{
"Name": "Mouse",
"Quantity": 1,
"Sku": "100010",
"UnitPrice": 50000,
"Type": "EletronicGood"
},
{
"Name": "Windows 11 Professional",
"Quantity": 2,
"Sku": "50000",
"UnitPrice": 85515,
"Type": "EletronicSoftware"
}
]
},
"Travel": {
"Passengers": [
{
"Name": "Bruno Silva",
"TravelLegs": [
{
"Origin": "SDU",
"Destination": "CGH",
"DepartureDate": "2023-10-10T18:30:00",
"Boarding": "2023-10-10T18:45:00",
"Arriving": "2023-10-10T20:00:00"
}
]
},
{
"Name": "Guilherme Silva",
"TravelLegs": [
{
"Origin": "SDU",
"Destination": "CGH",
"DepartureDate": "2023-10-010T18:30:00",
"Boarding": "2023-10-10T18:45:00",
"Arriving": "2023-10-10T20:00:00"
}
]
}
]
}
}
}
}
Parâmetros no cabeçalho (header)
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na Braspag. | GUID | 36 | Sim |
MerchantKey |
Chave pública para autenticação dupla na Braspag. | texto | 40 | Sim |
RequestId |
Identificador do request definido pela loja. | GUID | 36 | Não |
Parâmetros no corpo (body)
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantOrderId |
Número do pedido da loja. | texto | 50 | Sim |
Customer.Name |
Nome completo do comprador. | texto | 120 | Sim |
Customer.Identity |
Número do documento de identificação do comprador. | texto | 14 | Sim |
Customer.IdentityType |
Tipo de documento de identificação do comprador. Possíveis valores: “CPF” ou “CNPJ”. |
texto | 255 | Não |
Customer.Email |
E-mail do comprador. | texto | 100 | Sim |
Customer.Birthdate |
Data de nascimento do comprador. Ex.: 1991-01-10. |
data | 10 | Sim |
Customer.Phone |
Telefone residencial. Formato +DDI DDD NNNN-NNNN Exemplo: +55 11 5555-1001. É obrigatório enviar pelo menos um telefone. | string | 20 | Não* |
Customer.Mobile |
Celular. Formato +DDI DDD NNNNN-NNNN Exemplo: +55 11 99999-9999. É obrigatório enviar pelo menos um telefone. | string | 20 | Não* |
Customer.Workphone |
Telefone comercial. Formato +DDI DDD NNNN-NNNN Exemplo: +55 11 5555-2002. É obrigatório enviar pelo menos um telefone. | string | 20 | Não* |
Customer.Address.Street |
Logradouro do endereço de cobrança. | texto | 54 | Sim |
Customer.Address.Number |
Número do endereço de cobrança. | texto | 5 | Sim |
Customer.Address.Complement |
Complemento do endereço de cobrança. | texto | 14 | Não |
Customer.Address.ZipCode |
CEP do endereço de cobrança. | texto | 9 | Sim |
Customer.Address.City |
Cidade do endereço de cobrança. | texto | 50 | Sim |
Customer.Address.State |
Estado do endereço de cobrança. | texto | 2 | Sim |
Customer.Address.Country |
País do endereço de cobrança. Mais informações em ISO 2-Digit Alpha Country Code. |
texto | 2 | Sim |
Customer.Address.District |
Bairro do endereço de cobrança. | texto | 45 | Sim |
Customer.DeliveryAddress.Street |
Logradouro do endereço de entrega. | texto | 54 | Não |
Customer.DeliveryAddress.Number |
Número do endereço de entrega. | texto | 5 | Não |
Customer.DeliveryAddress.Complement |
Complemento do endereço de entrega. | texto | 14 | Não |
Customer.DeliveryAddress.ZipCode |
CEP do endereço de entrega. | texto | 9 | Não |
Customer.DeliveryAddress.City |
Cidade do endereço de entrega. | texto | 50 | Não |
Customer.DeliveryAddress.State |
Estado do endereço de entrega. | texto | 2 | Não |
Customer.DeliveryAddress.Country |
País do endereço de entrega. Mais informações em ISO 2-Digit Alpha Country Code. |
texto | 2 | Não |
Customer.DeliveryAddress.District |
Bairro do endereço de entrega. | texto | 45 | Não |
Payment.Type |
Tipo do meio de pagamento. Obs.: Somente o tipo “CreditCard” funciona com análise de fraude. |
texto | 100 | Sim |
Payment.Provider |
Nome do provedor da autorização. | texto | 15 | Sim |
Payment.Amount |
Valor da transação financeira, em centavos. Ex.: 150000 = R$ 1.500,00. |
número | 15 | Sim |
Payment.Installments |
Número de parcelas. | número | 2 | Sim |
Payment.Capture |
Indica se a autorização deverá ser com captura automática. Possíveis valores: “true” / “false” (default). Obs1.: Deverá verificar junto à adquirente a disponibilidade desta funcionalidade. Obs2.: Este campo deverá ser preenchido de acordo com o fluxo da análise de fraude. |
booleano | — | Não |
Payment.Recurrent |
Indica se a transação é do tipo recorrente. Possíveis valores: “true” / “false” (default). Obs1.: Este campo igual a “true” não irá criar uma recorrência; apenas permitirá a realização de uma transação sem a necessidade de envio do CVV, indicando para a adquirente que é a cobrança de uma transação de uma recorrência. Obs2.: Somente para transações Cielo. Obs3.: O campo Payment.Authenticate deve ser igual a “false” quando Payment.Recurrent for igual a “true”. |
booleano | — | Não |
Payment.SoftDescriptor |
Texto que será impresso na fatura do portador. Obs.: O valor deste campo deve tornar fácil para o portador a identificação do estabelecimento onde foi realizada a compra, pois é um dos principais ofensores para chargeback. |
texto | 13 | Não |
Payment.CreditCard.CardNumber |
Número do cartão de crédito. | texto | 19 | Sim |
Payment.CreditCard.Holder |
Nome do portador impresso no cartão de crédito. Obs.: Regras de tamanho do campo podem variar de acordo com a adquirente. | texto | 25 | Sim |
Payment.CreditCard.ExpirationDate |
Data de validade do cartão de crédito. | texto | 7 | Sim |
Payment.CreditCard.SecurityCode |
Código de segurança no verso do cartão de crédito. | texto | 4 | Sim |
Payment.CreditCard.Brand |
Bandeira do cartão de crédito. | texto | 10 | Sim |
Payment.FraudAnalysis.Provider |
Provedor de Antifraude. Nesse caso, use “ClearSale”. |
texto | 10 | Sim |
Payment.FraudAnalysis.Sequence |
Tipo de fluxo da análise de fraude. Possíveis valores: “AnalyseFirst” / “AuthorizeFirst”. |
texto | 14 | Sim |
Payment.FraudAnalysis.SequenceCriteria |
Critério do fluxo da análise de fraude. Possíveis valores: “OnSuccess” / “Always”. |
texto | 9 | Sim |
Payment.FraudAnalysis.CaptureOnLowRisk |
Indica se a transação após a análise de fraude será capturada. Possíveis valores: “true” / “false” (default) Obs1.: Quando enviado igual a “true” e o retorno da análise de fraude for de baixo risco (“Accept”), a transação anteriormente autorizada será capturada. Obs2.: Quando enviado igual a “true” e o retorno da análise de fraude for revisão (“Review”), a transação ficará autorizada, sendo capturada após a Braspag receber notificação de alteração do status para baixo risco (“Accept”). Obs3.: Para a utilização deste parâmetro, a sequência do fluxo de análise de risco ( FraudAnalysis.Sequence ) deve ser obrigatoriamente “AuthorizeFirst”. |
booleano | — | Não |
Payment.FraudAnalysis.VoidOnHighRisk |
Indica se a transação após a análise de fraude será cancelada. Possíveis valores: “true” / “false” (default). Obs1.: Quando enviado igual a “true” e o retorno da análise de fraude for de alto risco (“Reject”), a transação anteriormente autorizada será cancelada. Obs2.: Quando enviado igual a “true” e o retorno da análise de fraude for revisão (“Review”), a transação ficará autorizada, sendo cancelada após a Braspag receber notificação de alteração do status para alto risco (“Reject”). Obs3.: Para a utilização deste parâmetro, a sequência do fluxo de análise de risco ( FraudAnalysis.Sequence ) deve ser obrigatoriamente “AuthorizeFirst”. |
booleano | — | Não |
Payment.FraudAnalysis.TotalOrderAmount |
Valor total do pedido, em centavos. Ex.: 123456 = R$ 1.234,56. |
número | 15 | Sim |
Payment.FraudAnalysis.FingerPrintId |
Identificador único da sessão do usuário. Saiba mais em Fingerprint com a ClearSale. |
string | ? | Sim |
Payment.FraudAnalysis.Shipping.Addressee |
Nome do destinatário. | string | 60 | Sim |
Payment.FraudAnalysis.Shipping.Method |
Meio de entrega. | string | ||
Payment.FraudAnalysis.Shipping.Phone |
Telefone residencial - Formato +DDI DDD NNNN-NNNN Exemplo: +55 11 3333-3333. É obrigatório enviar pelo menos um telefone. | string | 20 | Não* |
Payment.FraudAnalysis.Shipping.Identity |
Documento do destinatário. | string | 14 | Sim |
Payment.FraudAnalysis.Shipping.IdentityType |
1 = Pessoa Física 2 = Pessoa Jurídica. |
string | 255 | Não |
Payment.FraudAnalysis.Shipping.Street |
Nome do logradouro do destinatário. | string | 200 | Sim |
Payment.FraudAnalysis.Shipping.Number |
Número do endereço do destinatário. | string | 15 | Sim |
Payment.FraudAnalysis.Shipping.Complement |
Complemento do endereço do destinatário. | string | 250 ou 14? | Não |
Payment.FraudAnalysis.Shipping.Neighborhood |
Bairro do endereço do destinatário. | string | 150 | Sim |
Payment.FraudAnalysis.Shipping.City |
Cidade do destinatário. | string | 150 | Sim |
Payment.FraudAnalysis.Shipping.State |
Estado do destinatário - UF. | string | 2 | Sim |
Payment.FraudAnalysis.Shipping.Country |
País do destinatário. | string | 150 | Sim |
Payment.FraudAnalysis.Shipping.ZipCode |
CEP do destinatário. | string | 10 | Sim |
Payment.FraudAnalysis.Shipping.Email |
E-mail do destinatário. | string | 150 | Não |
Payment.FraudAnalysis.Cart.IsGift |
Indica se o pedido realizado pelo comprador é para presente. | booleano | — | Não |
Payment.FraudAnalysis.Cart.ReturnsAccepted |
Indica se o pedido realizado pelo comprador pode ser devolvido à loja. Possíveis valores: “true” / “false” (default). |
booleano | — | Não |
Payment.FraudAnalysis.Cart.Items.Name |
Nome do produto. | texto | 255 | Sim |
Payment.FraudAnalysis.Cart.Items.Quantity |
Quantidade do produto. | número | 15 | Sim |
Payment.FraudAnalysis.Cart.Items.Sku |
SKU (Stock Keeping Unit - Unidade de Controle de Estoque) do produto. | texto | 255 | Sim |
Payment.FraudAnalysis.Cart.Items.UnitPrice |
Preço unitário do produto, em centavos. Ex.: 10950 = R$ 109,50. |
número | 15 | Sim |
Payment.FraudAnalysis.Cart.Items.Type |
Categoria do produto. Lista de Valores - Type. |
texto | 19 | Sim |
Payment.FraudAnalysis.Travel.Passengers.Name |
Nome completo do passageiro. | texto | 120 | Não |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Origin |
Código do aeroporto de partida. Mais informações em IATA 3-Letter Codes. |
texto | 3 | Não |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Destination |
Código do aeroporto de chegada. Mais informações em IATA 3-Letter Codes. |
texto | 3 | Não |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.DepartureDate |
Data e hora de partida. Formato: “2023-10-09T18:30:00”. |
datetime | — | Não |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Boarding |
Data e hora de embarque. Formato: “2023-10-09T18:30:00”. | datetime | — | Não |
Payment.FraudAnalysis.Travel.Passengers.TravelLegs.Arriving |
Data e hora de chegada. Formato: “2023-10-09T18:30:00”. | datetime | — | Não |
*É obrigatório enviar pelo menos um telefone.
{
"MerchantOrderId": "9094008",
"Customer": {
"Name": "Bruno Silva",
"Identity": "11111111111",
"IdentityType": "CPF",
"Email": "nome@email.com.br",
"Birthdate": "1996-11-14",
"Phone": "+55 11 5555-1001",
"Mobile": "+55 11 99999-9999",
"Workphone": "+55 11 5555-2002",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "21 andar",
"ZipCode": "06455030",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"District": "Alphaville",
"AddressType": "NotInformed"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "06455030",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"District": "Alphaville",
"AddressType": "NotInformed"
}
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": false,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "400002******1111",
"Holder": "Guilherme Silva",
"ExpirationDate": "08/2033",
"SaveCard": false,
"Brand": "Visa",
"PaymentAccountReference": "Z0HFQMDXNM98R2HYZEZR7Q5ZR9ZEM"
},
"ProofOfSale": "432165",
"AcquirerTransactionId": "1020115504663",
"AuthorizationCode": "772858",
"SoftDescriptor": "Teste Cielo",
"SentOrderId": "9094008",
"FraudAnalysis": {
"Sequence": "AuthorizeFirst",
"SequenceCriteria": "OnSuccess",
"Provider": "ClearSale",
"CaptureOnLowRisk": false,
"VoidOnHighRisk": false,
"TotalOrderAmount": 46000,
"IsRetryTransaction": false,
"Cart": {
"IsGift": false,
"ReturnsAccepted": true,
"Items": [
{
"Type": "EletronicGood",
"Name": "Notebook Dell Inspiron",
"Risk": "Undefined",
"Sku": "100010",
"UnitPrice": 532400,
"Quantity": 1,
"GiftCategory": "Undefined",
"OriginalPrice": 0,
"Weight": 0,
"CartType": 0
},
{
"Type": "EletronicSoftware",
"Name": "Windows 11 Professional",
"Risk": "Undefined",
"Sku": "100011",
"UnitPrice": 85515,
"Quantity": 2,
"HostHedge": "Undefined",
"NonSensicalHedge": "Undefined",
"ObscenitiesHedge": "Undefined",
"PhoneHedge": "Undefined",
"TimeHedge": "Undefined",
"VelocityHedge": "Undefined",
"GiftCategory": "Undefined",
"OriginalPrice": 0,
"Weight": 0,
"CartType": 0
}
]
},
"Travel": {
"Passengers": [
{
"Name": "Bruno Silva",
"Rating": "Undefined",
"TravelLegs": [
{
"Destination": "CGH",
"Origin": "SDU",
"DepartureDate": "2023-10-09T18:30:00",
"Boarding": "2023-10-09T18:45:00",
"Arriving": "2023-10-09T20:00:00"
}
]
},
{
"Name": "Guilherme Silva",
"Rating": "Undefined",
"TravelLegs": [
{
"Destination": "CGH",
"Origin": "SDU",
"DepartureDate": "2023-10-09T18:30:00",
"Boarding": "2023-10-09T18:45:00",
"Arriving": "2023-10-09T20:00:00"
}
]
}
]
},
"Shipping": {
"Addressee": "Nome Comprador",
"Phone": "+55 11 5555-1001",
"Method": "LowCost",
"Email": "nome@email.com.br",
"Identity": "99988877711",
"IdentityType": "CPF"
},
"Status": 4,
"StatusDescription": "Aborted"
},
"PaymentId": "db8f8d82-5c3f-4f09-8af2-3e33b3aec302",
"Type": "CreditCard",
"Amount": 45500,
"ReceivedDate": "2023-10-20 11:55:03",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/db8f8d82-5c3f-4f09-8af2-3e33b3aec302"
},
{
"Method": "PUT",
"Rel": "capture",
"Href": "https://apisandbox.braspag.com.br/v2/sales/db8f8d82-5c3f-4f09-8af2-3e33b3aec302/capture"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/db8f8d82-5c3f-4f09-8af2-3e33b3aec302/void"
}
]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId": "9094008",
"Customer": {
"Name": "Bruno Silva",
"Identity": "11111111111",
"IdentityType": "CPF",
"Email": "nome@email.com.br",
"Birthdate": "1996-11-14",
"Phone": "+55 11 5555-1001",
"Mobile": "+55 11 99999-9999",
"Workphone": "+55 11 5555-2002",
"Address": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "21 andar",
"ZipCode": "06455030",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"District": "Alphaville",
"AddressType": "NotInformed"
},
"DeliveryAddress": {
"Street": "Alameda Xingu",
"Number": "512",
"Complement": "27 andar",
"ZipCode": "06455030",
"City": "Barueri",
"State": "SP",
"Country": "BR",
"District": "Alphaville",
"AddressType": "NotInformed"
}
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": false,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "400002******1111",
"Holder": "Guilherme Silva",
"ExpirationDate": "08/2033",
"SaveCard": false,
"Brand": "Visa",
"PaymentAccountReference": "Z0HFQMDXNM98R2HYZEZR7Q5ZR9ZEM"
},
"ProofOfSale": "432165",
"AcquirerTransactionId": "1020115504663",
"AuthorizationCode": "772858",
"SoftDescriptor": "Teste Cielo",
"SentOrderId": "9094008",
"FraudAnalysis": {
"Sequence": "AuthorizeFirst",
"SequenceCriteria": "OnSuccess",
"Provider": "ClearSale",
"CaptureOnLowRisk": false,
"VoidOnHighRisk": false,
"TotalOrderAmount": 46000,
"IsRetryTransaction": false,
"Cart": {
"IsGift": false,
"ReturnsAccepted": true,
"Items": [
{
"Type": "EletronicGood",
"Name": "Notebook Dell Inspiron",
"Risk": "Undefined",
"Sku": "100010",
"UnitPrice": 532400,
"Quantity": 1,
"GiftCategory": "Undefined",
"OriginalPrice": 0,
"Weight": 0,
"CartType": 0
},
{
"Type": "EletronicSoftware",
"Name": "Windows 11 Professional",
"Risk": "Undefined",
"Sku": "100011",
"UnitPrice": 85515,
"Quantity": 2,
"HostHedge": "Undefined",
"NonSensicalHedge": "Undefined",
"ObscenitiesHedge": "Undefined",
"PhoneHedge": "Undefined",
"TimeHedge": "Undefined",
"VelocityHedge": "Undefined",
"GiftCategory": "Undefined",
"OriginalPrice": 0,
"Weight": 0,
"CartType": 0
}
]
},
"Travel": {
"Passengers": [
{
"Name": "Bruno Silva",
"Rating": "Undefined",
"TravelLegs": [
{
"Destination": "CGH",
"Origin": "SDU",
"DepartureDate": "2023-10-09T18:30:00",
"Boarding": "2023-10-09T18:45:00",
"Arriving": "2023-10-09T20:00:00"
}
]
},
{
"Name": "Guilherme Silva",
"Rating": "Undefined",
"TravelLegs": [
{
"Destination": "CGH",
"Origin": "SDU",
"DepartureDate": "2023-10-09T18:30:00",
"Boarding": "2023-10-09T18:45:00",
"Arriving": "2023-10-09T20:00:00"
}
]
}
]
},
"Shipping": {
"Addressee": "Nome Comprador",
"Phone": "+55 11 5555-1001",
"Method": "LowCost",
"Email": "nome@email.com.br",
"Identity": "99988877711",
"IdentityType": "CPF"
},
"Status": 4,
"StatusDescription": "Aborted"
},
"PaymentId": "db8f8d82-5c3f-4f09-8af2-3e33b3aec302",
"Type": "CreditCard",
"Amount": 45500,
"ReceivedDate": "2023-10-20 11:55:03",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Status": 1,
"ProviderReturnCode": "4",
"ProviderReturnMessage": "Operation Successful",
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/db8f8d82-5c3f-4f09-8af2-3e33b3aec302"
},
{
"Method": "PUT",
"Rel": "capture",
"Href": "https://apisandbox.braspag.com.br/v2/sales/db8f8d82-5c3f-4f09-8af2-3e33b3aec302/capture"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/db8f8d82-5c3f-4f09-8af2-3e33b3aec302/void"
}
]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
Payment.ProofOfSale |
Número do comprovante de venda. | texto | 20 | texto alfanumérico |
Payment.AcquirerTransactionId |
Identificador da transação na adquirente. | texto | 40 | texto alfanumérico |
Payment.AuthorizationCode |
Código de autorização na adquirente. | texto | 300 | texto alfanumérico |
Payment.FraudAnalysis.IsRetryTransaction |
Retentativa de uma análise, e deverá ser enviado com valor igual a “true” quando o código de retorno na primeira tentativa for igual a BP900 | booleano | - | “true” ou “false” |
Payment.FraudAnalysis.Status |
Status da transação no AntiFraude. Veja mais na tabela. |
Número | - | |
Payment.FraudAnalysis.StatusDescription |
Descrição do status do Antifraude. Veja mais na tabela. |
Texto | - |
O Fingerprint é a identificação digital do dispositivo do comprador. Essa identificação é composta por uma série de dados coletados na página de checkout do site ou aplicativo.
Na integração da API do Pagador com análise de fraude ClearSale, o valor do session_id
deve ser enviado no parâmetro Payment.FraudAnalisys.FingerPrintId
.
Para configurar o Fingerprint com a ClearSale, consulte o manual do Antifraude Gateway.
É possível consultar transações até 18 meses após sua criação. As formas de consultar uma transação (venda) dependem de quanto tempo ela tem de vida, como especificado na tabela abaixo:
TEMPO DE VIDA | FORMA DE CONSULTA |
---|---|
Até 5 meses | Pela API ou pelo painel Admin Braspag. |
De 5 a 18 meses | Pelo painel Admin Braspag com a opção Histórico selecionada. |
A consulta feita através de requisição diretamente à API de Consulta funciona conforme a figura:
Para que o nó Chargeback
esteja contido no retorno, a Braspag deverá passar a receber os chargebacks da sua loja. Você poderá então acatar ou contestar as operações, acompanhando os resultados das contestações no Painel Admin Braspag. Através do Post de Notificação, sua loja poderá ser informada da transação que sofreu o chargeback.
As operações contidas no Painel Admin Braspag também estão disponíveis na API Risk Notification.
Para que o nó FraudAlert
esteja contido no retorno, a Braspag deverá passar a receber os alertas de fraude da sua loja, que ficarão disponíveis no Painel Admin Braspag. Através do Post de Notificação, a sua loja será informada da transação que sofreu o alerta de fraude.
Para consultar uma transação de cartão de crédito, cartão de débito ou Pix via PaymentID
, é necessário o envio de mensagem HTTP através do método GET para o recurso Payment, conforme o exemplo:
curl
--request GET "https://apiquerysandbox.braspag.com.br/v2/sales/{PaymentId}"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
PaymentId |
Número de identificação do pagamento. | texto | 36 | Sim (envio no endpoint) |
{
"MerchantOrderId": "2017051001",
"Customer": {
"Name": "Nome do Cliente",
"Identity": "01234567789",
"Email": "cliente@email.com.br",
"Address": {
"Street": "GONCALO DA CUNHA",
"Number": "111",
"ZipCode": "04140040",
"City": "SAO PAULO",
"State": "SP",
"Country": "BRA",
"District": "CHACARA INGLESA"
}
},
"Merchant": {
"Id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"TradeName": "Lojas Teste"
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"Brand": "Visa"
},
"ProofOfSale": "2539492",
"AcquirerTransactionId": "0510042539492",
"AuthorizationCode": "759497",
"Eci": "0",
"Refunds": [
{
"Amount": 10000,
"Status": 3,
"ReceivedDate": "2017-05-15 16:25:38"
}
],
"Chargebacks": [
{
"Amount": 10000,
"CaseNumber": "123456",
"Date": "2017-06-04",
"ReasonCode": "104",
"ReasonMessage": "Outras Fraudes - Cartao Ausente",
"Status": "Received",
"RawData": "Client did not participate and did not authorize transaction"
}
],
"FraudAlert": {
"Date": "2017-05-20",
"ReasonMessage": "Uso Ind Numeração",
"IncomingChargeback": false
},
"VelocityAnalysis": {
"Id": "f8078b32-be17-4c35-b164-ad74c3cd0725",
"ResultMessage": "Accept",
"Score": 0
},
"PaymentId": "f8078b32-be17-4c35-b164-ad74c3cd0725",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-10 16:25:38",
"CapturedAmount": 10000,
"CapturedDate": "2017-05-10 16:25:38",
"VoidedAmount": 10000,
"VoidedDate": "2017-05-15 16:25:38",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ProviderDescription": "Simulado",
"ReasonCode": 0,
"Status": 1,
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725"
},
{
"Method": "PUT",
"Rel": "capture",
"Href": "https://apisandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725/capture"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725/void"
}
]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId": "2017051001",
"Customer": {
"Name": "Nome do Cliente",
"Identity": "01234567789",
"Email": "cliente@email.com.br",
"Address": {
"Street": "GONCALO DA CUNHA",
"Number": "111",
"ZipCode": "04140040",
"City": "SAO PAULO",
"State": "SP",
"Country": "BRA",
"District": "CHACARA INGLESA"
}
},
"Merchant": {
"Id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"TradeName": "Lojas Teste"
},
"Payment": {
"ServiceTaxAmount": 0,
"Installments": 1,
"Interest": "ByMerchant",
"Capture": true,
"Authenticate": false,
"Recurrent": false,
"CreditCard": {
"CardNumber": "455187******0181",
"Holder": "Nome do Portador",
"ExpirationDate": "12/2021",
"Brand": "Visa"
},
"ProofOfSale": "2539492",
"AcquirerTransactionId": "0510042539492",
"AuthorizationCode": "759497",
"Eci": "0",
"Refunds": [
{
"Amount": 10000,
"Status": 3,
"ReceivedDate": "2017-05-15 16:25:38"
}
],
"Chargebacks": [
{
"Amount": 10000,
"CaseNumber": "123456",
"Date": "2017-06-04",
"ReasonCode": "104",
"ReasonMessage": "Outras Fraudes - Cartao Ausente",
"Status": "Received",
"RawData": "Client did not participate and did not authorize transaction"
}
],
"FraudAlert": {
"Date": "2017-05-20",
"ReasonMessage": "Uso Ind Numeração",
"IncomingChargeback": false
},
"VelocityAnalysis": {
"Id": "f8078b32-be17-4c35-b164-ad74c3cd0725",
"ResultMessage": "Accept",
"Score": 0
},
"PaymentId": "f8078b32-be17-4c35-b164-ad74c3cd0725",
"Type": "CreditCard",
"Amount": 10000,
"ReceivedDate": "2017-05-10 16:25:38",
"CapturedAmount": 10000,
"CapturedDate": "2017-05-10 16:25:38",
"VoidedAmount": 10000,
"VoidedDate": "2017-05-15 16:25:38",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Simulado",
"ProviderDescription": "Simulado",
"ReasonCode": 0,
"Status": 1,
"RecurrentPayment": {
"RecurrentPaymentId": "1069a2c8-83cb-4268-8b62-0a9dc5038665"
},
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725"
},
{
"Method": "PUT",
"Rel": "capture",
"Href": "https://apisandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725/capture"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725/void"
}
]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
MerchantOrderId |
Número de identificação do pedido. | texto | 50 | texto alfanumérico |
Customer.Name |
Nome do comprador. | texto | 255 | texto alfanumérico |
Customer.Identity |
Número do RG, CPF ou CNPJ do cliente. | texto | 14 | texto alfanumérico |
Customer.IdentityType |
Tipo de documento de identificação do comprador (CPF ou CNPJ). | texto | 255 | CPF ou CNPJ |
Customer.Email |
Email do comprador. | texto | 255 | texto alfanumérico |
Customer.Birthdate |
Data de nascimento do comprador. | data | 10 | formato AAAA-MM-DD |
Customer.Address.Street |
Endereço de contato do comprador. | texto | 255 | texto alfanumérico |
Customer.Address.Number |
Número do endereço de contato do comprador. | texto | 15 | texto alfanumérico |
Customer.Address.Complement |
Complemento do endereço de contato do comprador. | texto | 50 | texto alfanumérico |
Customer.Address.ZipCode |
CEP do endereço de contato do comprador. | texto | 9 | texto alfanumérico |
Customer.Address.City |
Cidade do endereço de contato do comprador. | texto | 50 | texto alfanumérico |
Customer.Address.State |
Estado do endereço de contato do comprador. | texto | 2 | texto alfanumérico |
Customer.Address.Country |
Pais do endereço de contato do comprador | texto | 35 | texto alfanumérico |
Customer.Address.District |
Bairro do endereço de contato do comprador. | texto | 50 | texto alfanumérico |
Customer.DeliveryAddress.Street |
Endereço de entrega do pedido. | texto | 255 | texto alfanumérico |
Customer.DeliveryAddress.Number |
Número do endereço de entrega do pedido. | texto | 15 | texto alfanumérico |
Customer.DeliveryAddress.Complement |
Complemento do endereço de entrega do pedido. | texto | 50 | texto alfanumérico |
Customer.DeliveryAddress.ZipCode |
CEP do endereço de entrega do pedido. | texto | 9 | texto alfanumérico |
Customer.DeliveryAddress.City |
Cidade do endereço de entrega do pedido. | texto | 50 | texto alfanumérico |
Customer.DeliveryAddress.State |
Estado do endereço de entrega do pedido. | texto | 2 | texto alfanumérico |
Customer.DeliveryAddress.Country |
País do endereço de entrega do pedido. | texto | 35 | texto alfanumérico |
Customer.DeliveryAddress.District |
Bairro do endereço de entrega do pedido. | texto | 50 | texto alfanumérico |
Merchant.Id |
Identificador da loja que efetuou essa transação. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Merchant.TradeName |
Nome da loja. | texto | 50 | texto alfanumérico |
Payment.Provider |
Nome do provedor do meio de pagamento. | texto | 15 | Consulte os anexos. |
Payment.Type |
Tipo do meio de pagamento. | texto | 100 | Ex.: “CreditCard” |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | 10000 |
Payment.ServiceTaxAmount |
Montante do valor da autorização que deve ser destinado à taxa de serviço. Obs.: Esse valor não é adicionado ao valor da autorização. | número | 15 | 10000 |
Payment.Currency |
Moeda na qual o pagamento será feito. | texto | 3 | BRL / USD / MXN / COP / CLP / ARS / PEN / EUR / PYN / UYU / VEB / VEF / GBP |
Payment.Country |
País na qual o pagamento será feito. | texto | 3 | BRA |
Payment.Installments |
Número de parcelas. | número | 2 | 6 |
Payment.Interest |
Tipo de parcelamento. | texto | 10 | Loja (“ByMerchant”) ou Emissor (“ByIssuer”) |
Payment.Capture |
Indica se a autorização deve ser com captura automática ou não. Deverá verificar junto à adquirente a disponibilidade desta funcionalidade. | booleano | — | true / false (default) |
Payment.Authenticate |
Indica se a transação deve ser autenticada ou não. Deverá verificar junto à adquirente a disponibilidade desta funcionalidade. Authenticate deve ser “false” quando Recurrent é “true”. |
booleano | — | true / false (default) |
Payment.Recurrent |
Indica se a transação é do tipo recorrente ou não. Obs.: Este campo igual a “true” não irá originar uma nova recorrência; apenas permitirá a realização de uma transação sem a necessidade de envio do CVV. Somente para transações Cielo. Authenticate deve ser “false” quando Recurrent é “true”. |
booleano | — | true / false (default) |
Payment.SoftDescriptor |
Texto que será impresso na fatura do portador. | texto | 13 | texto alfanumérico |
Payment.ExtraDataCollection.Name |
Nome do campo em que será gravado o dado extra. | texto | 50 | texto alfanumérico |
Payment.ExtraDataCollection.Value |
Valor do campo em que será gravado o dado extra. | texto | 1024 | texto alfanumérico |
Payment.AcquirerTransactionId |
Id da transação no provedor do meio de pagamento. | texto | 40 | texto alfanumérico |
Payment.ProofOfSale |
Número do comprovante de venda. | texto | 20 | texto alfanumérico |
Payment.AuthorizationCode |
Código de autorização. | texto | 300 | texto alfanumérico |
Payment.Refunds.Amount |
Valor reembolsado, em centavos. | número | 15 | 10000 |
Payment.Refunds.Status |
Status do reembolso. | número | 1 | Received = 1 Sent = 2 Approved = 3 Denied = 4 Rejected = 5 |
Payment.Refunds.ReceivedDate |
Data de recebimento do reembolso. | texto | 19 | AAAA-MM-DD HH:mm:SS |
Payment.Chargebacks[n].Amount |
Valor do chargeback, em centavos. | número | 15 | 10000 |
Payment.Chargebacks[n].CaseNumber |
Número do caso relacionado ao chargeback. | texto | 16 | Texto alfanumérico |
Payment.Chargebacks[n].Date |
Data do chargeback. | data | 10 | AAAA-MM-DD |
Payment.Chargebacks[n].ReasonCode |
Código do motivo do chargeback. Lista de Valores - ReasonCode. |
texto | 10 | texto alfanumérico |
Payment.Chargebacks[n].ReasonMessage |
Mensagem de motivo do chargeback. Lista de Valores - ReasonMessage. |
texto | 512 | texto alfanumérico |
Payment.Chargebacks[n].Status |
Status do chargeback. Lista de Valores - Status. |
texto | 32 | texto |
Payment.Chargebacks[n].RawData |
Dado enviado pela adquirente, podendo ser o titular do cartão ou outra mensagem. | texto | 512 | texto alfanumérico |
Payment.FraudAlert.Date |
Data do alerta de fraude. | data | 10 | AAAA-MM-DD |
Payment.FraudAlert.ReasonMessage |
Mensagem de motivo do alerta de fraude. | texto | 512 | texto alfanumérico |
Payment.FraudAlert.IncomingChargeback |
Flag que identifica se a transação possui um chargeback ocorrido antes do alerta de fraude. | booleano | 5 | Texto |
Payment.PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Payment.ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | 19 | AAAA-MM-DD HH:mm:SS |
Payment.ReasonCode |
Código de retorno da adquirência. | texto | 32 | texto alfanumérico |
Payment.ReasonMessage |
Mensagem de retorno da adquirência. | texto | 512 | texto alfanumérico |
Payment.CapturedAmount |
Valor capturado. | número | 15 | 10000 |
Payment.CapturedDate |
Data da captura. | texto | 19 | AAAA-MM-DD HH:mm:SS |
Payment.VoidedAmount |
Valor cancelado/estornado, em centavos. | número | 15 | 10000 |
Payment.VoidedDate |
Data do cancelamento/estorno. | texto | 19 | AAAA-MM-DD HH:mm:SS |
Payment.Status |
Status da transação. | byte | 2 | Ex.: “1” |
RecurrentPayment.RecurrentPaymentID |
Caso a transação tenha surgido de um pedido recorrente, retorna o RecurrentPaymentID desse pedido | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Payment.Provider |
Provedor utilizado. | texto | 32 | Simulado |
Payment.ProviderDescription |
Nome do adquirente que processou a transação. | texto | 512 | Simulado |
CreditCard.CardNumber |
Número do cartão do comprador. | texto | 19 | — |
CreditCard.Holder |
Nome do portador impresso no cartão. Obs.: Regras de tamanho do campo podem variar de acordo com a adquirente. | texto | 25 | — |
CreditCard.ExpirationDate |
Data de validade impresso no cartão. | texto | 7 | MM/AAAA |
CreditCard.Brand |
Bandeira do cartão. | texto | 10 | — |
CreditCard.SaveCard |
Identifica se o cartão será salvo para gerar o token (CardToken). | booleano | — | true / false (default) |
Para consultar uma transação de boleto registrado via PaymentID, é necessário o envio de mensagem HTTP do método GET para o recurso Payment, conforme o exemplo:
--request GET "https://apiquerysandbox.braspag.com.br/v2/sales/{PaymentId}"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
PaymentId |
Número de identificação do pagamento. | GUID | 36 | Sim (envio no endpoint) |
{
"MerchantOrderId": "2017051001",
"Customer": {
"Name": "Nome do Cliente",
"Identity": "12345678909",
"Address": {
"Street": "GONCALO DA CUNHA",
"Number": "111",
"ZipCode": "04140040",
"City": "SAO PAULO",
"State": "SP",
"Country": "BRA",
"District": "CHACARA INGLESA"
}
},
"Payment": {
"Instructions": "",
"ExpirationDate": "2018-06-27",
"Demonstrative": "",
"Url": "https://www.pagador.com.br/post/pagador/reenvia.asp/3fda2279-1c45-4271-9656-XXXXXXXXXX",
"BoletoNumber": "123464",
"BarCodeNumber": "9999990276000001234864001834099999999",
"DigitableLine": "99999.39027 60000.012348 64001.834007 7 75680999999999",
"Assignor": "RAZAO SOCIAL DA LOJA LTDA.",
"Address": "",
"Identification": "01234567000189",
"CreditDate": "2018-06-28",
"PaymentId": "99992279-1c45-4271-9656-ccbde4ea9999",
"Type": "Boleto",
"Amount": 182000,
"ReceivedDate": "2018-06-26 23:33:07",
"CapturedAmount": 182000,
"CapturedDate": "2018-06-27 01:45:57",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Bradesco2",
"ReturnUrl": "https://www.loja.com.br/notificacao",
"ExtraDataCollection": [],
"ReasonCode": 0,
"Status": 2,
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725"
},
{
"Method": "PUT",
"Rel": "capture",
"Href": "https://apisandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725/capture"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725/void"
}
]
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"MerchantOrderId": "2017051001",
"Customer": {
"Name": "Nome do Cliente",
"Identity": "12345678909",
"Address": {
"Street": "GONCALO DA CUNHA",
"Number": "111",
"ZipCode": "04140040",
"City": "SAO PAULO",
"State": "SP",
"Country": "BRA",
"District": "CHACARA INGLESA"
}
},
"Payment": {
"Instructions": "",
"ExpirationDate": "2018-06-27",
"Demonstrative": "",
"Url": "https://www.pagador.com.br/post/pagador/reenvia.asp/3fda2279-1c45-4271-9656-XXXXXXXXXX",
"BoletoNumber": "123464",
"BarCodeNumber": "9999990276000001234864001834099999999",
"DigitableLine": "99999.39027 60000.012348 64001.834007 7 75680999999999",
"Assignor": "RAZAO SOCIAL DA LOJA LTDA.",
"Address": "",
"Identification": "01234567000189",
"CreditDate": "2018-06-28",
"PaymentId": "99992279-1c45-4271-9656-ccbde4ea9999",
"Type": "Boleto",
"Amount": 182000,
"ReceivedDate": "2018-06-26 23:33:07",
"CapturedAmount": 182000,
"CapturedDate": "2018-06-27 01:45:57",
"Currency": "BRL",
"Country": "BRA",
"Provider": "Bradesco2",
"ReturnUrl": "https://www.loja.com.br/notificacao",
"ExtraDataCollection": [],
"ReasonCode": 0,
"Status": 2,
"RecurrentPayment": {
"RecurrentPaymentId": "1069a2c8-83cb-4268-8b62-0a9dc5038665"
},
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725"
},
{
"Method": "PUT",
"Rel": "capture",
"Href": "https://apisandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725/capture"
},
{
"Method": "PUT",
"Rel": "void",
"Href": "https://apisandbox.braspag.com.br/v2/sales/f8078b32-be17-4c35-b164-ad74c3cd0725/void"
}
]
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
MerchantOrderId |
Número de identificação do pedido. | texto | 50 | texto alfanumérico |
Customer.Name |
Nome do comprador. | texto | 255 | texto alfanumérico |
Customer.Identity |
Número do RG, CPF ou CNPJ do cliente. | texto | 14 | texto alfanumérico |
Customer.IdentityType |
Tipo de documento de identificação do comprador (CPF ou CNPJ). | texto | 255 | CPF ou CNPJ |
Customer.Email |
E-mail do comprador. | texto | 255 | texto alfanumérico |
Customer.Birthdate |
Data de nascimento do comprador. | data | 10 | formato AAAA-MM-DD |
Customer.Address.Street |
Endereço de contato do comprador. | texto | 255 | texto alfanumérico |
Customer.Address.Number |
Número do endereço de contato do comprador. | texto | 15 | texto alfanumérico |
Customer.Address.Complement |
Complemento do endereço de contato do comprador. | texto | 50 | texto alfanumérico |
Customer.Address.ZipCode |
CEP do endereço de contato do comprador. | texto | 9 | texto alfanumérico |
Customer.Address.City |
Cidade do endereço de contato do comprador. | texto | 50 | texto alfanumérico |
Customer.Address.State |
Estado do endereço de contato do comprador. | texto | 2 | texto alfanumérico |
Customer.Address.Country |
País do endereço de contato do comprador. | texto | 35 | texto alfanumérico |
Customer.Address.District |
Bairro do endereço de contato do comprador. | texto | 50 | texto alfanumérico |
Customer.DeliveryAddress.Street |
Endereço de entrega do pedido. | texto | 255 | texto alfanumérico |
Customer.DeliveryAddress.Number |
Número do endereço de entrega do pedido. | texto | 15 | texto alfanumérico |
Customer.DeliveryAddress.Complement |
Complemento do endereço de entrega do pedido. | Texto | 50 | Texto alfanumérico |
Customer.DeliveryAddress.ZipCode |
CEP do endereço de entrega do pedido. | texto | 9 | texto alfanumérico |
Customer.DeliveryAddress.City |
Cidade do endereço de entrega do pedido. | texto | 50 | texto alfanumérico |
Customer.DeliveryAddress.State |
Estado do endereço de entrega do pedido. | texto | 2 | texto alfanumérico |
Customer.DeliveryAddress.Country |
País do endereço de entrega do pedido. | texto | 35 | texto alfanumérico |
Customer.DeliveryAddress.District |
Bairro do comprador. | texto | 50 | texto alfanumérico |
Payment.Provider |
Nome do provedor do meio de pagamento. | texto | 15 | Consulta os provedores disponíveis nos anexos |
Payment.Type |
Tipo do meio de pagamento. | texto | 100 | Ex.: Boleto |
Payment.Amount |
Valor do pedido, em centavos. | número | 15 | 10000 |
Payment.CapturedAmount |
Valor pago do boleto, em centavos. | número | 15 | 10000 |
Payment.Instructions |
Texto sobre alguma instrução específica para o boleto. | texto | Veja as Regras Específicas por Banco. | Ex.: “Não pagar após o vencimento” |
Payment.Demonstrative |
Texto sobre alguma informação específica para o boleto. | texto | Veja as Regras Específicas por Banco. | Ex.: “Boleto referente ao pedido número 99999” |
Payment.Url |
URL para apresentação do boleto. | texto | - | Ex.: “https://www.pagador.com.br/post/pagador/reenvia.asp/3fda2279-1c45-4271-9656-XXXXXXXXXX” |
Payment.BoletoNumber |
Nosso número. | número | Veja as Regras Específicas por Banco. | Ex.: “12345678” |
Payment.BarCodeNumber |
Código de barras do boleto. | texto | 44 | Ex.: “99999390276000001234864001834007775680099999” |
Payment.DigitableLine |
Linha digitável do boleto. | texto | 54 | Ex.: “99999.39027 60000.012348 64001.834007 7 75680000199999” |
Payment.Assignor |
Nome do cedente do boleto. | texto | 200 | Ex.: “RAZAO SOCIAL DA LOJA LTDA” |
Payment.Address |
Endereço do cedente do boleto. | texto | 160 | Ex.: “Alameda Xingu 512” |
Payment.Identification |
CNPJ do cedente. | texto | 18 | Ex.: “11.355.111/0001-11” |
Payment.ExpirationDate |
Data de vencimento do boleto. | texto | AAAA-MM-DD | Ex.: “2018-06-21” |
Payment.CreditDate |
Data de crédito do valor pago do boleto. | texto | AAAA-MM-DD | Ex.: “2018-06-19” |
Payment.CapturedDate |
Data de pagamento do boleto. | texto | AAAA-MM-DD HH:mm:SS | Ex.: “2018-06-19 01:45:57” |
Payment.ReceivedDate |
Data em que a transação foi recebida pela Braspag. | texto | AAAA-MM-DD HH:mm:SS | Ex.: “2018-06-19 01:45:57” |
Payment.ReturnUrl |
URL da loja para onde o cliente é redirecionado. | texto | - | Ex.: “https://www.loja.com.br” |
Payment.Currency |
Moeda na qual o pagamento será feito. | texto | 3 | BRL / USD / MXN / COP / CLP / ARS / PEN / EUR / PYN / UYU / VEB / VEF / GBP |
Payment.Country |
País na qual o pagamento será feito. | texto | 3 | BRA |
Payment.ExtraDataCollection.Name |
Nome do campo em que será gravado o dado extra. | texto | 50 | texto alfanumérico |
Payment.ExtraDataCollection.Value |
Valor do campo em que será gravado o dado extra. | texto | 1024 | texto alfanumérico |
Payment.PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Payment.ReasonCode |
Código de retorno da adquirência. | texto | 32 | texto alfanumérico |
Payment.Status |
Status da transação. | byte | 2 | Ex.: 1 |
RecurrentPayment.RecurrentPaymentID |
Caso a transação tenha surgido de um pedido recorrente, retorna o RecurrentPaymentID desse pedido | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Não é possível consultar um pagamento diretamente pelo identificador enviado pela loja (MerchantOrderId
), mas é possível obter todos os PaymentIds
associados ao identificador.
Para consultar uma venda pelo identificador da loja, é necessário o envio de mensagem HTTP do método GET para o recurso /sales, conforme o exemplo:
--request GET "https://apiquerysandbox.braspag.com.brv2/sales?merchantOrderId={merchantOrderId}"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
MerchantOrderId |
Campo identificador do pedido na loja. | texto | 36 | Sim (envio no endpoint) |
{
"Payment": [
{
"PaymentId": "5fb4d606-bb63-4423-a683-c966e15399e8",
"ReceveidDate": "2015-04-06T10:13:39.42"
},
{
"PaymentId": "6c1d45c3-a95f-49c1-a626-1e9373feecc2",
"ReceveidDate": "2014-12-19T20:23:28.847"
}
]
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"ReasonCode": 0,
"ReasonMessage": "Successful",
"Payments": [
{
"PaymentId": "5fb4d606-bb63-4423-a683-c966e15399e8",
"ReceveidDate": "2015-04-06T10:13:39.42"
},
{
"PaymentId": "6c1d45c3-a95f-49c1-a626-1e9373feecc2",
"ReceveidDate": "2014-12-19T20:23:28.847"
}
]
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
PaymentId |
Campo identificador do pedido. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Para consultar um pedido de recorrência, é necessário o envio de mensagem HTTP do método GET conforme o exemplo:
--request GET "https://apiquerysandbox.braspag.com.br/v2/RecurrentPayment/{RecurrentPaymentId}"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--header "MerchantKey: 0123456789012345678901234567890123456789"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
--verbose
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
MerchantId |
Identificador da loja na API. | GUID | 36 | Sim (envio no header) |
MerchantKey |
Chave pública para autenticação dupla na API. | texto | 40 | Sim (envio no header) |
RequestId |
Identificador do request definido pela loja, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | GUID | 36 | Não (envio no header) |
RecurrentPaymentId |
Campo identificador da recorrência. | texto | 36 | Sim (envio no endpoint) |
{
"Customer": {
"Name": "Nome do Cliente"
},
"RecurrentPayment": {
"Installments": 1,
"RecurrentPaymentId": "f5a83c14-0254-4e73-bdd3-9afba1007266",
"NextRecurrency": "2017-06-11",
"StartDate": "2017-05-11",
"EndDate": "2019-12-31",
"Interval": "Monthly",
"Amount": 10000,
"Country": "BRA",
"CreateDate": "2017-05-11T00:00:00",
"Currency": "BRL",
"CurrentRecurrencyTry": 1,
"OrderNumber": "2017051120",
"Provider": "Simulado",
"RecurrencyDay": 11,
"SuccessfulRecurrences": 1,
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/RecurrentPayment/f5a83c14-0254-4e73-bdd3-9afba1007266"
}
],
"RecurrentTransactions": [
{
"PaymentNumber": 0,
"RecurrentPaymentId": "f5a83c14-0254-4e73-bdd3-9afba1007266",
"TransactionId": "cd694ffb-c0c4-47db-9390-737df70a2012",
"TryNumber": 1,
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/cd694ffb-c0c4-47db-9390-737df70a2012"
}
]
}
],
"Status": 1
}
}
--header "Content-Type: application/json"
--header "RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
--data-binary
{
"Customer": {
"Name": "Nome do Cliente"
},
"RecurrentPayment": {
"Installments": 1,
"RecurrentPaymentId": "f5a83c14-0254-4e73-bdd3-9afba1007266",
"NextRecurrency": "2017-06-11",
"StartDate": "2017-05-11",
"EndDate": "2019-12-31",
"Interval": "Monthly",
"Amount": 10000,
"Country": "BRA",
"CreateDate": "2017-05-11T00:00:00",
"Currency": "BRL",
"CurrentRecurrencyTry": 1,
"OrderNumber": "2017051120",
"Provider": "Simulado",
"RecurrencyDay": 11,
"SuccessfulRecurrences": 1,
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/RecurrentPayment/f5a83c14-0254-4e73-bdd3-9afba1007266"
}
],
"RecurrentTransactions": [
{
"PaymentNumber": 0,
"RecurrentPaymentId": "f5a83c14-0254-4e73-bdd3-9afba1007266",
"TransactionId": "cd694ffb-c0c4-47db-9390-737df70a2012",
"TryNumber": 1,
"Links": [
{
"Method": "GET",
"Rel": "self",
"Href": "https://apiquerysandbox.braspag.com.br/v2/sales/cd694ffb-c0c4-47db-9390-737df70a2012"
}
]
}
],
"Status": 1
}
}
Propriedade | Descrição | Tipo | Tamanho | Formato |
---|---|---|---|---|
RecurrentPaymentId |
Campo identificador da próxima recorrência. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
NextRecurrency |
Data da próxima recorrência. | texto | 7 | 05/2019 (MM/YYYY) |
StartDate |
Data do início da recorrência. | texto | 7 | 05/2019 (MM/YYYY) |
EndDate |
Data do fim da recorrência. | texto | 7 | 05/2019 (MM/YYYY) |
Interval |
Intervalo entre as recorrências. | texto | 10 | “Monthly” / “Bimonthly” / “Quarterly” / “SemiAnnual” / “Annual” |
CurrentRecurrencyTry |
Número atual da tentativa de recorrência. | número | 1 | 1 |
OrderNumber |
Identificação do pedido na loja. | texto | 50 | 2017051101 |
Status |
Status do pedido recorrente. | número | 1 | 1- Ativo / 2- Finalizado / 3- Desativado pelo Usuário / 4- Desativado por Número Máximo de Tentativas / 5- Desativado por Cartão de Crédito Expirado |
RecurrencyDay |
Dia da recorrência. | número | 2 | 22 |
SuccessfulRecurrences |
Quantidade de recorrências realizadas com sucesso. | número | 2 | 5 |
RecurrentTransactions.RecurrentPaymentId |
Id da recorrência. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
RecurrentTransactions.TransactionId |
Payment ID da transação gerada na recorrência. | GUID | 36 | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
RecurrentTransactions.PaymentNumber |
Número da recorrência. A primeira é zero. | número | 2 | 3 |
RecurrentTransactions.TryNumber |
Número da tentativa atual na recorrência específica. | número | 2 | 1 |
Para receber a notificação de alteração de status da transação (ex.: confirmação de pagamento ou devolução), configure o campo “URL de Notificação” durante o cadastro de sua loja na Braspag. O endereço deve ser HTTPS e não se deve utilizar uma porta fora do padrão HTTPS (443).
Veja o fluxo percorrido pelo post de notificação:
Os parâmetros serão enviados à URL cadastrada, conforme demonstrado no exemplo abaixo.
{
"RecurrentPaymentId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"PaymentId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"ChangeType": 2
}
Propriedade | Descrição | Tipo | Tamanho | Obrigatório? |
---|---|---|---|---|
RecurrentPaymentId |
Identificador que representa o pedido recorrente (aplicável somente para ChangeType 2 ou 4). |
GUID | 36 | Não |
PaymentId |
Identificador que representa a transação. | GUID | 36 | Sim |
ChangeType |
Especifica o tipo de notificação. Obs.: Consulte a tabela abaixo. | Número | 1 | Sim |
ChangeType | Descrição |
---|---|
1 | Mudança de status do pagamento. |
2 | Recorrência criada. |
3 | Mudança de status do Antifraude. |
4 | Mudança de status do pagamento recorrente (Ex.: desativação automática). |
5 | Estorno negado (aplicável para Rede). |
6 | Boleto registrado pago a menor. |
7 | Notificação de chargeback. Exclusivo para clientes integrados à Risk Notification API. |
8 | Alerta de fraude. |
É esperado o retorno da loja com a seguinte resposta: HTTP Status Code 200 OK
.
As listas a seguir se referem a provedores na integração com a API REST:
Provider | Brand | Descrição |
---|---|---|
Simulado | — | Provider de Sandbox. Clique aqui para mais detalhes sobre cartões para teste. |
Cielo30 | Visa, Master, Amex, Elo, Aura, Jcb, Diners, Discover, Hipercard, Sorocred | Provider para transações na plataforma de e-commerce Cielo 3.0. |
Getnet | Visa, Master, Elo, Amex, Hipercard | Provider para transações na plataforma de e-commerce Getnet. |
Rede2 | Visa, Master, Hipercard, Diners, Elo, Amex, Sorocred | Provider para transações na plataforma de e-commerce da Rede (e-Rede) na versão REST. |
GlobalPayments | Visa, Master, Elo, Hipercard, Cabal, Amex | Provider para transações na plataforma de e-commerce Global Payments. |
Stone | Visa, Master, Hipercard, Elo | Provider para transações na plataforma de e-commerce Stone. |
Safra2 | Visa, Master, Hipercard, Elo, Amex | Provider para transações na plataforma de e-commerce Safra. |
PagSeguro | Visa, Master, Hipercard, Elo, Diners, Amex | Provider para transações na plataforma de e-commerce PagSeguro. |
FirstData | Visa, Master, Elo, Hipercard, Cabal, Amex | Provider para transações em guaranis (PYG), pesos argentinos (ARG) e reais (BRL) na plataforma de e-commerce First Data. |
Sub1 | Visa, Master, Diners, Amex, Discover, Cabal, Naranja e Nevada | Provider para transações em pesos argentinos (ARG) na plataforma legado Sub1 First Data. |
Banorte | Visa, Master, Carnet | Provider para transações em pesos mexicanos (MXN) na plataforma de e-commerce Banorte. |
Credibanco2 | Visa, Master, Diners, Amex, Credential | Provider para transações em pesos colombianos (COP) na plataforma de e-commerce Credibanco. |
Transbank2 | Visa, Master, Diners, Amex | Provider para transações em pesos chilenos (CLP) na plataforma de e-commerce Transbank. |
Banese | Banese | Provider para transações com a bandeira BaneseCard. |
BrasilCard | BrasilCard | Provider para transações com a bandeira BrasilCard. |
CredSystem | CredSystem | Sistema de cartões em regime de bandeira privativa (Private Label Brand). |
Credz | Credz | Sistema de cartões em regime de bandeira privativa (Private Label Brand). |
DMCard | DMCard | Sistema de cartões em regime de bandeira privativa (Private Label Brand). |
Provider | Brand | Descrição |
---|---|---|
Cielo | Visa, Master | Provider para transações de débito na plataforma legado Cielo 1.5. |
Cielo30 | Visa, Master | Provider para transações de débito na plataforma de e-commerce Cielo 3.0. |
Getnet | Visa, Master | Provider para transações de débito na plataforma de e-commerce GetNet. |
Rede2 | Visa, Master | Provider para transações de débito na plataforma de e-commerce Rede. |
Safra2 | Visa, Master | Provider para transações de débito na plataforma de e-commerce Safra. |
FirstData | Visa, Master | Provider para transações de débito na plataforma de e-commerce First Data. |
GlobalPayments | Visa, Master | Provider para transações de débito na plataforma de e-commerce Global Payments. |
Provider | Brand | Descrição |
---|---|---|
Alelo | Elo | Provider para transações de voucher (vale refeição/alimentação) na plataforma Alelo. |
Ticket | Ticket | Provider para transações de voucher (vale refeição/alimentação) na plataforma Ticket. |
Providers |
---|
Simulado, Cielo30 (Cielo 3.0), Rede2, Getnet, FirstData, GlobalPayments e Safra2. |
Provider |
---|
Simulado, Cielo30 (Cielo 3.0) |
Provider |
---|
Braspag, Bradesco2, BancoDoBrasil2, ItauShopline, Itau2, Santander2, Caixa2, CitiBank2 |
Provider |
---|
SafetyPay, PayMeeRedirectCheckout, PayMeeSemiTransparent |
Provider |
---|
Cielo30, Bradesco2 |
Lista de status retornados pela API:
Código | Status do Pagamento | Meio de pagamento | Descrição |
---|---|---|---|
0 | NotFinished | Todos | Falha ao processar o pagamento. Possíveis causas: dados incorretos, erro na requisição, timeout da adquirente, alguma instabilidade no processamento. Em caso de transação de débito, o comprador pode ter abandonado a compra. |
1 | Authorized | Todos | Meio de pagamento apto a ser capturado ou pago (boleto). Para transação de boleto, significa que o boleto foi gerado com sucesso. Para transação com cartão, significa que houve a aprovação pelo banco emissor. Contudo, isso não significa que a transação foi concluída - para isso, é necessário uma segunda etapa, a captura da transação ou a efetivação do pagamento. |
2 | PaymentConfirmed | Todos | Pagamento confirmado e finaliza |