USPSRates Component
Properties Methods Events Configuration Settings Errors
Determines domestic and international postage rates based on weight, size, class of mail, and origin/destination information.
Syntax
TibxUSPSRates
Remarks
This component provides automated online access to domestic and international rate information. These domestic rates are for: Express Mail, First-Class Mail, and Priority Mail, as well as single-piece rates for all four Package Services: Parcel Post, Bound Printed Matter, Library Mail, and Media Mail. The international rates are for International Priority Mail, International Express Mail (EMS), and International First Class Mail, along with service standards for each class of service.
To use this component to receive rate information for domestic shipments, simply set the PackageWeight, SenderZipCode, RecipientZipCode, and PackageSize. Then simply call GetRates.
You may also optionally supply dimensions of the package with PackageLength, PackageWidth, and PackageHeight, and filter the results returned by ServiceType and PackageType.
In response to this request, the USPS Server will return a list of postage services available for mailing your package. You can access these services through the ServiceListNetCharge, ServiceType, and ServiceTypeDescription properties. The number of PostalZones between the SenderZipCode and RecipientZipCode will also be returned, along with any Restrictions for mailing to APO/FPO addresses.
To use this component to receive rate information for international shipments, simply set the PackageWeight, PackageType, and RecipientCountryCode, and then call GetRates.
For International rates, the following properties may be returned:
- ServiceType
- ServiceTypeDescription
- ServiceCommitments
- ServiceMaxDimensions
- ServiceMaxWeight
- ServiceListNetCharge
- ServiceInsuranceCost
- ServiceInsuranceComment
- ServiceIndemnityCoverage
Please note that in most cases international packages may need a Customs Declaration form, and packages may also be subject to mailing restrictions unique to the destination country. To assist you with this important information, the International Rates component will return all the necessary mailing Restrictions, Prohibitions, and Observations, names of required CustomsForms, as well as delivery AreasServed.
To use this component, you must have a USPS account. You should also have already obtained a USPSUserId and USPSPassword uniquely assigned to your account by USPS.
This component also includes Endicia support to obtain rates through their web services. To use this service, you must have an Endicia USPSAccountNumber. You should also have already obtained a USPSUserId and USPSPassword uniquely assigned to your account by Endicia. The PostageProvider property must be set to ppEndicia to tell the component to use the Endicia protocol.
Property List
The following is the full list of the properties of the component with short descriptions. Click on the links for further details.
AreasServed | Areas where the PackagingType service is available when shipped to CountryCode . |
CustomsForms | Customs forms required to mail to CountryCode . |
Days | Estimated time for delivery. |
ExpressMailInfo | Express Mail information when shipping to CountryCode . |
FirewallAutoDetect | This property tells the component whether or not to automatically detect and use firewall system settings, if available. |
FirewallType | This property determines the type of firewall to connect through. |
FirewallHost | This property contains the name or IP address of firewall (optional). |
FirewallPassword | This property contains a password if authentication is to be used when connecting through the firewall. |
FirewallPort | This property contains the TCP port for the firewall Host . |
FirewallUser | This property contains a user name if authentication is to be used connecting through a firewall. |
Machinable | Indicates if the package being shipped is classified as machinable. |
Observations | Additional mailing information based on country of destination. |
PackageCount | The number of records in the Package arrays. |
PackageGirth | Measurement around the widest part of the package, perpendicular to the Length . |
PackageHeight | The height of the package to be shipped. |
PackageLength | The length of the package to be shipped. |
PackageType | The packaging type of the package being rated and/or shipped. |
PackageSize | Size of the package being mailed. |
PackageWeight | Weight of this package. |
PackageWidth | The width of the package to be shipped. |
PostageProvider | The postage provider to use. |
PostalZone | Indicates the number of postal rate zones between the origin and destination zip codes. |
Prohibitions | List of items prohibited from mailing to the destination country. |
ProxyAuthScheme | This property is used to tell the component which type of authorization to perform when connecting to the proxy. |
ProxyAutoDetect | This property tells the component whether or not to automatically detect and use proxy system settings, if available. |
ProxyPassword | This property contains a password if authentication is to be used for the proxy. |
ProxyPort | This property contains the TCP port for the proxy Server (default 80). |
ProxyServer | If a proxy Server is given, then the HTTP request is sent to the proxy instead of the server otherwise specified. |
ProxySSL | This property determines when to use SSL for the connection to the proxy. |
ProxyUser | This property contains a user name, if authentication is to be used for the proxy. |
RecipientCountryCode | Country code. |
RecipientZipCode | Postal code. |
RequestedService | Service type for which the shipping rate is requested. |
Restrictions | Restrictions on items being shipped. |
SenderZipCode | Postal code. |
ServiceCount | The number of records in the Service arrays. |
ServiceCommitments | Service commitments for the PackagingType when shipping to CountryCode . |
ServiceIndemnityCoverage | Indicates the indemnity coverage available for this service. |
ServiceInsuranceComment | Explains why no InsuranceCost was returned in the response. |
ServiceInsuranceCost | Insurance fee. |
ServiceListNetCharge | Net charge amount applied to a ServiceType . |
ServiceMaxDimensions | Maximum dimensions of a package allowed when sending to the CountryCode . |
ServiceMaxWeight | Maximum weight of package allowed when sending to the CountryCode . |
ServicePackagingType | The mail service type when shipping to CountryCode . |
ServiceType | Indicates the service type in the list of available services returned. |
ServiceTypeDescription | Indicates the textual description of a service type in the list of available services returned. |
ShipmentSpecialServices | Contains the collection of special services offered by USPS on shipment level. |
SSLAcceptServerCertEncoded | The certificate (PEM/base64 encoded). |
SSLCertEncoded | The certificate (PEM/base64 encoded). |
SSLCertStore | The name of the certificate store for the client certificate. |
SSLCertStorePassword | If the certificate store is of a type that requires a password, this property is used to specify that password in order to open the certificate store. |
SSLCertStoreType | The type of certificate store for this certificate. |
SSLCertSubject | The subject of the certificate used for client authentication. |
SSLServerCertEncoded | The certificate (PEM/base64 encoded). |
Timeout | A timeout for the component. |
TotalValue | Total value of the items inside the package. |
USPSAccountNumber | The shipper's Endicia account number. |
USPSPassword | Password to use for logging in to the USPS Server . |
USPSServer | URL for the USPS server where the requests are sent. |
USPSUserId | User Id for logging in to the USPS Server . |
Method List
The following is the full list of the methods of the component with short descriptions. Click on the links for further details.
Config | Sets or retrieves a configuration setting . |
GetRates | Calculates postage rates to ship a package via the RequestedService . |
GetShippingTime | Returns the estimated time to ship a package from ZipCode to ZipCode . |
Reset | Resets the internal state of the component and all properties to their default values. |
Event List
The following is the full list of the events fired by the component with short descriptions. Click on the links for further details.
Error | Information about errors during data delivery. |
Notification | Notification returned by the server upon successful request (if applicable). |
SSLServerAuthentication | Fired after the server presents its certificate to the client. |
SSLStatus | Shows the progress of the secure connection. |
Configuration Settings
The following is a list of configuration settings for the component with short descriptions. Click on the links for further details.
RawRequest | Contains the complete request sent to USPS. |
RawResponse | Contains the complete response returned by the USPS server. |
XPath | Used to retrieve data at any place within the response. |
RequesterId | The Requester Id to be used for Endicia requests. |
CommercialRate | Contains the commercial postage rate for the indicated package. |
DimensionalWeight[i] | The dimensional weight of the package at the indicated index. |
UseDimensionalWeight | Determines whether to use the dimensional weight or not. |
EntryFacility | Postal facility where mail is entered. |
EndiciaInsuranceType | The Insurance type when using Endicia. |
EndiciaInsuredMail | Used to request Endicia mailpiece insurance. |
ServiceClassId[i] | ClassId for the service specified by the index i. |
RateType | Indicates the rate type to be returned by Endicia. |
RatesSpecialServices | Rates Special Services when requesting rates. |
RestrictionsCount | The number of restrictions returned by USPS. |
Restrictions[i] | The restrictions returned by USPS. |
SortType | Sort level for applicable mail classes. |
ShipDate | Date package will be mailed. |
ServiceIndex | Services returned by USPS. |
AddOnCount | Total number of AddOns. |
AddOnType[i] | Indicates the AddOn type. |
AddOnDescription[i] | Indicates the AddOn description. |
AddOnAmount[i] | Indicates the AddOn amount. |
AddOnAggregate[i] | Indicates the AddOn raw XML. |
RectangularShaped | Whether the package has a rectangular shape. |
IntlOriginZip | US origin ZIP Code used to obtain non-Flat Rate pricing and availability for Canada destinations using Priority Mail International. |
IntlDestinationPostalCode | Destination Postal Code for getting a Guaranteed Delivery Date with Priority Mail Express International. |
IntlAcceptanceDateTime | Acceptance Date Time for getting a Guaranteed Delivery Date with Priority Mail Express International. |
AcceptEncoding | Used to tell the server which types of content encodings the client supports. |
AllowHTTPCompression | This property enables HTTP compression for receiving data. |
AllowIdenticalRedirectURL | Allow redirects to the same URL. |
Append | Whether to append data to LocalFile. |
Authorization | The Authorization string to be sent to the server. |
BytesTransferred | Contains the number of bytes transferred in the response data. |
EncodeURL | If set to true the URL will be encoded by the component. |
FollowRedirects | Determines what happens when the server issues a redirect. |
GetOn302Redirect | If set to true the component will perform a GET on the new location. |
HTTPVersion | The version of HTTP used by the component. |
IfModifiedSince | A date determining the maximum age of the desired document. |
KeepAlive | Determines whether the HTTP connection is closed after completion of the request. |
MaxRedirectAttempts | Limits the number of redirects that are followed in a request. |
OtherHeaders | Other headers as determined by the user (optional). |
ProxyAuthorization | The authorization string to be sent to the proxy server. |
ProxyAuthScheme | The authorization scheme to be used for the proxy. |
ProxyPassword | A password if authentication is to be used for the proxy. |
ProxyPort | Port for the proxy server (default 80). |
ProxyServer | Name or IP address of a proxy server (optional). |
ProxyUser | A user name if authentication is to be used for the proxy. |
TransferredDataLimit | The maximum number of incoming bytes to be stored by the component. |
TransferredHeaders | The full set of headers as received from the server. |
UseChunkedEncoding | Enables or Disables HTTP chunked encoding for transfers. |
ChunkSize | Specifies the chunk size in bytes when using chunked encoding. |
UserAgent | Information about the user agent (browser). |
KerberosSPN | The Service Principal Name for the Kerberos Domain Controller. |
ConnectionTimeout | Sets a separate timeout value for establishing a connection. |
FirewallAutoDetect | Tells the component whether or not to automatically detect and use firewall system settings, if available. |
FirewallHost | Name or IP address of firewall (optional). |
FirewallPassword | Password to be used if authentication is to be used when connecting through the firewall. |
FirewallPort | The TCP port for the FirewallHost;. |
FirewallType | Determines the type of firewall to connect through. |
FirewallUser | A user name if authentication is to be used connecting through a firewall. |
KeepAliveTime | The inactivity time in milliseconds before a TCP keep-alive packet is sent. |
KeepAliveInterval | The retry interval, in milliseconds, to be used when a TCP keep-alive packet is sent and no response is received. |
Linger | When set to True, connections are terminated gracefully. |
LingerTime | Time in seconds to have the connection linger. |
LocalHost | The name of the local host through which connections are initiated or accepted. |
LocalPort | The TCP port in the local host where the component binds. |
MaxLineLength | The maximum amount of data to accumulate when no EOL is found. |
MaxTransferRate | The transfer rate limit in bytes per second. |
RecordLength | The length of received data records. |
TCPKeepAlive | Determines whether or not the keep alive socket option is enabled. |
UseIPv6 | Whether to use IPv6. |
TcpNoDelay | Whether or not to delay when sending packets. |
TLS12SignatureAlgorithms | Defines the allowed TLS 1.2 signature algorithms when UseManagedSecurityAPI is True. |
ReuseSSLSession | Determines if the SSL session is reused. |
SSLCipherStrength | The minimum cipher strength used for bulk encryption. |
SSLEnabledProtocols | Used to enable/disable the supported security protocols. |
SSLProvider | The name of the security provider to use. |
SSLSecurityFlags | Flags that control certificate verification. |
OpenSSLCADir | The path to a directory containing CA certificates. |
OpenSSLCAFile | Name of the file containing the list of CA's trusted by your application. |
OpenSSLCipherList | A string that controls the ciphers to be used by SSL. |
OpenSSLPrngSeedData | The data to seed the pseudo random number generator (PRNG). |
AbsoluteTimeout | Determines whether timeouts are inactivity timeouts or absolute timeouts. |
FirewallData | Used to send extra data to the firewall. |
InBufferSize | The size in bytes of the incoming queue of the socket. |
OutBufferSize | The size in bytes of the outgoing queue of the socket. |
CodePage | The system code page used for Unicode to Multibyte translations. |