> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gohusky.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Problema com a entrega

> Reporta um problema ocorrido durante a entrega e a ação tomada para resolvê-lo.

Este endpoint permite informar problemas que ocorreram durante o processo de entrega, como problemas de pagamento, endereço incorreto, pedido danificado, entre outros.


## OpenAPI

````yaml POST /v1/logistics/handleProblem/{orderId}
openapi: 3.1.0
info:
  title: API Módulo Logístico
  description: >
    API para integração com o módulo logístico do OpenDelivery.


    Esta API utiliza autenticação OAuth 2.0 com o fluxo Client Credentials para
    obter tokens de acesso.

    Todos os endpoints protegidos requerem o token de acesso no header
    Authorization.
  version: 1.2.0
  contact:
    name: Suporte OpenDelivery
servers:
  - url: https://opendelivery.gohusky.net/logistic
    description: Servidor de produção
  - url: https://sandbox.opendelivery.gohusky.net/logistic
    description: Servidor Homologação
security: []
tags:
  - name: Autenticação
    description: Endpoints relacionados à autenticação e obtenção de tokens de acesso
  - name: Entregas
    description: Endpoints relacionados à gestão de entregas e pedidos logísticos
paths:
  /v1/logistics/handleProblem/{orderId}:
    post:
      tags:
        - Entregas
      summary: Reportar problema na entrega
      description: >-
        Reporta um problema ocorrido durante a entrega e a ação tomada para
        resolvê-lo.
      operationId: handleProblem
      parameters:
        - name: orderId
          in: path
          required: true
          description: Identificador único do pedido
          schema:
            type: string
          example: ORDER-12345
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HandleProblemRequest'
            examples:
              payment_problem:
                summary: Problema de pagamento
                value:
                  reason: PAYMENT_PROBLEMS
                  action: RETURN_TO_STORE
                  message: Cliente não possui o valor exato para pagamento
              address_unknown:
                summary: Endereço desconhecido
                value:
                  reason: CUSTOMER_ADDRESS_UNKNOWN
                  action: RETURN_TO_STORE
                  message: Endereço fornecido não foi encontrado
      responses:
        '200':
          description: Problema reportado com sucesso
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              examples:
                success:
                  summary: Problema reportado
                  value:
                    title: Evento recebido com sucesso, porém não foi implementado.
                    status: 200
        '400':
          description: Erro na requisição
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: Erro inesperado
                  value:
                    title: Erro inesperado.
                    status: 400
        '401':
          description: Não autorizado - Token inválido ou ausente
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - BearerAuth: []
components:
  schemas:
    HandleProblemRequest:
      type: object
      required:
        - reason
        - action
      properties:
        reason:
          type: string
          enum:
            - DELIVERYPERSON_OCCURRENCE
            - PAYMENT_PROBLEMS
            - WRONG_PRODUCT_OR_ITEM
            - ORDER_DELAYED
            - ORDER_DAMAGED_OR_VIOLATED
            - CUSTOMER_DID_NOT_PLACE_ORDER
            - CUSTOMER_ADDRESS_UNKNOWN
            - ORDER_MISSING_ITEMS
            - NOBODY_TO_RECEIVE
            - DELIVERYPERSON_WAITING_PAYMENT_FOR_ALREADY_PAID_ORDER
            - ORDER_DELIVERED_WITHOUT_PAYMENT
            - FRAUD_OR_THEFT
            - OTHER
          description: Motivo do problema
          example: PAYMENT_PROBLEMS
        action:
          type: string
          enum:
            - RETURN_TO_STORE
            - DELIVER_PRODUCT
            - CANCEL_DELIVERY
          description: Ação tomada para resolver o problema
          example: RETURN_TO_STORE
        message:
          type: string
          description: Mensagem adicional sobre o problema
          example: Cliente não possui o valor exato para pagamento
    SuccessResponse:
      type: object
      required:
        - title
        - status
      properties:
        title:
          type: string
          description: Mensagem de sucesso
          example: Evento recebido com sucesso
        status:
          type: integer
          description: Código de status HTTP
          example: 200
    ErrorResponse:
      type: object
      required:
        - title
        - status
      properties:
        title:
          type: string
          description: Mensagem de erro descritiva
          example: Não autorizado
        status:
          type: integer
          description: Código de status HTTP
          example: 401
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >
        Token de acesso OAuth 2.0 obtido através do endpoint `/oauth/token`.


        Use o formato: `Authorization: Bearer {access_token}`


        O token deve ser incluído em todas as requisições aos endpoints
        protegidos.

````