Pickup

Get Pickup Price – SOAP

Summary

Name: Get Pickup Price
Reason to Call: To find out the price charged to a customer for an on-demand pickup. (Ranges from “free” for contract customers to a range of charges, depending on the number and type of parcels picked up).

Note: This service confirms a price that would be charged on a certain date.

Don’t use it to confirm that pickup service is available on that date.
Input:
  • Customer Number
  • Contract number, if applicable
  • Indicate if the pickup items are for Priority or Priority Worldwide shipping (These shipments are picked up for free)
Output: Price info
Typical Prior Call: Get Pickup Availability
Typical Next Call: Create Pickup Request
Version history: Release notes
Get Pickup Price – Summary of Service

Get Pickup Price – Summary of Service

Call Details

WSDL: pickup.wsdl
Endpoint (Development): https://ct.soa-gw.canadapost.ca/enab/soap/pickup
Endpoint (Production): https://soa-gw.canadapost.ca/enab/soap/pickup
Namespace: http://www.canadapost.ca/ws/pickup
Operation: GetPickupPrice

SOAP Body

This section describes the XML input elements to Create Pickup Request. For the hierarchical structure, see the XML diagram.

Get Pickup Price – Request Elements
Element Name Type Required/Optional Description/Size/Format

get-pickup-price-request

Complex

Required

The top level XML element for the request input information.

customer-number

Simple

Required

(1-10 digit numeric)
Your customer number. If fewer than 10 digits are provided, the system will add leading zeroes.

locale

Simple

Optional

Your language preference for receiving error messages.
EN = English
FR = French
If no value is provided, the default language is English.

platform-id

Simple

Optional

Customer number of the platform. For e-commerce platforms only.

pickup-details

Complex

Required

This is the top level XML element for the request input information.
Reminder: These requests are for on-demand pickups

contract-id

Simple

Optional

Your Parcels agreement number, if you have one.
(numeric – up to 10 digits)
Note: You can omit this element. It will be used in a future release.

pickup-location

Complex

Required

Structure containing the address where the pickup is to occur.

date

Simple

Optional

Pickup date. Date format (yyyy-mm-dd).
Defaulted to today’s date.
Important: Only used to determine the price on that date; no validation is done that pickup is actually possible on that date.

pww-flag

Simple

Optional

{true}, {false}
Identifies that Priority Worldwide items will be in the pickup request.
Defaults to false.

priority-flag

Simple

Optional

{true}, {false}
Identifies that Priority™ items will be in the pickup request.
Defaults to false.

alternate-address-postal-code

Simple

Optional

The postal code of the address where the pickup is to be done.

Only required if the pickup is to be done at an alternate address than the business address specified in your Canada Post profile.
Format A9A9A9 or A9A 9A9.
Note: Province would be derived from this postal code when calculating taxes.

Request – XML Diagram

Get Pickup Price – Structure of the XML Request

Get Pickup Price – Structure of the XML Request

Response Details

Response – Elements

The table below describes the XML fields in the response. For the hierarchy of the response, see the XML diagram.

Get Pickup Price – Response Elements
Element Name Type Description

get-pickup-price-response

Complex

The top level XML element for the response.
It will either contain the successful completion structure or the error message structure.

pre-tax-amount

Simple

Base charges for the pickup.

gst-amount

Simple

Goods and services tax amount.

pst-amount

Simple

Provincial sales tax amount.

hst-amount

Simple

Harmonized sales tax amount.

due-amount

Simple

Total charges.

Response – XML Diagram

Get Pickup Price - Structure of the XML Response

Get Pickup Price - Structure of the XML Response

Response – Possible Error Responses

Code Description

11003

The date is in the past or invalid.

11005

Customer not valid or blocked.

See also Error messages and mitigation strategies.

Examples

Sample SOAP XML Request – Get Pickup Price

<get-pickup-price-request>
<customer-number>1234567</customer-number>
<locale>EN</locale>
<pickup-details>
<date>2016-07-18</date>
<contract-id>12345678</contract-id>
<pww-flag>false</pww-flag>
<priority-flag>false</priority-flag>
</pickup-details>
</get-pickup-request-details-request>

Sample SOAP XML Response – Get Pickup Price

<get-pickup-price-response>
<pickup-request-price>
<pre-tax-amount>3.50</pre-tax-amount>
<gst-amount>0.18</gst-amount>
<pst-amount>0.35</pst-amount>
<due-amount>4.03</due-amount>
</pickup-request-price>
</get-pickup-price-response>

Development (Sandbox) Environment XML Response – Get Pickup Price

The response is stubbed (static) in the Development environment; you will always receive a response of $3.50 plus 15% GST (as in samples above). In real-life taxes will reflect those in your province, or those in alternate-address-province if provided.