Checkout Web Service
Introduction
UltraCart offers a SOAP interface to the Checkout process. Admittedly, it's not well documented. There aren't many merchants currently using it.
The functionality of it is nearly identical to the Javascript API, in terms of methods and objects, so please cross-reference the Javascript API docs for insight.
The best way to see the SOAP API is to download the reference implementation and run it.
Requirements: It requires PHP5 and there's a function for determing page url that relies on Apache (not IIS).
Installation:
- Unzip it into any php directory and browse to
cart.php
. - There are instructions on the page for adding items to the cart.
- Once items are in the cart, it will behave like the standard UltraCart single page checkout.
Here's the working example: ucsoap_3.0.zip
Example |
Version |
Changes |
---|---|---|
1.0 |
Initial Version |
|
1.1 |
Added |
|
3.0 |
Updated to run against v3.0 of Checkout. This version has call logging. Login to secure.ultracart.com and visit the Developer Tools section. Click on Call History. |
WSDL
Here's the WSDL. It has all the gory details.https://secure.ultracart.com/axis/services/CheckoutAPIV3?wsdl
Version 3 rolled out on May 10, 2012.
Usage
Here's an example php script for using the SOAP Checkout:
<?php $url = 'https://secure.ultracart.com/axis/services/CheckoutAPIV3?wsdl'; $client = new SoapClient($url); $merchantId = 'DEMO'; /*** Check if there's already a cart ***/ if(!isset($_COOKIE["cartId"])){ $cartChangeResult = $client->createCart($merchantId); $cart = $cartChangeResult->cart; }else{ $cartId=$_COOKIE["cartId"]; $cartChangeResult = $client->getCart($merchantId,$cartId); $cart = $cartChangeResult->cart; } ?>
Sample Files
Version 3
File |
Comments |
---|---|
List all SOAP functions |
|
Add an item to a cart |
|
Add several items to a cart |
|
Get items and display them |
|
Add/Update/Delete Items, also Clear Cart and estimateShipping. You'll need jquery.1.4.2+ to execute estimateShipping() |
|
queries available shipping methods and returns them in json format. called via ajax by update_items.php |
Version 1
File |
Comments |
---|---|
List all SOAP functions |
|
Add an item to a cart |
|
Add several items to a cart |
|
Get items and display them |
|
Add/Update/Delete Items, also Clear Cart and estimateShipping. You'll need jquery.1.4.2+ to execute estimateShipping() |
|
queries available shipping methods and returns them in json format. called via ajax by update_items.php |
Common Problems
No deserializer for CartItemMultimedia
Further Information
What would you like to see? Use the feedback button at the bottom of this page or the Forums and let us know what tutorials you'd like to see.