PostalOne!® - Facility Access and Shipment Tracking (FAST) System Interface Connectivity Testing Plan

December 2008
Version 2.3
USPS BME and Payment Technologies

TABLE OF CONTENTS

1	INTRODUCTION	2
1.1	Background	2
1.2	Purpose	2
1.3	IDEAlliance Mail.XML™ Specifications	2
1.3.1	Mail.XML 6.0 Messages Supported by the PostalOne! system and FAST – Full-Service Release 1	3
1.3.2	Messages NOT Supported for Appointment management by the USPS	3
1.3.3	Delivery Appointment Messages	4
1.3.4	Delivery Content Messages	4
1.3.5	Appointment Shell Messages	5
1.3.6	Recurring Appointment Query Messages	5
1.3.7	Appointment Closeout Messages	5
1.3.8	Partner Appointment Query Messages	6
1.3.9	Customer Supplier Agreement Messages	6
1.4	Scope of Testing	6
1.5	PostalOne! WSDL Information	7
1.6	System Level Context Diagram	7
1.7	Assumptions and Constraints	8
1.8	Objective Details	9
1.9	URL Validation	9
1.10	Authentication/Authorization	9
1.11	External Customer (EC) sends Web Services Requests to the PostalOne! System	9
1.11.1	Query – the shipper queries a USPS facility for open appointment slots	9
1.11.2	Create/Schedule Appointment (single) – the shipper schedules a single appointment.	10
1.11.3	Update/Modify Scheduled Appointment (single) – the shipper updates a single scheduled appointment.	10
1.11.4	Cancel – the shipper wants to cancel a previously established appointment	11
1.12	Phase 2 of Scheduler Web Services Testing with FAST	11

