Pedidos regulamentados

Como trabalhar com pedidos regulamentados usando a API Orders.

Como trabalhar com pedidos regulamentados usando a API Orders.

O que são pedidos regulamentados?

A Amazon classifica alguns produtos como regulamentados para cumprir as regulamentações locais e oferecer suporte ao fornecimento de uma seleção mais ampla de itens regulamentados aos clientes. Como os pedidos que contêm itens regulamentados devem ser validados por profissionais qualificados antes do envio, os clientes são obrigados a fornecer informações adicionais ou fazer upload de prescrições ao concluir a compra. Exemplos de itens regulamentados incluem farmácia para animais de estimação, lentes de contato para os olhos e óculos graduados.

As operações getOrderRegulatedInfo e updateVerificationStatus na API de pedidos podem ajudá-lo a integrar programaticamente esse processo de validação em seus aplicativos.

Terminologia

  • Produto regulamentado. Um produto vendido na Amazon que exige o fornecimento de informações adicionais no momento da compra para cumprir os regulamentos locais.

  • Informações regulamentadas. Informações adicionais inseridas pelo cliente ao adquirir um produto regulamentado.

  • Pedido regulamentado. Um pedido de cliente contendo um produto regulamentado e informações regulamentadas associadas.

  • Token de dados restritos (RDT). Um token de acesso de curta duração que autoriza chamadas para operações restritas. Um RDT permanece válido por uma hora.

  • Status de verificação. O status de um pedido regulamentado, indicando se foi aprovado ou rejeitado por um profissional qualificado.

Tutorial: Descubra se um pedido contém informações regulamentadas

Este tutorial mostra como determinar se um pedido é um pedido regulamentado. Uma vez identificadas, mais informações regulamentadas e status sobre o pedido podem ser recuperados (consulte Tutorial: Como recuperar as informações regulamentadas de um pedido).

Pré-requisitos

Para concluir este tutorial, você precisará de:

  • Autorização do vendedor para quem você está fazendo chamadas. Consulte o Guia do desenvolvedor da API do parceiro de vendas para obter mais informações.

  • Aprovação para a função de entrega direta ao consumidor (restrito) em seu perfil de desenvolvedor.

  • A função de entrega direta ao consumidor (restrito) selecionada na página de registro do aplicativo para seu aplicativo.

Etapa 1. Descubra se um pedido contém informações regulamentadas

Chame a operação getOrder, passando o seguinte parâmetro de consulta:

ParâmetroDescriçãoRequerido
orderIdUm identificador de pedido definido pela Amazon, no formato 3-7-7. Tipo: stringSim

Exemplo de solicitação:

GET https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/

Resposta

Uma resposta bem-sucedida inclui o objeto de carga útil, que contém as informações de um pedido. Está incluída uma propriedade booleana HasRegulatedItems. Quando verdadeiro, o pedido tem itens regulamentados que podem exigir etapas de aprovação adicionais antes de serem atendidos.

Consulte Pedido na referência da API para obter detalhes sobre os possíveis objetos e propriedades em um pedido.

Exemplo de resposta (para um pedido que contém informações regulamentadas):

{
  "payload": {
    "BuyerInfo": {},
    "AmazonOrderId": "026-1520163-6049104",
    "EarliestShipDate": "2022-03-10T00:00:00Z",
    "SalesChannel": "Amazon.co.uk",
    "AutomatedShippingSettings": {
      "HasAutomatedShippingSettings": false
    },
    "OrderStatus": "Canceled",
    "NumberOfItemsShipped": 0,
    "OrderType": "StandardOrder",
    "IsPremiumOrder": false,
    "IsPrime": false,
    "FulfillmentChannel": "MFN",
    "NumberOfItemsUnshipped": 0,
    "HasRegulatedItems": true,
    "IsReplacementOrder": false,
    "IsSoldByAB": false,
    "LatestShipDate": "2022-03-10T23:59:59Z",
    "ShipServiceLevel": "Std UK Dom_1",
    "IsISPU": false,
    "MarketplaceId": "A1F83G8C2ARO7P",
    "PurchaseDate": "2022-03-09T22:03:02Z",
    "IsAccessPointOrder": false,
    "IsBusinessOrder": false,
    "OrderTotal": {
      "CurrencyCode": "GBP",
      "Amount": "20.00"
    },
    "PaymentMethodDetails": [
      "Standard"
    ],
    "IsGlobalExpressEnabled": false,
    "LastUpdateDate": "2022-03-14T22:05:14Z",
    "ShipmentServiceLevelCategory": "Standard"
  }
}

