Perl + SOAP::Lite - perl

This is the SOAP document I'm trying to model using SOAP::Lite.
<SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<GetOrderByPartnerOrderID xmlns="http://api.geotrust.com/webtrust/query">
<Request>
<QueryRequestHeader>
<PartnerCode>partnercode</PartnerCode>
<AuthToken>
<UserName>username</UserName>
<Password>password</Password>
</AuthToken>
</QueryRequestHeader>
<PartnerOrderID>partnerid</PartnerOrderID>
</Request>
</GetOrderByPartnerOrderID>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Here is the Perl code I'm using to model this document.
my $params = SOAP::Data->name("Request" =>
\SOAP::Data->value => (
\SOAP::Data->name("QueryRequestHeader" =>
\SOAP::Data->value(
SOAP::Data->name("PartnerCode" => $partnercode),
SOAP::Data->name("AuthToken" =>
\SOAP::Data->value(
SOAP::Data->name("UserName" => $username),
SOAP::Data->name("Password" => $password)
)
)
)
),
\SOAP::Data->name("PartnerOrderID" => $poid)
);
However, the SOAP Document generated by this code (I'm using SOAP::Lite with trace on) is as follows:
<SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<GetOrderByPartnerOrderID xmlns="http://api.geotrust.com/webtrust/query">
<Request>
<QueryRequestHeader>
<PartnerCode>partnercode</PartnerCode>
<AuthToken>
<UserName>username</UserName>
<Password>password</Password>
</AuthToken>
</QueryRequestHeader>
</Request>
<Request>
<PartnerOrderID>partnerid</PartnerOrderID>
</Request>
</GetOrderByPartnerOrderID>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
For some reason, it closes the Request tag, and then opens it again. It seems like it should be an easy fix, but I've tried everything I can think of and can't figure it out. Any help would be greatly appreciated.

Figured it out. Had \SOAP::Data->value => ( instead of \SOAP::Data->value(.

Related

Update fieldPermissions with metadata api of Salesforce

I try to update the permissions on a field created from the API so that it is visible and usable.
so I do this via the salesforce metadata API.
responses = client.call(:update_metadata, message_tag: :updateMetadata, message: {metadata: { fullName: 'Admin', fieldPermissions: {field: "Contact.custom_attribute1_soap__c", editable: true, readable: true}}, :attributes! => {metadata: {"xsi:type" => "Profile"}}})
client is an instance of the gem Savon.
which gives me this, and seems correct to me !
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tns="http://soap.sforce.com/2006/04/metadata" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<env:Header>
<tns:SessionHeader>
<tns:sessionId>s3ss10n1d</tns:sessionId>
</tns:SessionHeader>
</env:Header>
<env:Body>
<tns:updateMetadata>
<tns:metadata xsi:type="Profile">
<tns:fullName>Admin</tns:fullName>
<tns:fieldPermissions>
<tns:field>Contact.custom_attribute1_soap__c</tns:field>
<tns:editable>true</tns:editable>
<tns:readable>true</tns:readable>
</tns:fieldPermissions>
</tns:metadata>
</tns:updateMetadata>
</env:Body>
</env:Envelope>
however, salesforce sends me back a mistake.
After hours of searching the documentation I don't understand.
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Client</faultcode>
<faultstring>Unable to determine type mapping for type Profile. Type is illegal here.</faultstring>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
One of you could explain my mistake to me, or give me a method to modify the permissions on a custom field created via the API, please?
You're missing the attribute "xmlns": "http://soap.sforce.com/2006/04/metadata"
Try:
responses = client.call(
:update_metadata,
message_tag: :updateMetadata,
message: {
metadata: {fullName: 'Admin', fieldPermissions: {field: "Contact.custom_attribute1_soap__c", editable: true, readable: true}},
:attributes! => {metadata: {"xsi:type" => "Profile", "xmlns": "http://soap.sforce.com/2006/04/metadata"}}
}
)
In my case, the following schema worked:
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="http://soap.sforce.com/2006/04/metadata">
<soapenv:Header>
<tns:SessionHeader>
<tns:sessionId>your_id</tns:sessionId>
</tns:SessionHeader>
</soapenv:Header>
<soapenv:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<tns:updateMetadata>
<tns:metadata xsi:type="tns:Profile">
<tns:fullName>Admin</tns:fullName>
<tns:fieldPermissions>
<tns:field>CustomObject__c.CustomField__c</tns:field>
<tns:editable>true</tns:editable>
<tns:readable>true</tns:readable>
</tns:fieldPermissions>
</tns:metadata>
</tns:updateMetadata>
</soapenv:Body>
</soapenv:Envelope>

set some property for array type element in node soap

i get xml like this when using node-soap in my app :
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:impl="http://magfa.com/soap/SOAPSmsQueue"
xmlns:intf="http://magfa.com/soap/SOAPSmsQueue"
xmlns:tns1="urn:SOAPSmsQueue">
<soap:Header></soap:Header>
<soap:Body>
<impl:enqueue>
<domain>magfa</domain>
<messageBodies>
<messageBodies>hi</messageBodies>
</messageBodies>
<recipientNumbers>
<recipientNumbers>989187004197</recipientNumbers>
</recipientNumbers>
<senderNumbers>
<senderNumbers>98300079368</senderNumbers>
</senderNumbers>
</impl:enqueue>
</soap:Body>
</soap:Envelope>
so i want's to add some property to array elements.
some property like this : soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
and create array element like this :
<messageBodies soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" >
<messageBodies>hi</messageBodies>
</messageBodies>
finally i want my xml are look like this :
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:impl="http://magfa.com/soap/SOAPSmsQueue"
xmlns:intf="http://magfa.com/soap/SOAPSmsQueue"
xmlns:tns1="urn:SOAPSmsQueue">
<soap:Header></soap:Header>
<soap:Body>
<impl:enqueue>
<domain>magfa</domain>
<messageBodies soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" >
<messageBodies>hi</messageBodies>
</messageBodies>
<recipientNumbers soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" >
<recipientNumbers>989381028800</recipientNumbers>
</recipientNumbers>
<senderNumbers soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<senderNumbers >98300079368</senderNumbers>
</senderNumbers>
</impl:enqueue>
</soap:Body>
</soap:Envelope>
this description just for silly validation in stackoverflow for this question is looks like your post is mostly code ...
Try this:
<messageBodies soap-enc:arrayType="xsd:string[1]" xsi:type="soap-enc:Array"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" >
<messageBodies>hi</messageBodies>
</messageBodies>
soap-enc instead of soapenc

Unable to update passenger name in created PNR at sabre

I am developing API to update passenger detail like name and DOB in PNR.
I followed this http://files.developer.sabre.com/doc/providerdoc/pnrservices/UpdateReservationRQ_1_15_0_User_Guide.pdf
Request xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sec="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" xmlns:v1="http://webservices.sabre.com/pnrbuilder/v1_15" xmlns:v11="http://services.sabre.com/res/or/v1_8">
<soapenv:Header>
<sec:Security xmlns:sec="http://schemas.xmlsoap.org/ws/2002/12/secext">
<sec:BinarySecurityToken valueType="String" EncodingType="sec:Base64Binary">${#Project#sessionid}</sec:BinarySecurityToken>
</sec:Security>
<eb:MessageHeader eb:version="2.0">
<eb:From>
<eb:PartyId type="urn:x12.org:IO5:01">999999</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId type="urn:x12.org:IO5:01">343434</eb:PartyId>
</eb:To>
<eb:CPAId>AB</eb:CPAId>
<eb:ConversationId>test123</eb:ConversationId>
<eb:Service eb:type="OTA">UpdateReservationRQ</eb:Service>
<eb:Action>UpdateReservationRQ</eb:Action>
<eb:MessageData>
<eb:MessageId>1001</eb:MessageId>
<eb:Timestamp>2017-01-10T10:00:00</eb:Timestamp>
<eb:TimeToLive>2017-01-16T23:59:59</eb:TimeToLive>
</eb:MessageData>
</eb:MessageHeader>
</soapenv:Header>
<soapenv:Body>
<v1:UpdateReservationRQ Version="1.15.0">
<v1:RequestType>Stateless</v1:RequestType>
<v1:ReturnOptions IncludeUpdateDetails="true" RetrievePNR="true" />
<v1:ReservationUpdateList>
<v1:Locator>${#Project#pnr}</v1:Locator>
<v1:ReservationUpdateItem>
<!--Optional:-->
<v1:PassengerNameUpdate op="U">
<!--Optional:-->
<v1:TravelerName type="ADT">
<!--Optional:-->
<v1:Given>Ramesh</v1:Given>
<v1:Surname>Tiwari</v1:Surname>
</v1:TravelerName>
<!--Optional:-->
<v1:NameAssociationTag>
<v1:LastName>Praveen</v1:LastName>
<v1:FirstName>Deshmukh</v1:FirstName>
<v1:NameRefNumber>01.01</v1:NameRefNumber>
</v1:NameAssociationTag>
</v1:PassengerNameUpdate>
<!--Optional:-->
</v1:ReservationUpdateItem>
<v1:ReceivedFrom>
<v1:AgentName>AESWSSELL1AEBG</v1:AgentName>
</v1:ReceivedFrom>
</v1:ReservationUpdateList>
</v1:UpdateReservationRQ>
</soapenv:Body>
</soapenv:Envelope>
But continually getting below error.
<soap-env:Body>
<stl15:UpdateReservationRS xmlns:stl15="http://webservices.sabre.com/pnrbuilder/v1_15" xmlns:ns6="http://services.sabre.com/res/orr/v0" xmlns:raw="http://tds.sabre.com/itinerary" xmlns:or18="http://services.sabre.com/res/or/v1_8" xmlns:ns4="http://webservices.sabre.com/pnrconn/ReaccSearch">
<stl15:Success>FALSE</stl15:Success>
<stl15:Warnings>
<stl15:Warning>
<stl15:Message>PARTIAL ERROR</stl15:Message>
</stl15:Warning>
</stl15:Warnings>
<stl15:Errors>
<stl15:Error UpdateId="">
<stl15:Code>500601</stl15:Code>
<stl15:Message>UNABLE TO PROCESS</stl15:Message>
</stl15:Error>
</stl15:Errors>
<stl15:Results/>
</stl15:UpdateReservationRS>
</soap-env:Body>
Please help me to find out what change in require in the request.
Hard to tell without knowing the carrier, but many airlines will not allow a name change once the PNR has been "ended" and a locator has been returned.
It is possible to update passenger detail in created PNR.
In above request require PNR created date to compete this process.
<stl1:Locator>XPKCGL</stl1:Locator>
<stl1:CreateDate>2017-05-23</stl1:CreateDate>
Below is complete request.
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" xmlns:ns1="http://webservices.sabre.com/pnrbuilder/getres" xmlns:ns12="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns13="http://www.w3.org/1999/xlink" xmlns:ns14="http://www.w3.org/2000/09/xmldsig#" xmlns:or="http://services.sabre.com/res/or/v1_8" xmlns:ota="http://webservices.sabre.com/sabreXML/2003/07" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:stl1="http://webservices.sabre.com/pnrbuilder/v1_15" xmlns:stl2="http://services.sabre.com/STL/v01" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xml="http://www.w3.org/XML/1998/namespace">
<SOAP-ENV:Header>
<sec:Security xmlns:sec="http://schemas.xmlsoap.org/ws/2002/12/secext">
<sec:BinarySecurityToken valueType="String" EncodingType="sec:Base64Binary">${#Project#sectoken}</sec:BinarySecurityToken>
</sec:Security>
<MessageHeader xmlns="http://www.ebxml.org/namespaces/messageHeader" version="1.0">
<eb:From>
<eb:PartyId type="urn:x12.org:IO5:01">99935345999</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId type="urn:x12.org:IO5:01">344535</eb:PartyId>
</eb:To>
<eb:CPAId>AB</eb:CPAId>
<eb:ConversationId>cpm23432</eb:ConversationId>
<eb:Service type="OTA">UpdateReservationOperation</eb:Service>
<eb:Action>UpdateReservationRQ</eb:Action>
<eb:MessageData>
<eb:MessageId>608926</eb:MessageId>
<eb:Timestamp>2017-05-22T15:49:07Z</eb:Timestamp>
</eb:MessageData>
</MessageHeader>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<stl1:UpdateReservationRQ xmlns="http://webservices.sabre.com/pnrbuilder/v1_15" Version="1.15.0">
<stl1:RequestType>Stateless</stl1:RequestType>
<stl1:ReturnOptions IncludeUpdateDetails="true" RetrievePNR="true" />
<stl1:ReservationUpdateList>
<stl1:Locator>XPKCGL</stl1:Locator>
<stl1:CreateDate>2017-05-23</stl1:CreateDate>
<stl1:ReservationUpdateItem UpdateId="ID-1">
<stl1:PassengerNameUpdate op="U">
<stl1:TravelerName type="ADT" referenceId="1">
<stl1:Given>RamRaj</stl1:Given>
<stl1:Surname>Des</stl1:Surname>
</stl1:TravelerName>
<stl1:NameAssociationTag>
<stl1:LastName>DESHMUKH</stl1:LastName>
<stl1:FirstName>PRAVEEN</stl1:FirstName>
<stl1:NameRefNumber>01.01</stl1:NameRefNumber>
</stl1:NameAssociationTag>
</stl1:PassengerNameUpdate>
</stl1:ReservationUpdateItem>
<stl1:ReceivedFrom>
<stl1:AgentName>CPM MBE</stl1:AgentName>
</stl1:ReceivedFrom>
</stl1:ReservationUpdateList>
</stl1:UpdateReservationRQ>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Querying Exchange Web Services fails with 400 Bad Request

I am trying to get some information from a specific calendar using EWS and Powershell.
I have a powershell function that I use to query EWS
Function EWSSoapRequest
{
param (
$soapRequest,
$exchangeServerAddress
)
# Create the request
$webRequest = [System.Net.WebRequest]::Create($exchangeServerAddress)
$webRequest.ContentType = "text/xml"
$webRequest.Headers.Add("Translate", "F")
$webRequest.Method = "Post"
$webRequest.Credentials = $credentials
# Setup the soap request to send to the server
$content = [System.Text.Encoding]::UTF8.GetBytes($soapRequest)
$webRequest.ContentLength = $content.Length
$requestStream = $webRequest.GetRequestStream()
$requestStream.Write($content, 0, $content.Length)
$requestStream.Close()
# Get the xml response from the server
$webResponse = $webRequest.GetResponse()
$responseStream = $webResponse.GetResponseStream()
$responseXml = [xml](new-object System.IO.StreamReader $responseStream).ReadToEnd()
$responseStream.Close()
$webResponse.Close()
$responseXml
}
I can get the list of calendar items just fine, using this XML:
$soapRequestOverview = #'
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<t:RequestServerVersion Version="Exchange2010_SP2" />
<t:ExchangeImpersonation>
<t:ConnectingSID>
<t:SmtpAddress>user#domain.dk</t:SmtpAddress>
</t:ConnectingSID>
</t:ExchangeImpersonation>
</soap:Header>
<soap:Body>
<FindItem Traversal="Shallow" xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
<ItemShape>
<t:BaseShape>IdOnly</t:BaseShape>
<t:AdditionalProperties>
<t:FieldURI FieldURI="calendar:Start"/>
<t:FieldURI FieldURI="calendar:End"/>
<t:FieldURI FieldURI="item:Subject"/>
</t:AdditionalProperties>
</ItemShape>
<CalendarView MaxEntriesReturned="100" StartDate="{0}" EndDate="{1}"/>
<ParentFolderIds>
<t:DistinguishedFolderId Id="calendar"/>
</ParentFolderIds>
</FindItem>
</soap:Body>
</soap:Envelope>
'#
That gives me a list of entries in the given calendar (I replace the state and end date before calling the web service function. Then from the list of calendar items returned I use the ItemID property to try and query detailed information like location etc. But it is here I run into problems.
I use this XML to make the query and use the EWSSoapRequest function as before, but I keep getting 400 Bad request back. If I copy/paste the xml into SoapUI then I get a response just fine with the expected data.
$SoapRequestDetail = #'
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<t:RequestServerVersion Version="Exchange2010_SP2" />
<t:ExchangeImpersonation>
<t:ConnectingSID>
<t:SmtpAddress>user#domain.dk</t:SmtpAddress>
</t:ConnectingSID>
</t:ExchangeImpersonation>
</soap:Header>
<soap:Body>
<m:GetItem>
<m:ItemShape>
<t:BaseShape>AllProperties</t:BaseShape>
</m:ItemShape>
<m:ItemIds>
<t:ItemId Id="AAMkADU3MzNlNjQxLTA3NDYtNDA4MS1hMmJhLTg5MmUxOTM2NzI3YwBGAAAAAABifraNBbAgRq+5NEGUOyNbBwBOxvhv/eH/R6wHrO/Hc4RhAAABnAHkAAChTN/6w47WS4YxX5iYDfnHAABfYm2zAAA=" />
</m:ItemIds>
</m:GetItem>
</soap:Body>
</soap:Envelope>
'#
Is it just me overlooking something obvious ?
Try using this XML instead
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<soap:Header>
<t:RequestServerVersion Version="Exchange2010_SP2" />
<t:ExchangeImpersonation>
<t:ConnectingSID>
<t:SmtpAddress>user#domain.com</t:SmtpAddress>
</t:ConnectingSID>
</t:ExchangeImpersonation>
</soap:Header>
<soap:Body>
<GetItem
xmlns="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<ItemShape>
<t:BaseShape>AllProperties</t:BaseShape>
</ItemShape>
<ItemIds>
<t:ItemId Id="AAAlAF" />
</ItemIds>
</GetItem>
</soap:Body>
</soap:Envelope>
Cheers
Glen

PayPal Adaptive Payments ConvertCurrency

I am try to run the ConvertCurrency Adaptive Payments but can't find any sample code that doesn't use the SDK so I'm looking at the PDF from PayPal but I'm still confused. What format should these be in:
baseAmountList ap:CurrencyList
convertToCurrencyList ap:CurrencyCodeList
requestEnvelope common:RequestEnvelope
I have no idea what they mean by ap:CurrencyList. This doesn't work:
baseAmountList=".array( 'amount' => 15, 'code' => 'USD' )
So how should it be done?
Thanks in advance.
It would be XML. Here's a sample request and response.
<?xml version="1.0" encoding="utf-8"?>
<ConvertCurrencyRequest xmlns="http://svcs.paypal.com/types/ap">
<requestEnvelope xmlns="">
<detailLevel>ReturnAll</detailLevel>
<errorLanguage>en_US</errorLanguage>
</requestEnvelope>
<baseAmountList xmlns="">
<currency xmlns=""><code xmlns="">USD</code>
<amount xmlns="">100.00</amount>
</currency>
</baseAmountList>
<convertToCurrencyList xmlns="">
<currencyCode xmlns="">EUR</currencyCode>
<currencyCode xmlns="">AUD</currencyCode>
<currencyCode xmlns="">CAD</currencyCode>
</convertToCurrencyList>
</ConvertCurrencyRequest>
<?xml version='1.0' encoding='UTF-8'?>
<ns2:ConvertCurrencyResponse xmlns:ns2="http://svcs.paypal.com/types/ap">
<responseEnvelope>
<timestamp>2013-12-19T23:22:07.832-08:00</timestamp>
<ack>Success</ack>
<correlationId>0d0f271253d3c</correlationId>
<build>7935900</build>
</responseEnvelope>
<estimatedAmountTable>
<currencyConversionList>
<baseAmount><code>USD</code>
<amount>100.00</amount>
</baseAmount>
<currencyList>
<currency><code>EUR</code>
<amount>73.39</amount>
</currency>
<currency><code>AUD</code>
<amount>105.41</amount>
</currency>
<currency><code>CAD</code>
<amount>100.76</amount>
</currency>
</currencyList>
</currencyConversionList>
</estimatedAmountTable>
</ns2:ConvertCurrencyResponse>