Это HTTP POST с базовой аутентификацией. Базовая аутентификация описана в официальном Извлечении интернет-ресурсов с использованием urllib2 HOWTO . Итак, если XML - это XML, который вы отправляете, URL - это URL-адрес, на который вы отправляете сообщения, а MERCHANT_CODE и PASSWORD говорят сами за себя, работают следующие функции:
import urllib2
password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm()
password_mgr.add_password(None, URL, MERCHANT_CODE, PASSWORD)
handler = urllib2.HTTPBasicAuthHandler(password_mgr)
opener = urllib2.build_opener(handler)
urllib2.install_opener(opener)
request = Request(URL, XML, {'Content-Type': 'text/xml'})
response = opener.open(request, XML)
# do something with the response
response.close()