Skip to content

Contas a Receber

bling_erp_api.resources.contas_receber.ContasReceberResource

ContasReceberResource(transport: Transport)

Bases: BaseResource

Operações de contas a receber do Bling.

Este recurso mapeia os endpoints /contas/receber. Os métodos canônicos usam português para acompanhar a documentação oficial; os métodos em inglês continuam disponíveis como aliases de compatibilidade.

Source code in src/bling_erp_api/resources/base.py
def __init__(self, transport: Transport) -> None:
    """Create a resource bound to a transport."""
    self._transport = transport

listar

listar(
    *,
    pagina: int = 1,
    limite: int = 100,
    situacoes: list[int] | None = None,
    tipo_filtro_data: str | None = None,
    data_inicial: str | None = None,
    data_final: str | None = None,
    ids_categorias: list[int] | None = None,
    id_portador: int | None = None,
    id_contato: int | None = None,
    id_vendedor: int | None = None,
    id_forma_pagamento: int | None = None,
    boleto_gerado: int | None = None,
) -> ContasReceberGetResponse200

Lista contas a receber.

Endpoint: GET /contas/receber

Obtém lista paginada de contas a receber.

Parameters:

Name Type Description Default
pagina int

N° da página (Bling: pagina, integer, opcional)

1
limite int

Registros por página (Bling: limite, integer, opcional)

100
situacoes list[int] | None

Situações: 1=Em aberto, 2=Recebido, 3=Parcial, 4=Devolvido, 5=Cancelado (Bling: situacoes[], array, opcional)

None
tipo_filtro_data str | None

E=Emissão, V=Vencimento, R=Recebimento (Bling: tipoFiltroData, string, opcional)

None
data_inicial str | None

Data inicial do filtro (Bling: dataInicial, string, opcional)

None
data_final str | None

Data final do filtro (Bling: dataFinal, string, opcional)

None
ids_categorias list[int] | None

IDs das categorias (Bling: idsCategorias[], array, opcional)

None
id_portador int | None

ID da conta financeira/portador (Bling: idPortador, integer, opcional)

None
id_contato int | None

ID do contato (Bling: idContato, integer, opcional)

None
id_vendedor int | None

ID do vendedor (Bling: idVendedor, integer, opcional)

None
id_forma_pagamento int | None

ID da forma de pagamento (Bling: idFormaPagamento, integer, opcional)

None
boleto_gerado int | None

0=Não emitido, 1=Emitido (Bling: boletoGerado, integer, opcional)

None

Returns:

Type Description
ContasReceberGetResponse200

Bling API response. Response schemas: 200: ContasReceberDadosListDTO

Source code in src/bling_erp_api/resources/contas_receber.py
def listar(  # noqa: PLR0913
    self,
    *,
    pagina: int = 1,
    limite: int = 100,
    situacoes: list[int] | None = None,
    tipo_filtro_data: str | None = None,
    data_inicial: str | None = None,
    data_final: str | None = None,
    ids_categorias: list[int] | None = None,
    id_portador: int | None = None,
    id_contato: int | None = None,
    id_vendedor: int | None = None,
    id_forma_pagamento: int | None = None,
    boleto_gerado: int | None = None,
) -> ContasReceberGetResponse200:
    """Lista contas a receber.

    Endpoint: GET /contas/receber

    Obtém lista paginada de contas a receber.

    Args:
        pagina: N° da página (Bling: ``pagina``, integer, opcional)
        limite: Registros por página (Bling: ``limite``, integer, opcional)
        situacoes: Situações: 1=Em aberto, 2=Recebido, 3=Parcial, 4=Devolvido, 5=Cancelado (Bling: ``situacoes[]``, array, opcional)
        tipo_filtro_data: E=Emissão, V=Vencimento, R=Recebimento (Bling: ``tipoFiltroData``, string, opcional)
        data_inicial: Data inicial do filtro (Bling: ``dataInicial``, string, opcional)
        data_final: Data final do filtro (Bling: ``dataFinal``, string, opcional)
        ids_categorias: IDs das categorias (Bling: ``idsCategorias[]``, array, opcional)
        id_portador: ID da conta financeira/portador (Bling: ``idPortador``, integer, opcional)
        id_contato: ID do contato (Bling: ``idContato``, integer, opcional)
        id_vendedor: ID do vendedor (Bling: ``idVendedor``, integer, opcional)
        id_forma_pagamento: ID da forma de pagamento (Bling: ``idFormaPagamento``, integer, opcional)
        boleto_gerado: 0=Não emitido, 1=Emitido (Bling: ``boletoGerado``, integer, opcional)

    Returns:
        Bling API response. Response schemas: 200: ContasReceberDadosListDTO
    """
    params: QueryParams = {
        "pagina": pagina,
        "limite": limite,
        **_contas_receber_list_params(
            situacoes=situacoes,
            tipo_filtro_data=tipo_filtro_data,
            data_inicial=data_inicial,
            data_final=data_final,
            ids_categorias=ids_categorias,
            id_portador=id_portador,
            id_contato=id_contato,
            id_vendedor=id_vendedor,
            id_forma_pagamento=id_forma_pagamento,
            boleto_gerado=boleto_gerado,
        ),
    }
    raw = self._get("/contas/receber", params=params)
    return self._validate_response(ContasReceberGetResponse200, raw)

