Serviço de efetivação de pagamento
Após consumir o serviço de criação de transação e obter um NIT, é possível prosseguir para a próxima etapa do fluxo: a chamada ao serviço de efetivação de pagamento. Esta operação deve ser consumida também em fluxos de pagamento com agendamento. Nesse caso, o e-SiTef garante que o agendamento só será ativado caso o pagamento seja confirmado.
Detalhes da chamada
- Recurso:
/v1/payments/{nit}
- Método HTTP:
POST
- Formato da requisição:
JSON
- Formato da resposta:
JSON
- Parâmetros de cabeçalho:
Parâmetro | Descrição | Formato | Obrigatório |
---|---|---|---|
merchant_id | Código da loja no e-SiTef. Os códigos de produção e certificação serão diferentes. | < 15 AN | SIM |
merchant_key | Chave de autenticação da loja no e-SiTef. As chaves de produção e certificação serão diferentes. | < 80 AN | SIM |
Content-Type | Deve ser enviado com o valor application/json . | = 15 AN | SIM |
Exemplos
Abaixo estão alguns exemplos de chamada do serviço de efetivação de pagamento utilizando a ferramenta cURL.
Pagamento com captura automática
Requisição:
curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"card":{
"number":"5555555555555555",
"expiry_date":"1222",
"security_code":"123"
}
}
--verbose
Resposta:
{
"code":"0",
"message":"OK. Transaction successful.",
"payment":{
"authorizer_code":"000",
"authorizer_message":"Transacao OK",
"status":"CON",
"nit":"1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr",
"order_id":"13034649671",
"customer_receipt":"====CUPOM COMPRADOR====",
"merchant_receipt":"====CUPOM ESTABELECIMENTO====",
"authorizer_id":"2",
"acquirer_id":"1005",
"acquirer_name":"Redecard",
"authorizer_date":"13/07/2017T15:52",
"authorization_number":"132030",
"merchant_usn":"13034649671",
"esitef_usn":"170713097340300",
"sitef_usn":"132030",
"host_usn":"999132030",
"payment_date":"13/07/2017T15:52",
"amount":"1000",
"payment_type":"C",
"issuer":"2",
"authorizer_merchant_id":"000000000000005"
}
}
Pagamento com confirmação tardia
Requisição:
curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"card":{
"number":"5555555555555555",
"expiry_date":"1222",
"security_code":"123"
}
}
--verbose
Resposta:
{
"code":"0",
"message":"OK. Transaction successful.",
"payment":{
"authorizer_code":"000",
"authorizer_message":"Transacao OK",
"status":"PPC",
"nit":"1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr",
"order_id":"13035748930",
"customer_receipt":"==== CUPOM COMPRADOR ====",
"merchant_receipt":"==== CUPOM ESTABELECIMENTO ====",
"authorizer_id":"2",
"acquirer_id":"1005",
"acquirer_name":"Redecard",
"authorizer_date":"13/07/2017T15:58",
"authorization_number":"132031",
"merchant_usn":"13035748930",
"esitef_usn":"170713097340340",
"sitef_usn":"132031",
"host_usn":"999132031 ",
"payment_date":"13/07/2017T15:58",
"amount":"1000",
"payment_type":"C",
"issuer":"2",
"authorizer_merchant_id":"000000000000005"
}
}
Pagamento com agendamento
Requisição:
curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"card":{
"number":"5555555555555555",
"expiry_date":"1222",
"security_code":"123"
}
}
--verbose
Resposta:
{
"code":"0",
"message":"OK. Transaction successful.",
"payment":{
"authorizer_code":"000",
"authorizer_message":"Transacao OK",
"status":"CON",
"nit":"1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr",
"order_id":"13040222890",
"customer_receipt":"==== CUPOM COMPRADOR ====",
"merchant_receipt":"==== CUPOM ESTABELECIMENTO ====",
"authorizer_id":"2",
"acquirer_id":"1005",
"acquirer_name":"Redecard",
"authorizer_date":"13/07/2017T16:03",
"authorization_number":"132032",
"merchant_usn":"13040222890",
"esitef_usn":"170713097340360",
"sitef_usn":"132032",
"host_usn":"999132032 ",
"payment_date":"13/07/2017T16:03",
"amount":"1000",
"payment_type":"C",
"issuer":"2",
"authorizer_merchant_id":"000000000000005"
},
"schedule":{
"status":"ATV",
"sid":"qwertyuiopasdfghjklzxcvbnm0123456789qwertyuiopasdfghjklzxcvbnm01",
"schedule_usn":"170713000000020",
"amount":"900",
"initial_date":"03/08/2017",
"next_date":"03/08/2017",
"number_of_times":"3",
"soft_descriptor":"Assinatura",
"show_times_invoice":"false"
}
}
Pagamento com cartão armazenado
Requisição:
curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"card":{
"token":"g16hJtpdU6XEN3FP-ApQ9pKTGII5Fa9Y12tRX-qfyC-+BUCV5OaFn807zwwOR6rDtKoRnIJg0QbikaJqJqosyQ=="
}
}
--verbose
Resposta:
{
"code":"0",
"message":"OK. Transaction successful.",
"payment":{
"authorizer_code":"000",
"authorizer_message":"Transacao OK",
"status":"CON",
"nit":"1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr",
"order_id":"13034649671",
"customer_receipt":"====CUPOM COMPRADOR====",
"merchant_receipt":"====CUPOM ESTABELECIMENTO====",
"authorizer_id":"2",
"acquirer_id":"1005",
"acquirer_name":"Redecard",
"authorizer_date":"13/07/2017T15:52",
"authorization_number":"132030",
"merchant_usn":"13034649671",
"esitef_usn":"170713097340300",
"sitef_usn":"132030",
"host_usn":"999132030",
"payment_date":"13/07/2017T15:52",
"amount":"1000",
"payment_type":"C",
"issuer":"2",
"authorizer_merchant_id":"000000000000005"
}
}
Pagamento com planos de financiamento Via Certa Financiadora
Requisição:
curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"card":{
"expiry_date":"1222",
"security_code":"123",
"number":"5555555555555555"
},
"acquirer":{
"financing_plan":"0302"
}
}
--verbose
Resposta:
{
"code":"0",
"message":"OK. Transaction successful.",
"payment":{
"authorizer_code":"000",
"authorizer_message":"Transacao OK",
"status":"CON",
"nit":"1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr",
"order_id":"21105507366",
"customer_receipt":"====CUPOM COMPRADOR====",
"merchant_receipt":"====CUPOM ESTABELECIMENTO====",
"authorizer_id":"313",
"acquirer_id":"1313",
"acquirer_name":"Via Certa Financiadora",
"authorizer_date":"21/11/2017T10:55",
"authorization_number":"211982",
"merchant_usn":"21105507366",
"esitef_usn":"171121108905101",
"sitef_usn":"211982",
"host_usn":"999211982 ",
"amount":"1000",
"payment_type":"C",
"issuer":"2",
"authorizer_merchant_id":"0000000000000313",
"payment_date":"21/11/2017T10:55"
}
}
Pagamento com prefixos
Requisição:
curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"card":{
"expiry_date":"1222",
"security_code":"123",
"number":"5555555555555555"
},
"acquirer":{
"prefixes":{
"TRAT":"1"
}
}
}
--verbose
Resposta:
{
"code":"0",
"message":"OK. Transaction successful.",
"payment":{
"authorizer_code":"000",
"authorizer_message":"Transacao OK",
"status":"CON",
"nit":"1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr",
"order_id":"21105507366",
"customer_receipt":"====CUPOM COMPRADOR====",
"merchant_receipt":"====CUPOM ESTABELECIMENTO====",
"authorizer_id":"2",
"acquirer_id":"1005",
"acquirer_name":"Redecard",
"authorizer_date":"21/11/2017T10:55",
"authorization_number":"211981",
"merchant_usn":"21105507366",
"esitef_usn":"171121108905100",
"sitef_usn":"211981",
"host_usn":"999211981 ",
"amount":"1000",
"payment_type":"C",
"issuer":"2",
"authorizer_merchant_id":"000000000000005",
"payment_date":"21/11/2017T10:55"
}
}
Pagamento split para roteamentos BIN e Sipag via SiTef
Requisição:
curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/api/v1/payments/1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr"
--header "Content-Type: application/json"
--header "merchant_id: xxxxxxxx"
--header "merchant_key: xxxxxxxxxxx"
--data-binary
{
"card":{
"number":"5555555555555555",
"expiry_date":"1222",
"security_code":"123"
},
"acquirer":{
"submerchant_split":[
{
"submerchant_code":"empresa01",
"submerchant_amount":"10"
},
{
"submerchant_code":"empresa02",
"submerchant_amount":"20"
},
{
"submerchant_code":"empresa03",
"submerchant_amount":"20"
},
{
"submerchant_code":"empresa04",
"submerchant_amount":"30"
},
{
"submerchant_code":"empresa05",
"submerchant_amount":"30"
}
]
}
}
--verbose
Resposta:
{
"code":"0",
"message":"OK. Transaction successful.",
"payment":{
"authorizer_code": "000",
"authorizer_message": "APROVADA",
"status": "CON",
"nit":"1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr",
"authorizer_id": "1",
"acquirer_id": "229",
"acquirer_name": "Bin",
"authorizer_date": "29/03/2019T13:26",
"authorization_number": "000058",
"merchant_usn": "20180809",
"esitef_usn": "190329026585100",
"sitef_usn": "000058",
"host_usn": "003000058 ",
"amount": "13000",
"payment_type": "C",
"issuer": "1",
"authorizer_merchant_id": "000000000000000",
"payment_date": "29/03/2019T13:26"
}
}
Parâmetros de requisição
Na tabela abaixo está a descrição dos parâmetros de requisição do serviço de efetivação de pagamento:
Parâmetro | Descrição | Formato | Obrigatório |
---|---|---|---|
authorizer_id | Código da autorizadora no e-SiTef. Saiba mais. Caso este campo não tenha sido enviado na etapa de criação da transação, ele passa a ser obrigatório ao consumir o serviço de efetivação do pagamento. | < 3 N | COND. |
customer_postal_code | Código postal (CEP no Brasil) do usuário. Este deve ser enviado para transações roteadas iCards via SiTef, caso a coleta deste for indicada no serviço de consulta de cartão pelo campo is_customer_postal_code_required. | < 8 N | COND. |
mcc | O MCC (Merchant Category Code) é um código que classifica um negócio pelo tipo de bens ou produtos fornecidos. | < 4 N | NÃO |
subacquirer_merchant_id | Identificação da loja na subadquirente. | < 22 N | NÃO |
card | Dados do cartão. | ||
number | Número do cartão do comprador (PAN). | < 19 N | SIM |
expiry_date | Data de vencimento do cartão no formato MMAA . Sua obrigatoriedade depende do adquirente escolhido. Na maioria dos casos, esse campo é obrigatório. | = 4 N | COND. |
security_code | Código de segurança. Este campo pode não ser obrigatório se a empresa possuir um acordo no contrato firmado com as redes adquirentes, somente para o pagamento de determinados seguimentos. Importante: um pagamento com agendamento implica no armazenamento dos dados do cartão do comprador no ambiente do e-SiTef. Porém, por questões de segurança, o código de segurança não pode ser armazenado. Por isso, os pagamentos agendados sempre serão executados sem o envio do código de segurança. | < 5 N | COND. |
holder | Nome do portador do cartão. Obrigatório apenas para pagamentos com e-Rede, GetNet WS e VR (SmartNet). | < 30 AN | COND. |
token | HASH de um cartão armazenado no e-SiTef. Não é permitido enviar um número de cartão aberto (campo number ) e um cartão armazenado (campo token ) na mesma requisição. | = 88 AN | NÃO |
wallet_transaction_id | ID de uma transação de carteiras digitais. Por enquanto, essa funcionalidade está disponível apenas para as autorizadoras Visa Checkout, VEE (via CardSE-SiTef) e Google Pay. Não é permitido enviar um número de cartão aberto (campo number ), um cartão armazenado (campo token ) e um wallet_transaction_id na mesma requisição. | < 25 AN | NÃO |
initial_wallet_transaction_id | Informa se o Wallet ID (wallet_transaction_id ) está sendo utilizado pela primeira vez. Se for a primeira vez, enviar true , caso contrário enviar false . | < 5 T/F | NÃO |
external_authentication | Este elemento recebe campos de resultados de autenticação MPI. | ||
eci | Eletronic Commerce Indicator – indica o nível de segurança da transação com autenticação do dono do cartão | < 3 N | NÃO |
xid | Identificador da transação de autenticação do dono do cartão, feita em serviço externo ao e-SiTef | < 40 N | NÃO |
cavv | Cardholder Authentication Verification Value - Código que indica o resultado da autenticação do dono do cartão. | < 40 N | NÃO |
acquirer | Dados específicos necessários dependendo da adquirente/roteamento. | ||
financing_plan | Código de plano de financiamento. Necessário apenas para pagamentos parcelados com juros roteados pela Via Certa Financiadora via SiTef. | < 4 N | NÃO |
special_code | Código de uso geral da Conductor/Renner. | < 6 N | NÃO |
recurrency | Flag que define se o pagamento é ou não recorrente. Aceito para todos os roteamentos via SiTef, Cielo e-Commerce, Stone WS, Global Payments WS, SafraPay, e.Rede REST e GetnetWS. No caso de recorrência via Stone WS, é obrigatório o envio adicional de apenas um dos campos abaixo, is_first_recurring OU is_subsequent_recurring . | < 5 T/F | NÃO |
recurrency_tid | TID da primeira transação da recorrência. Identificador que diferencia a primeira recorrência das subsequentes. Só é utilizado quando for uma recorrência. Campo utilizado somente no roteamento e.Rede REST para as bandeiras Visa e Mastercard e roteamento GetnetWS. | < 18 AN | NÃO |
is_first_recurring | Flag usada apenas para roteamento StoneWS. Indica que a transação é a primeira de uma série de transações recorrentes. | < 5 T/F | COND. |
is_subsequent_recurring | Flag usada apenas para roteamento StoneWS. Indica que a transação é a segunda ou n-ésima de uma série de transações recorrentes, onde n > 2. | < 5 T/F | COND. |
product_code | Códido de produto. É obrigatório em roteamento via Marisa. | < 6 N | COND. |
terminal | Terminal SiTef que se deseja usar. Se não for enviado, o e-SiTef gerará um terminal aleatório. | = 14 N | Não |
company_code | Código de empresa SiTef que se deseja usar. Se não for enviado, o e-SiTef enviará o código de empresa cadastrado na loja. | = 8 N | Não |
acquirer.vouchers_filter[] | Filtro de Vouchers - Escolha dos vouchers que não serão aceitos. Opções de "Vouchers": 01 - Alimentação, 02 - Refeição 03 - Cultura, 04 - Combustível, 05 - Benefício. Exemplo: Não se quer aceitar Vouchers: Cultura, Combustível, Benefício. Deve enviar: "vouchers_filter": [ "03", "04", "05" ] | ||
acquirer.prefixes | Elemento para envio de prefixos do SiTef, como CICLOS, CPLANO e VLRADD. Caso o prefixo enviado não seja suportado pelo cartão enviado, o e-SiTef invalidará a transação, impedindo que se dê uma falsa impressão do uso de uma determinada funcionalidade. Exemplo: { "key" : "value" } -> { "CICLOS" : "01" } | ||
key | Nome do prefixo. | < 1024 AN | NÃO |
value | Valor do prefixo. | < 1024 AN | NÃO |
acquirer.submerchant_split[] | Consiste em um array para pagamentos split, exclusivos para roteamentos BIN e Sipag, ambos via SiTef. Permite a divisão de partes do valor total do pagamento entre outras empresas. O máximo de itens permitido neste array é de 5 itens. Cada item é composto pelos campos submechant_code e submerchant_amount . | ||
submerchant_code | código de estabelecimento BIN/Sipag | < 51 AN | NÃO |
submerchant_amount | valor de transação referente ao estabelecimento | < 12 N | NÃO |
ATENÇÃO: Os parâmetros
terminal
ecompany_code
deverão ser usados somente para roteamentos via SiTef e devem ser enviados simultaneamente.
É necessário também solicitar à equipe de atendimento do e-SiTef a permissão Permite envio de Empresa e Terminal Sitef via REST.
Parâmetros de resposta
Em caso de sucesso, o código de resposta HTTP será 201
. Qualquer outro código deve ser interpretado como erro. Na tabela abaixo está a descrição dos parâmetros de resposta do serviço de efetivação de pagamento:
Parâmetro | Descrição | Formato |
---|---|---|
code | Código de resposta do e-SiTef. Qualquer código diferente de 0 significa falha. Saiba mais. | < 4 N |
message | Mensagem de resposta do e-SiTef. | < 500 AN |
payment | ||
authorizer_code | Código de resposta do autorizador. | < 10 AN |
authorizer_message | Mensagem de resposta do autorizador. | < 500 AN |
status | Status da transação de pagamento no e-SiTef. Saiba mais. | = 3 AN |
nit | Identificador da transação de pagamento no e-SiTef. | = 64 AN |
order_id | Código de pedido enviado pela loja na criação da transação. | < 40 AN |
merchant_usn | Número sequencial único enviado pela loja na criação da transação. | < 12 N |
amount | Valor da compra especificado pela loja (em centavos) na criação da transação. | < 12 N |
sitef_usn | Número sequencial único da transação de pagamento no SiTef. | = 6 N |
esitef_usn | Número sequencial único da transação de pagamento no e-SiTef. | = 15 N |
customer_receipt | Cupom (via cliente). | < 4000 AN |
merchant_receipt | Cupom (via estabelecimento). | < 4000 AN |
authorizer_id | Código da autorizadora utilizada na transação. | < 4 N |
acquirer_id | Código do adquirente utilizado na transação. | < 4 N |
acquirer_name | Nome do adquirente utilizado na transação. | < 100 AN |
authorizer_date | Data de efetivação do pagamento retornada pelo autorizador no formato DD/MM/AAAA'T'HH:mm . Exemplo: 13/07/2017T16:03 | = 16 D |
authorization_number | Número de autorização. | < 6 AN |
host_usn | NSU da autorizadora. | < 15 AN |
tid | ID da transação no adquirente. Este campo só é retornado em transações com adquirentes externos ao SiTef. | < 40 AN |
eci | Eletronic Commerce Indicator (indicador do nível de segurança da transação do pagamento via Cielo e-Commerce). | < 3 AN |
payment_date | Data de efetivação do pagamento no e-SiTef no formato DD/MM/AAAA'T'HH:mm . Exemplo: 13/07/2017T16:03 | = 16 D |
issuer | Código da bandeira retornado pelo autorizador. | < 5 AN |
authorizer_merchant_id | Código de afiliação do lojista na autorizadora. | < 100 AN |
xid | Campo XID retornado em autenticações 3DS ou certos adquirentes. | < 40 AN |
authentication_url | URL de autenticação retornada em fluxos de pagamento com autenticação. Disponível apenas para Cielo e-Commerce. | < 56 AN |
balance | Saldo disponível após pagamentos com cartões tipo Gift. | < 12 N |
recurrency_tid | Id de transação (TID) da bandeira, referente à primeira transação da recorrência. Só é retornado quando for uma recorrência. Campo utilizado somente no roteamento e.Rede REST para as bandeiras Visa e Mastercard. | < 16 AN |
payment.analysis | ||
code | Código de resposta da operação de análise de fraude. | < 4 N |
message | Mensagem de resposta da operação de análise de fraude. | < 200 AN |
status | Status da transação de análise de fraude do e-SiTef. Este campo pode assumir os seguintes valores:NOV – Nova.EXP – Expirada.ACC – AceitaREJ – RejeitadaREV – Em revisãoINV – Inválida | = 3 AN |
schedule | ||
status | Status do agendamento no e-SiTef. Saiba mais. | = 3 AN |
sid | Identificador da transação de agendamento no e-SiTef. | = 64 AN |
schedule_usn | Número sequencial único do agendamento no e-SiTef. | = 15 N |
authorizer_id | Código da autorizadora a ser utilizada nos pagamentos agendados. | = 4 N |
amount | Valor dos pagamentos agendados especificado pela loja (em centavos) na criação da transação. | < 12 N |
order_id | Código de pedido enviado pela loja na criação da transação. | < 40 AN |
merchant_usn | Número sequencial único enviado pela loja na criação da transação. | < 12 N |
initial_date | Data de execução do primeiro pagamento agendado no formato DD/MM/AAAA . | = 10 D |
next_date | Data de execução do próximo pagamento agendado no formato DD/MM/AAAA . | = 10 D |
number_of_times | Número total de pagamentos agendados. | < 3 N |
installments | Número de parcelas a ser utilizado nos pagamentos agendados. | < 2 N |
installment_type | Tipo de financiamento a ser utilizado nos pagamentos agendados. | < 2 N |
soft_descriptor | Texto adicional que será apresentado junto ao nome do estabelecimento na fatura do cartão de crédito do comprador. | < 30 AN |
show_times_invoice | Para agendamentos por tempo finito, caso esse campo tenha valor true acrescenta ao final do campo soft_descriptor o número de execuções/total de execuções (exemplo: Assinatura 3/12). | < 5 T/F |
terminal_id | Código do terminal utilizada na transação | < 8 AN |