如何通过ups api进行预定发货

时间:2014-08-10 13:49:05

标签: php shipping ups

我正在使用php中的转售平台,我需要将它与它集成。

我们有卖家和买家,因此当卖出东西时,卖家需要通过ups发送。

我可以通过发送以下请求来发货。

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.ups.com/XMLSchema/XOLTWS/Common/v1.0" xmlns:ns2="http://www.ups.com/XMLSchema/XOLTWS/Ship/v1.0" xmlns:ns3="http://www.ups.com/XMLSchema/XOLTWS/UPSS/v1.0">
   <SOAP-ENV:Header>
      <ns3:UPSSecurity>
         <ns3:UsernameToken>
            <ns3:Username></ns3:Username>
            <ns3:Password></ns3:Password>
         </ns3:UsernameToken>
         <ns3:ServiceAccessToken>
            <ns3:AccessLicenseNumber></ns3:AccessLicenseNumber>
         </ns3:ServiceAccessToken>
      </ns3:UPSSecurity>
   </SOAP-ENV:Header>
   <SOAP-ENV:Body>
      <ns2:ShipmentRequest>
         <ns1:Request>
            <ns1:RequestOption>nonvalidate</ns1:RequestOption>
         </ns1:Request>
         <ns2:Shipment>
            <ns2:Shipper>
               <ns2:Name>**************</ns2:Name>
               <ns2:AttentionName>**************</ns2:AttentionName>
               <ns2:Phone>
                  <ns2:Number>**********</ns2:Number>
               </ns2:Phone>
               <ns2:ShipperNumber>*****</ns2:ShipperNumber>
               <ns2:Address>
                  <ns2:AddressLine>*****</ns2:AddressLine>
                  <ns2:City>*****</ns2:City>
                  <ns2:StateProvinceCode>*****</ns2:StateProvinceCode>
                  <ns2:PostalCode>*****</ns2:PostalCode>
                  <ns2:CountryCode>*****</ns2:CountryCode>
               </ns2:Address>
            </ns2:Shipper>
            <ns2:ShipTo>
               <ns2:Name>*****</ns2:Name>
               <ns2:AttentionName>*****</ns2:AttentionName>
               <ns2:Phone>
                  <ns2:Number>*****</ns2:Number>
               </ns2:Phone>
               <ns2:Address>
                  <ns2:AddressLine>*****</ns2:AddressLine>
                  <ns2:City>*****</ns2:City>
                  <ns2:StateProvinceCode>*****</ns2:StateProvinceCode>
                  <ns2:PostalCode>*****</ns2:PostalCode>
                  <ns2:CountryCode>*****</ns2:CountryCode>
                  <ns2:ResidentialAddressIndicator />
               </ns2:Address>
            </ns2:ShipTo>
            <ns2:ShipFrom>
               <ns2:Name>*****</ns2:Name>
               <ns2:AttentionName>*****</ns2:AttentionName>
               <ns2:Phone>
                  <ns2:Number>*****</ns2:Number>
               </ns2:Phone>
               <ns2:Address>
                  <ns2:AddressLine>*****</ns2:AddressLine>
                  <ns2:City>*****</ns2:City>
                  <ns2:StateProvinceCode>*****</ns2:StateProvinceCode>
                  <ns2:PostalCode>*****</ns2:PostalCode>
                  <ns2:CountryCode>*****</ns2:CountryCode>
               </ns2:Address>
            </ns2:ShipFrom>
            <ns2:PaymentInformation>
               <ns2:ShipmentCharge>
                  <ns2:Type>01</ns2:Type>
                  <ns2:BillShipper>
                     <ns2:AccountNumber>*****</ns2:AccountNumber>
                  </ns2:BillShipper>
               </ns2:ShipmentCharge>
            </ns2:PaymentInformation>
            <ns2:Service>
               <ns2:Code>65</ns2:Code>
            </ns2:Service>
            <ns2:Package>
               <ns2:Description />
               <ns2:Packaging>
                  <ns2:Code>02</ns2:Code>
               </ns2:Packaging>
               <ns2:Dimensions>
                  <ns2:UnitOfMeasurement>
                     <ns2:Code>CM</ns2:Code>
                  </ns2:UnitOfMeasurement>
                  <ns2:Length>12</ns2:Length>
                  <ns2:Width>10</ns2:Width>
                  <ns2:Height>6</ns2:Height>
               </ns2:Dimensions>
               <ns2:PackageWeight>
                  <ns2:UnitOfMeasurement>
                     <ns2:Code>KGS</ns2:Code>
                  </ns2:UnitOfMeasurement>
                  <ns2:Weight>1</ns2:Weight>
               </ns2:PackageWeight>
            </ns2:Package>
         </ns2:Shipment>
      </ns2:ShipmentRequest>
   </SOAP-ENV:Body>

它返回标签,但我想在将来的日期安排它, 请帮忙

1 个答案:

答案 0 :(得分:0)

我从未使用UPS自己的运输API,我发现它有点过时了。我使用过Postmaster,我认为你会发现更好的记录,更容易集成。它们也与UPS集成,并且具有易于使用的PHP客户端库。

https://www.postmaster.io/

据我所知,您无法按照FUTURE的预定日期创建发货请求。您必须创建一个cron作业并安排该作业以在将来的日期启动发货请求。您可以了解有关PHP cron作业的更多信息:http://code.tutsplus.com/tutorials/managing-cron-jobs-with-php--net-19428