obter

obter(id_conta_receber: int) -> ContasReceberIdContaReceberGetResponse200

Obtém uma conta a receber.

Endpoint: GET /contas/receber/{idContaReceber}

Parameters:

Name Type Description Default
id_conta_receber int

ID da conta a receber (Bling: idContaReceber, integer, obrigatório)

required

Returns:

Type Description
ContasReceberIdContaReceberGetResponse200

Bling API response. Response schemas: 200: ContasReceberDadosListDTO; 404: ErrorResponse

Source code in src/bling_erp_api/resources/contas_receber.py
def obter(self, id_conta_receber: int) -> ContasReceberIdContaReceberGetResponse200:
    """Obtém uma conta a receber.

    Endpoint: GET /contas/receber/{idContaReceber}

    Args:
        id_conta_receber: ID da conta a receber (Bling: ``idContaReceber``, integer, obrigatório)

    Returns:
        Bling API response. Response schemas: 200: ContasReceberDadosListDTO; 404: ErrorResponse
    """
    raw = self._get(f"/contas/receber/{id_conta_receber}")
    return self._validate_response(ContasReceberIdContaReceberGetResponse200, raw)

criar

criar(dados: ContasReceberPostRequest) -> ContasReceberPostResponse201

Cria uma conta a receber.

Endpoint: POST /contas/receber

Parameters:

Name Type Description Default
dados ContasReceberPostRequest

Dados da conta. Request body: ContasReceberSalvarDTO

required

Returns:

Type Description
ContasReceberPostResponse201

Bling API response. Response schemas: 201: BasePostResponse; 400: ErrorResponse

Source code in src/bling_erp_api/resources/contas_receber.py
def criar(self, dados: ContasReceberPostRequest) -> ContasReceberPostResponse201:
    """Cria uma conta a receber.

    Endpoint: POST /contas/receber

    Args:
        dados: Dados da conta. Request body: ContasReceberSalvarDTO

    Returns:
        Bling API response. Response schemas: 201: BasePostResponse; 400: ErrorResponse
    """
    raw = self._post("/contas/receber", json=to_json_object(dados))
    return self._validate_response(ContasReceberPostResponse201, raw)

alterar

alterar(
    id_conta_receber: int, dados: ContasReceberIdContaReceberPutRequest
) -> JsonObject

Altera uma conta a receber.

Endpoint: PUT /contas/receber/{idContaReceber}

Parameters:

Name Type Description Default
id_conta_receber int

ID da conta a receber (Bling: idContaReceber, integer, obrigatório)

required
dados ContasReceberIdContaReceberPutRequest

Dados da conta para atualização

required

Returns:

Type Description
JsonObject

Bling API response. Response schemas: 204: NoContent; 400: ErrorResponse; 404: ErrorResponse

Source code in src/bling_erp_api/resources/contas_receber.py
def alterar(
    self, id_conta_receber: int, dados: ContasReceberIdContaReceberPutRequest
) -> JsonObject:
    """Altera uma conta a receber.

    Endpoint: PUT /contas/receber/{idContaReceber}

    Args:
        id_conta_receber: ID da conta a receber (Bling: ``idContaReceber``, integer, obrigatório)
        dados: Dados da conta para atualização

    Returns:
        Bling API response. Response schemas: 204: NoContent; 400: ErrorResponse; 404: ErrorResponse
    """
    return self._put(f"/contas/receber/{id_conta_receber}", json=to_json_object(dados))

remover

remover(id_conta_receber: int) -> JsonObject

Remove uma conta a receber.

Endpoint: DELETE /contas/receber/{idContaReceber}

Parameters:

Name Type Description Default
id_conta_receber int

ID da conta a receber (Bling: idContaReceber, integer, obrigatório)

required

Returns:

Type Description
JsonObject

Bling API response. Response schemas: 204: NoContent; 400: ErrorResponse; 404: ErrorResponse

Source code in src/bling_erp_api/resources/contas_receber.py
def remover(self, id_conta_receber: int) -> JsonObject:
    """Remove uma conta a receber.

    Endpoint: DELETE /contas/receber/{idContaReceber}

    Args:
        id_conta_receber: ID da conta a receber (Bling: ``idContaReceber``, integer, obrigatório)

    Returns:
        Bling API response. Response schemas: 204: NoContent; 400: ErrorResponse; 404: ErrorResponse
    """
    return self._delete(f"/contas/receber/{id_conta_receber}")