1	
INTRODUCTION
1.1	Background
The USPS® requires appointment scheduling for drop shipped mail at USPS facilities for better resource planning and service performance. The USPS FAST (Facilities Access and Shipment Tracking) system is the business processing engine that provides appointment slots, for mailers to drop ship their mail.
FAST will utilize the PostalOne!® system’s external customers (i.e. mail owners, service providers, and mail shippers) gateway capability for its customers that are dropping mail products at USPS processing facilities.  The PostalOne! system is responsible for providing the data exchange capability that will facilitate the business process between the business mailing customers and the FAST system.  The interface within the PostalOne! system which will handle all FAST Web Services messages is the Mail.XML Web Services Interface (formerly known as PFSTI).
PostalOne! Mail.XML Web Services utilizes the IDEAlliance Mail.XML specifications. The PostalOne! system and FAST currently support Mail.XML 4.0 and TM 2.0.  The next version of the specification, Mail.XML 6.0, will provide support to the Full Service electronic documentation functionality from single piece information; to range piece information; to nesting of pieces into handling units and handling units into containers; postage payment, qualification reports, and electronic documentation management through transaction updates. Mail.XML 6.0 will also provide full capability for appointment scheduling for DMU verified customer transported (plant loads) of First-Class, Standard, Periodicals and Package Services origin entry to support the needs of Full Service.  Both the PostalOne! system and FAST will provide support to Mail.XML v6.0 in May 2009. 
The IDEAlliance Mail.XML v6.0 Specification transportation related messages are made up of families of related messages that are sent between the Shippers, Consignees and third parties to communicate via web services and to accomplish/enhance many of the tasks that were previously managed through other interfaces and specifications such IDEAlliance Mail.dat specifications and web-based reports.
1.2	Purpose
The purpose of this document is to outline the process that is required by the USPS for the Mail.XML web services solution, prior to getting activated as a valid user of Mail.XML for FAST in the USPS PostalOne! Production environment. The document describes a two step testing process. Step one is Connectivity testing in the PostalOne! testing environment to ensure that the customer’ software is able to communicate back and forth with the PostalOne! system via Web Services using the Mail.XML specification. The second step is to complete the survey for FAST and submit to the FAST Web Services support team, which will provide business test scenarios that the customer’s software needs to complete to execute appointment scheduling via Web Services in the production environment.
The initial step to begin the testing process is to register with the PostalOne! system and receive the user ids and Scheduler ID(s) for testing purposes. It is as easy as visiting the PostalOne! home page at www.usps.com/postalone and clicking the Learn More button on the right under New Customers. There, you will find additional information about the program and application process. If you have questions, please contact the PostalOne! Customer Care Center at (800) 522-9085. More Scheduling specific information is available at the following URLs:
http://www.usps.com/postalone/autodropshipschedule.htm
http://www.mailxml.org
1.3	IDEAlliance Mail.XML™ Specifications
The following functionality will be supported by the PostalOne! system and FAST with IDEAlliance Mail.XML 6.0: 
•	Provide the ability to create, update, and cancel Standard Mail, Periodicals, and Package Services class-based appointments for customer-transported appointments
•	Provide the capability to create, update, cancel recurring appointments for customer transported origin entry appointments (First-Class Mail, Standard Mail, Periodicals, and Package Services)
•	Provide the capability to create, update, cancel recurring appointments for drop ship appointments
•	More than 1 sibling barcode can be associated with a unique container barcode. 
•	Leverage the CancelCreate message to move containers from one appointment to another when the original appointment was a “No Show”.
•	Leverage the DeliveryContent messages to add, update, or cancel a container to an appointment.
•	Leverage the Delivery Appointment Cancel Create message to release containers from one appointment and schedule to another when the original appointment status is "Open" or “No Show”.
•	Provide closeout information for customer-transported origin entry appointments (all mail classes).  
1.3.1	Mail.XML 6.0 Messages Supported by the PostalOne! system and FAST – Full-Service Release 1
DeliveryApptCreateRequest 	DeliveryApptCreateResponse	
DeliveryApptUpdateRequest	DeliveryApptUpdateResponse	
DeliveryApptCancelRequest	DeliveryApptCancelResponse	
DeliveryApptQueryRequest	DeliveryApptQueryResponse	
DeliveryContentCreateRequest	DeliveryContentCreateResponse	
DeliveryContentUpdateRequest	DeliveryApptShellCreateRequest	
DeliveryContentUpdateResponse	DeliveryApptShellCreateResponse	
DeliveryContentCancelRequest	DeliveryApptShellUpdateRequest	
DeliveryContentCancelResponse	DeliveryApptShellUpdateResponse	
DeliveryContentQueryRequest	DeliveryApptShellCancelRequest	
DeliveryContentQueryResponse	DeliveryApptShellCancelResponse	
PartnerApptQueryRequest 	AllDeliveryAppointmentCloseoutRequest	
PartnerApptQueryResponse 	AllAppointmentCloseoutResponse	
CustomerSupplierAgreementQueryRequest	ConsigneeGoodsReceipt	
CustomerSupplierAgreementQueryResponse	UnscheduledConsigneeGoodsReceipt	
RecurringApptQueryRequest	MessageResponseRetrievalRequest	
RecurringApptQueryResponse	MessageResponseRetrievalResponse	
1.3.2	Messages NOT Supported for Appointment management by the USPS
AllPickUpApptCloseoutRequest	CustomerRelationIdentifyUpdateRequest	
ApptinductionCloseoutRequest	CustomerRelationIdentifyUpdateResponse	
ApptinductionCloseoutResponse	DeliveryApptContentRemoveRequest	
ConsigneeGoodsReceiptNotification	DeliveryApptContentRemoveResponse	
ConsigneeGoodsReceiptDelivery	DeliveryApptMultiStopUpdateRequest	
CustomerRelationIdentifyQueryRequest	DeliveryReAptRequest	
CustomerRelationIdentifyQueryResponse	DeliveryResponse	
DeliveryApptStatusQueryRequest	PickupApptCreateRequest	
DeliveryApptStatusQueryResponse	PickupApptCreateResponse	
DeliveryApptTransportationUpdateRequest	PickupApptCancelRequest	
DeliveryApptTransportationUpdateResponse	PickupApptCancelRequest	
UnscheduledConsigneeGoodsReceiptNotification	PickupApptUpdateRequest	
UnscheduledConsigneeGoodsReceiptDelivery	PickupApptUpdateRequest	
GoodsreceiptResponse	USPSForecastCancelRequest	
OpenApptQueryRequest	USPSForecastCancelResponse	
OpenApptQueryRequest	USPSForecastUpdateRequest	
USPSForecastCreateRequest	USPSForecastUpdateResponse	
USPSForecastCreateResponse		
1.3.3	Delivery Appointment Messages
This family of Mail.XML transportation related messages supports scenarios where a Shipper requests a Delivery Appointment from the Consignee. The Consignee may respond a number of ways, all of which are supported by messages from this message family.  Delivery appointment messages will: 
•	Provide the ability to create, update, and cancel First-Class DMU customer transported appointments
•	Provide the ability to create, update, and cancel drop ship appointments
•	Provide the ability to create, update, and cancel First-Class DMU customer transported recurring appointments
•	Provide the ability to create, update, and cancel drop ship recurring appointments
•	Provide the ability to query the availability of slots (based on hours of operation) for First-Class DMU/BMEU customer transported appointments
•	Provide the ability to query the availability of slots for drop ship appointment
•	Provide the ability to distinguish eVS parcels and submit the associated eFile Number for which they were manifested
•	Provide the ability to support for new container types and handling units
•	Provide the ability to support the sibling containers
•	Provide the ability to associate stand-alone contents to a one-time appointment
•	Ability to provide the Intelligent Mail Container Barcodes(IMCB) associated to the appointment 
•	Provide the ability to create, update, and cancel customer transported origin entry appointments (First-Class Mail, Standard Mail, Periodicals, and Package Services)
•	Provide the ability to create, update, and cancel customer transported origin entry recurring appointments (First-Class Mail, Standard Mail, Periodicals, and Package Services)
•	Provide the ability to cancel one or more appointments and create a new appointment using the delivery appointment cancel create message.
•	Provide the ability transfer content(s) from one or more cancelled appointments to a newly created appointment using the delivery appointment cancel create message.
Delivery Appointment Messages
DeliveryApptCreateRequest / DeliveryApptCreateResponse
DeliveryApptUpdateRequest / DeliveryApptUpdateResponse
DeliveryApptCancelRequest / DeliveryApptCancelResponse
DeliveryApptQueryRequest / DeliveryApptQueryResponse
DeliveryApptCancelCreateRequest / DeliveryApptCancelCreateResponse
1.3.4	Delivery Content Messages
This family of Mail.XML transportation related messages supports scenarios where the PostalOne! system sends content information to FAST without sending any appointment level information. The Consignee may respond a number of ways, all of which are supported by messages from this message family.  These sets of messages apply for scheduling of drop ship appointments only.
Delivery Content messages provide the:
•	Ability to create, update, and cancel stand-alone content that can be used by a business partner with a DeliveryAppointmentCreate or update Request
•	Ability to create, update, and cancel contents for one-time and recurring appointments
•	Ability to distinguish eVS parcels and submit the associated eFile Number for which they were manifested
•	Support for new container types and handling units
•	Support for sibling containers
•	Ability for schedulers to query for content created by other mail owners/mail preparers
•	Ability to provide the Intelligent Mail Container Barcodes(IMCB) associated to the appointment
•	Ability to add, update, or cancel a container to an appointment by a Scheduler
Delivery Content Messages
DeliveryContentCreateRequest / DeliveryContentCreateResponse
DeliveryContentUpdateRequest / DeliveryContentUpdateResponse
DeliveryContentCancelRequest / DeliveryContentCancelResponse
DeliveryContentQueryRequest / DeliveryContentQueryResponse
1.3.5	Appointment Shell Messages
This family of Mail.XML transportation related messages enables mailers to create appointment shells (appointments with no associated content). Mail owners and mail preparers can use the Delivery Content Messages to create and associate content to appointment shells.  This family of messages allows for joint scheduling between schedulers and mail owners and mail preparers.  Appointment Shell messages will provide the: 
•	Ability to create, update, and cancel recurring appointment shells
•	Ability to create, update, and cancel one-time appointments shells
•	Ability to update the logistics information of an appointment by utilizing the appointment shell update message
Appointment Shell Messages
DeliveryApptShellCreateRequest / DeliveryApptShellCreateResponse
DeliveryApptShellUpdateRequest / DeliveryApptShellUpdateResponse
DeliveryApptShellCancelRequest / DeliveryApptShellCancelResponse
1.3.6	Recurring Appointment Query Messages
This family of Mail.XML transportation related messages allows mailers to query for active and pending recurring appointments. Recurring Appointment query messages will provide the: 
•	Ability to query for active and pending drop ship recurring appointments
•	Ability to query for active First-Class DMU/BMEU verified customer transported appointments
Recurring Appointment Query Messages
RecurringApptQueryRequest / RecurringApptQueryResponse
1.3.7	Appointment Closeout Messages
This series of messages is pushed from the Consignee to the Shipper closeout an appointment.  Closeout Messages will provide the:
•	Ability to send closeout information for First-Class DMU/BMEU verified customer transported appointments
•	Ability to send closeout information for drop ship appointments
•	Ability to communicate closeout irregularities
•	Ability to communicate arrival date/time, unload start date/time, unload end date/time, and actual pallet counts 
•	Ability to indicate if IMCB Pallet Placard scan occurred
•	Ability to communicate if a drop ship appointment will be excluded from rating
•	Provide closeout information for customer transported origin entry appointments (all mail classes).
Appointment Closeout Messages
AllDeliveryAppointmentCloseoutRequest
AllAppointmentCloseoutResponse
ConsigneeGoodsReceipt
UnscheduledConsigneeGoodsReceipt
1.3.8	Partner Appointment Query Messages
This family of Mail.XML transportation related messages allows mailers to query appointment and content information on behalf of partner mailers: 
•	Partner Appointment Query Request 
•	Partner Appointment Query Response
Partner Appointment Query Messages
PartnerApptQueryRequest 
PartnerApptQueryResponse
1.3.9	Customer Supplier Agreement Messages
This will allow Web Services capable mailers to query for their associated customer supplier agreements via CRID or CSA IDs (if known). These messages include: 
•	Customer Supplier Agreement Query Request 
•	Customer Supplier Agreement Query Response
CSA Messages
CustomerSupplierAgreementQueryRequest 
CustomerSupplierAgreementQueryResponse
1.4	Scope of Testing
This document is dedicated to defining the connectivity testing objective of the PostalOne! Mail.XML Web Services within the CAT environment to meet quick customer readiness goals in the most efficient and cost effective manner.  
The connectivity testing is Phase 1 of Scheduler Web Services Testing, which is the overall testing effort that allows External Customers (EC) to verify that their companies are ready to submit appointments using PostalOne! Mail.XML Web Services in the FAST production environment.  Phase 2 is testing with FAST to execute business scenarios based on the customer’s business capabilities/needs of the FAST system
Please note that completion of the test cases listed below depends on FAST being configured and deployed in the CAT environment. The main objectives of connectivity testing are the following: 
•	Customer can access USPS PostalOne!/FAST Web services (CAT specific) URL https://fastcat.uspspostalone.com/PFSTIApptWeb/services/AppointmentServices and can connect to the PostalOne! system.
•	Get Authenticated and Authorized by the PostalOne! system
•	If applicable, send Mail.dat data that the PostalOne! system can use to complete the XML messages
•	Pass messages using IDEAlliance Mail.XML Specification to the PostalOne! Mail.XML Web Services for format validation for the following services:
o	Query – Check status of facility access capability/capacity
o	Create/Schedule – Establish a new single stop appointment or notification
o	Update/Modify – Change the attributes of an existing single stop appointment
o	Cancel – Cancel an appointment
o	Closeout – Receive closeout information for appointments
o	Etc.
•	Receive the appropriate error codes from the PostalOne! system for malformed XML messages
•	Receive the appropriate responses from FAST for messages that pass PostalOne! input validation 
At a high level, the connectivity test will make sure that the Web Services, authentication, and authorization requirements related components are being accurately addressed.  This test will determine the overall quality of the delivered Mail.XML Web Services  and custom developed components, as well as their suitability to perform the required business functions.  The PostalOne! Connectivity testing effort will insure that all modules and interfaces are accurately handshaking and that data integrity is consistent and accurate between systems.
1.5	PostalOne! WSDL Information
In order to support IDEAlliance Mail.XML Specification changes and the newly added Appointment messages types, the PostalOne! system will update the WSDL information will create a new WSDL.  Mailers are encouraged to use the new WSDL even if they plan to continue sending and receiving web services requests using previous version of IDEAlliance Mail.XML Appointment requests. 
Mailers can access and download the supported versions of the PostalOne! WSDL from the following location:
•	http://www.usps.com/postalone/autodropshipschedule.htm   
•	New WSDL (TM1.1/TM2.0/MailXML4.0 Appointment Messages) for Production (ZIP) (3kb) 
•	New WSDL (TM1.1/TM2.0/MailXML4.0 Appointment Messages) for Connectivity Testing, prior to becoming Production-ready (ZIP) (3kb)
1.6	System Level Context Diagram
As identified in the System Level Context Diagram above, the main focus of this connectivity testing document is  connectivity testing between the mailers and PostalOne! Mail.XML Web Services (PFSTI) portion of the diagram.  Test cases covering the different FAST system responses to External Customers (EC) are not considered part of connectivity testing. 

