1package Google::Checkout::XML::Constants;
2
3#--
4#-- Constants of XML strings
5#--
6
7use strict;
8use warnings;
9
10use Exporter;
11our @ISA = qw/Exporter/;
12
13#--
14#-- These are config constants
15#--
16use constant MERCHANT_ID        => "MERCHANT_ID";
17use constant MERCHANT_KEY       => "MERCHANT_KEY";
18use constant BASE_GCO_SERVER    => "BASE_GCO_SERVER";
19use constant XML_SCHEMA         => "XML_SCHEMA";
20use constant CURRENCY_SUPPORTED => "CURRENCY_SUPPORTED";
21
22#--
23#-- XML constants
24#--
25use constant CHECKOUT_ROOT    => "checkout-shopping-cart";
26use constant SHOPPING_CART    => "shopping-cart";
27use constant ITEMS            => "items";
28use constant ITEM             => "item";
29use constant ITEM_NAME        => "item-name";
30use constant ITEM_DESCRIPTION => "item-description";
31use constant ITEM_PRICE       => "unit-price";
32use constant ITEM_CURRENCY    => "currency";
33use constant QUANTITY         => "quantity";
34use constant CHECKOUT_FLOW    => "checkout-flow-support";
35use constant EXPIRATION       => "cart-expiration";
36use constant GOOD_UNTIL       => "good-until-date";
37use constant AMOUNT           => "amount";
38use constant MERCHANT_ITEM_ID => "merchant-item-id";
39
40use constant MERCHANT_PRIVATE_DATA => "merchant-private-data";
41use constant MERCHANT_PRIVATE_NOTE => "merchant-note";
42use constant ITEM_PRIVATE_DATA     => "merchant-private-item-data";
43use constant ITEM_PRIVATE_NOTE     => "item-note";
44use constant ITEM_DATA             => "item-data";
45use constant TAX_TABLE_SELECTOR    => "tax-table-selector";
46
47use constant MERCHANT_CHECKOUT_FLOW => "merchant-checkout-flow-support";
48
49use constant NAME               => "name";
50use constant PRICE              => "price";
51use constant SHIPPING_METHODS   => "shipping-methods";
52use constant FLAT_RATE_SHIPPING => "flat-rate-shipping";
53use constant PICKUP             => "pickup";
54
55use constant ADDRESS_FILTERS              => "address-filters";
56use constant SHIPPING_RESTRICTIONS        => "shipping-restrictions";
57use constant MERCHANT_CALCULATED_SHIPPING => "merchant-calculated-shipping";
58
59use constant ALLOWED_AREA        => "allowed-areas";
60use constant EXCLUDED_AREA       => "excluded-areas";
61use constant US_STATE            => "us-state-area";
62use constant STATE               => "state";
63use constant US_ZIP_AREA         => "us-zip-area";
64use constant US_ZIP_PATTERN      => "zip-pattern";
65use constant US_COUNTRY_AREA     => "us-country-area";
66use constant COUNTRY_AREA        => "country-area";
67use constant WORLD_AREA          => "world-area";
68use constant ALLOW_US_PO_BOX     => "allow-us-po-box";
69use constant POSTAL_AREA         => "postal-area";
70use constant COUNTRY_CODE        => "country-code";
71use constant POSTAL_CODE_PATTERN => "postal-code-pattern";
72
73use constant CONTINENTAL_48 => "CONTINENTAL_48";
74use constant FULL_50_STATES => "FULL_50_STATES";
75use constant ALL_STATES     => "ALL";
76use constant EU_COUNTRIES   => "EU_COUNTRIES";
77
78use constant EDIT_CART_URL         => "edit-cart-url";
79use constant CONTINUE_SHOPPING_URL => "continue-shopping-url";
80use constant BUYER_PHONE_NUMBER    => "request-buyer-phone-number";
81
82use constant TAX_TABLES               => "tax-tables";
83use constant DEFAULT_TAX_TABLE        => "default-tax-table";
84use constant ALTERNATE_TAX_TABLES     => "alternate-tax-tables";
85use constant ALTERNATE_TAX_TABLE      => "alternate-tax-table";
86use constant STANDALONE               => "standalone";
87use constant TAX_RULES                => "tax-rules";
88use constant DEFAULT_TAX_RULE         => "default-tax-rule";
89use constant ALTERNATE_TAX_RULES      => "alternate-tax-rules";
90use constant ALTERNATE_TAX_RULE       => "alternate-tax-rule";
91use constant SHIPPING_TAXED           => "shipping-taxed";
92use constant RATE                     => "rate";
93use constant TAX_AREA                 => "tax-area";
94use constant MERCHANT_CALCULATED      => "merchant-calculated";
95use constant MERCHANT_CALCULATION     => "merchant-calculations";
96use constant MERCHANT_CALCULATION_URL => "merchant-calculations-url";
97use constant ACCEPT_MERCHANT_COUPONS  => "accept-merchant-coupons";
98use constant ACCEPT_GIFT_CERTIFICATES => "accept-gift-certificates";
99
100use constant ORDER_NUMBER              => "google-order-number";
101use constant CHARGE_ORDER              => "charge-order";
102use constant REFUND_ORDER              => "refund-order";
103use constant CANCEL_ORDER              => "cancel-order";
104use constant PROCESS_ORDER             => "process-order";
105use constant DELIVER_ORDER             => "deliver-order";
106use constant TRACKING_DATA             => "tracking-data";
107use constant ADD_TRACKING_DATA         => "add-tracking-data";
108use constant ADD_MERCHANT_ORDER_NUMBER => "add-merchant-order-number";
109use constant SEND_BUYER_MESSAGE        => "send-buyer-message";
110use constant ARCHIVE_ORDER             => "archive-order";
111use constant AUTHORIZE_ORDER           => "authorize-order";
112use constant UNARCHIVE_ORDER           => "unarchive-order";
113use constant COMMENT                   => "comment";
114use constant REASON                    => "reason";
115use constant SEND_EMAIL                => "send-email";
116use constant CARRIER                   => "carrier";
117use constant MESSAGE                   => "message";
118use constant TRACKING_NUMBER           => "tracking-number";
119use constant MERCHANT_ORDER_NUMBER     => "merchant-order-number";
120
121use constant DHL   => 'DHL';
122use constant FedEx => 'FedEx';
123use constant UPS   => 'UPS';
124use constant USPS  => 'USPS';
125use constant Other => 'Other';
126
127use constant SERIAL_NUMBER                           => "serial-number";
128use constant ORDER_TOTAL                             => "order-total";
129use constant FULFILLMENT_ORDER_STATE                 => "fulfillment-order-state";
130use constant FINANCIAL_ORDER_STATE                   => "financial-order-state";
131use constant BUYER_ID                                => "buyer-id";
132use constant TIMESTAMP                               => "timestamp";
133use constant BUYER_MARKETING_PERFERENCES             => "buyer-marketing-preferences";
134use constant EMAIL_ALLOWED                           => "email-allowed";
135use constant ORDER_ADJUSTMENT                        => "order-adjustment";
136use constant MERCHANT_CALCULATION_SUCCESSFUL         => "merchant-calculation-successful";
137use constant TOTAL_TAX                               => "total-tax";
138use constant ADJUSTMENT_TOTAL                        => "adjustment-total";
139use constant MERCHANT_CODES                          => "merchant-codes";
140use constant GIFT_CERTIFICATE_ADJUSTMENT             => "gift-certificate-adjustment";
141use constant COUPON_ADJUSTMENT                       => "coupon-adjustment";
142use constant GIFT_CERTIFICATE_CALCULATED_AMOUNT      => "calculated-amount";
143use constant GIFT_CERTIFICATE_APPLIED_AMOUNT         => "applied-amount";
144use constant GIFT_CERTIFICATE_CODE                   => "code";
145use constant SHIPPING                                => "shipping";
146use constant MERCHANT_CALCULATED_SHIPPING_ADJUSTMENT => "merchant-calculated-shipping-adjustment";
147use constant FLAT_RATE_SHIPPING_ADJUSTMENT           => "flat-rate-shipping-adjustment";
148use constant PICKUP_SHIPPING_ADJUSTMENT              => "pickup-shipping-adjustment";
149use constant SHIPPING_NAME                           => "shipping-name";
150use constant SHIPPING_COST                           => "shipping-cost";
151
152use constant GET_SHIPPING    => "buyer";
153use constant GET_BILLING     => "billing";
154use constant BUYER_SHIPPING  => "buyer-shipping-address";
155use constant BUYER_BILLING   => "buyer-billing-address";
156use constant BILLING_ADDRESS => "billing-address";
157
158use constant BUYER_CONTACT_NAME => "contact-name";
159use constant BUYER_COMPANY_NAME => "company-name";
160use constant BUYER_EMAIL        => "email";
161use constant BUYER_PHONE        => "phone";
162use constant BUYER_FAX          => "fax";
163use constant BUYER_ADDRESS1     => "address1";
164use constant BUYER_ADDRESS2     => "address2";
165use constant BUYER_CITY         => "city";
166use constant BUYER_REGION       => "region";
167use constant BUYER_POSTAL_CODE  => "postal-code";
168use constant BUYER_COUNTRY_CODE => "country-code";
169
170use constant RISK_INFORMATION        => "risk-information";
171use constant ELIGIBLE_FOR_PROTECTION => "eligible-for-protection";
172use constant AVS_RESPONSE            => "avs-response";
173use constant CVN_RESPONSE            => "cvn-response";
174use constant PARTIAL_CC_NUMBER       => "partial-cc-number";
175use constant BUYER_ACCOUNT_AGE       => "buyer-account-age";
176use constant IP_ADDRESS              => "ip-address";
177
178use constant NEW_FULFILLMENT_ORDER_STATE      => "new-fulfillment-order-state";
179use constant NEW_FINANCIAL_ORDER_STATE        => "new-financial-order-state";
180use constant PREVIOUS_FULFILLMENT_ORDER_STATE => "previous-fulfillment-order-state";
181use constant PREVIOUS_FINANCIAL_ORDER_STATE   => "previous-financial-order-state";
182
183use constant LATEST_CHARGE_AMOUNT     => "latest-charge-amount";
184use constant TOTAL_CHARGE_AMOUNT      => "total-charge-amount";
185use constant LATEST_REFUND_AMOUNT     => "latest-refund-amount";
186use constant TOTAL_REFUND_AMOUNT      => "total-refund-amount";
187use constant LATEST_CHARGEBACK_AMOUNT => "latest-chargeback-amount";
188use constant TOTAL_CHARGEBACK_AMOUNT  => "total-chargeback-amount";
189
190use constant NOTIFICATION_ACKNOWLEDGMENT => "notification-acknowledgment";
191
192use constant CHECKOUT_REDIRECT => "checkout-redirect";
193use constant REDIRECT_URL      => "redirect-url";
194use constant ERROR_MESSAGE     => "error-message";
195
196use constant BUYER_LANGUAGE        => "buyer-language";
197use constant CALCULATE             => "calculate";
198use constant TAX                   => "tax";
199use constant METHOD                => "method";
200use constant MERCHANT_CODE_STRINGS => "merchant-code-strings";
201use constant MERCHANT_CODE_STRING  => "merchant-code-string";
202use constant ADDRESSES             => "addresses";
203use constant ANONYMOUS_ADDRESS     => "anonymous-address";
204use constant RESULTS               => "results";
205use constant RESULT                => "result";
206use constant ADDRESS_ID            => "address-id";
207use constant SHIPPING_RATE         => "shipping-rate";
208use constant SHIPPALBE             => "shippable";
209use constant VALID                 => "valid";
210
211use constant MERCHANT_CALCULATION_RESULTS  => "merchant-calculation-results";
212use constant MERCHANT_CODE_RESULTS         => "merchant-code-results";
213use constant COUPON_RESULT                 => "coupon-result";
214use constant GIFT_CERTIFICATE_RESULT       => "gift-certificate-result";
215use constant GIFT_CERTIFICATE_SUPPORT      => "gift-certificate-support";
216use constant GIFT_CERTIFICATE_ACCEPTED     => "gift-certificate-accepted";
217use constant GIFT_CERTIFICATE_NAME         => "gift-certificate-name";
218use constant GIFT_CERTIFICATE_PIN_REQUIRED => "gift-certificate-pin-required";
219use constant GIFT_CERTIFICATE_PIN          => "pin";
220
221#--
222#-- Different kinds of notification
223#--
224use constant CHARGE_AMOUNT_NOTIFICATION      => "charge-amount-notification";
225use constant CHARGE_BACK_NOTIFICATION        => "chargeback-amount-notification";
226use constant MERCHANT_CALCULATION_CALLBACK   => "merchant-calculation-callback";
227use constant NEW_ORDER_NOTIFICATION          => "new-order-notification";
228use constant ORDER_STATE_CHANGE_NOTIFICATION => "order-state-change-notification";
229use constant REFUND_AMOUNT_NOTIFICATION      => "refund-amount-notification";
230use constant RISK_INFORMATION_NOTIFICATION   => "risk-information-notification";
231
232#--
233#-- To support Google Analytics
234#--
235use constant ANALYTICS_DATA => "analytics-data";
236
237#--
238#-- To support parameterized URL
239#--
240use constant PARAMETERIZED_URLS => "parameterized-urls";
241use constant PARAMETERIZED_URL  => "parameterized-url";
242use constant URL                => "url";
243use constant PARAMETERS         => "parameters";
244use constant URL_PARAMETER      => "url-parameter";
245use constant TYPE               => "type";
246
247use constant PLATFORM_ID => "platform-id";
248
249#--
250#-- Digital content delivery
251#--
252use constant DIGITAL_CONTENT      => "digital-content";
253use constant EMAIL_DELIVERY       => "email-delivery";
254use constant DOWNLOAD_INSTRUCTION => "description";
255use constant DOWNLOAD_KEY         => "key";
256use constant DOWNLOAD_URL         => "url";
257
2581;
259