receipt-examples: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
(Other examples)
 
(68 intermediate revisions by 4 users not shown)
Line 1: Line 1:
= Receipt =
= Receipt examples =


Overview of Receipt exploratory discussion goes here...
=== Contributors ===
*Rob Manson
*Leif Arne Storset
 
== Real-World Examples ==
InternetRetailer's [http://www.internetretailer.com/top500/list.asp list of top 500 retail web sites] may be useful in the receipt-collecting process.
* Appears to apply to the USA only. [[User:AndyMabbett|Andy Mabbett]] 13:22, 31 Aug 2007 (PDT)
 
=== Bill / Invoice ===
 
Bills or Invoices are "yet to be paid" items.
 
Question: Perhaps these examples (yet to be provided) should be moved to a separate page as Bill/Invoice is quite different from Receipt.
 
: With [[hResume]], I've [[hresume-brainstorming#Actively_Seeking_Employment|suggested]] that the subtle difference between actively seeking work and just presenting your resume be a case of including [[hlisting]] markup.
: With bills vs invoices, it may turn out that the content found within would be identical, and it might just be a case of putting in a class flag to indicate whether the presented document has been paid for or not.
: [[User:SignpostMarv|SignpostMarv]] 12:55, 21 Jul 2007 (PDT)
 
::I think a class flag is a great idea, but I don't believe we have any samples for invoices. However, if we look at order review vs. order summary rather than invoices vs. receipts, the payment flag does become relevant in many of the sampled online stores.
::How would such a flag be implemented?
::*<code><nowiki><div class="hreceipt unpaid"/"hreceipt paid">...</nowiki></code>
::*<code><nowiki><div class="hreceipt" title="paid">...</div></nowiki></code>
::[[User:Lastorset|Lastorset]] 14:55, 16 Aug 2007 (PDT)
 
=== Receipts ===
 
Receipts are post-purchase items.
 
