API transaction validation PT

From Wiki

Jump to: navigation, search

Deutsch | English | Español | Français | Italiano | Nederlands | Polski | Português (Brasil) | Svenska

Contents

Endpoint da API Validação de transação

Nota: Endpoint da API Validação de transação está disponível apenas para as ofertas das plataformas Awin Accelerate e Awin Advanced.

A API anunciantes da Awin suporta validações de transações, o que permite que você aprove, recuse e altere transações com a API da Awin.

A API de validação de transações apresenta um endpoint em lote, que permite a você agrupar várias solicitações de validação em um único envio.

O endpoint da API de validação de transação faz parte da infraestrutura geral da API da Awin. Como tal, o endpoint usa um token OAUTH2 baseado em usuário. Para obter mais informações sobre o OAUTH2, consulte a página Wiki Autenticação e Autorização da API.


A Awin visa processar suas solicitações de validação de transações dentro das restrições financeiras de tempo de sua empresa. Assim, aconselhamos que você envie solicitações até as 12h CET do dia 15 do mês e até as 12h CET do último dia do mês.

Validação de transações em lote

A validação das transações em lote permite a transferência e o subsequente processamento de uma lista de uma ou mais transações formatadas pelo JSON de uma só vez. Para permitir que você possa monitorar o progresso de seus pedidos de validação, a Awin fornece um jobID rastreável.


Como chamar a API

Método:
POST

URL:

https://api.awin.com/advertisers/<yourAdvertiserId>/transactions/batch


Corpo requerente:
O corpo requerente contém uma série de objetos de transação. Cada objeto representa a ação a ser executada, a transação, e se necessário, quaisquer parâmetros adicionais. As transações são identificadas ou por Id de transação, ou por referência de pedido, data da transação e fuso horário.

"transactionId": "484816099",


"orderRef": "123ABC555",
"transactionDate": "2017-02-20T22:04:00",
"timezone": "Europe/Paris"



Operações disponíveis

Aprovar

Aprovar com ID de transação:

{
"action": "approve",
"transaction":
    {
        "transactionId": 1234567
    }
}


Aprovar com Id de transação, data de transação, e fuso horário:

{
"action": "approve",
"transaction":
    {
        "orderRef": "123ABC555",
        "transactionDate": "2017-02-20T22:04:00",
        "timezone": "Europe/Paris"
    }
}


Rejeitar

Rejeitar com ID de transação:

{
"action": "decline",
"transaction":
    {
        "transactionId": 1234567,
        "declineReason": "order returned"
    }
}


Rejeitar com Id de transação, data de transação, e fuso horário:

{
"action": "decline",
"transaction":
    {
        "orderRef": "123ABC555",
        "transactionDate": "2017-02-20T22:04:00",
        "timezone": "Europe/Paris",
        "declineReason": "order returned"
    }
}



Alterar

Alterar com ID de transação:

{
"action": "amend",
"approve": false,
"transaction":
    {
 
        "transactionId": 1234567,
        "amendReason": "partial return",
        "currency": "EUR",
        "saleAmount": 55.96,
        "transactionParts": [
          {
            "amount": 44.76,
            "commissionGroupCode": "DEFAULT"
          },
          {
            "amount": 11.20,
            "commissionGroupCode": "EXISTING"
          }
        ]
    }
}


Alterar com Id de transação, data de transação, e fuso horário:

{
"action": "amend",
"approve": false,
"transaction":
    {
        "orderRef": "123ABC555",
        "transactionDate": "2017-02-20T22:04:00",
        "timezone": "Europe/Paris",
        "amendReason": "partial return",
        "currency": "EUR",
        "saleAmount": 55.96,
        "transactionParts": [
          {
            "amount": 44.76,
            "commissionGroupCode": "DEFAULT"
          },
          {
            "amount": 11.20,
            "commissionGroupCode": "EXISTING"
          }
        ]
    }
}


Nota:
Para assegurar a integridade das transações de emenda, a soma das partes da transação deve ser idêntica ao montante da venda, caso contrário, para equilibrar possíveis diferenças, o grupo de comissões "DEFAULT" é ajustado automaticamente.

Se você definir o parâmetro de aprovação como "verdadeiro", a API primeiro altera a transação, aprovando a mesma imediatamente depois.



Corpo de solicitação

Você deve combinar as ações do corpo de solicitação com o corpo de solicitação do lote final. Segue abaixo um exemplo de um lote de três transações; uma transação "aprovar", uma transação "alterar" e uma transação "recusar":