Exemplo de resposta (para um pedido que NÃO contém informações regulamentadas):

{
  "payload": {
    "BuyerInfo": {},
    "AmazonOrderId": "026-1520163-6049104",
    "EarliestShipDate": "2022-03-10T00:00:00Z",
    "SalesChannel": "Amazon.co.uk",
    "AutomatedShippingSettings": {
      "HasAutomatedShippingSettings": false
    },
    "OrderStatus": "Canceled",
    "NumberOfItemsShipped": 0,
    "OrderType": "StandardOrder",
    "IsPremiumOrder": false,
    "IsPrime": false,
    "FulfillmentChannel": "MFN",
    "NumberOfItemsUnshipped": 0,
    "HasRegulatedItems": false,
    "IsReplacementOrder": false,
    "IsSoldByAB": false,
    "LatestShipDate": "2022-03-10T23:59:59Z",
    "ShipServiceLevel": "Std UK Dom_1",
    "IsISPU": false,
    "MarketplaceId": "A1F83G8C2ARO7P",
    "PurchaseDate": "2022-03-09T22:03:02Z",
    "IsAccessPointOrder": false,
    "IsBusinessOrder": false,
    "OrderTotal": {
      "CurrencyCode": "GBP",
      "Amount": "20.00"
    },
    "PaymentMethodDetails": [
      "Standard"
    ],
    "IsGlobalExpressEnabled": false,
    "LastUpdateDate": "2022-03-14T22:05:14Z",
    "ShipmentServiceLevelCategory": "Standard"
  }
}

Tutorial: Como reconhecer quais pedidos em uma lista contêm informações regulamentadas

Este tutorial mostra como reconhecer quais pedidos em uma lista contêm informações regulamentadas. Uma vez identificadas, mais informações regulamentadas e status sobre cada pedido podem ser recuperados (consulte Tutorial: Como recuperar as informações regulamentadas de um pedido).

Pré-requisitos

Para concluir este tutorial, você precisará de:

  • Autorização do vendedor para quem você está fazendo chamadas. Consulte o Guia do desenvolvedor da API do parceiro de vendas para obter mais informações.

  • Aprovação para a função de entrega direta ao consumidor (restrito) em seu perfil de desenvolvedor.

  • A função de entrega direta ao consumidor (restrito) selecionada na página de registro do aplicativo para seu aplicativo.

Etapa 1. Reconhecer quais pedidos de uma lista contêm informações regulamentadas

Chame a operação getOrders, passando os parâmetros que você deseja usar para filtrar o resultado.

Exemplo de solicitação:

GET https://sellingpartnerapi-eu.amazon.com/orders/v0/orders?MarketplaceIds=A1F83G8C2ARO7P&CreatedAfter=1985-04-12T23:20:50.52Z

Resposta

Uma resposta bem-sucedida inclui um objeto de carga útil, que contém uma matriz Orders de um ou mais pedidos e, opcionalmente, propriedades adicionais (consulte OrderList para obter informações sobre as propriedades adicionais). Cada pedido na matriz inclui uma propriedade booleana HasRegulatedItems. Quando verdadeiro, o pedido contém itens regulamentados que podem exigir etapas de aprovação adicionais antes de serem atendidos.

Consulte Pedido na referência da API para obter detalhes sobre os possíveis objetos e propriedades em um pedido.

Exemplo de resposta:

Neste exemplo, o primeiro pedido na matriz Orders possui itens regulamentados e o segundo pedido na matriz Orders não possui itens regulamentados.