==== Amazon ====
* [http://mobileonlinebusiness.com.au/uf/receipt/Amazon.com-Vieworder-anon.htm Example]
* contains:
**<del>email address</del> (could not find in examples)
**date of order
**order id
**shipments
***shipping estimate
***delivery estimate
***shipping address
***shipping speed
***shipping preference (item grouping)
***items
****quantity
****seller
****price
****item information
**payment
***card type
***last 5 digits
***expiration date
***billing address
***subtotal
***shipping and handling price
***total before tax
***tax
***grand total
**<del>discount price</del> (could not find in examples)
* Little semantic HTML of interest, except an anchor with id "payment-info"
 
Notes:
*Supports multiple shipments.
*Supports one seller per item.
*Displays shipping and delivery estimate.
*Offers item grouping preference.
*Gift options.
 
==== Skype ====
 
===== Skype Phone =====
*[[receipt-example-skype-phone|example source code]]
*[http://mobileonlinebusiness.com.au/uf/receipt/Skype-order-history.html Skype order history]
 
* Shipping Address
* date in dd/mm/yyyy format
* Order number in nnnn-nnnnnnn-nnn format
* Reference (was blank in example, presumed to appear on bank statement for this transaction)
* Items
** Quantity
** Description
** Price
** Total
** VAT (tax) %
* Payment
** subtotal ("total")
** shipping cost
** grand total ("total (gross)")
** total (VAT excluded)
** VAT (amount)
* Chosen payment method: "Your payment method is: Credit card"
* Legal blurb
 
Semantic HTML:
* Order resume class="order-listing"
* Each item class="row"
* All totals rows class="totals-row" except grand total class="grandtotal-row"
 
Notes:
*Displayed credit-card-statement reference (presumably).
 
==== Internet banking transaction receipts ====
===== Example 1 =====
<pre><nowiki>
receipt number
date
time
receipt type (e.g. TRANSFER BETWEEN MY ACCOUNTS)
  transfer from
  transfer to
amount
description
information/comment
</nowiki></pre>
 
==== Digital product purchase receipts ====
===== Example 1 : Software =====
<pre><nowiki>
receipt title/type
order/receipt number
seller's details
  sold by (hCard candidate)
    org
    adr
  tax number (VAT in this example)
  tax id (Federal Tax ID)
buyer's details
  buyer (hCard candidate)
    name
    org
    street-address
    locality
    region
    postal-code
    country-name
    tel
    email
  credit card number (PAN truncated - with type)
item list
  product code
  name
  comments
  price
  delivery method
  quantity
  total in selected currency
  total in sellers currency
total (sum of item list totals)
processing fee
grand total (final amount charged)
information (caveats and tax info)
permalink
</nowiki></pre>
 
===== Example 2 : SSL certificate =====
<pre><nowiki>
receipt title/type
seller (hCard candidate)
  org
  street-address
  locality
  region
  postal-code
purchase information
  order id
  product name
  domain name
  validity period
  number of licenses
  card number (PAN truncated)
  amount (with selected currency)
</nowiki></pre>
 
==== Physical product purchase receipts ====
===== Example 1 : Computer hardware =====
<pre><nowiki>
receipt title/type
seller's name (hCard candidate)
seller's URL (hCard candidate)
invoice id
org govt reference (ABN - Australian Business Number)
date
seller details (hCard candidate)
  street-address
  locality
  region
  postal-code
buyer (hCard candidate)
  fn
  billing address
    street-address
    locality
    region
    postal-code
  delivery address
    street-address
    locality
    region
    postal-code
  phone
item list
  item
  description
  amount
  quantity
  product url
  total
delivery cost
total excluding tax
tax (GST - Goods and Service Tax)
total including tax
</nowiki></pre>
 
==== Service purchase receipts ====
===== Example 1 : Online subscription =====
<pre><nowiki>
seller's details (hCard candidate)
  org
  street-address
  locality
  region
  postal-code
  country-name
buyer's details (hCard candidate)
  fn
  street-address
  locality
  region
  postal-code
  phone
date
receipt id
item list
  product description
  quantity
  rate (per unit)
  price
sub total
amount paid
balance due
information
transaction id
</nowiki></pre>
 
===== Example 2 : Co-location =====
<pre><nowiki>
receipt title/type
sellers details (hCard candidate)
  org
  url
  phone
message
receipt number
date
amount
information
</nowiki></pre>
 
==== A1Books ====
[http://mobileonlinebusiness.com.au/uf/receipt/A1Books-Sales-Order-anon.htm Example]
 
*vendor
**name
**fax
*date
*order number
*shipping address
*billing address
*items
**description
**list price
**sale price
**quantity
**amount
*subtotal
*shipping
*total
**quantity
**amount
*account information
**phone
**e-mail
*payment
**method
**last four digits
 
No semantic HTML.
 
Notes:
*Supports one seller per item.
*Does not display tax.
 
==== Barnes&Noble ====
[http://mobileonlinebusiness.com.au/uf/receipt/BarnesAndNoble.com-receipt.anon.tidied.htm Example]
 
*date
*shipping address
*billing address
*payment
**method
**last 4 digits
**exp. date
**charge
*savings on shipping
*order no.
*delivery option
*items
**description: title, author, ISBN, price
**qty
**gift options: wrap, message
**total price
*shipment subtotal
*shipping cost
*tax
*shipment total (seems to account for orders requiring multiple shipments)
*order total
 
Semantic HTML:
*receiptOrderNumbers
*receiptOrderPlacedOn
*orderInformation
**shippingAddress
**billingAddress
**paymentInformation
*shippingSelections
*showProducts
**reviewTable
***qtyValuePosition
***reviewGiftOptions
*reviewTotalsDisplay
**reviewTotalsSummary
**reviewTotalsNote
**reviewTotalsBreakdown
*reviewTotalsSummary
**reviewGrandTotal
*reviewCreditCardCharged
*review
 
The semantic class names found are a good start, although the "review" part appears to be context-specific (reviewing an order). Additionally, the implied hierarchy in names such as "reviewTotalsSummary" and "receiptOrderPlacedOn" is probably unnecessary for our purposes.
 
Notes:
*Supports multiple shipments.
*Gift options.
*Explicitly stated credit-card charge.
 
==== Facebook ====
[http://mobileonlinebusiness.com.au/uf/receipt/Facebook-gift-receipt.html Example]
 
*purchase total
*items (informal description of two items, including quantity)
*recipient name
*order id
*billed-to name
 
No relevant semantic HTML.
 
Notes:
*Quite minimal and informal receipt. Good example of how a microformat would preserve human readability and informal style while enabling machine reading.
 
==== Google Checkout ====
*[http://mobileonlinebusiness.com.au/uf/receipt/Google-Checkout-e-mail-receipt.tidied.html Example email receipt]
*[http://mobileonlinebusiness.com.au/uf/receipt/Google-Checkout-Order-Receipt_DVD-Empire.tidied.htm Example web receipt]
 
*vendor address
*shipping address
*date
*order id
*items
**shipping status ("Not yet shipped", etc.)
**qty.
**description
**price
*shipping cost
*tax
*total
*order history (placed, received, charged, shipped) (web receipt only)
**credit-card statement reference (only after the charge has been made)
*payment info (web receipt only)
**card type
**last 4 digits
**exp. date
**cardholder address
*permalink
 
Semantic HTML:
*taxRow
**taxIdentifier
**taxAmount
*totalAmount
 
Notes:
*Explicit seller address (one per order).
*Current shipping status of each item.
*E-mail receipt has permalink.
*Order history (date placed, received, charged, shipped).
*Displayed credit-card statement reference only after card was charged.
 
==== iTunes ====
*[http://mobileonlinebusiness.com.au/uf/receipt/iTunes-receipt-e-mail.html iTunes e-mail receipt]
 
*billing address
*order no.
*receipt date
*order total
*card
**type
**last 4 digits
*item
**item no.
**description (including link to write a review)
**unit price
*subtotal
*tax
 
No relevant semantic HTML.


Notes:
*No quantity information.


== The Problem ==
==== Longs/FujiFilm ====
*[http://mobileonlinebusiness.com.au/uf/receipt/Longs-Fujifilm-photo-receipt.html Longs/Fujifilm e-mail receipt]


The ability to securely purchase items through a web browser has created a large number of sites that contain the entire purchasing process online. It is common that a customer selects the items that they want to buy, a bill is displayed, a purchase occurs and finally a receipt is displayed to the customer. Currently, it is difficult for a computer to understand when a bill is displayed, when a receipt is displayed and what items are a part of that bill or receipt.
*order no.
*payment info
**method (COD, credit card, etc.)
*customer address
*pickup address
*items
**name
**qty.
**description
**price
**line item subtotal
*order items total
*tax
*order total


Typically, receipts are e-mailed to customers. It would be helpful if there was a better way to extract the receipt data from a website and process it using another piece of software. It would also be beneficial for other Microformats to be able to display a bill or receipt as part of their content. hListing, and hProduct, hAudio are a three examples of Microformats that could use a bill/receipt Microformat.
Semantic HTML:
*payment-heading


== Authors ==
Notes:
*No order date; has pick-up date instead.
*Has pickup address rather than shipping address.


==== Mobivox/PayPal ====
*[http://mobileonlinebusiness.com.au/uf/receipt/Mobivox-PayPal.htm Mobivox/PayPal receipt]
*[http://mobileonlinebusiness.com.au/uf/receipt/Mobivox-PayPal-printable.htm Mobivox/PayPal printable receipt]


=== Contributors ===
*seller address
*receipt id
*date of order
*items
**description
**item option (not quite sure what this is for)
**unit price
**qty
**total
*subtotal
*tax
*total amount
*payment info
**method
**last 4 digits
**charge
**appears on bill/statement as "MOBIVOXCORP"
*buyer contact
 
Relevant semantic HTML:
*order-summary
**cart
***(unnamed tr)
****item-name
****item-total
****item-option (not quite sure what this is for)
**subtotal
**totals-value
**totals-currency
**purchase-summary
***summary-total
****price-total
****price-currency
*funding-mix
**payment-type
**amount
**ccStatement
*contact-information (contains hCard microformat)
 
This semantic HTML is the most complete and well-thought-out I've seen in this analysis. It even makes use of the fieldset element in forms, something I've never seen before.[[User:Lastorset|Lastorset]] 16:21, 25 Jul 2007 (PDT)
 
Microformats used:
*hCard (non-compliant due to missing formatted name): buyer contact info
 
Notes:
*Explicitly stated credit-card charge.
*Displayed credit-card-statement reference.
*Explicitly displayed seller address (one seller per order).
 
==== Symantec ====
*[http://mobileonlinebusiness.com.au/uf/receipt/Symantec-reminder-e-mail.html Symantec e-mail reminder]
 
*buyer name
*date
*payment method
*last 4 digits
*appears on statement as "DR *Symantec"
*items
**qty
**product name
**platform
**delivery method
**price
*subtotal
*grand total
*permalink
 
No relevant semantic HTML
 
Notes:
*As an e-mail "order reminder" rather than a receipt, this was slightly more informal than the other samples. As such there was
**no order id
**a permalink
*"Delivery method" could be download or ship.
 
== Analysis ==
 
=== Analysis of Bills ===
 
=== Analysis of Receipts ===
Analyzed using spreadsheet available at http://spreadsheets.google.com/pub?key=pAGYQr-yhoUh6sl5NaqEVZw. E-mail <code>leifarne at storset dot net</code> if you want edit permissions.
 
The analysis was performed on the following samples:
 
<!-- Update the following list when analysis on new items is performed. -->
*[[#Amazon|Amazon]]
*[[#Skype|Skype]]
*[[#A1Books|A1Books]]
*[[#Barnes&Noble|Barnes&Noble]]
*[[#Facebook|Facebook]]
*[[#Google Checkout|Google Checkout]]
*[[#iTunes|iTunes]]
*[[#Longs/FujiFilm|Longs/FujiFilm]]
*[[#Mobivox/PayPal|Mobivox/PayPal]]
*[[#Symantec|Symantec]]
 
====Addresses====
All receipts have hCard candidates (i. e. name and/or address) of at least one of these types:
*buyer/customer
*seller
*shipping
*billing
*pickup
 
====Shipping====
These vendors supported '''multiple shipments''':
*Amazon.com
*Barnes&Noble
**Also displayed shipment subtotals.
 
These displayed '''shipping method/speed''':
*Amazon.com
*Barnes&Noble
*Symantec
 
These displayed '''gift''' choices:
*Amazon.com
*Barnes&Noble


For most vendors, each item had the following information:
*description
*quantity
*unit price
*line total
Google Checkout additionally provided shipping status.


== Real-World Examples ==
====Payment information====
Most vendors displayed:
*payment method (credit card or COD, card type)
*last 4 or 5 digits of credit card
*expiration date of credit card


=== Bills ===
Some also displayed
*reference on credit-card statement ("This order will appear as ABCD0001234 on your credit-card statement.")
*the credit-card charge itself


Bills are pre-purchase items.
====Totals====
Most displayed:
*subtotal
*shipping and handling cost (if applicable)
*tax
*grand total


=== Receipts ===
Some also displayed:
*total before tax
*total quantity (only A1Books)


Receipts are post-purchase items.
====Marketplace====
Most receipt formats are for one seller only. The following support different sellers:
*A1Books: per item
*Amazon.com: per item
*Google Checkout: per receipt
*PayPal: per receipt


* Amazon
====Other properties====
** [[receipt-example-amazon | Example]]
Almost all receipts had
** contains: email address, total, order id, shipping method, shipping preference, subtotal price, shipping and handling price, discount price, shipping estimate, delivery estimate, item quantities, item names
*order date
**Facebook had no date.
**Longs/FujiFilm had pick-up date instead.
*order id
**Symantec did not mention order id.


=== Analysis ===
Other interesting items:
*permalink (on most e-mail receipts)
*link to purchase history
*order history (Google Checkout):
**placed
**received
**charged
**shipped


==== Analysis of Bills ====
====Conclusion====
Central [[microformats#the_microformats_principles|microformat principles]] are to "start as simple as possible" and use the Pareto principle. Accordingly, an 80/20 solution should focus on solving the critical few problems. One way of doing so is to look at the elements that are found in all or nearly all samples:
*addresses (buyer/customer, seller, shipping, billing, pickup)
*line item information (description, quantity, unit price)
*payment method (with credit-card information, if applicable)
*totals and charges (subtotal, shipping & handling, tax, grand total)
*order date
*order id


==== Analysis of Receipts ====
The following elements are more rarely seen:
*multiple shipments
*shipping details
*gift options
*credit-card-statement reference
*seller information per item
*permalink


== Existing Practices ==
== Existing Practices ==
Line 43: Line 641:


===Other attempts to solve The Problem===
===Other attempts to solve The Problem===
For paper receipts, [http://www.neatreceipts.com/ NeatReceipts Scanalizer] offers a heuristic-based solution.
===Open Financial Exchange===
* http://en.wikipedia.org/wiki/OFX aka OFX


== Proposal ==
== Proposal ==
==Other examples==
*[[receipt-example-amazon]]
*[[receipt-example-thinkgeek]]
*[[receipt-example-thinkgeek-2]]
*[[receipt-example-thinkgeek-3]]


== See Also ==
== See Also ==
* [[currency]]
* [[receipt]]
* http://en.wikipedia.org/wiki/Receipt

Latest revision as of 13:02, 16 January 2008

Receipt examples

Contributors

  • Rob Manson
  • Leif Arne Storset

Real-World Examples

InternetRetailer's list of top 500 retail web sites may be useful in the receipt-collecting process.

  • Appears to apply to the USA only. Andy Mabbett 13:22, 31 Aug 2007 (PDT)

Bill / Invoice

Bills or Invoices are "yet to be paid" items.

Question: Perhaps these examples (yet to be provided) should be moved to a separate page as Bill/Invoice is quite different from Receipt.

With hResume, I've suggested that the subtle difference between actively seeking work and just presenting your resume be a case of including hlisting markup.
With bills vs invoices, it may turn out that the content found within would be identical, and it might just be a case of putting in a class flag to indicate whether the presented document has been paid for or not.
SignpostMarv 12:55, 21 Jul 2007 (PDT)
I think a class flag is a great idea, but I don't believe we have any samples for invoices. However, if we look at order review vs. order summary rather than invoices vs. receipts, the payment flag does become relevant in many of the sampled online stores.
How would such a flag be implemented?
  • <div class="hreceipt unpaid"/"hreceipt paid">...
  • <div class="hreceipt" title="paid">...</div>
Lastorset 14:55, 16 Aug 2007 (PDT)

Receipts

Receipts are post-purchase items.

Amazon

  • Example
  • contains:
    • email address (could not find in examples)
    • date of order
    • order id
    • shipments
      • shipping estimate
      • delivery estimate
      • shipping address
      • shipping speed
      • shipping preference (item grouping)
      • items
        • quantity
        • seller
        • price
        • item information
    • payment
      • card type
      • last 5 digits
      • expiration date
      • billing address
      • subtotal
      • shipping and handling price
      • total before tax
      • tax
      • grand total
    • discount price (could not find in examples)
  • Little semantic HTML of interest, except an anchor with id "payment-info"

Notes:

  • Supports multiple shipments.
  • Supports one seller per item.
  • Displays shipping and delivery estimate.
  • Offers item grouping preference.
  • Gift options.

Skype

Skype Phone
  • Shipping Address
  • date in dd/mm/yyyy format
  • Order number in nnnn-nnnnnnn-nnn format
  • Reference (was blank in example, presumed to appear on bank statement for this transaction)
  • Items
    • Quantity
    • Description
    • Price
    • Total
    • VAT (tax) %
  • Payment
    • subtotal ("total")
    • shipping cost
    • grand total ("total (gross)")
    • total (VAT excluded)
    • VAT (amount)
  • Chosen payment method: "Your payment method is: Credit card"
  • Legal blurb

Semantic HTML:

  • Order resume class="order-listing"
  • Each item class="row"
  • All totals rows class="totals-row" except grand total class="grandtotal-row"

Notes:

  • Displayed credit-card-statement reference (presumably).

Internet banking transaction receipts

Example 1
receipt number
date
time
receipt type (e.g. TRANSFER BETWEEN MY ACCOUNTS)
  transfer from
  transfer to
amount
description
information/comment

Digital product purchase receipts

Example 1 : Software
receipt title/type
order/receipt number
seller's details
  sold by (hCard candidate)
    org
    adr
  tax number (VAT in this example)
  tax id (Federal Tax ID)
buyer's details
  buyer (hCard candidate)
    name
    org
    street-address
    locality
    region
    postal-code
    country-name
    tel
    email
  credit card number (PAN truncated - with type)
item list
  product code
  name
  comments
  price
  delivery method
  quantity
  total in selected currency
  total in sellers currency
total (sum of item list totals)
processing fee
grand total (final amount charged)
information (caveats and tax info)
permalink
Example 2 : SSL certificate
receipt title/type
seller (hCard candidate)
  org
  street-address
  locality
  region
  postal-code
purchase information
  order id
  product name
  domain name
  validity period
  number of licenses
  card number (PAN truncated)
  amount (with selected currency)

Physical product purchase receipts

Example 1 : Computer hardware
receipt title/type
seller's name (hCard candidate)
seller's URL (hCard candidate)
invoice id
org govt reference (ABN - Australian Business Number)
date
seller details (hCard candidate)
  street-address
  locality
  region
  postal-code
buyer (hCard candidate)
  fn
  billing address
    street-address
    locality
    region
    postal-code
  delivery address
    street-address
    locality
    region
    postal-code
  phone
item list
  item
  description
  amount
  quantity
  product url
  total
delivery cost
total excluding tax
tax (GST - Goods and Service Tax)
total including tax

Service purchase receipts

Example 1 : Online subscription
seller's details (hCard candidate)
  org
  street-address
  locality
  region
  postal-code
  country-name
buyer's details (hCard candidate)
  fn
  street-address
  locality
  region
  postal-code
  phone
date
receipt id
item list
  product description
  quantity
  rate (per unit)
  price
sub total
amount paid
balance due
information
transaction id
Example 2 : Co-location
receipt title/type
sellers details (hCard candidate)
  org
  url
  phone
message
receipt number
date
amount
information

A1Books

Example

  • vendor
    • name
    • fax
  • date
  • order number
  • shipping address
  • billing address
  • items
    • description
    • list price
    • sale price
    • quantity
    • amount
  • subtotal
  • shipping
  • total
    • quantity
    • amount
  • account information
    • phone
    • e-mail
  • payment
    • method
    • last four digits

No semantic HTML.

Notes:

  • Supports one seller per item.
  • Does not display tax.

Barnes&Noble

Example

  • date
  • shipping address
  • billing address
  • payment
    • method
    • last 4 digits
    • exp. date
    • charge
  • savings on shipping
  • order no.
  • delivery option
  • items
    • description: title, author, ISBN, price
    • qty
    • gift options: wrap, message
    • total price
  • shipment subtotal
  • shipping cost
  • tax
  • shipment total (seems to account for orders requiring multiple shipments)
  • order total

Semantic HTML:

  • receiptOrderNumbers
  • receiptOrderPlacedOn
  • orderInformation
    • shippingAddress
    • billingAddress
    • paymentInformation
  • shippingSelections
  • showProducts
    • reviewTable
      • qtyValuePosition
      • reviewGiftOptions
  • reviewTotalsDisplay
    • reviewTotalsSummary
    • reviewTotalsNote
    • reviewTotalsBreakdown
  • reviewTotalsSummary
    • reviewGrandTotal
  • reviewCreditCardCharged
  • review

The semantic class names found are a good start, although the "review" part appears to be context-specific (reviewing an order). Additionally, the implied hierarchy in names such as "reviewTotalsSummary" and "receiptOrderPlacedOn" is probably unnecessary for our purposes.

Notes:

  • Supports multiple shipments.
  • Gift options.
  • Explicitly stated credit-card charge.

Facebook

Example

  • purchase total
  • items (informal description of two items, including quantity)
  • recipient name
  • order id
  • billed-to name

No relevant semantic HTML.

Notes:

  • Quite minimal and informal receipt. Good example of how a microformat would preserve human readability and informal style while enabling machine reading.

Google Checkout

  • vendor address
  • shipping address
  • date
  • order id
  • items
    • shipping status ("Not yet shipped", etc.)
    • qty.
    • description
    • price
  • shipping cost
  • tax
  • total
  • order history (placed, received, charged, shipped) (web receipt only)
    • credit-card statement reference (only after the charge has been made)
  • payment info (web receipt only)
    • card type
    • last 4 digits
    • exp. date
    • cardholder address
  • permalink

Semantic HTML:

  • taxRow
    • taxIdentifier
    • taxAmount
  • totalAmount

Notes:

  • Explicit seller address (one per order).
  • Current shipping status of each item.
  • E-mail receipt has permalink.
  • Order history (date placed, received, charged, shipped).
  • Displayed credit-card statement reference only after card was charged.

iTunes

  • billing address
  • order no.
  • receipt date
  • order total
  • card
    • type
    • last 4 digits
  • item
    • item no.
    • description (including link to write a review)
    • unit price
  • subtotal
  • tax

No relevant semantic HTML.

Notes:

  • No quantity information.

Longs/FujiFilm

  • order no.
  • payment info
    • method (COD, credit card, etc.)
  • customer address
  • pickup address
  • items
    • name
    • qty.
    • description
    • price
    • line item subtotal
  • order items total
  • tax
  • order total

Semantic HTML:

  • payment-heading

Notes:

  • No order date; has pick-up date instead.
  • Has pickup address rather than shipping address.

Mobivox/PayPal

  • seller address
  • receipt id
  • date of order
  • items
    • description
    • item option (not quite sure what this is for)
    • unit price
    • qty
    • total
  • subtotal
  • tax
  • total amount
  • payment info
    • method
    • last 4 digits
    • charge
    • appears on bill/statement as "MOBIVOXCORP"
  • buyer contact

Relevant semantic HTML:

  • order-summary
    • cart
      • (unnamed tr)
        • item-name
        • item-total
        • item-option (not quite sure what this is for)
    • subtotal
    • totals-value
    • totals-currency
    • purchase-summary
      • summary-total
        • price-total
        • price-currency
  • funding-mix
    • payment-type
    • amount
    • ccStatement
  • contact-information (contains hCard microformat)

This semantic HTML is the most complete and well-thought-out I've seen in this analysis. It even makes use of the fieldset element in forms, something I've never seen before.Lastorset 16:21, 25 Jul 2007 (PDT)

Microformats used:

  • hCard (non-compliant due to missing formatted name): buyer contact info

Notes:

  • Explicitly stated credit-card charge.
  • Displayed credit-card-statement reference.
  • Explicitly displayed seller address (one seller per order).

Symantec

  • buyer name
  • date
  • payment method
  • last 4 digits
  • appears on statement as "DR *Symantec"
  • items
    • qty
    • product name
    • platform
    • delivery method
    • price
  • subtotal
  • grand total
  • permalink

No relevant semantic HTML

Notes:

  • As an e-mail "order reminder" rather than a receipt, this was slightly more informal than the other samples. As such there was
    • no order id
    • a permalink
  • "Delivery method" could be download or ship.

Analysis

Analysis of Bills

Analysis of Receipts

Analyzed using spreadsheet available at http://spreadsheets.google.com/pub?key=pAGYQr-yhoUh6sl5NaqEVZw. E-mail leifarne at storset dot net if you want edit permissions.

The analysis was performed on the following samples:

Addresses

All receipts have hCard candidates (i. e. name and/or address) of at least one of these types:

  • buyer/customer
  • seller
  • shipping
  • billing
  • pickup

Shipping

These vendors supported multiple shipments:

  • Amazon.com
  • Barnes&Noble
    • Also displayed shipment subtotals.

These displayed shipping method/speed:

  • Amazon.com
  • Barnes&Noble
  • Symantec

These displayed gift choices:

  • Amazon.com
  • Barnes&Noble

For most vendors, each item had the following information:

  • description
  • quantity
  • unit price
  • line total

Google Checkout additionally provided shipping status.

Payment information

Most vendors displayed:

  • payment method (credit card or COD, card type)
  • last 4 or 5 digits of credit card
  • expiration date of credit card

Some also displayed

  • reference on credit-card statement ("This order will appear as ABCD0001234 on your credit-card statement.")
  • the credit-card charge itself

Totals

Most displayed:

  • subtotal
  • shipping and handling cost (if applicable)
  • tax
  • grand total

Some also displayed:

  • total before tax
  • total quantity (only A1Books)

Marketplace

Most receipt formats are for one seller only. The following support different sellers:

  • A1Books: per item
  • Amazon.com: per item
  • Google Checkout: per receipt
  • PayPal: per receipt

Other properties

Almost all receipts had

  • order date
    • Facebook had no date.
    • Longs/FujiFilm had pick-up date instead.
  • order id
    • Symantec did not mention order id.

Other interesting items:

  • permalink (on most e-mail receipts)
  • link to purchase history
  • order history (Google Checkout):
    • placed
    • received
    • charged
    • shipped

Conclusion

Central microformat principles are to "start as simple as possible" and use the Pareto principle. Accordingly, an 80/20 solution should focus on solving the critical few problems. One way of doing so is to look at the elements that are found in all or nearly all samples:

  • addresses (buyer/customer, seller, shipping, billing, pickup)
  • line item information (description, quantity, unit price)
  • payment method (with credit-card information, if applicable)
  • totals and charges (subtotal, shipping & handling, tax, grand total)
  • order date
  • order id

The following elements are more rarely seen:

  • multiple shipments
  • shipping details
  • gift options
  • credit-card-statement reference
  • seller information per item
  • permalink

Existing Practices

Listed below is an overview of existing patterns and practices found in the wild for bill and receipt data.

Summary of common patterns discovered

Other attempts to solve The Problem

For paper receipts, NeatReceipts Scanalizer offers a heuristic-based solution.

Open Financial Exchange

Proposal

Other examples

See Also