[
  {
    "action": "amend",
    "approve": false,
    "transaction": {
        "transactionId": "484816099",
        "amendReason": "partial return",
        "currency": "EUR",
        "saleAmount": 44.76,
        "transactionParts": [{
            "amount": 44.76,
            "commissionGroupCode": "DEFAULT"
        }]
    }
  },
 
  {
    "action": "decline",
    "transaction":
      {
          "transactionId": 1234567,
          "declineReason": "order returned"
      }
  },
 
  {
  "action": "approve",
  "transaction":
      {
          "orderRef": "123ABC555",
          "transactionDate": "2017-02-20T22:04:00",
          "timezone": "Europe/Paris"
      }
  }
 
]


Para obter os dados necessários, tais como Id de transação, usar o método GET para esse fim Transações GET (lista)..



Corpo de resposta

{
 "jobId": "5cbefc8646e0fb0001c4670e"
}

O jobId permite a você rever a situação de quaisquer tarefas que estejam em processo, por até 60 dias após a criação da tarefa.


Endpoint do status da tarefa

Status da Tarefa Geral

Método:
GET

URL:

https://api.awin.com/advertisers/<yourAdvertiserId>/transactions/jobs/<jobId>


Corpo de resposta

{
    "jobId": 5cbefc8646e0fb0001c4670e,
    "status": "DONE",
    "transactionCount": 100,
    "allTransactions": null,
    "errorCount": 0,
    "failedTransactions": null,
    "creationDate": "2017-02-20T22:04:00",
    "completionDate": "2017-02-20T22:24:00"
}

Se você não consultar uma lista de transações detalhada ou uma lista de erros para uma tarefa, os objetos allTransactions e failedTransactions por padrão serão "null". Para mais informações, consulte a seção Lista Detalhada de Erros nesta página.


Lista detalhada de erros

Para fornecer uma lista adicional das transações que geraram um erro durante a validação, acrescente o parâmetro "output=errors" ao URL. A API lista as transações individuais que estão dentro do objeto failedTransactions. Para gerar uma lista completa de todas as transações dentro do objeto allTransactions, acrescente o parâmetro "output=all" ao URL.

Método:
GET

URL:

https://api.awin.com/advertisers/<yourAdvertiserId>/transactions/jobs/<jobId>?output=errors
 
https://api.awin.com/advertisers/<yourAdvertiserId>/transactions/jobs/<jobId>?output=all


Corpo de resposta

{
    "jobId":"5cb8290460b59a6e7ae22d0b",
    "status":"DONE",
    "transactions":2,
    "allTransactions":null, 
    "errors":2,
    "failedTransactions":
    [
      {
         "transactionId":1234567,
         "orderRef":null,
         "transactionDate":null,
         "timezone":"",
         "code":"[404 NOT_FOUND]",
         "description":null
      },
      {
         "transactionId":1234568,
         "orderRef":null,
         "transactionDate":null,
         "timezone":"",
         "code":"[404 NOT_FOUND]",
         "description":null
      }
    ],
    "creationDate":"2019-04-18T09:49:35.558",
    "completionDate":"2019-04-18T09:49:36.513"
}

Lista de tarefas

Para gerar uma lista de todos as suas tarefas dos últimos 60 dias, acesse o endpoint da tarefa sem fornecer uma ID de tarefa.

Método:
GET

URL:

https://api.awin.com/advertisers/<yourAdvertiserId>/transactions/jobs


Códigos de resposta comuns

A tabela a seguir contém uma lista de possíveis razões de resposta para códigos de resposta comuns que podem aparecer quando se usa a AIP:

Código de resposta Mensagem de resposta Possível Motivo Resposta
200 OK A transação foi validada conforme desejado.
304 NOT_MODIFIED A transação já estava no estado da comissão desejada. Por ex., tentativa de recusar uma transação recusada.
404 NOT_FOUND A Id de transação ou (referência de pedido, data da transação, e fuso horário) não correspondia a uma transação.
422 UNPROCESSABLE_ENTITY Incapaz de completar o pedido devido ao estado atual da transação. Por ex., tentando aprovar uma transação recusada.

Privacy

Due to new European legislation regarding how websites store information about you, AWIN is updating its privacy policy. You can see the new version of our policy here. If you would like to see the information we capture on this website, please click here for further details. In order to accept cookies on this site please click the 'I ACCEPT' button