/venice

Ruby Gem for In-App Purchase Receipt Verification

Primary LanguageRubyMIT LicenseMIT

Venice

Venice is a simple gem for verifying Apple In-App Purchase receipts, and retrieving the information associated with receipt data.

There are two reasons why you should verify in-app purchase receipts on the server: First, it allows you to keep your own records of past purchases, which is useful for up-to-the-minute metrics and historical analysis. Second, server-side verification over SSL is the most reliable way to determine the authenticity of purchasing records.

See Apple's In-App Purchase Programming Guide for additional information.

Venice is named for Venice, Italy—or more specifically, Shakespeare's The Merchant of Venice. It's part of a series of world-class command-line utilities for iOS development, which includes Cupertino (Apple Dev Center management), Shenzhen (Building & Distribution), Houston (Push Notifications), and Dubai (Passbook pass generation).

Installation

$ gem install venice

Usage

require 'venice'

data = "(Base64-Encoded Receipt Data)"
if receipt = Venice::Receipt.verify(data)
  p receipt.to_h
end

Comand Line Interface

Venice also comes with the iap binary, which provides a convenient way to verify receipts from the command line.

$ iap verify /path/to/receipt

+-----------------------------+-------------------------------+
|                           Receipt                           |
+-----------------------------+-------------------------------+
| app_item_id                 |                               |
| bid                         | com.foo.bar                   |
| bvrs                        | 20120427                      |
| original_purchase_date      | Sun, 01 Jan 2013 12:00:00 GMT |
| original_transaction_id     | 1000000000000001              |
| product_id                  | com.example.product           |
| purchase_date               | Sun, 01 Jan 2013 12:00:00 GMT |
| quantity                    | 1                             |
| transaction_id              | 1000000000000001              |
| version_external_identifier |                               |
+-----------------------------+-------------------------------+

Contact

Mattt Thompson

License

Venice is available under the MIT license. See the LICENSE file for more info.