Figure 1. System Context Diagram
1.7	Assumptions and Constraints
The following assumptions and constraints will directly impact the success of Connectivity Testing:
•	External Customers (EC) will be ready to support Mail.XML Web Services transactions via Mail.dat where applicable, and pure Mail.XML Web Services messages.
•	FAST system will be available to process any messages or transactions sent by the PostalOne! system to FAST.
•	PostalOne! Mail.XML Web Services  will be accessible to External Customer in  CAT environment via the provided URL. The Mail.XML Web Services release will be functioning and capable of supporting the test messages.
•	Any issues identified as related to the implementation of PostalOne! Mail.XML Web Services will be documented and processed as either a defect ECR or a changes request CR. ECRs and CRs will be reviewed and approved on a case-by-case basis by USPS IT. 
•	EC has correct CAT WSDL <link> file with the right Web Services and URL information.
•	EC will create all test data to support connectivity testing. 
•	EC will already be registered in the PostalOne! CAT environment and will have username, password, SchedulerCorpId and SchedulerId provided by USPS.
1.8	Objective Details
What Is Being Tested
This section describes the PostalOne! Mail.XML Web Services interface components that are being tested for the Phase 1 of Web Services testing, called Connectivity Testing.  The EC will also perform multiple positive and negative testing efforts for each of the Mail.XML Web Services interface components.  A positive test is defined as: verifying/checking that software does what it should.  From a Mail.XML Web Services connectivity testing perspective, a test is considered positive if the request is passed on to FAST. The response from FAST - whether good or bad – is considered outside of connectivity testing. Negative test is defined as verifying that the software does not do what it should not do. 
The following figure depicts the boundary of the connectivity testing where Mail.XML Web Services passes well-formed appointment requests to FAST and relays the responses back to the EC.

