Quando uma transação é criada ela passa por uma série de operações, que são procedimentos internos ao fluxo de uma transação. Entre tais operações existem:
- Authorize: Feito para todo e qualquer tipo de transação. É usado para autorizar a quantia pedida junto com o Pagar.me
- Analyze: Operação feita junto ao antifraude, com o intuito de analisar os dados passados.
- Issue: Apenas para boletos, tem o intuito de gerar o código de barras e url do boleto
- Capture: Usada para cartões de crédito, é a operação que confirma a cobrança da quantia no cartão do portador junto ao banco emissor.
- Conciliate: É a operação que identifica pagamento de boletos e chargebacks para transações de cartão de crédito junto ao banco emissor.
- Refund: Operação de estorno, válida para qualquer tipo de transação.
Ao fazer um GET na rota /transactions/:id/operations
, como na seção anterior, você irá receber um objeto do tipo:
Exemplo de retorno
[
{
"id": "go_cj25j5fbw07p7p03slfyxhxh7",
"date_created": "2017-05-01T02:52:59.228Z",
"date_updated": "2017-05-01T02:52:59.520Z",
"status": "success",
"fail_reason": null,
"type": "capture",
"rollbacked": false,
"model": "transaction",
"model_id": "1489647",
"group_id": "gog_cj25j5fbw07p8p03sxjid6ybt",
"next_group_id": null,
"request_id": "gr_cj25j5fbi07p6p03su8bisxfe",
"started_at": 1493607179383,
"ended_at": 1493607179520,
"processor": "pagarme",
"processor_response_code": null,
"metadata": {
"environment": {
"captured_amount": 150000
}
}
},
{
"id": "go_cj25j5fc407p9p03sfq1xa2y0",
"date_created": "2017-05-01T02:52:59.236Z",
"date_updated": "2017-05-01T02:52:59.375Z",
"status": "success",
"fail_reason": null,
"type": "analyze",
"rollbacked": false,
"model": "transaction",
"model_id": "1489647",
"group_id": "gog_cj25j5fc407pap03s5aa8nv96",
"next_group_id": "gog_cj25j5fbw07p8p03sxjid6ybt",
"request_id": "gr_cj25j5fbi07p6p03su8bisxfe",
"started_at": 1493607179326,
"ended_at": 1493607179375,
"processor": "antifraud",
"processor_response_code": null,
"metadata": {
"environment": {
},
"kind": "rule"
}
},
{
"id": "go_cj25j5ff107pgp03s7gjghx3c",
"date_created": "2017-05-01T02:52:59.341Z",
"date_updated": "2017-05-01T02:52:59.368Z",
"status": "failed",
"fail_reason": "environment_error",
"type": "analyze",
"rollbacked": false,
"model": "transaction",
"model_id": "1489647",
"group_id": "gog_cj25j5fc407pap03s5aa8nv96",
"next_group_id": "gog_cj25j5fbw07p8p03sxjid6ybt",
"request_id": "gr_cj25j5fbi07p6p03su8bisxfe",
"started_at": 1493607179339,
"ended_at": 1493607179368,
"processor": "development",
"processor_response_code": null,
"metadata": {
"environment": {
},
"kind": "analyze",
"antifraud_analysis_id": 297636
}
},
{
"id": "go_cj25j5fca07pbp03s0hnvc21q",
"date_created": "2017-05-01T02:52:59.242Z",
"date_updated": "2017-05-01T02:52:59.320Z",
"status": "success",
"fail_reason": null,
"type": "authorize",
"rollbacked": false,
"model": "transaction",
"model_id": "1489647",
"group_id": "gog_cj25j5fca07pcp03sn5jqj0lh",
"next_group_id": "gog_cj25j5fc407pap03s5aa8nv96",
"request_id": "gr_cj25j5fbi07p6p03su8bisxfe",
"started_at": 1493607179261,
"ended_at": 1493607179320,
"processor": "pagarme",
"processor_response_code": "0000",
"metadata": {
"environment": {
"response_code": "0000",
"authorization_code": "416762",
"authorized_amount": 150000,
"tid": "1489647",
"nsu": "1489647"
}
}
}
]
Significado de cada propriedade
Propriedade | Descrição |
---|---|
id | ID da operação realizada |
date_created | Data(ISODate) em que a operação foi criada |
date_updated | Data(ISODate) em que a operação foi atualizada. |
status | Estado da operação. Valores possíveis: waiting , processing , deferred , failed , success , dropped . |
fail_reason | Em caso de falha, essa propriedade mostra a sua respectiva causa. |
type | Cada operação tem uma responsabilidade no fluxo de uma transação, tal característica é definida por seu tipo. Valores possíveis: authorize , analyze , capture , issue , conciliate , refund . |
rollbacked | Define se a operação foi revertida ou não. |
model | Define a qual modelo está operação pertence. Valores possíveis: transaction , subscription , card . |
model_id | ID do respectivo modelo da operação. |
group_id | Operações são executadas em grupo, e essa propriedade define a qual pertence a respectiva operação. |
next_group_id | Operações seguem um fluxo, e você pode identificar qual foi o próximo grupo a ser executado por meio dessa propriedade. Ex: O próximo group de uma operação que envolve uma transação por boleto, pode ser a operação de issue , que pega um grupo de transações e gera as informações necessárias para seus respectivos boletos. |
request_id | A propriedade define à qual request a respectiva operação tem origem. |
started_at | Data(ISODate) em que a operação foi criada |
ended_at | Data(ISODate) em que a operação foi finalizada. |
processor | Define qual entidade no fluxo da operação foi responsável pelo procedimento. |
processor_response_code | Corresponde ao código de retorno da entidade responsável por executar a operação. |
metadata[environment][nsu] | Para a operação de authorize , o Pagar.me irá retornar o identificador NSU para transação. |
metadata[environment][tid] | Para a operação de authorize , o Pagar.me irá retornar o identificador TID para transação. |
metadata[environment][authorized_amount] | Para a operação de authorize , o Pagar.me irá confirmar o valor autorizado através desta propriedade. |
metadata[environment][authorization_code] | Para a operação de authorize , o Pagar.me irá retornar um código correspondente ao processo de autorização junto ao banco emissor. |
metadata[environment][response_code] | Corresponde ao código Pagar.me em relação ao status da operação. |
metadata[kind] | Para operação de analyze , esta propriedade define o que está sendo executado em relação ao processo. Para kind = rule , a regra de antifraude em sua company está sendo executada, e para kind = analyze , o resultado da análise está sendo processado. |
metadata[antifraud_analysis_id] | ID da análise de antifraude executada. |
metadata[environment][captured_amount] | Para operação de capture , representa o valor capturado junto ao banco emissor, para cartões de crédito. OBS: Boletos não tem operação de capture , apenas issue , em que o valor de captura é confirmado. |
metadata[environment][boleto_id] | ID do boleto, gerado da operação de issue . |
metadata[environment][boleto_url] | URL do boleto, gerada da operação de issue . |
metadata[environment][boleto_barcode] | Código de barras do boleto, gerado da operação de issue . |
metadata[conciliation][type] | Está propriedade representa o tipo de conciliação feita junto ao banco emissor para esta transação. Valores possíveis: boleto_paid e chargeback |