
Google::Checkout::General::DigitalContent

use Google::Checkout::General::GCO;
use Google::Checkout::General::ShoppingCart;
use Google::Checkout::General::MerchantItem;
use Google::Checkout::General::DigitalContent;
use Google::Checkout::General::Util qw/is_gco_error/;
my $checkout_flow = Google::Checkout::General::MerchantCheckoutFlow->new(
shipping_method => [$method],
edit_cart_url => "http://edit/cart/url",
continue_shopping_url => "http://continue/shopping/url",
buyer_phone => "1-111-111-1111",
tax_table => [$table1, $table2],
merchant_calculation => $merchant_calculation);
my $cart = Google::Checkout::General::ShoppingCart->new(
expiration => "+1 month",
private => "Private data",
checkout_flow => $checkout_flow);
my $item1 = Google::Checkout::General::MerchantItem->new(
name => "Test item 1",
description => "Test description 1",
price => 12.34,
quantity => 12,
private => "Item #1",
tax_table_selector => "item");
#--
#-- Same as MerchantItem except this is for digital delivery
#--
my $item2 = Google::Checkout::General::DigitalContent->new(
name => "Digital Content",
description => "For digital delivery",
price => 19.99,
quantity => 1,
delivery_method => Google::Checkout::General::DigitalContent::EMAIL_DELIVERY
);
my $item3 = Google::Checkout::General::DigitalContent->new(
name => $item2->get_name,
description => $item2->get_description,
price => $item2->get_price,
quantity => 1,
delivery_method => Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY,
download_instruction => "Use key to login and URL to download.",
key => "12345",
url => "http://abc/download"
);
$cart->add_item($item1);
$cart->add_item($item2);
$cart->add_item($item3);
my $response = Google::Checkout::General::GCO->new->checkout($cart);
die $response if is_gco_error($response);
#--
#-- redirect URL
#--
print $response,"\n";

Subclass of Google::Checkout::General::MerchantItem used for digital delivery.
Constructor. Accepts the same parameter as Google::Checkout::General::MerchantItem with the additional support for digital delivery. `delivery_method' should be either Google::Checkout::General::DigitalContent::EMAIL_DELIVERY for Email delivery or Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY for key/URL deliver. If key/URL delivery, additional parameter for `key' or `url' must be provided.
Returns delivery method. Either Google::Checkout::General::DigitalContent::EMAIL_DELIVERY or Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY or empty string if the delivery method hasn't been set.
Sets the delivery method. Valid method are either Google::Checkout::General::DigitalContent::EMAIL_DELIVERY or Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY. Any other value will clear the delivery method to an empty string.
Returns the download instruction. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.
Sets the download instruction. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.
Returns key for key/URL delivery. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.
Sets the key for key/URL delivery. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.
Sets the price of the merchant item.
Returns the URL for key/URL delivery. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.
Sets the URL for key/URL delivery. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.

Copyright 2006 Google. All rights reserved.