Figure 2. Connectivity Testing Context Diagram
1.9	URL Validation
The WSDL file provided by USPS is tested to make sure EC can access the USPS PostalOne!/FAST Web Services CAT URL.
1.10	Authentication/Authorization
With every message that is sent by EC to the PostalOne! system, the PostalOne! system will authenticate and authorize the user based on the username and password provided by EC.
1.11	External Customer (EC) sends Web Services Requests to the PostalOne! System
The customer can perform testing at any facility, with advanced notification to the FAST system support team.
1.11.1	Query – the shipper queries a USPS facility for open appointment slots
Query – Positive and Negative Tests
The PostalOne! team will perform connectivity testing for the query functionality.  The positive and negative tests that are outlined below comprise the positive and negative testing the PostalOne! team will perform for the query process.  Mailer will need to create data for this test and all tests.
QUERY Positive Tests	
1)  Shipper username and password is validated, Mail.XML Web Services to populate USPSSummary block, and shipper receives response from FAST.	
2)  Shipper username and password is validated, Mail.XML Web Services does not populate USPSSummary block, and shipper receives response from FAST.	
QUERY Negative Tests	
3)  Shipper username does not exist in the PostalOne! database.	
4)  Shipper password does not exist in PostalOne! database.	
5)  Improperly formatted XML - ShipperApptRequestID element removed from DeliveryApptQueryRequest message.	
6)  Improperly formatted XML - DatabaseContainerID numerically defined element populated with "abcdef."  NOTE: In the PostalOne! database, this field is defined as string and padded with zeroes. 	
7)  Shipper username and password is validated, Mail.XML Web Services populates USPSSummary block , PostalOne! Mail.dat database data not found (UserLicenseCode), shipper receives error response.	
8)  Shipper username and password is validated, Mail.XML Web Services populates USPSSummary block , PostalOne! Mail.dat Database data not found, (verificationZip4), shipper receives error response.	
1.11.2	Create/Schedule Appointment (single) – the shipper schedules a single appointment.
Create/Schedule Appointment (single) – positive and negative tests
The PostalOne! team will perform connectivity testing for Create/Schedule Appointment (single) functionality, the positive and negative tests that are outlined below comprise the positive and negative testing the PostalOne! team will perform for the Create/Schedule Appointment (single) process.  Mailer will need to create data for this test and all tests.
CREATE/SCHEDULE APPOINTMENT (single) Positive Tests	
1)  Shipper establishes a new Schedule Single Stop Appointment, Mail.XML Web Services does not populate USPSSummary block. Shipper receives response from FAST.	
2)  Shipper establishes a new Schedule Single Stop Appointment, Mail.XML Web Services populates USPSSummary block. Shipper receives response from FAST.	
CREATE/SCHEDULE APPOINTMENT (single) Negative Tests	
3)  Shipper username does not exist in PostalOne! database.	
4)  Shipper password does not exist in PostalOne! database.	
5)  Improperly formatted XML - ApptBlock element removed from DeliveryApptRequest message.	
6)  Improperly formatted XML - PreferredAppt date/time defined element populated with "mm/dd/ccyy."	
7)  Shipper username and password is validated, Mail.XML Web Services populates USPSSummary block , PostalOne! Mail.dat database data not found, (UserLicenseCode), shipper receives response.	
8)  Shipper username and password is validated, Mail.XML Web Services populates USPSSummary block , PostalOne! Mail.dat database data not found (verificationZip4), shipper receives response.	
1.11.3	Update/Modify Scheduled Appointment (single) – the shipper updates a single scheduled appointment.
Update Schedule Appointment (single) – positive and negative tests
The PostalOne! team will perform connectivity testing for Updating/Modifying a Scheduled Appointment (single) functionality.  The positive and negative tests that are outlined below comprise the positive and negative testing the PostalOne! team will perform for the Updating/Modifying a Scheduled Appointment (single) process.  Mailer will need to create data for this test and all tests.
UPDATE/MODIFY SCHEDULED APPOINTMENT Positive Tests	
1)  Shipper Updates A Single Stop Appointment Update, Mail.XML Web Services does not populate USPSSummary block, and shipper receives response from FAST.	
2)  Shipper updates A Single Stop Appointment Update, Mail.XML Web Services populates USPSSummary block,  and shipper receives response from FAST.	
UPDATE/MODIFY SCHEDULED APPOINTMENT Negative Tests	
3)  Shipper username does not exist in PostalOne! database.	
4)  Shipper password does not exist in PostalOne! database.	
5)  Improperly formatted XML - ApptBlockUpdate element removed from DeliveryApptUpdate message.	
6)  Improperly formatted XML - PreferredAppt date/time defined element populated with "mm/dd/ccyy."	
1.11.4	Cancel – the shipper wants to cancel a previously established appointment
Cancel – positive and negative tests
The PostalOne! team will perform connectivity testing for the cancel functionality.  The positive and negative tests that are outlined below comprise the positive and negative testing the PostalOne! team will perform for the cancel process.  Mailer will need to create data for this test and all tests.
CANCEL Positive Tests	
1)  Shipper username and password is validated, shipper receives response from FAST.	
CANCEL Negative Tests	
2)  Improperly formatted XML - ShipperApptRequestID mandatory XML element removed from message.	
1.12	Phase 2 of Scheduler Web Services Testing with FAST
Phase 2 testing with FAST begins after successful connectivity testing with PostalOne!.  The following details high level process for conducting business scenario testing with FAST: 
1.	Each Customer completes a FAST Web Services Testing Survey.  To obtain a survey, please contact the FAST Web Services testing team via email at FAST_webservice@usps.gov.
2.	FAST generates scenarios based on completed survey for customers to execute.
3.	Customer executes all test scenarios.  FAST Web Services testing team will monitor and guide through execution of test scenarios.
4.	FAST enables the customer to schedule appointments in production upon completion of all test scenarios.
Please contact the FAST Web Services testing team at FAST_webservice@usps.gov for questions on FAST Web Services testing.