{
  "payload": {
    "Orders": [
      {
        "BuyerInfo": {},
        "AmazonOrderId": "026-1520163-6049104",
        "EarliestShipDate": "2022-03-10T00:00:00Z",
        "SalesChannel": "Amazon.co.uk",
        "AutomatedShippingSettings": {
          "HasAutomatedShippingSettings": false
        },
        "OrderStatus": "Canceled",
        "NumberOfItemsShipped": 0,
        "OrderType": "StandardOrder",
        "IsPremiumOrder": false,
        "IsPrime": false,
        "FulfillmentChannel": "MFN",
        "NumberOfItemsUnshipped": 0,
        "HasRegulatedItems": true,
        "IsReplacementOrder": false,
        "IsSoldByAB": false,
        "LatestShipDate": "2022-03-10T23:59:59Z",
        "ShipServiceLevel": "Std UK Dom_1",
        "IsISPU": false,
        "MarketplaceId": "A1F83G8C2ARO7P",
        "PurchaseDate": "2022-03-09T22:03:02Z",
        "IsAccessPointOrder": false,
        "IsBusinessOrder": false,
        "OrderTotal": {
          "CurrencyCode": "GBP",
          "Amount": "20.00"
        },
        "PaymentMethodDetails": [
          "Standard"
        ],
        "IsGlobalExpressEnabled": false,
        "LastUpdateDate": "2022-03-14T22:05:14Z",
        "ShipmentServiceLevelCategory": "Standard"
      }, 
      {
        "BuyerInfo": {},
        "AmazonOrderId": "203-1028129-8694751",
        "EarliestShipDate": "2022-03-17T00:00:00Z",
        "SalesChannel": "Amazon.co.uk",
        "AutomatedShippingSettings": {
          "HasAutomatedShippingSettings": false
        },
        "OrderStatus": "Canceled",
        "NumberOfItemsShipped": 0,
        "OrderType": "StandardOrder",
        "IsPremiumOrder": false,
        "IsPrime": false,
        "FulfillmentChannel": "MFN",
        "NumberOfItemsUnshipped": 0,
        "HasRegulatedItems": false,
        "IsReplacementOrder": "false",
        "IsSoldByAB": false,
        "LatestShipDate": "2022-03-17T23:59:59Z",
        "ShipServiceLevel": "Std UK Dom_1",
        "IsISPU": false,
        "MarketplaceId": "A1F83G8C2ARO7P",
        "PurchaseDate": "2022-03-15T16:45:35Z",
        "IsAccessPointOrder": false,
        "IsBusinessOrder": false,
        "OrderTotal": {
          "CurrencyCode": "GBP",
          "Amount": "20.00"
        },
        "PaymentMethodDetails": [
          "Standard"
        ],
        "IsGlobalExpressEnabled": false,
        "LastUpdateDate": "2022-03-29T01:55:37Z",
        "ShipmentServiceLevelCategory": "Standard"
      }
    ],
    "CreatedBefore": "2022-04-22T07:23:40Z"
  }
}

Tutorial: Como recuperar as informações regulamentadas de um pedido

Este tutorial mostra como recuperar as informações regulamentadas associadas a um pedido.

Pré-requisitos

Para concluir este tutorial, você precisará de:

  • Autorização do vendedor para quem você está fazendo chamadas. Consulte o [Guia do desenvolvedor da API do parceiro de vendas]](/docs/configuracoes-autorizar-aplicacao-sp-api) para obter mais informações.

  • Aprovação para a função de entrega direta ao consumidor (restrito) em seu perfil de desenvolvedor.

  • A função de entrega direta ao consumidor (restrito) selecionada na página de registro do aplicativo para seu aplicativo.

Etapa 1. Recupere o Token de Dados Restritos necessário para acessar as informações regulamentadas

Você precisará de um RDT para recuperar as informações regulamentadas de um pedido na etapa 2 deste tutorial. Esta etapa mostra como recuperar o RDT necessário para a Etapa 2.

ParâmetroDescriçãoRequerido
restrictedResourcesUma lista de recursos restritos.
Tipo: array
Sim

Exemplo de solicitação:

POST https://sellingpartnerapi-eu.amazon.com/tokens/2021-03-01/restrictedDataToken
{
  "restrictedResources": [
    {
      "method": "GET",
      "path": "/orders/v0/orders/{orderId}/regulatedInfo"
    }
  ]
}

Resposta

Consulte CreateRestrictedDataTokenResponse na referência da API Tokens para obter detalhes adicionais sobre as propriedades de resposta.

Exemplo de resposta:

{
  "expiresIn": 3600,
  "restrictedDataToken": "Atz..."
}
  • Salve o valor restritoDataToken (o RDT) para usar na Etapa 2. Recupere as informações regulamentadas associadas a um pedido.

Etapa 2. Recupere as informações regulamentadas associadas a um pedido

Chame a operação getOrderRegulatedInfo, passando o orderId para o pedido que possui as informações regulamentadas que você deseja recuperar. Certifique-se de incluir o RDT da etapa anterior no cabeçalho x-amz-access-token de sua chamada para getOrderRegulatedInfo.