baixar

baixar(
    id_conta_receber: int, dados: ContasBaixarContaDTO
) -> ContasReceberIdContaReceberBaixarPostResponse200

Baixa uma conta a receber (registra o recebimento).

Endpoint: POST /contas/receber/{idContaReceber}/baixar

Parameters:

Name Type Description Default
id_conta_receber int

ID da conta a receber (Bling: idContaReceber, integer, obrigatório)

required
dados ContasBaixarContaDTO

Dados da baixa. Request body: ContasBaixarContaDTO

required

Returns:

Type Description
ContasReceberIdContaReceberBaixarPostResponse200

Bling API response. Response schemas: 200: bordero; 400: ErrorResponse

Source code in src/bling_erp_api/resources/contas_receber.py
def baixar(
    self,
    id_conta_receber: int,
    dados: ContasBaixarContaDTO,
) -> ContasReceberIdContaReceberBaixarPostResponse200:
    """Baixa uma conta a receber (registra o recebimento).

    Endpoint: POST /contas/receber/{idContaReceber}/baixar

    Args:
        id_conta_receber: ID da conta a receber (Bling: ``idContaReceber``, integer, obrigatório)
        dados: Dados da baixa. Request body: ContasBaixarContaDTO

    Returns:
        Bling API response. Response schemas: 200: bordero; 400: ErrorResponse
    """
    raw = self._post(f"/contas/receber/{id_conta_receber}/baixar", json=to_json_object(dados))
    return self._validate_response(ContasReceberIdContaReceberBaixarPostResponse200, raw)

obter_boletos

obter_boletos(
    *, id_origem: int, situacoes: list[int] | None = None
) -> ContasReceberBoletosDadosBaseDTO

Obtém boletos vinculados a uma venda ou NF.

Endpoint: GET /contas/receber/boletos

Obtém os boletos vinculados a um idOrigem (venda ou nota fiscal).

Parameters:

Name Type Description Default
id_origem int

ID da venda ou nota fiscal (Bling: idOrigem, integer, obrigatório)

required
situacoes list[int] | None

Situações: 1=Aberto, 2=Recebido, 3=Parcial, 4=Devolvido, 5=Parcial devolvido, 6=Cancelado (Bling: situacoes[], array, opcional)

None

Returns:

Type Description
ContasReceberBoletosDadosBaseDTO

Bling API response. Response schemas: 200: ContasReceberBoletosDadosBaseDTO; 400: ErrorResponse; 404: ErrorResponse

Source code in src/bling_erp_api/resources/contas_receber.py
def obter_boletos(
    self, *, id_origem: int, situacoes: list[int] | None = None
) -> ContasReceberBoletosDadosBaseDTO:
    """Obtém boletos vinculados a uma venda ou NF.

    Endpoint: GET /contas/receber/boletos

    Obtém os boletos vinculados a um idOrigem (venda ou nota fiscal).

    Args:
        id_origem: ID da venda ou nota fiscal (Bling: ``idOrigem``, integer, obrigatório)
        situacoes: Situações: 1=Aberto, 2=Recebido, 3=Parcial, 4=Devolvido, 5=Parcial devolvido, 6=Cancelado (Bling: ``situacoes[]``, array, opcional)

    Returns:
        Bling API response. Response schemas: 200: ContasReceberBoletosDadosBaseDTO; 400: ErrorResponse; 404: ErrorResponse
    """
    params = compact_params({"idOrigem": id_origem, "situacoes[]": situacoes})
    raw = self._get("/contas/receber/boletos", params=params)
    return self._validate_response(ContasReceberBoletosDadosBaseDTO, raw)

cancelar_boletos

cancelar_boletos(dados: ContasReceberBoletosCancelarDTO) -> JsonObject

Cancela boletos em aberto.

Endpoint: POST /contas/receber/boletos/cancelar

Cancela um ou todos os boletos em aberto vinculados a uma venda ou NF.

Parameters:

Name Type Description Default
dados ContasReceberBoletosCancelarDTO

Dados de cancelamento. Request body: ContasReceberBoletosCancelarDTO

required

Returns:

Type Description
JsonObject

Bling API response. Response schemas: 204: NoContent; 400: ErrorResponse

Source code in src/bling_erp_api/resources/contas_receber.py
def cancelar_boletos(self, dados: ContasReceberBoletosCancelarDTO) -> JsonObject:
    """Cancela boletos em aberto.

    Endpoint: POST /contas/receber/boletos/cancelar

    Cancela um ou todos os boletos em aberto vinculados a uma venda ou NF.

    Args:
        dados: Dados de cancelamento. Request body: ContasReceberBoletosCancelarDTO

    Returns:
        Bling API response. Response schemas: 204: NoContent; 400: ErrorResponse
    """
    return self._post("/contas/receber/boletos/cancelar", json=to_json_object(dados))