Aqui um exception pode estourar se essas chaves ```soap:Envelope``` e ```soap:Body``` não existirem. Como nem os métodos que usam essas classes de dentro da lib nem os de dentro do buddy lidam com um exception estourado aqui, ele será propagado até a implementação do serviço e será exposto pro usuário da api.

Isso pode ter sido feito de propósito ou não, mas IMO o ideal é que você acesse esses dicionários com .get('key', default) pra não estourarem exception e depois testar os valores - pra tudo ficar explícito. Se alguma chave esperada não estiver no dict, você pode dar um raise de um exception específico e lidar com ele na implementação do gateway.

Exemplo: ```raise InvalidBraspagResponse('...')

Não sei se fui claro em expressar o meu pensamento aqui, qualquer coisa pergunta pls.