Path parameters

ParâmetroDescriçãoRequerido
orderIdUm identificador de pedido definido pela Amazon, no formato 3-7-7.
Tipo: string
Sim

Exemplo de solicitação:

GET https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/regulatedInfo

Resposta

Uma resposta bem-sucedida inclui informações sobre o pedido, se um rótulo de dosagem é necessário, o status de verificação do pedido e as informações regulamentadas solicitadas, dependendo do status do pedido. Para obter informações detalhadas sobre os objetos e propriedades que podem ser incluídos em uma resposta bem-sucedida, consulte OrderRegulatedInfo na referência da API.

Exemplo de resposta (pedido pendente):

{
  "payload": {
    "AmazonOrderId": "205-1725759-9209952",
    "RequiresDosageLabel": true,
    "RegulatedInformation": {
      "Fields": [
        {
          "FieldLabel": "Species",
          "FieldId": "petsSpecies",
          "FieldValue": "Cat",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Pet name",
          "FieldId": "petsName",
          "FieldValue": "Snowy",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Birth date",
          "FieldId": "petsDateOfBirth",
          "FieldValue": "15 August 2021",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Weight",
          "FieldId": "petsWeight",
          "FieldValue": "1 kg",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Gender",
          "FieldId": "petsGender",
          "FieldValue": "Female",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Is your pet lactating?",
          "FieldId": "petsLactating",
          "FieldValue": "No",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Is your pet pregnant?",
          "FieldId": "petsPregnant",
          "FieldValue": "Yes",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Pregnancy stage",
          "FieldId": "petsPregnancyStage",
          "FieldValue": "Second trimester",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Does your pet have allergies?",
          "FieldId": "petsAllergies",
          "FieldValue": "Yes",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Is your pet neutered?",
          "FieldId": "petsNeutered",
          "FieldValue": "No",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Is your pet on any other medication?",
          "FieldId": "petsAdditionalMedicationRadio",
          "FieldValue": "No",
          "FieldType": "Text"
        }, {
          "FieldLabel": "snowy prescription 1",
          "FieldId": "snowy prescription 1",
          "FieldValue": "https://...",
          "FieldType": "FileAttachment"
        }
      ]
    },
    "RegulatedOrderVerificationStatus": {
      "Status": "Pending",
      "RequiresMerchantAction": true,
      "ValidRejectionReasons": [
        {
          "RejectionReasonId": "shield_pom_v_reject_pregnant_only",
          "RejectionReasonDescription": "Not suitable for pregnant pet"
        }, {
          "RejectionReasonId": "shield_pom_v_reject_product",
          "RejectionReasonDescription": "This product is not suitable"
        }, {
          "RejectionReasonId": "shield_pom_v_reject_reject_age",
          "RejectionReasonDescription": "Your pet is too young for this medicine."
        }
      ]
    }
  }
}

Exemplo de resposta (pedido aprovado):

{
  "payload": {
    "AmazonOrderId": "205-1725759-9209952",
    "RequiresDosageLabel": true,
    "RegulatedInformation": {
      "Fields": [
        {
          "FieldLabel": "Species",
          "FieldId": "petsSpecies",
          "FieldValue": "Cat",
          "FieldType": "Text"
        }
      ]
    },
    "RegulatedOrderVerificationStatus": {
      "Status": "Approved",
      "RequiresMerchantAction": false,
      "ExternalReviewerId": "externalId",
      "ReviewDate": "1970-01-19T03:59:27Z",
      "ValidRejectionReasons": []
    }
  }
}

Exemplo de resposta (pedido rejeitado):

{
  "payload": {
    "AmazonOrderId": "205-1725759-9209952",
    "RequiresDosageLabel": true,
    "RegulatedInformation": {
      "Fields": [
        {
          "FieldLabel": "Species",
          "FieldId": "petsSpecies",
          "FieldValue": "Cat",
          "FieldType": "Text"
        }
      ]
    },
    "RegulatedOrderVerificationStatus": {
      "Status": "Rejected",
      "RequiresMerchantAction": false,
      "ExternalReviewerId": "externalId",
      "ReviewDate": "1970-01-19T03:59:27Z",
      "RejectionReason": {
        "RejectionReasonId": "shield_pom_vps_reject_species",
        "RejectionReasonDescription": "This medicine is not suitable for this pet’s species"
      }
      "ValidRejectionReasons": []
    }
  }
}

