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

# Registrar un crédito de devolución entrante MED

> Contabiliza el CRÉDITO de devolución del lado receptor en el libro mayor local de Midaz cuando el SPI liquida una devolucao MED. Contabiliza un asiento de partida doble COMMITTED balanceado (crédito de compensación, débito-espejo del beneficiario) y acuña el idCreditoSgct. El header Authorization (Bearer) es obligatorio en este ingreso financiero: un token ausente/inválido es un 401 codificado. Un crédito reentregado para el mismo endToEndIdDevolucao refleja el idCreditoSgct previo sin una segunda contabilización (idempotente).



## OpenAPI

````yaml es/openapi/v3-current/pix.yaml POST /sgct/jdpi/spi/api/v2/credito/devolucao
openapi: 3.0.3
info:
  title: Plugin BR Pix Directo - API completa
  description: >
    API completa para el sistema de pagos instantáneos Pix de Brasil,

    que incluye operaciones del diccionario de claves Pix,
    generación/decodificación

    de códigos QR, transacciones y límites transaccionales.
  version: 1.0.0
servers:
  - url: https://plugin-pix-direct.api.lerian.net
  - url: https://plugin-pix-direct-qrcode.api.lerian.net
security:
  - bearerAuth: []
paths:
  /sgct/jdpi/spi/api/v2/credito/devolucao:
    post:
      tags:
        - MED API
      summary: Registrar un crédito de devolución entrante MED
      description: >-
        Contabiliza el CRÉDITO de devolución del lado receptor en el libro mayor
        local de Midaz cuando el SPI liquida una devolucao MED. Contabiliza un
        asiento de partida doble COMMITTED balanceado (crédito de compensación,
        débito-espejo del beneficiario) y acuña el idCreditoSgct. El header
        Authorization (Bearer) es obligatorio en este ingreso financiero: un
        token ausente/inválido es un 401 codificado. Un crédito reentregado para
        el mismo endToEndIdDevolucao refleja el idCreditoSgct previo sin una
        segunda contabilización (idempotente).
      parameters:
        - description: >-
            Bearer access token (the financial-ingress gate; the handler fails
            closed with Pix-0082 when absent).
          in: header
          name: Authorization
          schema:
            description: >-
              Token de acceso Bearer (la puerta de ingreso financiero; el
              handler falla en modo cerrado con Pix-0082 cuando está ausente).
            type: string
        - description: >-
            Idempotency key (= the endToEndIdDevolucao). Mandatory per the MED
            SPI credit contract.
          in: header
          name: Chave-Idempotencia
          required: true
          schema:
            description: >-
              Clave de idempotencia (= el endToEndIdDevolucao). Obligatorio
              según el contrato de crédito MED del SPI.
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InboundCreditBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InboundCreditView'
          description: OK
        default:
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Error
components:
  schemas:
    InboundCreditBody:
      additionalProperties: false
      properties:
        codigoDevolucao:
          description: Código de motivo de la devolución (BE08/FR01/MD06/SL02).
          type: string
        dtContabil:
          description: Fecha contable del SPI.
          type: string
        dtHrLiquidacao:
          description: Instante de liquidación del SPI.
          type: string
        dtHrOp:
          description: Instante original informado por el recebedor (UTC).
          type: string
        endToEndIdDevolucao:
          description: >-
            EndToEndId de la devolucao (pacs.004; la clave natural / ancla de
            idempotencia, 32 caracteres).
          type: string
        endToEndIdOriginal:
          description: EndToEndId del pago contestado original (32 caracteres).
          type: string
        idReqJdPi:
          description: El id de solicitud del upstream de la notificación de crédito.
          type: string
        motivoDevolucao:
          description: Detalle de devolución de texto libre.
          type: string
        pagador:
          $ref: '#/components/schemas/InboundCreditPagador'
        recebedor:
          $ref: '#/components/schemas/InboundCreditRecebedor'
        valor:
          description: Monto de la devolución acreditada, en reales.
          format: double
          type: number
      required:
        - idReqJdPi
        - endToEndIdDevolucao
        - valor
        - pagador
        - recebedor
      type: object
    InboundCreditView:
      additionalProperties: false
      properties:
        dtHrCreditoSgct:
          description: >-
            El instante de confirmación de crédito del settlement-gateway (UTC,
            RFC 3339).
          type: string
        idCreditoSgct:
          description: El id de asiento de crédito acuñado por el servicio (GUID).
          type: string
        idReqJdPi:
          description: El id de solicitud del upstream (reflejado).
          type: string
      required:
        - idReqJdPi
        - idCreditoSgct
        - dtHrCreditoSgct
      type: object
    Detail:
      additionalProperties: false
      properties:
        code:
          description: >-
            Código de error de dominio estable y legible por máquina, acotado al
            servicio emisor (formato: <SERVICE>-NNNN).
          type: string
        detail:
          description: >-
            Una explicación legible para humanos específica de esta ocurrencia
            del problema.
          type: string
        errors:
          description: Lista opcional de detalles de error individuales
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          nullable: true
        instance:
          description: >-
            Una referencia URI que identifica la ocurrencia específica del
            problema.
          format: uri
          type: string
        status:
          description: Código de estado HTTP
          format: int64
          type: integer
        title:
          description: >-
            Un resumen breve y legible para humanos del tipo de problema. Este
            valor no debería cambiar entre ocurrencias del error.
          type: string
        type:
          default: about:blank
          description: >-
            Una referencia URI a la documentación legible para humanos del
            error.
          format: uri
          type: string
      type: object
    InboundCreditPagador:
      additionalProperties: false
      properties:
        cpfCnpj:
          description: CPF o CNPJ del pagador (una cadena v5.5.0).
          type: string
        ispb:
          description: ISPB del participante pagador (8 dígitos, una cadena v5.5.0).
          type: string
        nome:
          description: Nombre / razón social del pagador.
          type: string
        nrAgencia:
          description: Agencia del pagador (4 dígitos, una cadena).
          type: string
        nrConta:
          description: Número de cuenta del pagador (una cadena).
          type: string
      required:
        - ispb
      type: object
    InboundCreditRecebedor:
      additionalProperties: false
      properties:
        cpfCnpj:
          description: CPF o CNPJ del beneficiario (una cadena v5.5.0).
          type: string
        ispb:
          description: ISPB del participante beneficiario (8 dígitos, una cadena v5.5.0).
          type: string
        nrAgencia:
          description: Agencia del beneficiario (4 dígitos, una cadena).
          type: string
        nrConta:
          description: Número de cuenta del beneficiario (una cadena).
          type: string
        tpConta:
          description: Tipo de cuenta del beneficiario.
          format: int64
          type: integer
      required:
        - ispb
      type: object
    ErrorDetail:
      additionalProperties: false
      properties:
        location:
          description: >-
            Dónde ocurrió el error, p. ej. 'body.items[3].tags' o
            'path.thing-id'
          type: string
        message:
          description: Texto del mensaje de error
          type: string
        value:
          description: El valor en la ubicación indicada
      type: object
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >
        Autenticación con token JWT Bearer. Obtén el token desde el endpoint
        `/v1/login/oauth/access_token`

        usando credenciales de cliente (`clientId` y `clientSecret`).


        Incluye el token en el encabezado Authorization:

        `Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...`


        El token expira después de 3600 segundos (1 hora).

````