Exemplo de resposta (pedido cancelado)

{
  "payload": {
    "AmazonOrderId": "202-5156092-2672318",
    "RequiresDosageLabel": false,
    "RegulatedInformation": {
      "Fields": [
        {
          "FieldLabel": "Species",
          "FieldId": "petsSpecies",
          "FieldValue": "Dog",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Birth date",
          "FieldId": "petsDateOfBirth",
          "FieldValue": "8 March 2019",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Weight",
          "FieldId": "petsWeight",
          "FieldValue": "44 kg",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Gender",
          "FieldId": "petsGender",
          "FieldValue": "Male",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Does your pet have allergies?",
          "FieldId": "petsAllergies",
          "FieldValue": "No",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Is your pet neutered?",
          "FieldId": "petsNeutered",
          "FieldValue": "No",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Is your pet on any other medication?",
          "FieldId": "petsAdditionalMedicationRadio",
          "FieldValue": "No",
          "FieldType": "Text"
        }
      ]
    },
    "RegulatedOrderVerificationStatus": {
      "Status": "Cancelled",
      "RequiresMerchantAction": false,
      "ValidRejectionReasons": []
    }
  }
}

Exemplo de resposta (pedido expirado)

{
  "payload": {
    "AmazonOrderId": "205-2554781-3212354",
    "RequiresDosageLabel": true,
    "RegulatedInformation": {
      "Fields": [
        {
          "FieldLabel": "Species",
          "FieldId": "petsSpecies",
          "FieldValue": "Cat",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Birth date",
          "FieldId": "petsDateOfBirth",
          "FieldValue": "25 January 2020",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Weight",
          "FieldId": "petsWeight",
          "FieldValue": "2 kg",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Gender",
          "FieldId": "petsGender",
          "FieldValue": "Male",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Does your pet have allergies?",
          "FieldId": "petsAllergies",
          "FieldValue": "No",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Is your pet neutered?",
          "FieldId": "petsNeutered",
          "FieldValue": "No",
          "FieldType": "Text"
        }, {
          "FieldLabel": "Is your pet on any other medication?",
          "FieldId": "petsAdditionalMedicationRadio",
          "FieldValue": "No",
          "FieldType": "Text"
        }, {
          "FieldLabel": "JPEG 2 prescription 1",
          "FieldId": "JPEG 2 prescription 1",
          "FieldValue": "https://...",
          "FieldType": "FileAttachment"
        }
      ]
    },
    "RegulatedOrderVerificationStatus": {
      "Status": "Expired",
      "RequiresMerchantAction": false,
      "ValidRejectionReasons": []
    }
  }
}

Tutorial: Como aprovar ou rejeitar um pedido regulamentado

Este tutorial mostra como aprovar ou rejeitar um pedido que contém informações regulamentadas.

Pré-requisitos

Para concluir este tutorial, você precisará de:

  • Autorização do vendedor para quem você está fazendo chamadas. Consulte o [Guia do desenvolvedor da API do parceiro de vendas]](/docs/configuracoes-autorizar-aplicacao-sp-api) para obter mais informações.

  • Aprovação para a função de entrega direta ao consumidor (restrito) em seu perfil de desenvolvedor.

  • A função de entrega direta ao consumidor (restrito) selecionada na página de registro do aplicativo para seu aplicativo.

Etapa 1. Aprovar ou rejeitar um pedido regulamentado

Chame a operação updateVerificationStatus, passando os seguintes parâmetros:

Path parameters

ParâmetroDescriçãoRequerido
orderIdUm identificador de pedido definido pela Amazon, no formato 3-7-7.
Tipo: string
Sim

Body parameters

ParâmetroDescriçãoRequerido
regulatedOrderVerificationStatusAs propriedades de status de verificação atualizadas.
Tipo: UpdateVerificationStatusRequestBody
Sim

Exemplo de solicitação (aprovado):

PATCH https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/regulatedInfo
{
  "regulatedOrderVerificationStatus": {
    "status": "Approved",
    "externalReviewerId": "reviewer1234"
  }
}

Exemplo de solicitação (rejeitado):

PATCH https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/regulatedInfo
{
  "regulatedOrderVerificationStatus": {
    "status": "Rejected",
    "externalReviewerId": "reviewer1234",
    "rejectionReasonId": "shield_pom_vps_reject_incorrect_weight"
  }
}

Resposta

Nota: A resposta está vazia para esta operação