Commit d90063d5 by Rune Madsen

Merge branch 'develop' into runmad.improve-safari-checkout-handling

parents 7c29408d c87c7478
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
#import "BUYAddress+Additions.h" #import "BUYAddress+Additions.h"
#import "BUYClientTestBase.h" #import "BUYClientTestBase.h"
#import "BUYCollection+Additions.h" #import "BUYCollection+Additions.h"
#import "NSURLComponents+BUYAdditions.h"
@interface BUYClient () @interface BUYClient ()
...@@ -213,60 +214,110 @@ ...@@ -213,60 +214,110 @@
[self testProductsInCollectionWithSortOrderCollectionDefault]; [self testProductsInCollectionWithSortOrderCollectionDefault];
} }
- (void)testQueryItemsConversion
{
NSDictionary *dictionary = @{@"collection_id" : @"1", @"limit" : @"25", @"page" : @"1", @"sort_by" : @"collection-default"};
NSURLComponents *components = [[NSURLComponents alloc] init];
[components setQueryItemsWithDictionary:dictionary];
NSSet *componentsQueryItems = [NSSet setWithArray:components.queryItems];
NSSet *queryItems = [NSSet setWithArray:@[[NSURLQueryItem queryItemWithName:@"collection_id" value:@"1"], [NSURLQueryItem queryItemWithName:@"limit" value:@"25"], [NSURLQueryItem queryItemWithName:@"page" value:@"1"], [NSURLQueryItem queryItemWithName:@"sort_by" value:@"collection-default"]]];
XCTAssertEqualObjects(componentsQueryItems, queryItems);
}
- (void)testProductsInCollectionWithSortOrderCollectionDefault - (void)testProductsInCollectionWithSortOrderCollectionDefault
{ {
NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortCollectionDefault completion:nil]; NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortCollectionDefault completion:nil];
XCTAssertEqualObjects(task.originalRequest.HTTPMethod, @"GET");
XCTAssertEqualObjects(task.originalRequest.URL.absoluteString, @"https://test_shop/api/channels/api_key/product_publications.json?collection_id=1&limit=25&page=1&sort_by=collection-default"); XCTAssertEqualObjects(task.originalRequest.URL.scheme, @"https");
XCTAssertEqualObjects(task.originalRequest.URL.host, @"test_shop");
XCTAssertEqualObjects(task.originalRequest.URL.path, @"/api/channels/api_key/product_publications.json");
NSSet *requestQueryItems = [NSSet setWithArray:[task.originalRequest.URL.query componentsSeparatedByString:@"&"]];
NSSet *queryItems = [NSSet setWithArray:@[@"collection_id=1", @"limit=25", @"page=1", @"sort_by=collection-default"]];
XCTAssertEqualObjects(requestQueryItems, queryItems);
} }
- (void)testProductsInCollectionWithSortOrderBestSelling - (void)testProductsInCollectionWithSortOrderBestSelling
{ {
NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortBestSelling completion:nil]; NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortBestSelling completion:nil];
XCTAssertEqualObjects(task.originalRequest.HTTPMethod, @"GET");
XCTAssertEqualObjects(task.originalRequest.URL.absoluteString, @"https://test_shop/api/channels/api_key/product_publications.json?collection_id=1&limit=25&page=1&sort_by=best-selling"); XCTAssertEqualObjects(task.originalRequest.URL.scheme, @"https");
XCTAssertEqualObjects(task.originalRequest.URL.host, @"test_shop");
XCTAssertEqualObjects(task.originalRequest.URL.path, @"/api/channels/api_key/product_publications.json");
NSSet *requestQueryItems = [NSSet setWithArray:[task.originalRequest.URL.query componentsSeparatedByString:@"&"]];
NSSet *queryItems = [NSSet setWithArray:@[@"collection_id=1", @"limit=25", @"page=1", @"sort_by=best-selling"]];
XCTAssertEqualObjects(requestQueryItems, queryItems);
} }
- (void)testProductsInCollectionWithSortOrderCreatedAscending - (void)testProductsInCollectionWithSortOrderCreatedAscending
{ {
NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortCreatedAscending completion:nil]; NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortCreatedAscending completion:nil];
XCTAssertEqualObjects(task.originalRequest.HTTPMethod, @"GET");
XCTAssertEqualObjects(task.originalRequest.URL.absoluteString, @"https://test_shop/api/channels/api_key/product_publications.json?collection_id=1&limit=25&page=1&sort_by=created-ascending"); XCTAssertEqualObjects(task.originalRequest.URL.scheme, @"https");
XCTAssertEqualObjects(task.originalRequest.URL.host, @"test_shop");
XCTAssertEqualObjects(task.originalRequest.URL.path, @"/api/channels/api_key/product_publications.json");
NSSet *requestQueryItems = [NSSet setWithArray:[task.originalRequest.URL.query componentsSeparatedByString:@"&"]];
NSSet *queryItems = [NSSet setWithArray:@[@"collection_id=1", @"limit=25", @"page=1", @"sort_by=created-ascending"]];
XCTAssertEqualObjects(requestQueryItems, queryItems);
} }
- (void)testProductsInCollectionWithSortOrderCreatedDescending - (void)testProductsInCollectionWithSortOrderCreatedDescending
{ {
NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortCreatedDescending completion:nil]; NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortCreatedDescending completion:nil];
XCTAssertEqualObjects(task.originalRequest.HTTPMethod, @"GET");
XCTAssertEqualObjects(task.originalRequest.URL.absoluteString, @"https://test_shop/api/channels/api_key/product_publications.json?collection_id=1&limit=25&page=1&sort_by=created-descending"); XCTAssertEqualObjects(task.originalRequest.URL.scheme, @"https");
XCTAssertEqualObjects(task.originalRequest.URL.host, @"test_shop");
XCTAssertEqualObjects(task.originalRequest.URL.path, @"/api/channels/api_key/product_publications.json");
NSSet *requestQueryItems = [NSSet setWithArray:[task.originalRequest.URL.query componentsSeparatedByString:@"&"]];
NSSet *queryItems = [NSSet setWithArray:@[@"collection_id=1", @"limit=25", @"page=1", @"sort_by=created-descending"]];
XCTAssertEqualObjects(requestQueryItems, queryItems);
} }
- (void)testProductsInCollectionWithSortOrderPriceAscending - (void)testProductsInCollectionWithSortOrderPriceAscending
{ {
NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortPriceAscending completion:nil]; NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortPriceAscending completion:nil];
XCTAssertEqualObjects(task.originalRequest.HTTPMethod, @"GET");
XCTAssertEqualObjects(task.originalRequest.URL.absoluteString, @"https://test_shop/api/channels/api_key/product_publications.json?collection_id=1&limit=25&page=1&sort_by=price-ascending"); XCTAssertEqualObjects(task.originalRequest.URL.scheme, @"https");
XCTAssertEqualObjects(task.originalRequest.URL.host, @"test_shop");
XCTAssertEqualObjects(task.originalRequest.URL.path, @"/api/channels/api_key/product_publications.json");
NSSet *requestQueryItems = [NSSet setWithArray:[task.originalRequest.URL.query componentsSeparatedByString:@"&"]];
NSSet *queryItems = [NSSet setWithArray:@[@"collection_id=1", @"limit=25", @"page=1", @"sort_by=price-ascending"]];
XCTAssertEqualObjects(requestQueryItems, queryItems);
} }
- (void)testProductsInCollectionWithSortOrderPriceDescending - (void)testProductsInCollectionWithSortOrderPriceDescending
{ {
NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortPriceDescending completion:nil]; NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortPriceDescending completion:nil];
XCTAssertEqualObjects(task.originalRequest.HTTPMethod, @"GET");
XCTAssertEqualObjects(task.originalRequest.URL.absoluteString, @"https://test_shop/api/channels/api_key/product_publications.json?collection_id=1&limit=25&page=1&sort_by=price-descending"); XCTAssertEqualObjects(task.originalRequest.URL.scheme, @"https");
XCTAssertEqualObjects(task.originalRequest.URL.host, @"test_shop");
XCTAssertEqualObjects(task.originalRequest.URL.path, @"/api/channels/api_key/product_publications.json");
NSSet *requestQueryItems = [NSSet setWithArray:[task.originalRequest.URL.query componentsSeparatedByString:@"&"]];
NSSet *queryItems = [NSSet setWithArray:@[@"collection_id=1", @"limit=25", @"page=1", @"sort_by=price-descending"]];
XCTAssertEqualObjects(requestQueryItems, queryItems);
} }
- (void)testProductsInCollectionWithSortOrderTitleAscending - (void)testProductsInCollectionWithSortOrderTitleAscending
{ {
NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortTitleAscending completion:nil]; NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortTitleAscending completion:nil];
XCTAssertEqualObjects(task.originalRequest.HTTPMethod, @"GET");
XCTAssertEqualObjects(task.originalRequest.URL.absoluteString, @"https://test_shop/api/channels/api_key/product_publications.json?collection_id=1&limit=25&page=1&sort_by=title-ascending"); XCTAssertEqualObjects(task.originalRequest.URL.scheme, @"https");
XCTAssertEqualObjects(task.originalRequest.URL.host, @"test_shop");
XCTAssertEqualObjects(task.originalRequest.URL.path, @"/api/channels/api_key/product_publications.json");
NSSet *requestQueryItems = [NSSet setWithArray:[task.originalRequest.URL.query componentsSeparatedByString:@"&"]];
NSSet *queryItems = [NSSet setWithArray:@[@"collection_id=1", @"limit=25", @"page=1", @"sort_by=title-ascending"]];
XCTAssertEqualObjects(requestQueryItems, queryItems);
} }
- (void)testProductsInCollectionWithSortOrderTitleDescending - (void)testProductsInCollectionWithSortOrderTitleDescending
{ {
NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortTitleDescending completion:nil]; NSURLSessionDataTask *task = [self.client getProductsPage:1 inCollection:@1 sortOrder:BUYCollectionSortTitleDescending completion:nil];
XCTAssertEqualObjects(task.originalRequest.HTTPMethod, @"GET");
XCTAssertEqualObjects(task.originalRequest.URL.absoluteString, @"https://test_shop/api/channels/api_key/product_publications.json?collection_id=1&limit=25&page=1&sort_by=title-descending"); XCTAssertEqualObjects(task.originalRequest.URL.scheme, @"https");
XCTAssertEqualObjects(task.originalRequest.URL.host, @"test_shop");
XCTAssertEqualObjects(task.originalRequest.URL.path, @"/api/channels/api_key/product_publications.json");
NSSet *requestQueryItems = [NSSet setWithArray:[task.originalRequest.URL.query componentsSeparatedByString:@"&"]];
NSSet *queryItems = [NSSet setWithArray:@[@"collection_id=1", @"limit=25", @"page=1", @"sort_by=title-descending"]];
XCTAssertEqualObjects(requestQueryItems, queryItems);
} }
@end @end
...@@ -43,6 +43,10 @@ ...@@ -43,6 +43,10 @@
900396F71B69563400226B73 /* BUYCollection+Additions.m in Sources */ = {isa = PBXBuildFile; fileRef = 900396F51B69563400226B73 /* BUYCollection+Additions.m */; }; 900396F71B69563400226B73 /* BUYCollection+Additions.m in Sources */ = {isa = PBXBuildFile; fileRef = 900396F51B69563400226B73 /* BUYCollection+Additions.m */; };
900E7C841B5DA553006F3C81 /* BUYImageKit.h in Headers */ = {isa = PBXBuildFile; fileRef = 900E7C811B5DA32F006F3C81 /* BUYImageKit.h */; }; 900E7C841B5DA553006F3C81 /* BUYImageKit.h in Headers */ = {isa = PBXBuildFile; fileRef = 900E7C811B5DA32F006F3C81 /* BUYImageKit.h */; };
900E7C851B5DA559006F3C81 /* BUYImageKit.m in Sources */ = {isa = PBXBuildFile; fileRef = 900E7C821B5DA32F006F3C81 /* BUYImageKit.m */; }; 900E7C851B5DA559006F3C81 /* BUYImageKit.m in Sources */ = {isa = PBXBuildFile; fileRef = 900E7C821B5DA32F006F3C81 /* BUYImageKit.m */; };
901335461C187E0400410ED0 /* NSURLComponents+BUYAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 901335441C187E0400410ED0 /* NSURLComponents+BUYAdditions.h */; };
901335471C187E0400410ED0 /* NSURLComponents+BUYAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 901335441C187E0400410ED0 /* NSURLComponents+BUYAdditions.h */; };
901335481C187E0400410ED0 /* NSURLComponents+BUYAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 901335451C187E0400410ED0 /* NSURLComponents+BUYAdditions.m */; };
901335491C187E0400410ED0 /* NSURLComponents+BUYAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 901335451C187E0400410ED0 /* NSURLComponents+BUYAdditions.m */; };
901930E31BC5B9BC00D1134E /* BUYApplePayHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = BE33B4EE1B15FF4D0067982B /* BUYApplePayHelpers.m */; }; 901930E31BC5B9BC00D1134E /* BUYApplePayHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = BE33B4EE1B15FF4D0067982B /* BUYApplePayHelpers.m */; };
901930E41BC5B9BC00D1134E /* BUYOptionSelectionViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BE9496AF1B4D96D800B38949 /* BUYOptionSelectionViewController.m */; }; 901930E41BC5B9BC00D1134E /* BUYOptionSelectionViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BE9496AF1B4D96D800B38949 /* BUYOptionSelectionViewController.m */; };
901930E51BC5B9BC00D1134E /* BUYVariantOptionView.m in Sources */ = {isa = PBXBuildFile; fileRef = 90516CA21B4D771400E35E45 /* BUYVariantOptionView.m */; }; 901930E51BC5B9BC00D1134E /* BUYVariantOptionView.m in Sources */ = {isa = PBXBuildFile; fileRef = 90516CA21B4D771400E35E45 /* BUYVariantOptionView.m */; };
...@@ -370,6 +374,8 @@ ...@@ -370,6 +374,8 @@
900396F51B69563400226B73 /* BUYCollection+Additions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "BUYCollection+Additions.m"; sourceTree = "<group>"; }; 900396F51B69563400226B73 /* BUYCollection+Additions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "BUYCollection+Additions.m"; sourceTree = "<group>"; };
900E7C811B5DA32F006F3C81 /* BUYImageKit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BUYImageKit.h; sourceTree = "<group>"; }; 900E7C811B5DA32F006F3C81 /* BUYImageKit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BUYImageKit.h; sourceTree = "<group>"; };
900E7C821B5DA32F006F3C81 /* BUYImageKit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BUYImageKit.m; sourceTree = "<group>"; }; 900E7C821B5DA32F006F3C81 /* BUYImageKit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BUYImageKit.m; sourceTree = "<group>"; };
901335441C187E0400410ED0 /* NSURLComponents+BUYAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURLComponents+BUYAdditions.h"; sourceTree = "<group>"; };
901335451C187E0400410ED0 /* NSURLComponents+BUYAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURLComponents+BUYAdditions.m"; sourceTree = "<group>"; };
901931701BC5B9BC00D1134E /* Buy.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Buy.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 901931701BC5B9BC00D1134E /* Buy.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Buy.framework; sourceTree = BUILT_PRODUCTS_DIR; };
901931761BC5BC9100D1134E /* libc++.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libc++.tbd"; path = "usr/lib/libc++.tbd"; sourceTree = SDKROOT; }; 901931761BC5BC9100D1134E /* libc++.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libc++.tbd"; path = "usr/lib/libc++.tbd"; sourceTree = SDKROOT; };
903BCC7A1B7D1C2D00C21FEB /* BUYProductViewErrorView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = BUYProductViewErrorView.h; path = "Product View/BUYProductViewErrorView.h"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; }; 903BCC7A1B7D1C2D00C21FEB /* BUYProductViewErrorView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = BUYProductViewErrorView.h; path = "Product View/BUYProductViewErrorView.h"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
...@@ -807,8 +813,6 @@ ...@@ -807,8 +813,6 @@
F70CE40E1A8BF1D90055BEB8 /* BUYApplePayAdditions.m */, F70CE40E1A8BF1D90055BEB8 /* BUYApplePayAdditions.m */,
BE33B4ED1B15FF4D0067982B /* BUYApplePayHelpers.h */, BE33B4ED1B15FF4D0067982B /* BUYApplePayHelpers.h */,
BE33B4EE1B15FF4D0067982B /* BUYApplePayHelpers.m */, BE33B4EE1B15FF4D0067982B /* BUYApplePayHelpers.m */,
909944471B71B76800C40A33 /* UIFont+BUYAdditions.h */,
909944481B71B76800C40A33 /* UIFont+BUYAdditions.m */,
900E7C811B5DA32F006F3C81 /* BUYImageKit.h */, 900E7C811B5DA32F006F3C81 /* BUYImageKit.h */,
900E7C821B5DA32F006F3C81 /* BUYImageKit.m */, 900E7C821B5DA32F006F3C81 /* BUYImageKit.m */,
BE9496B61B4D96F100B38949 /* BUYProduct+Options.h */, BE9496B61B4D96F100B38949 /* BUYProduct+Options.h */,
...@@ -823,12 +827,16 @@ ...@@ -823,12 +827,16 @@
90A446241B5EC03F009602AA /* NSDateFormatter+BUYAdditions.m */, 90A446241B5EC03F009602AA /* NSDateFormatter+BUYAdditions.m */,
2AF52A9B1A7011DC0087DB2C /* NSDecimalNumber+BUYAdditions.h */, 2AF52A9B1A7011DC0087DB2C /* NSDecimalNumber+BUYAdditions.h */,
2AF52A9C1A7011DC0087DB2C /* NSDecimalNumber+BUYAdditions.m */, 2AF52A9C1A7011DC0087DB2C /* NSDecimalNumber+BUYAdditions.m */,
BE6D05971BD6BA6700772EBB /* NSDictionary+Additions.h */,
BE6D05981BD6BA6700772EBB /* NSDictionary+Additions.m */,
F76CFF1B19CB7BE30079C703 /* NSString+Trim.h */, F76CFF1B19CB7BE30079C703 /* NSString+Trim.h */,
F76CFF1C19CB7BE30079C703 /* NSString+Trim.m */, F76CFF1C19CB7BE30079C703 /* NSString+Trim.m */,
BE5DC39E1B71B13700B2BC1E /* NSURL+BUYAdditions.h */, BE5DC39E1B71B13700B2BC1E /* NSURL+BUYAdditions.h */,
BE5DC39F1B71B13700B2BC1E /* NSURL+BUYAdditions.m */, BE5DC39F1B71B13700B2BC1E /* NSURL+BUYAdditions.m */,
BE6D05971BD6BA6700772EBB /* NSDictionary+Additions.h */, 901335441C187E0400410ED0 /* NSURLComponents+BUYAdditions.h */,
BE6D05981BD6BA6700772EBB /* NSDictionary+Additions.m */, 901335451C187E0400410ED0 /* NSURLComponents+BUYAdditions.m */,
909944471B71B76800C40A33 /* UIFont+BUYAdditions.h */,
909944481B71B76800C40A33 /* UIFont+BUYAdditions.m */,
); );
path = Utils; path = Utils;
sourceTree = "<group>"; sourceTree = "<group>";
...@@ -896,6 +904,7 @@ ...@@ -896,6 +904,7 @@
901931371BC5B9BC00D1134E /* BUYTaxLine.h in Headers */, 901931371BC5B9BC00D1134E /* BUYTaxLine.h in Headers */,
901931381BC5B9BC00D1134E /* BUYVariantSelectionViewController.h in Headers */, 901931381BC5B9BC00D1134E /* BUYVariantSelectionViewController.h in Headers */,
901931391BC5B9BC00D1134E /* BUYOptionValueCell.h in Headers */, 901931391BC5B9BC00D1134E /* BUYOptionValueCell.h in Headers */,
901335471C187E0400410ED0 /* NSURLComponents+BUYAdditions.h in Headers */,
9019313A1BC5B9BC00D1134E /* BUYImage.h in Headers */, 9019313A1BC5B9BC00D1134E /* BUYImage.h in Headers */,
9019313B1BC5B9BC00D1134E /* BUYOptionValue.h in Headers */, 9019313B1BC5B9BC00D1134E /* BUYOptionValue.h in Headers */,
9019313C1BC5B9BC00D1134E /* BUYShop.h in Headers */, 9019313C1BC5B9BC00D1134E /* BUYShop.h in Headers */,
...@@ -971,6 +980,7 @@ ...@@ -971,6 +980,7 @@
BEB74A7D1B5564870005A300 /* BUYVariantSelectionViewController.h in Headers */, BEB74A7D1B5564870005A300 /* BUYVariantSelectionViewController.h in Headers */,
BE10079B1B6165EC0031CEE7 /* BUYOptionValueCell.h in Headers */, BE10079B1B6165EC0031CEE7 /* BUYOptionValueCell.h in Headers */,
BE9A64591B503CD40033E558 /* BUYImage.h in Headers */, BE9A64591B503CD40033E558 /* BUYImage.h in Headers */,
901335461C187E0400410ED0 /* NSURLComponents+BUYAdditions.h in Headers */,
BE9A64681B503D080033E558 /* BUYOptionValue.h in Headers */, BE9A64681B503D080033E558 /* BUYOptionValue.h in Headers */,
BE9A64661B503D010033E558 /* BUYShop.h in Headers */, BE9A64661B503D010033E558 /* BUYShop.h in Headers */,
BE9A644D1B503CA20033E558 /* BUYShippingRate.h in Headers */, BE9A644D1B503CA20033E558 /* BUYShippingRate.h in Headers */,
...@@ -1190,6 +1200,7 @@ ...@@ -1190,6 +1200,7 @@
901930E31BC5B9BC00D1134E /* BUYApplePayHelpers.m in Sources */, 901930E31BC5B9BC00D1134E /* BUYApplePayHelpers.m in Sources */,
901930E41BC5B9BC00D1134E /* BUYOptionSelectionViewController.m in Sources */, 901930E41BC5B9BC00D1134E /* BUYOptionSelectionViewController.m in Sources */,
901930E51BC5B9BC00D1134E /* BUYVariantOptionView.m in Sources */, 901930E51BC5B9BC00D1134E /* BUYVariantOptionView.m in Sources */,
901335491C187E0400410ED0 /* NSURLComponents+BUYAdditions.m in Sources */,
901930E61BC5B9BC00D1134E /* BUYPresentationControllerForVariantSelection.m in Sources */, 901930E61BC5B9BC00D1134E /* BUYPresentationControllerForVariantSelection.m in Sources */,
901930E71BC5B9BC00D1134E /* NSDecimalNumber+BUYAdditions.m in Sources */, 901930E71BC5B9BC00D1134E /* NSDecimalNumber+BUYAdditions.m in Sources */,
901930E81BC5B9BC00D1134E /* BUYImage.m in Sources */, 901930E81BC5B9BC00D1134E /* BUYImage.m in Sources */,
...@@ -1284,6 +1295,7 @@ ...@@ -1284,6 +1295,7 @@
BE9A64751B503D370033E558 /* BUYApplePayHelpers.m in Sources */, BE9A64751B503D370033E558 /* BUYApplePayHelpers.m in Sources */,
BEB74A7A1B55647C0005A300 /* BUYOptionSelectionViewController.m in Sources */, BEB74A7A1B55647C0005A300 /* BUYOptionSelectionViewController.m in Sources */,
BEB74A7C1B5564840005A300 /* BUYVariantOptionView.m in Sources */, BEB74A7C1B5564840005A300 /* BUYVariantOptionView.m in Sources */,
901335481C187E0400410ED0 /* NSURLComponents+BUYAdditions.m in Sources */,
BEB74A241B554BF20005A300 /* BUYPresentationControllerForVariantSelection.m in Sources */, BEB74A241B554BF20005A300 /* BUYPresentationControllerForVariantSelection.m in Sources */,
BE9A64711B503D260033E558 /* NSDecimalNumber+BUYAdditions.m in Sources */, BE9A64711B503D260033E558 /* NSDecimalNumber+BUYAdditions.m in Sources */,
BE9A645A1B503CD90033E558 /* BUYImage.m in Sources */, BE9A645A1B503CD90033E558 /* BUYImage.m in Sources */,
......
...@@ -27,17 +27,18 @@ ...@@ -27,17 +27,18 @@
#import "BUYAddress.h" #import "BUYAddress.h"
#import "BUYCart.h" #import "BUYCart.h"
#import "BUYCheckout.h" #import "BUYCheckout.h"
#import "BUYCheckout_Private.h"
#import "BUYCreditCard.h" #import "BUYCreditCard.h"
#import "BUYClient.h" #import "BUYClient.h"
#import "BUYCollection.h"
#import "BUYCollection+Additions.h"
#import "BUYError.h"
#import "BUYGiftCard.h" #import "BUYGiftCard.h"
#import "BUYProduct.h" #import "BUYProduct.h"
#import "BUYShippingRate.h" #import "BUYShippingRate.h"
#import "BUYShop.h" #import "BUYShop.h"
#import "BUYCheckout_Private.h"
#import "NSDecimalNumber+BUYAdditions.h" #import "NSDecimalNumber+BUYAdditions.h"
#import "BUYError.h" #import "NSURLComponents+BUYAdditions.h"
#import "BUYCollection.h"
#import "BUYCollection+Additions.h"
#if __has_include(<PassKit/PassKit.h>) #if __has_include(<PassKit/PassKit.h>)
@import PassKit; @import PassKit;
...@@ -55,6 +56,9 @@ ...@@ -55,6 +56,9 @@
NSString * const BUYVersionString = @"1.2.3"; NSString * const BUYVersionString = @"1.2.3";
static NSString *const kBUYClientPathProductPublications = @"product_publications";
static NSString *const kBUYClientPathCollectionPublications = @"collection_publications";
@interface BUYClient () <NSURLSessionDelegate> @interface BUYClient () <NSURLSessionDelegate>
@property (nonatomic, strong) NSString *shopDomain; @property (nonatomic, strong) NSString *shopDomain;
...@@ -110,9 +114,9 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -110,9 +114,9 @@ NSString * const BUYVersionString = @"1.2.3";
- (NSURLSessionDataTask *)getShop:(BUYDataShopBlock)block - (NSURLSessionDataTask *)getShop:(BUYDataShopBlock)block
{ {
NSString *url = [NSString stringWithFormat:@"https://%@/meta.json", _shopDomain]; NSURLComponents *shopComponents = [self URLComponentsForShop];
return [self getRequestForURL:url completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { return [self getRequestForURL:shopComponents.URL completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
BUYShop *shop = nil; BUYShop *shop = nil;
if (json && error == nil) { if (json && error == nil) {
shop = [[BUYShop alloc] initWithDictionary:json]; shop = [[BUYShop alloc] initWithDictionary:json];
...@@ -123,13 +127,15 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -123,13 +127,15 @@ NSString * const BUYVersionString = @"1.2.3";
- (NSURLSessionDataTask *)getProductsPage:(NSUInteger)page completion:(BUYDataProductListBlock)block - (NSURLSessionDataTask *)getProductsPage:(NSUInteger)page completion:(BUYDataProductListBlock)block
{ {
NSString *url = [NSString stringWithFormat:@"https://%@/api/channels/%@/product_publications.json?limit=%lu&page=%lu", self.shopDomain, self.channelId, (unsigned long)self.pageSize, (unsigned long)page]; NSURLComponents *components = [self URLComponentsForChannelsAppendingPath:kBUYClientPathProductPublications
queryItems:@{@"limit" : [NSString stringWithFormat:@"%lu", (unsigned long)self.pageSize],
@"page" : [NSString stringWithFormat:@"%lu", (unsigned long)page]}];
return [self getRequestForURL:url completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { return [self getRequestForURL:components.URL completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
NSArray *products = nil; NSArray *products = nil;
if (json && error == nil) { if (json && error == nil) {
products = [BUYProduct convertJSONArray:json[@"product_publications"]]; products = [BUYProduct convertJSONArray:json[kBUYClientPathProductPublications]];
} }
block(products, page, [self hasReachedEndOfPage:products] || error, error); block(products, page, [self hasReachedEndOfPage:products] || error, error);
}]; }];
...@@ -151,12 +157,14 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -151,12 +157,14 @@ NSString * const BUYVersionString = @"1.2.3";
- (NSURLSessionDataTask *)getProductsByIds:(NSArray *)productIds completion:(BUYDataProductsBlock)block - (NSURLSessionDataTask *)getProductsByIds:(NSArray *)productIds completion:(BUYDataProductsBlock)block
{ {
NSString *url = [NSString stringWithFormat:@"https://%@/api/channels/%@/product_publications.json?product_ids=%@", self.shopDomain, self.channelId, [productIds componentsJoinedByString:@","]]; NSURLComponents *components = [self URLComponentsForChannelsAppendingPath:kBUYClientPathProductPublications
return [self getRequestForURL:url completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { queryItems:@{@"product_ids" : [productIds componentsJoinedByString:@","]}];
return [self getRequestForURL:components.URL completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
NSArray *products = nil; NSArray *products = nil;
if (json && error == nil) { if (json && error == nil) {
products = [BUYProduct convertJSONArray:json[@"product_publications"]]; products = [BUYProduct convertJSONArray:json[kBUYClientPathProductPublications]];
} }
if (error == nil && [products count] == 0) { if (error == nil && [products count] == 0) {
error = [NSError errorWithDomain:kShopifyError code:BUYShopifyError_InvalidProductID userInfo:@{ NSLocalizedDescriptionKey : @"Product IDs are not valid. Confirm the product IDs on your shop's admin and also ensure that the visibility is on for the Mobile App channel." }]; error = [NSError errorWithDomain:kShopifyError code:BUYShopifyError_InvalidProductID userInfo:@{ NSLocalizedDescriptionKey : @"Product IDs are not valid. Confirm the product IDs on your shop's admin and also ensure that the visibility is on for the Mobile App channel." }];
...@@ -167,13 +175,13 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -167,13 +175,13 @@ NSString * const BUYVersionString = @"1.2.3";
- (NSURLSessionDataTask *)getCollections:(BUYDataCollectionsBlock)block - (NSURLSessionDataTask *)getCollections:(BUYDataCollectionsBlock)block
{ {
NSString *url = [NSString stringWithFormat:@"https://%@/api/channels/%@/collection_publications.json", self.shopDomain, self.channelId]; NSURLComponents *components = [self URLComponentsForChannelsAppendingPath:kBUYClientPathCollectionPublications queryItems:nil];
return [self getRequestForURL:url completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { return [self getRequestForURL:components.URL completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
NSArray *collections = nil; NSArray *collections = nil;
if (json && error == nil) { if (json && error == nil) {
collections = [BUYCollection convertJSONArray:json[@"collection_publications"]]; collections = [BUYCollection convertJSONArray:json[kBUYClientPathCollectionPublications]];
} }
block(collections, error); block(collections, error);
}]; }];
...@@ -188,18 +196,17 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -188,18 +196,17 @@ NSString * const BUYVersionString = @"1.2.3";
{ {
NSURLSessionDataTask *task = nil; NSURLSessionDataTask *task = nil;
if (collectionId) { if (collectionId) {
NSMutableArray *parameters = [NSMutableArray array]; NSURLComponents *components = [self URLComponentsForChannelsAppendingPath:kBUYClientPathProductPublications
[parameters addObject:[NSString stringWithFormat:@"collection_id=%lu", collectionId.longValue]]; queryItems:@{@"collection_id" : [NSString stringWithFormat:@"%lu", collectionId.longValue],
[parameters addObject:[NSString stringWithFormat:@"limit=%lu", (unsigned long)self.pageSize]]; @"limit" : [NSString stringWithFormat:@"%lu", (unsigned long)self.pageSize],
[parameters addObject:[NSString stringWithFormat:@"page=%lu", (unsigned long)page]]; @"page" : [NSString stringWithFormat:@"%lu", (unsigned long)page],
[parameters addObject:[NSString stringWithFormat:@"sort_by=%@", [BUYCollection sortOrderParameterForCollectionSort:sortOrder]]]; @"sort_by" : [BUYCollection sortOrderParameterForCollectionSort:sortOrder]}];
NSString *url = [NSString stringWithFormat:@"https://%@/api/channels/%@/product_publications.json?%@", self.shopDomain, self.channelId, [parameters componentsJoinedByString:@"&"]];
task = [self getRequestForURL:url completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { task = [self getRequestForURL:components.URL completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
NSArray *products = nil; NSArray *products = nil;
if (json && error == nil) { if (json && error == nil) {
products = [BUYProduct convertJSONArray:json[@"product_publications"]]; products = [BUYProduct convertJSONArray:json[kBUYClientPathProductPublications]];
} }
block(products, page, [self hasReachedEndOfPage:products] || error, error); block(products, page, [self hasReachedEndOfPage:products] || error, error);
}]; }];
...@@ -223,6 +230,48 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -223,6 +230,48 @@ NSString * const BUYVersionString = @"1.2.3";
return error; return error;
} }
#pragma mark - URL Components
- (NSURLComponents *)URLComponentsForChannelsAppendingPath:(NSString *)appendingPath queryItems:(NSDictionary*)queryItems
{
return [self URLComponentsForAPIPath:[NSString stringWithFormat:@"channels/%@", self.channelId] appendingPath:appendingPath queryItems:queryItems];
}
- (NSURLComponents *)URLComponentsForCheckoutsAppendingPath:(NSString *)appendingPath checkoutToken:(NSString *)checkoutToken queryItems:(NSDictionary*)queryItems
{
NSString *apiPath = @"checkouts";
if (checkoutToken) {
apiPath = [NSString pathWithComponents:@[apiPath, checkoutToken]];
}
return [self URLComponentsForAPIPath:[apiPath copy] appendingPath:appendingPath queryItems:queryItems];
}
- (NSURLComponents *)URLComponentsForAPIPath:(NSString *)apiPath appendingPath:(NSString *)appendingPath queryItems:(NSDictionary*)queryItems
{
NSMutableArray *pathComponents = [NSMutableArray array];
[pathComponents addObject:@"/api"];
[pathComponents addObject:apiPath];
if (appendingPath) {
[pathComponents addObject:appendingPath];
}
return [self URLComponentsForPathComponents:pathComponents queryItems:queryItems];
}
- (NSURLComponents *)URLComponentsForShop
{
return [self URLComponentsForPathComponents:@[@"/meta"] queryItems:nil];
}
- (NSURLComponents *)URLComponentsForPathComponents:(NSArray*)pathComponents queryItems:(NSDictionary*)queryItems
{
NSURLComponents *components = [[NSURLComponents alloc] init];
components.scheme = @"https";
components.host = self.shopDomain;
components.path = [[NSString pathWithComponents:pathComponents] stringByAppendingPathExtension:@"json"];
[components setQueryItemsWithDictionary:queryItems];
return components;
}
#pragma mark - Checkout #pragma mark - Checkout
- (void)handleCheckoutResponse:(NSDictionary *)json error:(NSError *)error block:(BUYDataCheckoutBlock)block - (void)handleCheckoutResponse:(NSDictionary *)json error:(NSError *)error block:(BUYDataCheckoutBlock)block
...@@ -271,7 +320,9 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -271,7 +320,9 @@ NSString * const BUYVersionString = @"1.2.3";
NSData *data = [NSJSONSerialization dataWithJSONObject:checkoutJSON options:0 error:&error]; NSData *data = [NSJSONSerialization dataWithJSONObject:checkoutJSON options:0 error:&error];
if (data && error == nil) { if (data && error == nil) {
task = [self postRequestForURL:[NSString stringWithFormat:@"https://%@/anywhere/checkouts.json", _shopDomain] body:data completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { NSURLComponents *components = [self URLComponentsForCheckoutsAppendingPath:nil checkoutToken:nil queryItems:nil];
task = [self postRequestForURL:components.URL body:data completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
[self handleCheckoutResponse:json error:error block:block]; [self handleCheckoutResponse:json error:error block:block];
}]; }];
} }
...@@ -287,12 +338,18 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -287,12 +338,18 @@ NSString * const BUYVersionString = @"1.2.3";
} }
else { else {
BUYGiftCard *giftCard = [[BUYGiftCard alloc] initWithDictionary:@{ @"code" : giftCardCode }]; BUYGiftCard *giftCard = [[BUYGiftCard alloc] initWithDictionary:@{ @"code" : giftCardCode }];
task = [self postRequestForURL:[NSString stringWithFormat:@"https://%@/anywhere/checkouts/%@/gift_cards.json", _shopDomain, checkout.token] object:giftCard completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { NSURLComponents *components = [self URLComponentsForCheckoutsAppendingPath:@"gift_cards"
if (error == nil) { checkoutToken:checkout.token
[self updateCheckout:checkout withGiftCardDictionary:json[@"gift_card"] addingGiftCard:YES]; queryItems:nil];
}
block(checkout, error); task = [self postRequestForURL:components.URL
}]; object:giftCard
completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
if (error == nil) {
[self updateCheckout:checkout withGiftCardDictionary:json[@"gift_card"] addingGiftCard:YES];
}
block(checkout, error);
}];
} }
return task; return task;
...@@ -302,7 +359,10 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -302,7 +359,10 @@ NSString * const BUYVersionString = @"1.2.3";
{ {
NSURLSessionDataTask *task = nil; NSURLSessionDataTask *task = nil;
if (giftCard.identifier) { if (giftCard.identifier) {
task = [self deleteRequestForURL:[NSString stringWithFormat:@"https://%@/anywhere/checkouts/%@/gift_cards/%@.json", _shopDomain, checkout.token, giftCard.identifier] completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { NSURLComponents *components = [self URLComponentsForCheckoutsAppendingPath:[NSString stringWithFormat:@"gift_cards/%@", giftCard.identifier]
checkoutToken:checkout.token
queryItems:nil];
task = [self deleteRequestForURL:components.URL completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
if (error == nil) { if (error == nil) {
[self updateCheckout:checkout withGiftCardDictionary:json[@"gift_card"] addingGiftCard:NO]; [self updateCheckout:checkout withGiftCardDictionary:json[@"gift_card"] addingGiftCard:NO];
} }
...@@ -327,6 +387,7 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -327,6 +387,7 @@ NSString * const BUYVersionString = @"1.2.3";
} }
checkout.giftCards = [giftCardArray copy]; checkout.giftCards = [giftCardArray copy];
checkout.paymentDue = [NSDecimalNumber buy_decimalNumberFromJSON:giftCardDictionary[@"checkout"][@"payment_due"]]; checkout.paymentDue = [NSDecimalNumber buy_decimalNumberFromJSON:giftCardDictionary[@"checkout"][@"payment_due"]];
// Marking the checkout as clean. The properties we have updated above we don't need to re-sync with Shopify. // Marking the checkout as clean. The properties we have updated above we don't need to re-sync with Shopify.
// There's also an issue with gift cards where syncing the gift card JSON won't work since the update endpoint // There's also an issue with gift cards where syncing the gift card JSON won't work since the update endpoint
// doesn't accept the gift card without a gift card code (which we do not have). // doesn't accept the gift card without a gift card code (which we do not have).
...@@ -335,7 +396,10 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -335,7 +396,10 @@ NSString * const BUYVersionString = @"1.2.3";
- (NSURLSessionDataTask *)getCheckout:(BUYCheckout *)checkout completion:(BUYDataCheckoutBlock)block - (NSURLSessionDataTask *)getCheckout:(BUYCheckout *)checkout completion:(BUYDataCheckoutBlock)block
{ {
return [self getRequestForURL:[NSString stringWithFormat:@"https://%@/anywhere/checkouts/%@.json", _shopDomain, checkout.token] completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { NSURLComponents *components = [self URLComponentsForCheckoutsAppendingPath:nil
checkoutToken:checkout.token
queryItems:nil];
return [self getRequestForURL:components.URL completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
[self handleCheckoutResponse:json error:error block:block]; [self handleCheckoutResponse:json error:error block:block];
}]; }];
} }
...@@ -347,7 +411,10 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -347,7 +411,10 @@ NSString * const BUYVersionString = @"1.2.3";
NSURLSessionDataTask *task = nil; NSURLSessionDataTask *task = nil;
if ([checkout hasToken]) { if ([checkout hasToken]) {
task = [self patchRequestForURL:[NSString stringWithFormat:@"https://%@/anywhere/checkouts/%@.json", _shopDomain, checkout.token] body:data completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { NSURLComponents *components = [self URLComponentsForCheckoutsAppendingPath:nil
checkoutToken:checkout.token
queryItems:nil];
task = [self patchRequestForURL:components.URL body:data completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
[self handleCheckoutResponse:json error:error block:block]; [self handleCheckoutResponse:json error:error block:block];
}]; }];
} }
...@@ -362,12 +429,12 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -362,12 +429,12 @@ NSString * const BUYVersionString = @"1.2.3";
NSData *data = nil; NSData *data = nil;
NSError *error = nil; NSError *error = nil;
if (checkout.paymentSessionId.length > 0) { if (checkout.paymentSessionId.length > 0) {
NSDictionary *paymentJson = @{ @"payment_session_id" : checkout.paymentSessionId }; NSDictionary *paymentJson = @{ @"payment_session_id" : checkout.paymentSessionId };
data = [NSJSONSerialization dataWithJSONObject:paymentJson options:0 error:&error]; data = [NSJSONSerialization dataWithJSONObject:paymentJson options:0 error:&error];
} }
if ((data && error == nil) || (checkout.paymentDue && checkout.paymentDue.floatValue == 0)) { if ((data && error == nil) || (checkout.paymentDue && checkout.paymentDue.floatValue == 0)) {
task = [self checkoutCompletionRequestWithCheckout:checkout body:data completion:block]; task = [self checkoutCompletionRequestWithCheckout:checkout body:data completion:block];
} }
...@@ -412,7 +479,10 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -412,7 +479,10 @@ NSString * const BUYVersionString = @"1.2.3";
- (NSURLSessionDataTask *)checkoutCompletionRequestWithCheckout:(BUYCheckout *)checkout body:(NSData *)body completion:(BUYDataCheckoutBlock)block - (NSURLSessionDataTask *)checkoutCompletionRequestWithCheckout:(BUYCheckout *)checkout body:(NSData *)body completion:(BUYDataCheckoutBlock)block
{ {
return [self postRequestForURL:[NSString stringWithFormat:@"https://%@/anywhere/checkouts/%@/complete.json", _shopDomain, checkout.token] body:body completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { NSURLComponents *components = [self URLComponentsForCheckoutsAppendingPath:@"complete"
checkoutToken:checkout.token
queryItems:nil];
return [self postRequestForURL:components.URL body:body completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
[self handleCheckoutResponse:json error:error block:block]; [self handleCheckoutResponse:json error:error block:block];
}]; }];
} }
...@@ -452,7 +522,10 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -452,7 +522,10 @@ NSString * const BUYVersionString = @"1.2.3";
- (NSURLSessionDataTask *)getCompletionStatusOfCheckoutToken:(NSString *)token completion:(BUYDataCheckoutStatusBlock)block - (NSURLSessionDataTask *)getCompletionStatusOfCheckoutToken:(NSString *)token completion:(BUYDataCheckoutStatusBlock)block
{ {
return [self getRequestForURL:[NSString stringWithFormat:@"https://%@/anywhere/checkouts/%@/processing.json", _shopDomain, token] completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { NSURLComponents *components = [self URLComponentsForCheckoutsAppendingPath:@"processing"
checkoutToken:token
queryItems:nil];
return [self getRequestForURL:components.URL completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
NSInteger statusCode = [(NSHTTPURLResponse *)response statusCode]; NSInteger statusCode = [(NSHTTPURLResponse *)response statusCode];
block([BUYClient statusForStatusCode:statusCode error:error], error); block([BUYClient statusForStatusCode:statusCode error:error], error);
}]; }];
...@@ -464,7 +537,8 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -464,7 +537,8 @@ NSString * const BUYVersionString = @"1.2.3";
{ {
NSURLSessionDataTask *task = nil; NSURLSessionDataTask *task = nil;
if ([checkout hasToken]) { if ([checkout hasToken]) {
task = [self getRequestForURL:[NSString stringWithFormat:@"https://%@/anywhere/checkouts/%@/shipping_rates.json?checkout", _shopDomain, checkout.token] completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { NSURLComponents *components = [self URLComponentsForCheckoutsAppendingPath:@"shipping_rates" checkoutToken:checkout.token queryItems:@{ @"checkout" : @"" }];
task = [self getRequestForURL:components.URL completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
NSArray *shippingRates = nil; NSArray *shippingRates = nil;
if (error == nil && json) { if (error == nil && json) {
shippingRates = [BUYShippingRate convertJSONArray:json[@"shipping_rates"]]; shippingRates = [BUYShippingRate convertJSONArray:json[@"shipping_rates"]];
...@@ -552,7 +626,7 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -552,7 +626,7 @@ NSString * const BUYVersionString = @"1.2.3";
return [[BUYError alloc] initWithDomain:kShopifyError code:statusCode userInfo:errorDictionary]; return [[BUYError alloc] initWithDomain:kShopifyError code:statusCode userInfo:errorDictionary];
} }
- (NSURLSessionDataTask *)requestForURL:(NSString *)url method:(NSString *)method object:(id <BUYSerializable>)object completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler - (NSURLSessionDataTask *)requestForURL:(NSURL *)url method:(NSString *)method object:(id <BUYSerializable>)object completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler
{ {
NSDictionary *json = [object jsonDictionaryForCheckout]; NSDictionary *json = [object jsonDictionaryForCheckout];
NSError *error = nil; NSError *error = nil;
...@@ -569,9 +643,9 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -569,9 +643,9 @@ NSString * const BUYVersionString = @"1.2.3";
[task resume]; [task resume];
} }
- (NSURLSessionDataTask *)requestForURL:(NSString *)url method:(NSString *)method body:(NSData *)body completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler - (NSURLSessionDataTask *)requestForURL:(NSURL *)url method:(NSString *)method body:(NSData *)body completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler
{ {
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:url]]; NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
request.HTTPBody = body; request.HTTPBody = body;
[request addValue:[self authorizationHeader] forHTTPHeaderField:@"Authorization"]; [request addValue:[self authorizationHeader] forHTTPHeaderField:@"Authorization"];
...@@ -609,7 +683,7 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -609,7 +683,7 @@ NSString * const BUYVersionString = @"1.2.3";
- (NSURLSessionDataTask *)postPaymentRequestWithCheckout:(BUYCheckout *)checkout body:(NSData *)body completion:(BUYDataCreditCardBlock)block - (NSURLSessionDataTask *)postPaymentRequestWithCheckout:(BUYCheckout *)checkout body:(NSData *)body completion:(BUYDataCreditCardBlock)block
{ {
return [self requestForURL:[checkout.paymentURL absoluteString] method:kPOST body:body completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) { return [self requestForURL:checkout.paymentURL method:kPOST body:body completionHandler:^(NSDictionary *json, NSURLResponse *response, NSError *error) {
NSString *paymentSessionId = nil; NSString *paymentSessionId = nil;
if (error == nil) { if (error == nil) {
paymentSessionId = json[@"id"]; paymentSessionId = json[@"id"];
...@@ -619,32 +693,32 @@ NSString * const BUYVersionString = @"1.2.3"; ...@@ -619,32 +693,32 @@ NSString * const BUYVersionString = @"1.2.3";
}]; }];
} }
- (NSURLSessionDataTask *)getRequestForURL:(NSString *)url completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler - (NSURLSessionDataTask *)getRequestForURL:(NSURL *)url completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler
{ {
return [self requestForURL:url method:kGET body:nil completionHandler:completionHandler]; return [self requestForURL:url method:kGET body:nil completionHandler:completionHandler];
} }
- (NSURLSessionDataTask *)postRequestForURL:(NSString *)url object:(id <BUYSerializable>)object completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler - (NSURLSessionDataTask *)postRequestForURL:(NSURL *)url object:(id <BUYSerializable>)object completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler
{ {
return [self requestForURL:url method:kPOST object:object completionHandler:completionHandler]; return [self requestForURL:url method:kPOST object:object completionHandler:completionHandler];
} }
- (NSURLSessionDataTask *)postRequestForURL:(NSString *)url body:(NSData *)body completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler - (NSURLSessionDataTask *)postRequestForURL:(NSURL *)url body:(NSData *)body completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler
{ {
return [self requestForURL:url method:kPOST body:body completionHandler:completionHandler]; return [self requestForURL:url method:kPOST body:body completionHandler:completionHandler];
} }
- (NSURLSessionDataTask *)patchRequestForURL:(NSString *)url object:(id <BUYSerializable>)object completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler - (NSURLSessionDataTask *)patchRequestForURL:(NSURL *)url object:(id <BUYSerializable>)object completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler
{ {
return [self requestForURL:url method:kPATCH object:object completionHandler:completionHandler]; return [self requestForURL:url method:kPATCH object:object completionHandler:completionHandler];
} }
- (NSURLSessionDataTask *)patchRequestForURL:(NSString *)url body:(NSData *)body completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler - (NSURLSessionDataTask *)patchRequestForURL:(NSURL *)url body:(NSData *)body completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler
{ {
return [self requestForURL:url method:kPATCH body:body completionHandler:completionHandler]; return [self requestForURL:url method:kPATCH body:body completionHandler:completionHandler];
} }
- (NSURLSessionDataTask *)deleteRequestForURL:(NSString *)url completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler - (NSURLSessionDataTask *)deleteRequestForURL:(NSURL *)url completionHandler:(void (^)(NSDictionary *json, NSURLResponse *response, NSError *error))completionHandler
{ {
return [self requestForURL:url method:kDELETE body:nil completionHandler:completionHandler]; return [self requestForURL:url method:kDELETE body:nil completionHandler:completionHandler];
} }
......
//
// NSURLComponents+BUYAdditions.h
// Mobile Buy SDK
//
// Created by Shopify.
// Copyright (c) 2015 Shopify Inc. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
@import Foundation;
@interface NSURLComponents (BUYAdditions)
- (void)setQueryItemsWithDictionary:(NSDictionary*)namesAndValues;
@end
//
// NSURLComponents+BUYAdditions.m
// Mobile Buy SDK
//
// Created by Shopify.
// Copyright (c) 2015 Shopify Inc. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
#import "NSURLComponents+BUYAdditions.h"
@implementation NSURLComponents (BUYAdditions)
- (void)setQueryItemsWithDictionary:(NSDictionary*)dictionary
{
if (dictionary) {
NSMutableArray *queryItems = [NSMutableArray array];
for (NSString *key in [dictionary allKeys]) {
NSString *value = [dictionary[key] length] ? dictionary[key] : nil;
[queryItems addObject:[[NSURLQueryItem alloc] initWithName:key value:value]];
}
self.queryItems = [queryItems copy];
}
}
@end
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<key>--repeat-first-par</key> <key>--repeat-first-par</key>
<false/> <false/>
<key>--company-id</key> <key>--company-id</key>
<string>org.shopify</string> <string>com.shopify</string>
<key>--create-docset</key> <key>--create-docset</key>
<false/> <false/>
<key>--create-html</key> <key>--create-html</key>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleIdentifier</key>
<string>com.shopify.Mobile-Buy-SDK</string>
<key>CFBundleName</key>
<string>Mobile Buy SDK Documentation</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>DocSetFeedName</key>
<string>Mobile Buy SDK Documentation</string>
<key>DocSetMinimumXcodeVersion</key>
<string>3.0</string>
<key>DashDocSetFamily</key>
<string>appledoc</string>
<key>DocSetPublisherIdentifier</key>
<string>com.shopify.documentation</string>
<key>DocSetPublisherName</key>
<string>Shopify</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2015 Shopify. All rights reserved.</string>
</dict>
</plist>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYCheckoutTypeBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYCheckoutTypeBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYStoreViewController.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYCheckoutTypeBlock</h3>
<code>typedef void (^BUYCheckoutTypeBlock) (BUYCheckoutType type)</code>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataCheckoutBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataCheckoutBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataCheckoutBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing a <a href="../Classes/BUYCheckout.html">BUYCheckout</a> and/or an NSError</p>
</div>
<code>typedef void (^BUYDataCheckoutBlock) (BUYCheckout *checkout, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataCheckoutStatusBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataCheckoutStatusBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataCheckoutStatusBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing a <a href="../Classes/BUYCheckout.html">BUYCheckout</a>, a <a href="../Constants/BUYStatus.html">BUYStatus</a> and/or an NSError</p>
</div>
<code>typedef void (^BUYDataCheckoutStatusBlock) (BUYStatus status, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataCollectionsBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataCollectionsBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataCollectionsBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing list of collections</p>
</div>
<code>typedef void (^BUYDataCollectionsBlock) (NSArray *collections, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataCreditCardBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataCreditCardBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataCreditCardBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing a <a href="../Classes/BUYCheckout.html">BUYCheckout</a>, Payment Session ID and/or an NSError</p>
</div>
<code>typedef void (^BUYDataCreditCardBlock) (BUYCheckout *checkout, NSString *paymentSessionId, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataGiftCardBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataGiftCardBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataGiftCardBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing a <a href="../Classes/BUYGiftCard.html">BUYGiftCard</a></p>
</div>
<code>typedef void (^BUYDataGiftCardBlock) (BUYGiftCard *giftCard, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataImagesListBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataImagesListBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataImagesListBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing a list of BUYProductImage objects and/or an NSError</p>
</div>
<code>typedef void (^BUYDataImagesListBlock) (NSArray *images, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataProductBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataProductBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataProductBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing a <a href="../Classes/BUYProduct.html">BUYProduct</a> and/or an NSError</p>
</div>
<code>typedef void (^BUYDataProductBlock) (BUYProduct *product, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataProductListBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataProductListBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataProductListBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing a list of <a href="../Classes/BUYProduct.html">BUYProduct</a> objects, the page requested, a boolean to determine whether the end of the list has been reach and/or an optional NSError</p>
</div>
<code>typedef void (^BUYDataProductListBlock) (NSArray *products, NSUInteger page, BOOL reachedEnd, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataProductsBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataProductsBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataProductsBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing a list of <a href="../Classes/BUYProduct.html">BUYProduct</a> objects and/or an NSError</p>
</div>
<code>typedef void (^BUYDataProductsBlock) (NSArray *products, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataShippingRatesBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataShippingRatesBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataShippingRatesBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing <a href="../Classes/BUYShippingRate.html">BUYShippingRate</a> objects, a <a href="../Constants/BUYStatus.html">BUYStatus</a> and/or an NSError</p>
</div>
<code>typedef void (^BUYDataShippingRatesBlock) (NSArray *shippingRates, BUYStatus status, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDataShopBlock Block Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDataShopBlock Block Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<a title="Block Definition" name="instance_methods"></a>
<h4 class="method-subtitle parameter-title">Block Definition</h4>
<h3 class="subsubtitle method-title">BUYDataShopBlock</h3>
<div class="method-subsection brief-description">
<p>Return block containing a <a href="../Classes/BUYShop.html">BUYShop</a> and/or an NSError</p>
</div>
<code>typedef void (^BUYDataShopBlock) (BUYShop *shop, NSError *error)</code>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<code class="declared-in-ref">BUYClient.h</code><br />
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYAddress Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/address1">address1</option>
<option value="//api/name/address2">address2</option>
<option value="//api/name/city">city</option>
<option value="//api/name/company">company</option>
<option value="//api/name/country">country</option>
<option value="//api/name/countryCode">countryCode</option>
<option value="//api/name/firstName">firstName</option>
<option value="//api/name/lastName">lastName</option>
<option value="//api/name/phone">phone</option>
<option value="//api/name/province">province</option>
<option value="//api/name/provinceCode">provinceCode</option>
<option value="//api/name/zip">zip</option>
</optgroup>
<optgroup label="Class Methods">
<option value="//api/name/buy_addressFromContact:">+ buy_addressFromContact:</option>
<option value="//api/name/buy_addressFromRecord:">+ buy_addressFromRecord:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYAddress Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Conforms to</th>
<td>BUYSerializable</td>
</tr><tr>
<th>Declared in</th>
<td>BUYAddress.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>A BUYAddress represents a shipping or billing address on an order. This will be associated with the customer upon completion.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<h2 class="task-title">Other Methods</h2>
<div class="task-list">
<div class="section-method">
<a name="//api/name/address1" title="address1"></a>
<h3 class="method-title"><code><a href="#//api/name/address1">&nbsp;&nbsp;address1</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The street address of the address.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *address1</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/address2" title="address2"></a>
<h3 class="method-title"><code><a href="#//api/name/address2">&nbsp;&nbsp;address2</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>An optional additional field for the street address of the address.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *address2</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/city" title="city"></a>
<h3 class="method-title"><code><a href="#//api/name/city">&nbsp;&nbsp;city</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The city of the address.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *city</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/company" title="company"></a>
<h3 class="method-title"><code><a href="#//api/name/company">&nbsp;&nbsp;company</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The company of the person associated with the address (optional).</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *company</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/firstName" title="firstName"></a>
<h3 class="method-title"><code><a href="#//api/name/firstName">&nbsp;&nbsp;firstName</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The first name of the person associated with the payment method.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *firstName</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/lastName" title="lastName"></a>
<h3 class="method-title"><code><a href="#//api/name/lastName">&nbsp;&nbsp;lastName</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The last name of the person associated with the payment method.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *lastName</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/phone" title="phone"></a>
<h3 class="method-title"><code><a href="#//api/name/phone">&nbsp;&nbsp;phone</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The phone number at the address.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *phone</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/country" title="country"></a>
<h3 class="method-title"><code><a href="#//api/name/country">&nbsp;&nbsp;country</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The name of the country of the address.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *country</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/countryCode" title="countryCode"></a>
<h3 class="method-title"><code><a href="#//api/name/countryCode">&nbsp;&nbsp;countryCode</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The two-letter code (ISO 3166-1 alpha-2 two-letter <a href="#//api/name/country">country</a> code) for the <a href="#//api/name/country">country</a> of the address.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *countryCode</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/province" title="province"></a>
<h3 class="method-title"><code><a href="#//api/name/province">&nbsp;&nbsp;province</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The name of the state or province of the address</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *province</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/provinceCode" title="provinceCode"></a>
<h3 class="method-title"><code><a href="#//api/name/provinceCode">&nbsp;&nbsp;provinceCode</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The two-letter abbreviation of the state or <a href="#//api/name/province">province</a> of the address.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *provinceCode</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/zip" title="zip"></a>
<h3 class="method-title"><code><a href="#//api/name/zip">&nbsp;&nbsp;zip</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The zip or postal code of the address.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *zip</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYAddress.h</code></p>
</div>
</div>
</div>
</div>
</div>
<a title="ApplePay Methods" name="task_ApplePay Methods"></a>
<h2 class="task-title">ApplePay Methods</h2>
<div class="task-list">
<div class="section-method">
<a name="//api/name/buy_addressFromRecord:" title="buy_addressFromRecord:"></a>
<h3 class="method-title"><code><a href="#//api/name/buy_addressFromRecord:">+&nbsp;buy_addressFromRecord:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creates a BUYAddress from an ABRecordRef</p>
</div>
<div class="method-subsection method-declaration"><code>+ (nonnull BUYAddress *)buy_addressFromRecord:(nullable ABRecordRef)<em>record</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>record</code></th>
<td><p>ABRecordRef to create a BUYAddress from</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The BUYAddress created from an ABRecordRef</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayAdditions.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/buy_addressFromContact:" title="buy_addressFromContact:"></a>
<h3 class="method-title"><code><a href="#//api/name/buy_addressFromContact:">+&nbsp;buy_addressFromContact:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creates a BUYAddress from a PKContact</p>
</div>
<div class="method-subsection method-declaration"><code>+ (nonnull BUYAddress *)buy_addressFromContact:(nullable PKContact *)<em>contact</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>contact</code></th>
<td><p>PKContact to create a BUYAddress from</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The BUYAddress created from a PKContact</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayAdditions.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYApplePayHelpers Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/checkout">checkout</option>
<option value="//api/name/client">client</option>
<option value="//api/name/lastError">lastError</option>
<option value="//api/name/shop">shop</option>
</optgroup>
<optgroup label="Instance Methods">
<option value="//api/name/initWithClient:checkout:">- initWithClient:checkout:</option>
<option value="//api/name/initWithClient:checkout:shop:">- initWithClient:checkout:shop:</option>
<option value="//api/name/updateAndCompleteCheckoutWithPayment:completion:">- updateAndCompleteCheckoutWithPayment:completion:</option>
<option value="//api/name/updateCheckoutWithAddress:completion:">- updateCheckoutWithAddress:completion:</option>
<option value="//api/name/updateCheckoutWithContact:completion:">- updateCheckoutWithContact:completion:</option>
<option value="//api/name/updateCheckoutWithShippingMethod:completion:">- updateCheckoutWithShippingMethod:completion:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYApplePayHelpers Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td>NSObject</td>
</tr><tr>
<th>Conforms to</th>
<td>PKPaymentAuthorizationViewControllerDelegate</td>
</tr><tr>
<th>Declared in</th>
<td>BUYApplePayHelpers.h</td>
</tr>
</tbody></table></div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/initWithClient:checkout:" title="initWithClient:checkout:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithClient:checkout:">&ndash;&nbsp;initWithClient:checkout:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Initializes a helper to support Apple Pay</p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithClient:(BUYClient *)<em>client</em> checkout:(BUYCheckout *)<em>checkout</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>client</code></th>
<td><p>A configured <a href="#//api/name/client">client</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="#//api/name/checkout">checkout</a> which is to be completed using Apple Pay</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>helper object</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/initWithClient:checkout:shop:" title="initWithClient:checkout:shop:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithClient:checkout:shop:">&ndash;&nbsp;initWithClient:checkout:shop:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Initializes a helper to support Apple Pay</p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithClient:(BUYClient *)<em>client</em> checkout:(BUYCheckout *)<em>checkout</em> shop:(BUYShop *)<em>shop</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>client</code></th>
<td><p>A configured <a href="#//api/name/client">client</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="#//api/name/checkout">checkout</a> which is to be completed using Apple Pay</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>shop</code></th>
<td><p>A <a href="#//api/name/shop">shop</a> object to alleviate the need for ApplePayHelper to retrieve it via the <a href="../Classes/BUYClient.html">BUYClient</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>helper object</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/updateAndCompleteCheckoutWithPayment:completion:" title="updateAndCompleteCheckoutWithPayment:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/updateAndCompleteCheckoutWithPayment:completion:">&ndash;&nbsp;updateAndCompleteCheckoutWithPayment:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Call this method in the PKPaymentAuthorizationViewControllerDelegate <code>paymentAuthorizationViewController:didAuthorizePayment:completion</code></p>
</div>
<div class="method-subsection method-declaration"><code>- (void)updateAndCompleteCheckoutWithPayment:(PKPayment *)<em>payment</em> completion:(void ( ^ ) ( PKPaymentAuthorizationStatus status ))<em>completion</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>payment</code></th>
<td><p>the authorized payment</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>completion</code></th>
<td><p>completion block thats called after Shopify authorizes the payment</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/updateCheckoutWithShippingMethod:completion:" title="updateCheckoutWithShippingMethod:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/updateCheckoutWithShippingMethod:completion:">&ndash;&nbsp;updateCheckoutWithShippingMethod:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Call this method in the PKPaymentAuthorizationViewControllerDelegate <code>paymentAuthorizationViewController:didSelectShippingMethod:completion</code></p>
</div>
<div class="method-subsection method-declaration"><code>- (void)updateCheckoutWithShippingMethod:(PKShippingMethod *)<em>shippingMethod</em> completion:(void ( ^ ) ( PKPaymentAuthorizationStatus status , NSArray *methods ))<em>completion</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>shippingMethod</code></th>
<td><p>The selected shipping method</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>completion</code></th>
<td><p>the completion block called after shipping method is updated on the <a href="#//api/name/checkout">checkout</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/updateCheckoutWithAddress:completion:" title="updateCheckoutWithAddress:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/updateCheckoutWithAddress:completion:">&ndash;&nbsp;updateCheckoutWithAddress:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Call this method in the PKPaymentAuthorizationViewControllerDelegate <code>paymentAuthorizationViewController:didSelectShippingAddress:completion</code></p>
</div>
<div class="method-subsection method-declaration"><code>- (void)updateCheckoutWithAddress:(ABRecordRef)<em>address</em> completion:(void ( ^ ) ( PKPaymentAuthorizationStatus status , NSArray *shippingMethods , NSArray *summaryItems ))<em>completion</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>address</code></th>
<td><p>The selected shipping address</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>completion</code></th>
<td><p>the completion block called after the shipping address is updated on the <a href="#//api/name/checkout">checkout</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/updateCheckoutWithContact:completion:" title="updateCheckoutWithContact:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/updateCheckoutWithContact:completion:">&ndash;&nbsp;updateCheckoutWithContact:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Call this method in the PKPaymentAuthorizationViewControllerDelegate <code>paymentAuthorizationViewController:didSelectShippingAddress:completion</code></p>
</div>
<div class="method-subsection method-declaration"><code>- (void)updateCheckoutWithContact:(PKContact *)<em>contact</em> completion:(void ( ^ ) ( PKPaymentAuthorizationStatus , NSArray *shippingMethods , NSArray *summaryItems ))<em>completion</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>contact</code></th>
<td><p>The selected contact</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>completion</code></th>
<td><p>the completion block called after the shipping address is updated on the <a href="#//api/name/checkout">checkout</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/checkout" title="checkout"></a>
<h3 class="method-title"><code><a href="#//api/name/checkout">&nbsp;&nbsp;checkout</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The current checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) BUYCheckout *checkout</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/client" title="client"></a>
<h3 class="method-title"><code><a href="#//api/name/client">&nbsp;&nbsp;client</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The client used to communicate with Shopify</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) BUYClient *client</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/lastError" title="lastError"></a>
<h3 class="method-title"><code><a href="#//api/name/lastError">&nbsp;&nbsp;lastError</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The last error message</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSError *lastError</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/shop" title="shop"></a>
<h3 class="method-title"><code><a href="#//api/name/shop">&nbsp;&nbsp;shop</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The shop object</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) BUYShop *shop</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayHelpers.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYCart Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/lineItems">lineItems</option>
</optgroup>
<optgroup label="Instance Methods">
<option value="//api/name/addVariant:">- addVariant:</option>
<option value="//api/name/clearCart">- clearCart</option>
<option value="//api/name/isValid">- isValid</option>
<option value="//api/name/removeVariant:">- removeVariant:</option>
<option value="//api/name/setVariant:withTotalQuantity:">- setVariant:withTotalQuantity:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYCart Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td>NSObject</td>
</tr><tr>
<th>Conforms to</th>
<td>BUYSerializable</td>
</tr><tr>
<th>Declared in</th>
<td>BUYCart.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>The BUYCart is the starting point for the Checkout API. You are responsible for building a cart, then transforming it
into a <a href="../Classes/BUYCheckout.html">BUYCheckout</a> using the BUYDataClient.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/lineItems" title="lineItems"></a>
<h3 class="method-title"><code><a href="#//api/name/lineItems">&nbsp;&nbsp;lineItems</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Array of <a href="../Classes/BUYCartLineItem.html">BUYCartLineItem</a> objects in the cart
Note: These are different from <a href="../Classes/BUYLineItem.html">BUYLineItem</a> objects in that
the line item objects do include the <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a>.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly, nonnull) NSArray&lt;BUYCartLineItem*&gt; *lineItems</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCart.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/isValid" title="isValid"></a>
<h3 class="method-title"><code><a href="#//api/name/isValid">&ndash;&nbsp;isValid</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Returns true if the cart is acceptable to send to Shopify.</p>
</div>
<div class="method-subsection method-declaration"><code>- (BOOL)isValid</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCart.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/clearCart" title="clearCart"></a>
<h3 class="method-title"><code><a href="#//api/name/clearCart">&ndash;&nbsp;clearCart</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Empties the cart and any custom-stored propreties.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)clearCart</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCart.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/addVariant:" title="addVariant:"></a>
<h3 class="method-title"><code><a href="#//api/name/addVariant:">&ndash;&nbsp;addVariant:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Adds a <a href="../Classes/BUYCartLineItem.html">BUYCartLineItem</a> to the BUYCart with the given <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> object on it.
If the associated <a href="../Classes/BUYCartLineItem.html">BUYCartLineItem</a> exists, that BUYCartLineItem&rsquo;s quantity is increased by one.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)addVariant:(nonnull BUYProductVariant *)<em>variant</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>variant</code></th>
<td><p>The <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> to add to the BUYCart or increase by one quantity</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCart.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/removeVariant:" title="removeVariant:"></a>
<h3 class="method-title"><code><a href="#//api/name/removeVariant:">&ndash;&nbsp;removeVariant:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Removes the <a href="../Classes/BUYCartLineItem.html">BUYCartLineItem</a> from the BUYCart associated with the given <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> object.
If the associated <a href="../Classes/BUYCartLineItem.html">BUYCartLineItem</a> exists, that BUYCartLineItem&rsquo;s quantity is decreased by one.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)removeVariant:(nonnull BUYProductVariant *)<em>variant</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>variant</code></th>
<td><p>The <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> to remove from the BUYCart or decrease by one quantity</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCart.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/setVariant:withTotalQuantity:" title="setVariant:withTotalQuantity:"></a>
<h3 class="method-title"><code><a href="#//api/name/setVariant:withTotalQuantity:">&ndash;&nbsp;setVariant:withTotalQuantity:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Adds a <a href="../Classes/BUYCartLineItem.html">BUYCartLineItem</a> with a set quantity to the BUYCart with the given <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> object on it.
If the associated <a href="../Classes/BUYCartLineItem.html">BUYCartLineItem</a> exists, that BUYCartLineItem&rsquo;s quantity is overriden with the quantity specificed.
If the quantity is 0 the associated <a href="../Classes/BUYCartLineItem.html">BUYCartLineItem</a> is removed from <a href="#//api/name/lineItems"><code>lineItems</code></a>.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)setVariant:(nonnull BUYProductVariant *)<em>variant</em> withTotalQuantity:(NSInteger)<em>quantity</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>variant</code></th>
<td><p>The <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> to add to the BUYCart with a quantity</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>quantity</code></th>
<td><p>The quantity for the <a href="../Classes/BUYCartLineItem.html">BUYCartLineItem</a> associated with the <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCart.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYCartLineItem Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/variant">variant</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYCartLineItem Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYLineItem.html">BUYLineItem</a> : <a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYCartLineItem.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>BUYCartLineItem is a subclass of <a href="../Classes/BUYLineItem.html">BUYLineItem</a> that extends the object
by exposing the <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> that the line item was initialized with
using <code>initWithVariant:</code>.</p>
<p>Note that this object is only used for a <a href="../Classes/BUYCart.html">BUYCart</a> and line item objects on
<a href="../Classes/BUYCheckout.html">BUYCheckout</a> are represented by <a href="../Classes/BUYLineItem.html">BUYLineItem</a> objects that only contain the
<a href="#//api/name/variant">variant</a> ID (if created from a <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a>).</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/variant" title="variant"></a>
<h3 class="method-title"><code><a href="#//api/name/variant">&nbsp;&nbsp;variant</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> object associated with the line item
when created using the preferred <code>initWithVariant:</code> initializer.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) BUYProductVariant *variant</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCartLineItem.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYCheckout Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/)">)</option>
<option value="//api/name/billingAddress">billingAddress</option>
<option value="//api/name/cartToken">cartToken</option>
<option value="//api/name/channelId">channelId</option>
<option value="//api/name/createdAtDate">createdAtDate</option>
<option value="//api/name/creditCard">creditCard</option>
<option value="//api/name/currency">currency</option>
<option value="//api/name/customerId">customerId</option>
<option value="//api/name/discount">discount</option>
<option value="//api/name/email">email</option>
<option value="//api/name/giftCards">giftCards</option>
<option value="//api/name/lineItems">lineItems</option>
<option value="//api/name/marketingAttribution">marketingAttribution</option>
<option value="//api/name/note">note</option>
<option value="//api/name/order">order</option>
<option value="//api/name/partialAddresses">partialAddresses</option>
<option value="//api/name/paymentDue">paymentDue</option>
<option value="//api/name/paymentSessionId">paymentSessionId</option>
<option value="//api/name/paymentURL">paymentURL</option>
<option value="//api/name/privacyPolicyURL">privacyPolicyURL</option>
<option value="//api/name/refundPolicyURL">refundPolicyURL</option>
<option value="//api/name/requiresShipping">requiresShipping</option>
<option value="//api/name/reservationTime">reservationTime</option>
<option value="//api/name/reservationTimeLeft">reservationTimeLeft</option>
<option value="//api/name/shippingAddress">shippingAddress</option>
<option value="//api/name/shippingRate">shippingRate</option>
<option value="//api/name/shippingRateId">shippingRateId</option>
<option value="//api/name/sourceIdentifier">sourceIdentifier</option>
<option value="//api/name/sourceName">sourceName</option>
<option value="//api/name/subtotalPrice">subtotalPrice</option>
<option value="//api/name/taxLines">taxLines</option>
<option value="//api/name/taxesIncluded">taxesIncluded</option>
<option value="//api/name/termsOfServiceURL">termsOfServiceURL</option>
<option value="//api/name/token">token</option>
<option value="//api/name/totalPrice">totalPrice</option>
<option value="//api/name/totalTax">totalTax</option>
<option value="//api/name/updatedAtDate">updatedAtDate</option>
<option value="//api/name/webCheckoutURL">webCheckoutURL</option>
<option value="//api/name/webReturnToLabel">webReturnToLabel</option>
<option value="//api/name/webReturnToURL">webReturnToURL</option>
</optgroup>
<optgroup label="Instance Methods">
<option value="//api/name/buy_summaryItems">- buy_summaryItems</option>
<option value="//api/name/buy_summaryItemsWithShopName:">- buy_summaryItemsWithShopName:</option>
<option value="//api/name/hasToken">- hasToken</option>
<option value="//api/name/init">- init</option>
<option value="//api/name/initWithCart:">- initWithCart:</option>
<option value="//api/name/initWithCartToken:">- initWithCartToken:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYCheckout Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Conforms to</th>
<td>BUYSerializable</td>
</tr><tr>
<th>Declared in</th>
<td>BUYCheckout.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>The checkout object. This is the main object that you will interact with when creating orders on Shopify.</p>
<p>Note: Do not create a BUYCheckout object directly. Use <a href="#//api/name/initWithCart:">initWithCart:</a> to transform a <a href="../Classes/BUYCart.html">BUYCart</a> into a BUYCheckout.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<h2 class="task-title">Other Methods</h2>
<div class="task-list">
<div class="section-method">
<a name="//api/name/email" title="email"></a>
<h3 class="method-title"><code><a href="#//api/name/email">&nbsp;&nbsp;email</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The customer&rsquo;s email address</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *email</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/token" title="token"></a>
<h3 class="method-title"><code><a href="#//api/name/token">&nbsp;&nbsp;token</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Unique token for the checkout on Shopify</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy, readonly) NSString *token</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/cartToken" title="cartToken"></a>
<h3 class="method-title"><code><a href="#//api/name/cartToken">&nbsp;&nbsp;cartToken</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Unique <a href="#//api/name/token">token</a> for a cart which can be used to convert to a checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy, readonly) NSString *cartToken</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/requiresShipping" title="requiresShipping"></a>
<h3 class="method-title"><code><a href="#//api/name/requiresShipping">&nbsp;&nbsp;requiresShipping</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>States whether or not the fulfillment requires shipping</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign, readonly) BOOL requiresShipping</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/taxesIncluded" title="taxesIncluded"></a>
<h3 class="method-title"><code><a href="#//api/name/taxesIncluded">&nbsp;&nbsp;taxesIncluded</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>States whether or not the taxes are included in the price</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign, readonly) BOOL taxesIncluded</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/currency" title="currency"></a>
<h3 class="method-title"><code><a href="#//api/name/currency">&nbsp;&nbsp;currency</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The three letter code (ISO 4217) for the currency used for the payment</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy, readonly) NSString *currency</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/subtotalPrice" title="subtotalPrice"></a>
<h3 class="method-title"><code><a href="#//api/name/subtotalPrice">&nbsp;&nbsp;subtotalPrice</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Price of the <a href="#//api/name/order">order</a> before shipping and taxes</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSDecimalNumber *subtotalPrice</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/totalTax" title="totalTax"></a>
<h3 class="method-title"><code><a href="#//api/name/totalTax">&nbsp;&nbsp;totalTax</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The sum of all the taxes applied to the line items in the <a href="#//api/name/order">order</a></p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSDecimalNumber *totalTax</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/totalPrice" title="totalPrice"></a>
<h3 class="method-title"><code><a href="#//api/name/totalPrice">&nbsp;&nbsp;totalPrice</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The sum of all the prices of all the items in the <a href="#//api/name/order">order</a>, taxes and discounts included</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSDecimalNumber *totalPrice</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/paymentSessionId" title="paymentSessionId"></a>
<h3 class="method-title"><code><a href="#//api/name/paymentSessionId">&nbsp;&nbsp;paymentSessionId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The Payment Session ID associated with a credit card transaction</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *paymentSessionId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/paymentURL" title="paymentURL"></a>
<h3 class="method-title"><code><a href="#//api/name/paymentURL">&nbsp;&nbsp;paymentURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>URL to the payment gateway</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSURL *paymentURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/reservationTime" title="reservationTime"></a>
<h3 class="method-title"><code><a href="#//api/name/reservationTime">&nbsp;&nbsp;reservationTime</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Reservation time on the checkout in seconds. Setting to @0 and updating the checkout
will release inventory reserved by the checkout (when product inventory is not infinite).</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSNumber *reservationTime</code></div>
<div class="method-subsection discussion-section">
<h4 class="method-subtitle">Discussion</h4>
<p>300 seconds is default and maximum. <code>reservationTime</code> is reset to @300 on every
<code>updateCheckout:completion:</code> call.</p>
<p>Note: This can also be done with <code>removeProductReservationsFromCheckout:completion</code>
found in the <a href="../Classes/BUYClient.html">BUYClient</a>.</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/reservationTimeLeft" title="reservationTimeLeft"></a>
<h3 class="method-title"><code><a href="#//api/name/reservationTimeLeft">&nbsp;&nbsp;reservationTimeLeft</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Reservation time remaining on the checkout in seconds</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSNumber *reservationTimeLeft</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/paymentDue" title="paymentDue"></a>
<h3 class="method-title"><code><a href="#//api/name/paymentDue">&nbsp;&nbsp;paymentDue</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Amount of payment due on the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSDecimalNumber *paymentDue</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/lineItems" title="lineItems"></a>
<h3 class="method-title"><code><a href="#//api/name/lineItems">&nbsp;&nbsp;lineItems</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Array of <a href="../Classes/BUYLineItem.html">BUYLineItem</a> objects in the checkout
Note: These are different from BUYCartLineItems in that the line item
objects do not include the <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a></p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSArray&lt;__kindofBUYLineItem*&gt; *lineItems</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/taxLines" title="taxLines"></a>
<h3 class="method-title"><code><a href="#//api/name/taxLines">&nbsp;&nbsp;taxLines</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Array of tax line objects on the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSArray&lt;BUYTaxLine*&gt; *taxLines</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/billingAddress" title="billingAddress"></a>
<h3 class="method-title"><code><a href="#//api/name/billingAddress">&nbsp;&nbsp;billingAddress</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The mailing address associated with the payment method</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) BUYAddress *billingAddress</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/shippingAddress" title="shippingAddress"></a>
<h3 class="method-title"><code><a href="#//api/name/shippingAddress">&nbsp;&nbsp;shippingAddress</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The mailing address to where the <a href="#//api/name/order">order</a> will be shipped</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) BUYAddress *shippingAddress</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/shippingRate" title="shippingRate"></a>
<h3 class="method-title"><code><a href="#//api/name/shippingRate">&nbsp;&nbsp;shippingRate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The shipping rate chosen for the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) BUYShippingRate *shippingRate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/shippingRateId" title="shippingRateId"></a>
<h3 class="method-title"><code><a href="#//api/name/shippingRateId">&nbsp;&nbsp;shippingRateId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Shipping rate identifier</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) NSString *shippingRateId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/discount" title="discount"></a>
<h3 class="method-title"><code><a href="#//api/name/discount">&nbsp;&nbsp;discount</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>A discount added to the checkout
Only one discount can be added to a checkout. Call <code>updateCheckout:completion:</code>
after adding a discount to apply the discount code to the checkout.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) BUYDiscount *discount</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/giftCards" title="giftCards"></a>
<h3 class="method-title"><code><a href="#//api/name/giftCards">&nbsp;&nbsp;giftCards</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>An array of <a href="../Classes/BUYGiftCard.html">BUYGiftCard</a> objects applied to the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSArray&lt;BUYGiftCard*&gt; *giftCards</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/channelId" title="channelId"></a>
<h3 class="method-title"><code><a href="#//api/name/channelId">&nbsp;&nbsp;channelId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Channel ID where the checkout was created</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSString *channelId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/marketingAttribution" title="marketingAttribution"></a>
<h3 class="method-title"><code><a href="#//api/name/marketingAttribution">&nbsp;&nbsp;marketingAttribution</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Attributions for the checkout, containing the application name and platform (defaults to applicationName set
on the <a href="../Classes/BUYClient.html">BUYClient</a>, and &ldquo;iOS&rdquo; respectively</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSDictionary *marketingAttribution</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/webCheckoutURL" title="webCheckoutURL"></a>
<h3 class="method-title"><code><a href="#//api/name/webCheckoutURL">&nbsp;&nbsp;webCheckoutURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>URL which is used for completing checkout. It is recommended to open the URL in Safari to take
advantage of its autocompletion and credit card capture capabilities</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSURL *webCheckoutURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/webReturnToURL" title="webReturnToURL"></a>
<h3 class="method-title"><code><a href="#//api/name/webReturnToURL">&nbsp;&nbsp;webReturnToURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The URL Scheme of the host app. Used to return to the app from the web checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSString *webReturnToURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/webReturnToLabel" title="webReturnToLabel"></a>
<h3 class="method-title"><code><a href="#//api/name/webReturnToLabel">&nbsp;&nbsp;webReturnToLabel</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The button title that will appear after checkout to return to the host app. Defaults to &ldquo;Return to &lsquo;application&rsquo;&rdquo;,
where &lsquo;application&rsquo; is the <code>applicationName</code> set on the <a href="../Classes/BUYClient.html">BUYClient</a></p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSString *webReturnToLabel</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/createdAtDate" title="createdAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/createdAtDate">&nbsp;&nbsp;createdAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creation date of the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy, readonly) NSDate *createdAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/updatedAtDate" title="updatedAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/updatedAtDate">&nbsp;&nbsp;updatedAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Last updated date for the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy, readonly) NSDate *updatedAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/privacyPolicyURL" title="privacyPolicyURL"></a>
<h3 class="method-title"><code><a href="#//api/name/privacyPolicyURL">&nbsp;&nbsp;privacyPolicyURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The website URL for the privacy policy for the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSURL *privacyPolicyURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/refundPolicyURL" title="refundPolicyURL"></a>
<h3 class="method-title"><code><a href="#//api/name/refundPolicyURL">&nbsp;&nbsp;refundPolicyURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The website URL for the refund policy for the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSURL *refundPolicyURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/termsOfServiceURL" title="termsOfServiceURL"></a>
<h3 class="method-title"><code><a href="#//api/name/termsOfServiceURL">&nbsp;&nbsp;termsOfServiceURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The website URL for the terms of service for the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSURL *termsOfServiceURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/sourceName" title="sourceName"></a>
<h3 class="method-title"><code><a href="#//api/name/sourceName">&nbsp;&nbsp;sourceName</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The name of the source of the checkout: &ldquo;mobile_app&rdquo;</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy, readonly) NSString *sourceName</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/sourceIdentifier" title="sourceIdentifier"></a>
<h3 class="method-title"><code><a href="#//api/name/sourceIdentifier">&nbsp;&nbsp;sourceIdentifier</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The unique identifier for the source: the <a href="#//api/name/channelId">channelId</a></p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy, readonly) NSString *sourceIdentifier</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/creditCard" title="creditCard"></a>
<h3 class="method-title"><code><a href="#//api/name/creditCard">&nbsp;&nbsp;creditCard</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Credit card stored on the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) BUYMaskedCreditCard *creditCard</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/customerId" title="customerId"></a>
<h3 class="method-title"><code><a href="#//api/name/customerId">&nbsp;&nbsp;customerId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Customer ID associated with the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy, readonly) NSString *customerId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/note" title="note"></a>
<h3 class="method-title"><code><a href="#//api/name/note">&nbsp;&nbsp;note</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>An optional note attached to the <a href="#//api/name/order">order</a></p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *note</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/order" title="order"></a>
<h3 class="method-title"><code><a href="#//api/name/order">&nbsp;&nbsp;order</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The <a href="../Classes/BUYOrder.html">BUYOrder</a> for a completed checkout</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) BUYOrder *order</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/partialAddresses" title="partialAddresses"></a>
<h3 class="method-title"><code><a href="#//api/name/partialAddresses">&nbsp;&nbsp;partialAddresses</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Flag used to inform server that the shipping address is partially filled, suitable to retrieve shipping rates</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign) BOOL partialAddresses</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/init" title="init"></a>
<h3 class="method-title"><code><a href="#//api/name/init">&ndash;&nbsp;init</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>It is recommended to instantiate a checkout with a cart, or cart <a href="#//api/name/token">token</a></p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)init</code></div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>Checkout</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/initWithCart:" title="initWithCart:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithCart:">&ndash;&nbsp;initWithCart:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creates a new checkout</p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithCart:(BUYCart *)<em>cart</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>cart</code></th>
<td><p>a Cart with line items on it</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>a checkout object</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/initWithCartToken:" title="initWithCartToken:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithCartToken:">&ndash;&nbsp;initWithCartToken:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creates a new checkout</p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithCartToken:(NSString *)<em>cartToken</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>cartToken</code></th>
<td><p>a <a href="#//api/name/token">token</a> for a previously created cart</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>a checkout object</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/hasToken" title="hasToken"></a>
<h3 class="method-title"><code><a href="#//api/name/hasToken">&ndash;&nbsp;hasToken</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Helper method to determine if there is a valid <a href="#//api/name/token">token</a> on the checkout</p>
</div>
<div class="method-subsection method-declaration"><code>- (BOOL)hasToken</code></div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>YES if the <a href="#//api/name/token">token</a> is valid</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/)" title=")"></a>
<h3 class="method-title"><code><a href="#//api/name/)">&nbsp;&nbsp;)</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The unique <a href="#//api/name/order">order</a> ID</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy, readonly) NSNumber *DEPRECATED_MSG_ATTRIBUTE ( &quot;Available on the BUYOrder object&quot; )</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCheckout.h</code></p>
</div>
</div>
</div>
</div>
</div>
<a title="ApplePay Methods" name="task_ApplePay Methods"></a>
<h2 class="task-title">ApplePay Methods</h2>
<div class="task-list">
<div class="section-method">
<a name="//api/name/buy_summaryItems" title="buy_summaryItems"></a>
<h3 class="method-title"><code><a href="#//api/name/buy_summaryItems">&ndash;&nbsp;buy_summaryItems</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Returns an array of summary items for all Apple Pay requests. Will use &lsquo;PAY TOTAL&rsquo; as the summary label. Apple recommends
including the business name in the summary label, so it is recommended to use <code>buy_summaryItemsWithShopName</code> instead.</p>
</div>
<div class="method-subsection method-declaration"><code>- (nonnull NSArray&lt;PKPaymentSummaryItem*&gt; *)buy_summaryItems</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayAdditions.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/buy_summaryItemsWithShopName:" title="buy_summaryItemsWithShopName:"></a>
<h3 class="method-title"><code><a href="#//api/name/buy_summaryItemsWithShopName:">&ndash;&nbsp;buy_summaryItemsWithShopName:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Returns an array of summary items for all Apple Pay requests using the shop name in the &ldquo;PAY&rdquo; section</p>
</div>
<div class="method-subsection method-declaration"><code>- (nonnull NSArray&lt;PKPaymentSummaryItem*&gt; *)buy_summaryItemsWithShopName:(nullable NSString *)<em>shopName</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>shopName</code></th>
<td><p>the shops name</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>An array of PKPaymentSummaryItems</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayAdditions.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYClient Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/)">)</option>
<option value="//api/name/apiKey">apiKey</option>
<option value="//api/name/applicationName">applicationName</option>
<option value="//api/name/channelId">channelId</option>
<option value="//api/name/pageSize">pageSize</option>
<option value="//api/name/queue">queue</option>
<option value="//api/name/shopDomain">shopDomain</option>
<option value="//api/name/urlScheme">urlScheme</option>
</optgroup>
<optgroup label="Instance Methods">
<option value="//api/name/applyGiftCardWithCode:toCheckout:completion:">- applyGiftCardWithCode:toCheckout:completion:</option>
<option value="//api/name/completeCheckout:completion:">- completeCheckout:completion:</option>
<option value="//api/name/completeCheckout:withApplePayToken:completion:">- completeCheckout:withApplePayToken:completion:</option>
<option value="//api/name/createCheckout:completion:">- createCheckout:completion:</option>
<option value="//api/name/createCheckoutWithCartToken:completion:">- createCheckoutWithCartToken:completion:</option>
<option value="//api/name/enableApplePayWithMerchantId:">- enableApplePayWithMerchantId:</option>
<option value="//api/name/getCheckout:completion:">- getCheckout:completion:</option>
<option value="//api/name/getCollections:">- getCollections:</option>
<option value="//api/name/getCompletionStatusOfCheckout:completion:">- getCompletionStatusOfCheckout:completion:</option>
<option value="//api/name/getCompletionStatusOfCheckoutURL:completion:">- getCompletionStatusOfCheckoutURL:completion:</option>
<option value="//api/name/getProductById:completion:">- getProductById:completion:</option>
<option value="//api/name/getProductsByIds:completion:">- getProductsByIds:completion:</option>
<option value="//api/name/getProductsPage:completion:">- getProductsPage:completion:</option>
<option value="//api/name/getProductsPage:inCollection:completion:">- getProductsPage:inCollection:completion:</option>
<option value="//api/name/getProductsPage:inCollection:sortOrder:completion:">- getProductsPage:inCollection:sortOrder:completion:</option>
<option value="//api/name/getShippingRatesForCheckout:completion:">- getShippingRatesForCheckout:completion:</option>
<option value="//api/name/getShop:">- getShop:</option>
<option value="//api/name/initWithShopDomain:apiKey:channelId:">- initWithShopDomain:apiKey:channelId:</option>
<option value="//api/name/removeGiftCard:fromCheckout:completion:">- removeGiftCard:fromCheckout:completion:</option>
<option value="//api/name/removeProductReservationsFromCheckout:completion:">- removeProductReservationsFromCheckout:completion:</option>
<option value="//api/name/storeCreditCard:checkout:completion:">- storeCreditCard:checkout:completion:</option>
<option value="//api/name/testIntegration">- testIntegration</option>
<option value="//api/name/testIntegrationWithMerchantId:">- testIntegrationWithMerchantId:</option>
<option value="//api/name/updateCheckout:completion:">- updateCheckout:completion:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYClient Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td>NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>The BUYDataClient provides all requests needed to perform request on the Shopify Checkout API.
Use this class to perform tasks such as getting a shop, products for a shop, creating a Checkout on Shopify
and completing Checkouts.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<h2 class="task-title">Other Methods</h2>
<div class="task-list">
<div class="section-method">
<a name="//api/name/initWithShopDomain:apiKey:channelId:" title="initWithShopDomain:apiKey:channelId:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithShopDomain:apiKey:channelId:">&ndash;&nbsp;initWithShopDomain:apiKey:channelId:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Initialize a BUYDataClient using a shop&rsquo;s domain, API key and the Channel ID.</p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithShopDomain:(NSString *)<em>shopDomain</em> apiKey:(NSString *)<em>apiKey</em> channelId:(NSString *)<em>channelId</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>shopDomain</code></th>
<td><p>The Shop Domain i.e. abetterlookingshop.myshopify.com</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>apiKey</code></th>
<td><p>The API key provided via the Mobile SDK Channel on Shopify Admin</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>channelId</code></th>
<td><p>The Channel ID provided on Shopify Admin</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>An instance of BUYDataClient</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/queue" title="queue"></a>
<h3 class="method-title"><code><a href="#//api/name/queue">&nbsp;&nbsp;queue</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Queue where callbacks will be called
defaults to main queue</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) dispatch_queue_t queue</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/pageSize" title="pageSize"></a>
<h3 class="method-title"><code><a href="#//api/name/pageSize">&nbsp;&nbsp;pageSize</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The page size for any paged request. This can range from 1-250. Default is 25</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign) NSUInteger pageSize</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/shopDomain" title="shopDomain"></a>
<h3 class="method-title"><code><a href="#//api/name/shopDomain">&nbsp;&nbsp;shopDomain</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The shop domain set using the initializer</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *shopDomain</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/apiKey" title="apiKey"></a>
<h3 class="method-title"><code><a href="#//api/name/apiKey">&nbsp;&nbsp;apiKey</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The API Key set using the initializer</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *apiKey</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/channelId" title="channelId"></a>
<h3 class="method-title"><code><a href="#//api/name/channelId">&nbsp;&nbsp;channelId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The Channel ID set using the initializer</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *channelId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/)" title=")"></a>
<h3 class="method-title"><code><a href="#//api/name/)">&nbsp;&nbsp;)</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The Merchant ID is used for Apple Pay and set using <a href="#//api/name/enableApplePayWithMerchantId:"><code>enableApplePayWithMerchantId:</code></a></p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *DEPRECATED_MSG_ATTRIBUTE ( &quot;Set the `merchantId` on a BUYViewController subclass&quot; )</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/applicationName" title="applicationName"></a>
<h3 class="method-title"><code><a href="#//api/name/applicationName">&nbsp;&nbsp;applicationName</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Application name to attribute orders to. Defaults to app bundle name (CFBundleName)</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSString *applicationName</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/urlScheme" title="urlScheme"></a>
<h3 class="method-title"><code><a href="#//api/name/urlScheme">&nbsp;&nbsp;urlScheme</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The applications URLScheme, used to return to the application after a complete web checkout. Ex. @&ldquo;storeApp://&rdquo;</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSString *urlScheme</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getShop:" title="getShop:"></a>
<h3 class="method-title"><code><a href="#//api/name/getShop:">&ndash;&nbsp;getShop:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Fetches the shop&rsquo;s metadata (from /meta.json).</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getShop:(BUYDataShopBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataShopBlock.html">BUYDataShopBlock</a>)(<a href="../Classes/BUYShop.html">BUYShop</a> <em>shop, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getProductsPage:completion:" title="getProductsPage:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/getProductsPage:completion:">&ndash;&nbsp;getProductsPage:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Fetches a single page of products for the shop.</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getProductsPage:(NSUInteger)<em>page</em> completion:(BUYDataProductListBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>page</code></th>
<td><p>Page to request. Pages start at 1.</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataProductListBlock.html">BUYDataProductListBlock</a>)(NSArray <em>products, NSUInteger page, BOOL reachedEnd, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getProductById:completion:" title="getProductById:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/getProductById:completion:">&ndash;&nbsp;getProductById:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Fetches a single product by the ID of the product.</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getProductById:(NSString *)<em>productId</em> completion:(BUYDataProductBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>productId</code></th>
<td><p>Product ID</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataProductBlock.html">BUYDataProductBlock</a>)(<a href="../Classes/BUYProduct.html">BUYProduct</a> <em>product, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getProductsByIds:completion:" title="getProductsByIds:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/getProductsByIds:completion:">&ndash;&nbsp;getProductsByIds:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Fetches a list of product by the ID of each product.</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getProductsByIds:(NSArray *)<em>productIds</em> completion:(BUYDataProductsBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>productIds</code></th>
<td><p>An array of <code>NSString</code> objects with Product IDs to fetch</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataProductsBlock.html">BUYDataProductsBlock</a>)(NSArray <em>products, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getCollections:" title="getCollections:"></a>
<h3 class="method-title"><code><a href="#//api/name/getCollections:">&ndash;&nbsp;getCollections:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Fetches the collections on the shop</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getCollections:(BUYDataCollectionsBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCollectionsBlock.html">BUYDataCollectionsBlock</a>)(NSArray <em>collections, NSError </em>error)</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getProductsPage:inCollection:completion:" title="getProductsPage:inCollection:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/getProductsPage:inCollection:completion:">&ndash;&nbsp;getProductsPage:inCollection:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Fetches the products in the given collection with the collection&rsquo;s
default sort order set in the shop&rsquo;s admin</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getProductsPage:(NSUInteger)<em>page</em> inCollection:(NSNumber *)<em>collectionId</em> completion:(BUYDataProductListBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>page</code></th>
<td><p>Index of the page requested</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>collectionId</code></th>
<td><p>The <code>collectionId</code> found in the <a href="../Classes/BUYCollection.html">BUYCollection</a> object to fetch the products from</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(NSArray <em>products, NSUInteger page, BOOL reachedEnd, NSError </em>error)</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>the associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getProductsPage:inCollection:sortOrder:completion:" title="getProductsPage:inCollection:sortOrder:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/getProductsPage:inCollection:sortOrder:completion:">&ndash;&nbsp;getProductsPage:inCollection:sortOrder:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Fetches the products in the given collection with a given sort order</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getProductsPage:(NSUInteger)<em>page</em> inCollection:(NSNumber *)<em>collectionId</em> sortOrder:(BUYCollectionSort)<em>sortOrder</em> completion:(BUYDataProductListBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>page</code></th>
<td><p>Index of the page requested</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>collectionId</code></th>
<td><p>The <code>collectionId</code> found in the <a href="../Classes/BUYCollection.html">BUYCollection</a> object to fetch the products from</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>sortOrder</code></th>
<td><p>The sort order that overrides the default collection sort order</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(NSArray <em>products, NSUInteger page, BOOL reachedEnd, NSError </em>error)</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>the associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/createCheckout:completion:" title="createCheckout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/createCheckout:completion:">&ndash;&nbsp;createCheckout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Builds a checkout on Shopify. The checkout object is used to prepare an order</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)createCheckout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataCheckoutBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p><a href="../Classes/BUYCheckout.html">BUYCheckout</a> to create on Shopify</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutBlock.html">BUYDataCheckoutBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/createCheckoutWithCartToken:completion:" title="createCheckoutWithCartToken:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/createCheckoutWithCartToken:completion:">&ndash;&nbsp;createCheckoutWithCartToken:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Builds a checkout on Shopify using a Cart Token from an existing cart on your Shopify store&rsquo;s storefront.
The <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object is used to prepare an order.</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)createCheckoutWithCartToken:(NSString *)<em>cartToken</em> completion:(BUYDataCheckoutBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>cartToken</code></th>
<td><p>Cart Token associated with an existing <a href="../Classes/BUYCheckout.html">BUYCheckout</a> on Shopify</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutBlock.html">BUYDataCheckoutBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/applyGiftCardWithCode:toCheckout:completion:" title="applyGiftCardWithCode:toCheckout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/applyGiftCardWithCode:toCheckout:completion:">&ndash;&nbsp;applyGiftCardWithCode:toCheckout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Applies a gift card code to the checkout.</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)applyGiftCardWithCode:(NSString *)<em>giftCardCode</em> toCheckout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataCheckoutBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>giftCardCode</code></th>
<td><p>The gift card code to apply on an existing checkout on Shopify. Note: This is not the same as the gift card identifier.</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>An existing <a href="../Classes/BUYCheckout.html">BUYCheckout</a> on Shopify</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutBlock.html">BUYDataCheckoutBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/removeGiftCard:fromCheckout:completion:" title="removeGiftCard:fromCheckout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/removeGiftCard:fromCheckout:completion:">&ndash;&nbsp;removeGiftCard:fromCheckout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Removes a gift card from the checkout.</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)removeGiftCard:(BUYGiftCard *)<em>giftCard</em> fromCheckout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataCheckoutBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>An existing <a href="../Classes/BUYCheckout.html">BUYCheckout</a> on Shopify</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutBlock.html">BUYDataCheckoutBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSError </em>error);</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>giftCardCode</code></th>
<td><p>The <a href="../Classes/BUYGiftCard.html">BUYGiftCard</a> identifier to remove on an existing checkout on Shopify.</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getCheckout:completion:" title="getCheckout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/getCheckout:completion:">&ndash;&nbsp;getCheckout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Retrieves an updated version of a <a href="../Classes/BUYCheckout.html">BUYCheckout</a> from Shopify.</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getCheckout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataCheckoutBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a> to retrieve (updated) from Shopify</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutBlock.html">BUYDataCheckoutBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection discussion-section">
<h4 class="method-subtitle">Discussion</h4>
<p>Note: There&rsquo;s no guarantee that the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> returned will be the same as the one that is passed in.
We recommended using the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> returned in the block.</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/updateCheckout:completion:" title="updateCheckout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/updateCheckout:completion:">&ndash;&nbsp;updateCheckout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Updates a given <a href="../Classes/BUYCheckout.html">BUYCheckout</a> on Shopify.</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)updateCheckout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataCheckoutBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a> to updated on Shopify</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutBlock.html">BUYDataCheckoutBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection discussion-section">
<h4 class="method-subtitle">Discussion</h4>
<p>Note: There&rsquo;s no guarantee that the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> returned will be the same as the one that is passed in.
We recommended using the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> returned in the block.</p>
<p>Note: A <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object with an <code>orderId</code> is a completed checkout.</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/completeCheckout:completion:" title="completeCheckout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/completeCheckout:completion:">&ndash;&nbsp;completeCheckout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Finalizes the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> and charges the credit card.
This enqueues a completion job on Shopify and returns immediately.
You must get the job&rsquo;s status by calling checkCompletionStatusOfCheckout:block</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)completeCheckout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataCheckoutBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a> to complete</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutBlock.html">BUYDataCheckoutBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection discussion-section">
<h4 class="method-subtitle">Discussion</h4>
<p>Note: There&rsquo;s no guarantee that the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> returned will be the same as the one that is passed in.
We recommended using the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> returned in the block.</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/completeCheckout:withApplePayToken:completion:" title="completeCheckout:withApplePayToken:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/completeCheckout:withApplePayToken:completion:">&ndash;&nbsp;completeCheckout:withApplePayToken:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Finalizes the checkout and charges the credit card associated with the payment token from PassKit (Apple Pay).
This only enqueues a completion job, and will return immediately.
You must get the job&rsquo;s status by calling checkCompletionStatusOfCheckout:block</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)completeCheckout:(BUYCheckout *)<em>checkout</em> withApplePayToken:(PKPaymentToken *)<em>token</em> completion:(BUYDataCheckoutBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a> to complete</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>token</code></th>
<td><p>The PKPaymentToken</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutBlock.html">BUYDataCheckoutBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection discussion-section">
<h4 class="method-subtitle">Discussion</h4>
<p>Note: There&rsquo;s no guarantee that the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> returned will be the same as the one that is passed in.
We recommended using the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> returned in the block.</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getCompletionStatusOfCheckout:completion:" title="getCompletionStatusOfCheckout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/getCompletionStatusOfCheckout:completion:">&ndash;&nbsp;getCompletionStatusOfCheckout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Retrieve the status of a <a href="../Classes/BUYCheckout.html">BUYCheckout</a>. This checks the status of the current payment processing job for the provided checkout.
Once the job is complete (status == BUYStatusComplete), you can retrieve the completed order by calling <code>getCheckout:completion</code></p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getCompletionStatusOfCheckout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataCheckoutStatusBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a> to retrieve completion status for</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutStatusBlock.html">BUYDataCheckoutStatusBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, <a href="../Constants/BUYStatus.html">BUYStatus</a> status, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getCompletionStatusOfCheckoutURL:completion:" title="getCompletionStatusOfCheckoutURL:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/getCompletionStatusOfCheckoutURL:completion:">&ndash;&nbsp;getCompletionStatusOfCheckoutURL:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Retrieve the status of a checkout given a URL obtained in the UIApplicationDelegate method <code>application:sourceApplication:annotation</code></p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getCompletionStatusOfCheckoutURL:(NSURL *)<em>url</em> completion:(BUYDataCheckoutStatusBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>url</code></th>
<td><p>The URL resource used to open the application</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutStatusBlock.html">BUYDataCheckoutStatusBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, <a href="../Constants/BUYStatus.html">BUYStatus</a> status, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/getShippingRatesForCheckout:completion:" title="getShippingRatesForCheckout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/getShippingRatesForCheckout:completion:">&ndash;&nbsp;getShippingRatesForCheckout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Retrieves a list of applicable shipping rates for a given <a href="../Classes/BUYCheckout.html">BUYCheckout</a>.
Add the preferred/selected <a href="../Classes/BUYShippingRate.html">BUYShippingRate</a> to <a href="../Classes/BUYCheckout.html">BUYCheckout</a>, then update <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)getShippingRatesForCheckout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataShippingRatesBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a> to retrieve shipping rates for</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataShippingRatesBlock.html">BUYDataShippingRatesBlock</a>)(NSArray <em>shippingRates, <a href="../Constants/BUYStatus.html">BUYStatus</a> status, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/storeCreditCard:checkout:completion:" title="storeCreditCard:checkout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/storeCreditCard:checkout:completion:">&ndash;&nbsp;storeCreditCard:checkout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Prepares a credit card for usage during the checkout process. This sends it to Shopify&rsquo;s secure servers.
Note: Storing the token does not charge the associated card (credit or otherwise).
The card will be charged upon finalizing the checkout (<a href="#//api/name/completeCheckout:completion:"><code>completeCheckout:completion:</code></a>)</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)storeCreditCard:(id&lt;BUYSerializable&gt;)<em>creditCard</em> checkout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataCreditCardBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>creditCard</code></th>
<td><p><a href="../Classes/BUYCreditCard.html">BUYCreditCard</a> to prepare for usage</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a> associated to the purchase.
The <code>billingAddress</code> stored on the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object is optional and recommended and
used (if provided) to help with fraud checking.</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCreditCardBlock.html">BUYDataCreditCardBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSString </em>paymentSessionId, NSError *error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection discussion-section">
<h4 class="method-subtitle">Discussion</h4>
<p>You MUST call <a href="#//api/name/completeCheckout:completion:"><code>completeCheckout:completion:</code></a> after this call and receiving a <code>paymentSessionId</code>.
The <code>paymentSessionId</code> on the <a href="../Classes/BUYCheckout.html"><code>BUYCheckout</code></a> object is not persisted on <a href="#//api/name/updateCheckout:completion:"><code>updateCheckout:completion:</code></a> calls.</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/removeProductReservationsFromCheckout:completion:" title="removeProductReservationsFromCheckout:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/removeProductReservationsFromCheckout:completion:">&ndash;&nbsp;removeProductReservationsFromCheckout:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Convenience method to release all product inventory reservations by setting its
<code>reservationTime</code> to <code>@0</code> and calls <code>updateCheckout:completion</code>. We recommend creating
a new <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object from a <a href="../Classes/BUYCart.html">BUYCart</a> for further API calls.</p>
</div>
<div class="method-subsection method-declaration"><code>- (NSURLSessionDataTask *)removeProductReservationsFromCheckout:(BUYCheckout *)<em>checkout</em> completion:(BUYDataCheckoutBlock)<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a> to expire</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>(^<a href="../Blocks/BUYDataCheckoutBlock.html">BUYDataCheckoutBlock</a>)(<a href="../Classes/BUYCheckout.html">BUYCheckout</a> <em>checkout, NSError </em>error);</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>The associated NSURLSessionDataTask</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/enableApplePayWithMerchantId:" title="enableApplePayWithMerchantId:"></a>
<h3 class="method-title"><code><a href="#//api/name/enableApplePayWithMerchantId:">&ndash;&nbsp;enableApplePayWithMerchantId:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Enable Apple Pay by calling this method with the Merchant ID provided via Apple Pay setup in the Mobile SDK Channel on Shopify Admin</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)enableApplePayWithMerchantId:(NSString *)<em>merchantId</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>merchantId</code></th>
<td><p>The Merchant ID generated on Shopify Admin</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</div>
</div>
</div>
</div>
<a title="Test Methods" name="task_Test Methods"></a>
<h2 class="task-title">Test Methods</h2>
<div class="task-list">
<div class="section-method">
<a name="//api/name/testIntegrationWithMerchantId:" title="testIntegrationWithMerchantId:"></a>
<h3 class="method-title"><code><a href="#//api/name/testIntegrationWithMerchantId:">&ndash;&nbsp;testIntegrationWithMerchantId:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Test the integration with your shop. This should not be shipped in production code. This is a syncronous network call.</p>
</div>
<div class="method-subsection method-declaration"><code>- (BOOL)testIntegrationWithMerchantId:(NSString *)<em>merchantId</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>merchantId</code></th>
<td><p>the merchant ID setup for Apple Pay in the Integration page of the Mobile Channel</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>YES on success</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient+Test.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/testIntegration" title="testIntegration"></a>
<h3 class="method-title"><code><a href="#//api/name/testIntegration">&ndash;&nbsp;testIntegration</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Test the integration with your shop. This should not be shipped in production code. This is a syncronous network call.</p>
</div>
<div class="method-subsection method-declaration"><code>- (BOOL)testIntegration</code></div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>YES on success</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient+Test.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYCollection Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/collectionId">collectionId</option>
<option value="//api/name/createdAtDate">createdAtDate</option>
<option value="//api/name/handle">handle</option>
<option value="//api/name/htmlDescription">htmlDescription</option>
<option value="//api/name/imageURL">imageURL</option>
<option value="//api/name/published">published</option>
<option value="//api/name/publishedAtDate">publishedAtDate</option>
<option value="//api/name/title">title</option>
<option value="//api/name/updatedAtDate">updatedAtDate</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYCollection Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYCollection.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>Represents a collection of products on the shop</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/title" title="title"></a>
<h3 class="method-title"><code><a href="#//api/name/title">&nbsp;&nbsp;title</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The title of the collection</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *title</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCollection.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/collectionId" title="collectionId"></a>
<h3 class="method-title"><code><a href="#//api/name/collectionId">&nbsp;&nbsp;collectionId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The unique collection ID</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSNumber *collectionId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCollection.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/htmlDescription" title="htmlDescription"></a>
<h3 class="method-title"><code><a href="#//api/name/htmlDescription">&nbsp;&nbsp;htmlDescription</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The html description</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *htmlDescription</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCollection.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/imageURL" title="imageURL"></a>
<h3 class="method-title"><code><a href="#//api/name/imageURL">&nbsp;&nbsp;imageURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The collection&rsquo;s image URL</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSURL *imageURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCollection.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/handle" title="handle"></a>
<h3 class="method-title"><code><a href="#//api/name/handle">&nbsp;&nbsp;handle</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The handle of the collection</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *handle</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCollection.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/published" title="published"></a>
<h3 class="method-title"><code><a href="#//api/name/published">&nbsp;&nbsp;published</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The state of whether the collection is currently published or not</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign, readonly) BOOL published</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCollection.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/createdAtDate" title="createdAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/createdAtDate">&nbsp;&nbsp;createdAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The creation date for the collection</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSDate *createdAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCollection.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/updatedAtDate" title="updatedAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/updatedAtDate">&nbsp;&nbsp;updatedAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The updated date for the collection</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSDate *updatedAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCollection.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/publishedAtDate" title="publishedAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/publishedAtDate">&nbsp;&nbsp;publishedAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The publish date for the collection</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSDate *publishedAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCollection.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYCreditCard Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/cvv">cvv</option>
<option value="//api/name/expiryMonth">expiryMonth</option>
<option value="//api/name/expiryYear">expiryYear</option>
<option value="//api/name/nameOnCard">nameOnCard</option>
<option value="//api/name/number">number</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYCreditCard Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td>NSObject</td>
</tr><tr>
<th>Conforms to</th>
<td>BUYSerializable</td>
</tr><tr>
<th>Declared in</th>
<td>BUYCreditCard.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>This represents raw credit card data that the user is posting. You MUST discard this object as soon as it has been posted
to Shopify&rsquo;s secure environment.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/nameOnCard" title="nameOnCard"></a>
<h3 class="method-title"><code><a href="#//api/name/nameOnCard">&nbsp;&nbsp;nameOnCard</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The full name on the credit card
First and Last in this format: &lsquo;First Last&rsquo;.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *nameOnCard</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCreditCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/number" title="number"></a>
<h3 class="method-title"><code><a href="#//api/name/number">&nbsp;&nbsp;number</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The full credit card number.
This should be a numerical value without spaces, dashes or any other special characters.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *number</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCreditCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/expiryMonth" title="expiryMonth"></a>
<h3 class="method-title"><code><a href="#//api/name/expiryMonth">&nbsp;&nbsp;expiryMonth</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The month that the credit card expires, as a numerical value (i.e. 12 for December).</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *expiryMonth</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCreditCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/expiryYear" title="expiryYear"></a>
<h3 class="method-title"><code><a href="#//api/name/expiryYear">&nbsp;&nbsp;expiryYear</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The last two digits of the year in which the credit card expires (i.e. 18 for 2018).</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *expiryYear</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCreditCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/cvv" title="cvv"></a>
<h3 class="method-title"><code><a href="#//api/name/cvv">&nbsp;&nbsp;cvv</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The Card Verification Value <a href="#//api/name/number">number</a> (or whichever card security code should be used for the card type).</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *cvv</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYCreditCard.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYDiscount Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/amount">amount</option>
<option value="//api/name/applicable">applicable</option>
<option value="//api/name/code">code</option>
</optgroup>
<optgroup label="Instance Methods">
<option value="//api/name/initWithCode:">- initWithCode:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYDiscount Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Conforms to</th>
<td>BUYSerializable</td>
</tr><tr>
<th>Declared in</th>
<td>BUYDiscount.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>BUYDiscount represents a discount that is applied to the <a href="../Classes/BUYCheckout.html">BUYCheckout</a>.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/code" title="code"></a>
<h3 class="method-title"><code><a href="#//api/name/code">&nbsp;&nbsp;code</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The unique identifier for the discount code.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *code</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYDiscount.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/amount" title="amount"></a>
<h3 class="method-title"><code><a href="#//api/name/amount">&nbsp;&nbsp;amount</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The amount that is deducted from <code>paymentDue</code> on <a href="../Classes/BUYCheckout.html">BUYCheckout</a>.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSDecimalNumber *amount</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYDiscount.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/applicable" title="applicable"></a>
<h3 class="method-title"><code><a href="#//api/name/applicable">&nbsp;&nbsp;applicable</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Whether this discount <a href="#//api/name/code">code</a> can be applied to the checkout.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign) BOOL applicable</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYDiscount.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/initWithCode:" title="initWithCode:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithCode:">&ndash;&nbsp;initWithCode:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Created a BUYDiscount with a <a href="#//api/name/code">code</a></p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithCode:(NSString *)<em>code</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>code</code></th>
<td><p>The discount <a href="#//api/name/code">code</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>BUYDiscount object</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYDiscount.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYError Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYError Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td>NSError</td>
</tr><tr>
<th>Declared in</th>
<td>BUYError.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>BUYError overrides <code>description</code> and provides a human-readable dictionary for the error</p>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYGiftCard Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/amountUsed">amountUsed</option>
<option value="//api/name/balance">balance</option>
<option value="//api/name/code">code</option>
<option value="//api/name/lastCharacters">lastCharacters</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYGiftCard Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Conforms to</th>
<td>BUYSerializable</td>
</tr><tr>
<th>Declared in</th>
<td>BUYGiftCard.h</td>
</tr>
</tbody></table></div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/code" title="code"></a>
<h3 class="method-title"><code><a href="#//api/name/code">&nbsp;&nbsp;code</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The gift card code. This is only used when applying a gift card and
is not visible on a <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object synced with Shopify.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *code</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYGiftCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/lastCharacters" title="lastCharacters"></a>
<h3 class="method-title"><code><a href="#//api/name/lastCharacters">&nbsp;&nbsp;lastCharacters</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The last characters of the applied gift card <a href="#//api/name/code">code</a>.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *lastCharacters</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYGiftCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/balance" title="balance"></a>
<h3 class="method-title"><code><a href="#//api/name/balance">&nbsp;&nbsp;balance</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The amount left on the gift card after being applied to this checkout.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSDecimalNumber *balance</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYGiftCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/amountUsed" title="amountUsed"></a>
<h3 class="method-title"><code><a href="#//api/name/amountUsed">&nbsp;&nbsp;amountUsed</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The amount of the gift card used by this checkout.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSDecimalNumber *amountUsed</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYGiftCard.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYImage Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/createdAtDate">createdAtDate</option>
<option value="//api/name/position">position</option>
<option value="//api/name/productId">productId</option>
<option value="//api/name/src">src</option>
<option value="//api/name/updatedAtDate">updatedAtDate</option>
<option value="//api/name/variantIds">variantIds</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYImage Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYImage.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>Products are easier to sell if customers can see pictures of them, which is why there are product images.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/src" title="src"></a>
<h3 class="method-title"><code><a href="#//api/name/src">&nbsp;&nbsp;src</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Specifies the location of the product image.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *src</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYImage.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/variantIds" title="variantIds"></a>
<h3 class="method-title"><code><a href="#//api/name/variantIds">&nbsp;&nbsp;variantIds</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>An array of variant ids associated with the image.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSArray&lt;NSNumber*&gt; *variantIds</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYImage.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/createdAtDate" title="createdAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/createdAtDate">&nbsp;&nbsp;createdAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creation date of the image</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSDate *createdAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYImage.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/updatedAtDate" title="updatedAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/updatedAtDate">&nbsp;&nbsp;updatedAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The date the image was last updated</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSDate *updatedAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYImage.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/position" title="position"></a>
<h3 class="method-title"><code><a href="#//api/name/position">&nbsp;&nbsp;position</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The position of the image for the product</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSNumber *position</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYImage.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/productId" title="productId"></a>
<h3 class="method-title"><code><a href="#//api/name/productId">&nbsp;&nbsp;productId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The associated product ID for the image</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSNumber *productId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYImage.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYLineItem Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/compareAtPrice">compareAtPrice</option>
<option value="//api/name/fulfillmentService">fulfillmentService</option>
<option value="//api/name/grams">grams</option>
<option value="//api/name/lineItemIdentifier">lineItemIdentifier</option>
<option value="//api/name/linePrice">linePrice</option>
<option value="//api/name/price">price</option>
<option value="//api/name/productId">productId</option>
<option value="//api/name/properties">properties</option>
<option value="//api/name/quantity">quantity</option>
<option value="//api/name/requiresShipping">requiresShipping</option>
<option value="//api/name/sku">sku</option>
<option value="//api/name/taxable">taxable</option>
<option value="//api/name/title">title</option>
<option value="//api/name/variantId">variantId</option>
<option value="//api/name/variantTitle">variantTitle</option>
</optgroup>
<optgroup label="Instance Methods">
<option value="//api/name/initWithVariant:">- initWithVariant:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYLineItem Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Conforms to</th>
<td>BUYSerializable</td>
</tr><tr>
<th>Declared in</th>
<td>BUYLineItem.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>This represents a BUYLineItem on a <a href="../Classes/BUYCart.html">BUYCart</a> or on a <a href="../Classes/BUYCheckout.html">BUYCheckout</a>.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/lineItemIdentifier" title="lineItemIdentifier"></a>
<h3 class="method-title"><code><a href="#//api/name/lineItemIdentifier">&nbsp;&nbsp;lineItemIdentifier</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The unique line item identifier</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *lineItemIdentifier</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/variantId" title="variantId"></a>
<h3 class="method-title"><code><a href="#//api/name/variantId">&nbsp;&nbsp;variantId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p><a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> identifer. Keep a reference to a cart or products if you wish to
display information for product variants in a <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSNumber *variantId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/productId" title="productId"></a>
<h3 class="method-title"><code><a href="#//api/name/productId">&nbsp;&nbsp;productId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The <a href="../Classes/BUYProduct.html"><code>BUYProduct</code></a> product ID for the product in the line item</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSNumber *productId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/quantity" title="quantity"></a>
<h3 class="method-title"><code><a href="#//api/name/quantity">&nbsp;&nbsp;quantity</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The quantity of the BUYLineItem.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSDecimalNumber *quantity</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/grams" title="grams"></a>
<h3 class="method-title"><code><a href="#//api/name/grams">&nbsp;&nbsp;grams</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The weight of the <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> in grams.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSDecimalNumber *grams</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/price" title="price"></a>
<h3 class="method-title"><code><a href="#//api/name/price">&nbsp;&nbsp;price</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The price of the BUYLineItem.
Note: This price does not need to match the product variant.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSDecimalNumber *price</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/linePrice" title="linePrice"></a>
<h3 class="method-title"><code><a href="#//api/name/linePrice">&nbsp;&nbsp;linePrice</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The line <a href="#//api/name/price">price</a> of the item (<a href="#//api/name/price">price</a> * <a href="#//api/name/quantity">quantity</a>)</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSDecimalNumber *linePrice</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/compareAtPrice" title="compareAtPrice"></a>
<h3 class="method-title"><code><a href="#//api/name/compareAtPrice">&nbsp;&nbsp;compareAtPrice</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The competitor&rsquo;s prices for the same item.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSDecimalNumber *compareAtPrice</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/title" title="title"></a>
<h3 class="method-title"><code><a href="#//api/name/title">&nbsp;&nbsp;title</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The title of the BUYLineItem.
Note: The title does not need to match the product variant.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *title</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/variantTitle" title="variantTitle"></a>
<h3 class="method-title"><code><a href="#//api/name/variantTitle">&nbsp;&nbsp;variantTitle</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The <a href="#//api/name/title">title</a> for the variant in the line item</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *variantTitle</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/requiresShipping" title="requiresShipping"></a>
<h3 class="method-title"><code><a href="#//api/name/requiresShipping">&nbsp;&nbsp;requiresShipping</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>YES if this BUYLineItem requires shipping.
Note: This needs to match the product variant.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSNumber *requiresShipping</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/sku" title="sku"></a>
<h3 class="method-title"><code><a href="#//api/name/sku">&nbsp;&nbsp;sku</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The unique SKU for the line item</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *sku</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/taxable" title="taxable"></a>
<h3 class="method-title"><code><a href="#//api/name/taxable">&nbsp;&nbsp;taxable</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>If the line item is taxable</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, assign) BOOL taxable</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/properties" title="properties"></a>
<h3 class="method-title"><code><a href="#//api/name/properties">&nbsp;&nbsp;properties</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Custom properties set on the line item</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSDictionary *properties</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/fulfillmentService" title="fulfillmentService"></a>
<h3 class="method-title"><code><a href="#//api/name/fulfillmentService">&nbsp;&nbsp;fulfillmentService</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Service provider who is doing the fulfillment</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *fulfillmentService</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/initWithVariant:" title="initWithVariant:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithVariant:">&ndash;&nbsp;initWithVariant:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Initialize a BUYLineItem with an optional variant.
Note: We recommend setting up a <a href="../Classes/BUYCart.html">BUYCart</a> and using <code>addVariant:</code>, which handles incrementing
existing variants for line items in a cart</p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithVariant:(BUYProductVariant *)<em>variant</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>variant</code></th>
<td><p>A <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> to initialize the BUYLineItem with</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>Returns an instance of BUYLineItem</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYLineItem.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYMaskedCreditCard Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/expiryMonth">expiryMonth</option>
<option value="//api/name/expiryYear">expiryYear</option>
<option value="//api/name/firstDigits">firstDigits</option>
<option value="//api/name/firstName">firstName</option>
<option value="//api/name/lastDigits">lastDigits</option>
<option value="//api/name/lastName">lastName</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYMaskedCreditCard Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYMaskedCreditCard.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>This represents a masked credit card that has been applied to a checkout.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/firstName" title="firstName"></a>
<h3 class="method-title"><code><a href="#//api/name/firstName">&nbsp;&nbsp;firstName</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The first name on the credit card</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *firstName</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYMaskedCreditCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/lastName" title="lastName"></a>
<h3 class="method-title"><code><a href="#//api/name/lastName">&nbsp;&nbsp;lastName</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The last name on the credit card</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *lastName</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYMaskedCreditCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/firstDigits" title="firstDigits"></a>
<h3 class="method-title"><code><a href="#//api/name/firstDigits">&nbsp;&nbsp;firstDigits</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The first digits of credit card number.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *firstDigits</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYMaskedCreditCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/lastDigits" title="lastDigits"></a>
<h3 class="method-title"><code><a href="#//api/name/lastDigits">&nbsp;&nbsp;lastDigits</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The last digits of credit card number.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *lastDigits</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYMaskedCreditCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/expiryYear" title="expiryYear"></a>
<h3 class="method-title"><code><a href="#//api/name/expiryYear">&nbsp;&nbsp;expiryYear</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The year the card expires</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSNumber *expiryYear</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYMaskedCreditCard.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/expiryMonth" title="expiryMonth"></a>
<h3 class="method-title"><code><a href="#//api/name/expiryMonth">&nbsp;&nbsp;expiryMonth</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The two digits representing the month the card expires</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSNumber *expiryMonth</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYMaskedCreditCard.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYObject Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/dirty">dirty</option>
<option value="//api/name/identifier">identifier</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYObject Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td>NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYObject.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>This is the base class for all Shopify model objects.
This class takes care of convertion .json responses into
the associated subclass.</p>
<p>You will generally not need to interact with this class directly.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/identifier" title="identifier"></a>
<h3 class="method-title"><code><a href="#//api/name/identifier">&nbsp;&nbsp;identifier</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The identifier of any Shopify model object.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSNumber *identifier</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYObject.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/dirty" title="dirty"></a>
<h3 class="method-title"><code><a href="#//api/name/dirty">&nbsp;&nbsp;dirty</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Objects marked as &ldquo;dirty&rdquo; are unsynced with Shopify and will
sync on any calls to Shopify when updating a checkout.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, getter=isDirty) BOOL dirty</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYObject.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYOption Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/name">name</option>
<option value="//api/name/position">position</option>
<option value="//api/name/productId">productId</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYOption Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYOption.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>This represent a BUYOption on a <a href="../Classes/BUYProduct.html">BUYProduct</a></p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/name" title="name"></a>
<h3 class="method-title"><code><a href="#//api/name/name">&nbsp;&nbsp;name</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Custom product property names like &ldquo;Size&rdquo;, &ldquo;Color&rdquo;, and &ldquo;Material&rdquo;.
255 characters limit each.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *name</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYOption.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/position" title="position"></a>
<h3 class="method-title"><code><a href="#//api/name/position">&nbsp;&nbsp;position</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The order in which the option should optionally appear</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSNumber *position</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYOption.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/productId" title="productId"></a>
<h3 class="method-title"><code><a href="#//api/name/productId">&nbsp;&nbsp;productId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The associated product ID for this option</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSNumber *productId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYOption.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYOptionValue Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/name">name</option>
<option value="//api/name/optionId">optionId</option>
<option value="//api/name/value">value</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYOptionValue Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYOptionValue.h</td>
</tr>
</tbody></table></div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/name" title="name"></a>
<h3 class="method-title"><code><a href="#//api/name/name">&nbsp;&nbsp;name</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Custom product property names like &ldquo;Size&rdquo;, &ldquo;Color&rdquo;, and &ldquo;Material&rdquo;.
255 characters limit each.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *name</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYOptionValue.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/value" title="value"></a>
<h3 class="method-title"><code><a href="#//api/name/value">&nbsp;&nbsp;value</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The value of the option</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSString *value</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYOptionValue.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/optionId" title="optionId"></a>
<h3 class="method-title"><code><a href="#//api/name/optionId">&nbsp;&nbsp;optionId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>the option identifier</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSNumber *optionId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYOptionValue.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYOrder Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/name">name</option>
<option value="//api/name/statusURL">statusURL</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYOrder Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYOrder.h</td>
</tr>
</tbody></table></div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/statusURL" title="statusURL"></a>
<h3 class="method-title"><code><a href="#//api/name/statusURL">&nbsp;&nbsp;statusURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>URL for the website showing the order status</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSURL *statusURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYOrder.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/name" title="name"></a>
<h3 class="method-title"><code><a href="#//api/name/name">&nbsp;&nbsp;name</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The customer&rsquo;s order name as represented by a number.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *name</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYOrder.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYProduct Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/available">available</option>
<option value="//api/name/createdAtDate">createdAtDate</option>
<option value="//api/name/handle">handle</option>
<option value="//api/name/htmlDescription">htmlDescription</option>
<option value="//api/name/images">images</option>
<option value="//api/name/options">options</option>
<option value="//api/name/productId">productId</option>
<option value="//api/name/productType">productType</option>
<option value="//api/name/published">published</option>
<option value="//api/name/publishedAtDate">publishedAtDate</option>
<option value="//api/name/tags">tags</option>
<option value="//api/name/title">title</option>
<option value="//api/name/updatedAtDate">updatedAtDate</option>
<option value="//api/name/variants">variants</option>
<option value="//api/name/vendor">vendor</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYProduct Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYProduct.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>A BUYProduct is an individual item for sale in a Shopify shop.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/productId" title="productId"></a>
<h3 class="method-title"><code><a href="#//api/name/productId">&nbsp;&nbsp;productId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The product ID</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSNumber *productId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/title" title="title"></a>
<h3 class="method-title"><code><a href="#//api/name/title">&nbsp;&nbsp;title</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The name of the product. In a shop&rsquo;s catalog, clicking on a product&rsquo;s title takes you to that product&rsquo;s page.
On a product&rsquo;s page, the product&rsquo;s title typically appears in a large font.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *title</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/handle" title="handle"></a>
<h3 class="method-title"><code><a href="#//api/name/handle">&nbsp;&nbsp;handle</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The handle of the product. Can be used to construct links to the web page for the product</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *handle</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/vendor" title="vendor"></a>
<h3 class="method-title"><code><a href="#//api/name/vendor">&nbsp;&nbsp;vendor</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The name of the vendor of the product.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *vendor</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/productType" title="productType"></a>
<h3 class="method-title"><code><a href="#//api/name/productType">&nbsp;&nbsp;productType</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>A categorization that a product can be tagged with, commonly used for filtering and searching.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *productType</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/variants" title="variants"></a>
<h3 class="method-title"><code><a href="#//api/name/variants">&nbsp;&nbsp;variants</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>A list of <a href="../Classes/BUYProductVariant.html">BUYProductVariant</a> objects, each one representing a slightly different version of the product.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSArray&lt;BUYProductVariant*&gt; *variants</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/images" title="images"></a>
<h3 class="method-title"><code><a href="#//api/name/images">&nbsp;&nbsp;images</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>A list of <a href="../Classes/BUYImage.html">BUYImage</a> objects, each one representing an image associated with the product.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSArray&lt;BUYImage*&gt; *images</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/options" title="options"></a>
<h3 class="method-title"><code><a href="#//api/name/options">&nbsp;&nbsp;options</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Custom product property names like &ldquo;Size&rdquo;, &ldquo;Color&rdquo;, and &ldquo;Material&rdquo;.
Products are based on permutations of these options.
A product may have a maximum of 3 options. 255 characters limit each.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSArray&lt;BUYOption*&gt; *options</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/htmlDescription" title="htmlDescription"></a>
<h3 class="method-title"><code><a href="#//api/name/htmlDescription">&nbsp;&nbsp;htmlDescription</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The description of the product, complete with HTML formatting.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *htmlDescription</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/available" title="available"></a>
<h3 class="method-title"><code><a href="#//api/name/available">&nbsp;&nbsp;available</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>If the product is in stock (see each variant for their specific availability)</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, assign) BOOL available</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/tags" title="tags"></a>
<h3 class="method-title"><code><a href="#//api/name/tags">&nbsp;&nbsp;tags</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>A categorization that a product can be tagged with, commonly used for filtering and searching.
Each tag has a character limit of 255.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSSet&lt;NSString*&gt; *tags</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/published" title="published"></a>
<h3 class="method-title"><code><a href="#//api/name/published">&nbsp;&nbsp;published</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The product is published on the current sales channel</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, assign) BOOL published</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/createdAtDate" title="createdAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/createdAtDate">&nbsp;&nbsp;createdAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The creation date for a product</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSDate *createdAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/updatedAtDate" title="updatedAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/updatedAtDate">&nbsp;&nbsp;updatedAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The updated date for a product</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSDate *updatedAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/publishedAtDate" title="publishedAtDate"></a>
<h3 class="method-title"><code><a href="#//api/name/publishedAtDate">&nbsp;&nbsp;publishedAtDate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The publish date for a product</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSDate *publishedAtDate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProduct.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYProductVariant Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/available">available</option>
<option value="//api/name/compareAtPrice">compareAtPrice</option>
<option value="//api/name/grams">grams</option>
<option value="//api/name/options">options</option>
<option value="//api/name/position">position</option>
<option value="//api/name/price">price</option>
<option value="//api/name/product">product</option>
<option value="//api/name/requiresShipping">requiresShipping</option>
<option value="//api/name/sku">sku</option>
<option value="//api/name/taxable">taxable</option>
<option value="//api/name/title">title</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYProductVariant Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYProductVariant.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>A BUYProductVariant is a different version of a <a href="#//api/name/product">product</a>, such as differing sizes or differing colours.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/product" title="product"></a>
<h3 class="method-title"><code><a href="#//api/name/product">&nbsp;&nbsp;product</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The <a href="../Classes/BUYProduct.html">BUYProduct</a> associated this BUYProductVariant</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) BUYProduct *product</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/title" title="title"></a>
<h3 class="method-title"><code><a href="#//api/name/title">&nbsp;&nbsp;title</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The title of the BUYProductVariant.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *title</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/options" title="options"></a>
<h3 class="method-title"><code><a href="#//api/name/options">&nbsp;&nbsp;options</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Custom properties that a shop owner can use to define BUYProductVariants.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSArray&lt;BUYOptionValue*&gt; *options</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/price" title="price"></a>
<h3 class="method-title"><code><a href="#//api/name/price">&nbsp;&nbsp;price</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The price of the BUYProductVariant.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSDecimalNumber *price</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/compareAtPrice" title="compareAtPrice"></a>
<h3 class="method-title"><code><a href="#//api/name/compareAtPrice">&nbsp;&nbsp;compareAtPrice</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The competitor&rsquo;s prices for the same item.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSDecimalNumber *compareAtPrice</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/grams" title="grams"></a>
<h3 class="method-title"><code><a href="#//api/name/grams">&nbsp;&nbsp;grams</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The weight of the BUYProductVariant in grams.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSDecimalNumber *grams</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/requiresShipping" title="requiresShipping"></a>
<h3 class="method-title"><code><a href="#//api/name/requiresShipping">&nbsp;&nbsp;requiresShipping</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Specifies whether or not a customer needs to provide a shipping address when placing an order for this BUYProductVariant.
Valid values are:
true: Customer needs to supply a shipping address.
false: Customer does not need to supply a shipping address.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSNumber *requiresShipping</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/sku" title="sku"></a>
<h3 class="method-title"><code><a href="#//api/name/sku">&nbsp;&nbsp;sku</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>A unique identifier for the <a href="#//api/name/product">product</a> in the shop.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSString *sku</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/taxable" title="taxable"></a>
<h3 class="method-title"><code><a href="#//api/name/taxable">&nbsp;&nbsp;taxable</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Specifies whether or not a tax is charged when the BUYProductVariant is sold.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSNumber *taxable</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/position" title="position"></a>
<h3 class="method-title"><code><a href="#//api/name/position">&nbsp;&nbsp;position</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The order of the BUYProductVariant in the list of <a href="#//api/name/product">product</a> variants. 1 is the first position.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, strong) NSNumber *position</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/available" title="available"></a>
<h3 class="method-title"><code><a href="#//api/name/available">&nbsp;&nbsp;available</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>If the variant is in stock</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, assign) BOOL available</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductVariant.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYProductViewController Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/allowApplePaySetup">allowApplePaySetup</option>
<option value="//api/name/isLoading">isLoading</option>
<option value="//api/name/product">product</option>
<option value="//api/name/productId">productId</option>
</optgroup>
<optgroup label="Instance Methods">
<option value="//api/name/initWithClient:theme:">- initWithClient:theme:</option>
<option value="//api/name/loadProduct:completion:">- loadProduct:completion:</option>
<option value="//api/name/loadWithProduct:completion:">- loadWithProduct:completion:</option>
<option value="//api/name/presentPortraitInViewController:">- presentPortraitInViewController:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYProductViewController Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYViewController.html">BUYViewController</a> : UIViewController</td>
</tr><tr>
<th>Conforms to</th>
<td><a href="../Protocols/BUYThemeable.html">BUYThemeable</a></td>
</tr><tr>
<th>Declared in</th>
<td>BUYProductViewController.h</td>
</tr>
</tbody></table></div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/initWithClient:theme:" title="initWithClient:theme:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithClient:theme:">&ndash;&nbsp;initWithClient:theme:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creates a BUYProductViewController with a <a href="../Classes/BUYClient.html">BUYClient</a> and a theme
Note: Use this initializer to instatiate a BUYProdctViewController
with a custom theme. If you don&rsquo;t need to customize the theme
use <code>initWithClient:</code></p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithClient:(BUYClient *)<em>client</em> theme:(BUYTheme *)<em>theme</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>client</code></th>
<td><p>A <a href="../Classes/BUYClient.html">BUYClient</a> configured to your shop</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>theme</code></th>
<td><p>A <a href="../Classes/BUYTheme.html">BUYTheme</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>A <a href="../Classes/BUYViewController.html">BUYViewController</a></p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/loadProduct:completion:" title="loadProduct:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/loadProduct:completion:">&ndash;&nbsp;loadProduct:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Loads the <a href="#//api/name/product">product</a> details</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)loadProduct:(NSString *)<em>productId</em> completion:(void ( ^ ) ( BOOL success , NSError *error ))<em>completion</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>productId</code></th>
<td><p>the <a href="#//api/name/product">product</a> ID for the item to display</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>completion</code></th>
<td><p>a block to be called on completion of the loading of the <a href="#//api/name/product">product</a> details. Will be called on the main thread.
Upon success, the view controller should be presented modally</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/loadWithProduct:completion:" title="loadWithProduct:completion:"></a>
<h3 class="method-title"><code><a href="#//api/name/loadWithProduct:completion:">&ndash;&nbsp;loadWithProduct:completion:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Alternative method when setting the <a href="#//api/name/product">product</a> (and optionally, shop) directly on the view controller</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)loadWithProduct:(BUYProduct *)<em>product</em> completion:(void ( ^ ) ( BOOL success , NSError *error ))<em>completion</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>product</code></th>
<td><p>the <a href="#//api/name/product">product</a> to display</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>completion</code></th>
<td><p>block called when view controller is ready for display. Called on main thread</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/productId" title="productId"></a>
<h3 class="method-title"><code><a href="#//api/name/productId">&nbsp;&nbsp;productId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The loaded <a href="#//api/name/product">product</a> ID</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *productId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/product" title="product"></a>
<h3 class="method-title"><code><a href="#//api/name/product">&nbsp;&nbsp;product</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The product to be displayed. This can be set before presentation instead of calling <a href="#//api/name/loadProduct:completion:">loadProduct:completion:</a></p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) BUYProduct *product</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/isLoading" title="isLoading"></a>
<h3 class="method-title"><code><a href="#//api/name/isLoading">&nbsp;&nbsp;isLoading</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Returns YES when the view controller is loading data. loadProduct: or loadWithProduct: should not be called when data is already loading</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign, readonly) BOOL isLoading</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/allowApplePaySetup" title="allowApplePaySetup"></a>
<h3 class="method-title"><code><a href="#//api/name/allowApplePaySetup">&nbsp;&nbsp;allowApplePaySetup</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>If the merchantId is set and the device support Apple Pay but no credit card is present this allows the user to add a payment pass to the Wallet.
The user is given the option to add a payment pass or continue with web checkout. Default is set to true. The Set Up Apple Pay button will, however
still only show if [PKAddPaymentPassViewController canAddPaymentPass] returns true, merchantId is set and the app is running iOS 9.0 and above.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign) BOOL allowApplePaySetup</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/presentPortraitInViewController:" title="presentPortraitInViewController:"></a>
<h3 class="method-title"><code><a href="#//api/name/presentPortraitInViewController:">&ndash;&nbsp;presentPortraitInViewController:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>This is a convenience method as an alternative to presentViewController: which will force portrait orientation. This method is only
required when presenting from a landscape view controller.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)presentPortraitInViewController:(UIViewController *)<em>controller</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The view controller where the BUYProductViewController is to be presented on</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYProductViewController.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYShippingRate Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/deliveryRange">deliveryRange</option>
<option value="//api/name/price">price</option>
<option value="//api/name/shippingRateIdentifier">shippingRateIdentifier</option>
<option value="//api/name/title">title</option>
</optgroup>
<optgroup label="Class Methods">
<option value="//api/name/buy_convertShippingRatesToShippingMethods:">+ buy_convertShippingRatesToShippingMethods:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYShippingRate Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Conforms to</th>
<td>BUYSerializable</td>
</tr><tr>
<th>Declared in</th>
<td>BUYShippingRate.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>BUYShippingRate represents the amount that the merchant is charging a customer for shipping to the specified address.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<h2 class="task-title">Other Methods</h2>
<div class="task-list">
<div class="section-method">
<a name="//api/name/shippingRateIdentifier" title="shippingRateIdentifier"></a>
<h3 class="method-title"><code><a href="#//api/name/shippingRateIdentifier">&nbsp;&nbsp;shippingRateIdentifier</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>A reference to the shipping method.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *shippingRateIdentifier</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShippingRate.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/title" title="title"></a>
<h3 class="method-title"><code><a href="#//api/name/title">&nbsp;&nbsp;title</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The shipping method name.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSString *title</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShippingRate.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/price" title="price"></a>
<h3 class="method-title"><code><a href="#//api/name/price">&nbsp;&nbsp;price</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The price of this shipping method.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSDecimalNumber *price</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShippingRate.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/deliveryRange" title="deliveryRange"></a>
<h3 class="method-title"><code><a href="#//api/name/deliveryRange">&nbsp;&nbsp;deliveryRange</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>One or two NSDate objects of the potential delivery dates.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) NSArray *deliveryRange</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShippingRate.h</code></p>
</div>
</div>
</div>
</div>
</div>
<a title="ApplePay Methods" name="task_ApplePay Methods"></a>
<h2 class="task-title">ApplePay Methods</h2>
<div class="task-list">
<div class="section-method">
<a name="//api/name/buy_convertShippingRatesToShippingMethods:" title="buy_convertShippingRatesToShippingMethods:"></a>
<h3 class="method-title"><code><a href="#//api/name/buy_convertShippingRatesToShippingMethods:">+&nbsp;buy_convertShippingRatesToShippingMethods:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Returns an array of <code>PKShippingMethod</code> objects, based on Shopify&rsquo;s shipping rates.</p>
</div>
<div class="method-subsection method-declaration"><code>+ (nonnull NSArray&lt;PKShippingMethod*&gt; *)buy_convertShippingRatesToShippingMethods:(nonnull NSArray&lt;BUYShippingRate*&gt; *)<em>rates</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>rates</code></th>
<td><p>Shipping rates</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>An array of PKShippingMethods</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYApplePayAdditions.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYShop Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/city">city</option>
<option value="//api/name/country">country</option>
<option value="//api/name/currency">currency</option>
<option value="//api/name/domain">domain</option>
<option value="//api/name/moneyFormat">moneyFormat</option>
<option value="//api/name/myShopifyURL">myShopifyURL</option>
<option value="//api/name/name">name</option>
<option value="//api/name/province">province</option>
<option value="//api/name/shipsToCountries">shipsToCountries</option>
<option value="//api/name/shopDescription">shopDescription</option>
<option value="//api/name/shopURL">shopURL</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYShop Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYShop.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>The BUYShop object is a collection of the general settings and information about the shop.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/name" title="name"></a>
<h3 class="method-title"><code><a href="#//api/name/name">&nbsp;&nbsp;name</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The name of the shop.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *name</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/city" title="city"></a>
<h3 class="method-title"><code><a href="#//api/name/city">&nbsp;&nbsp;city</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The city in which the shop is located.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *city</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/province" title="province"></a>
<h3 class="method-title"><code><a href="#//api/name/province">&nbsp;&nbsp;province</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The shop&rsquo;s normalized province or state <a href="#//api/name/name">name</a>.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *province</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/country" title="country"></a>
<h3 class="method-title"><code><a href="#//api/name/country">&nbsp;&nbsp;country</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The country in which the shop is located</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *country</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/currency" title="currency"></a>
<h3 class="method-title"><code><a href="#//api/name/currency">&nbsp;&nbsp;currency</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The three-letter code for the currency that the shop accepts.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *currency</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/moneyFormat" title="moneyFormat"></a>
<h3 class="method-title"><code><a href="#//api/name/moneyFormat">&nbsp;&nbsp;moneyFormat</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>A string representing the way <a href="#//api/name/currency">currency</a> is formatted when the <a href="#//api/name/currency">currency</a> isn&rsquo;t specified.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *moneyFormat</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/domain" title="domain"></a>
<h3 class="method-title"><code><a href="#//api/name/domain">&nbsp;&nbsp;domain</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The shop&rsquo;s domain.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *domain</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/shopDescription" title="shopDescription"></a>
<h3 class="method-title"><code><a href="#//api/name/shopDescription">&nbsp;&nbsp;shopDescription</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The shop&rsquo;s description.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSString *shopDescription</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/shipsToCountries" title="shipsToCountries"></a>
<h3 class="method-title"><code><a href="#//api/name/shipsToCountries">&nbsp;&nbsp;shipsToCountries</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>A list of two-letter <a href="#//api/name/country">country</a> codes identifying the countries that the shop ships to.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, copy) NSArray&lt;NSString*&gt; *shipsToCountries</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/shopURL" title="shopURL"></a>
<h3 class="method-title"><code><a href="#//api/name/shopURL">&nbsp;&nbsp;shopURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The URL for the web storefront</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) NSURL *shopURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/myShopifyURL" title="myShopifyURL"></a>
<h3 class="method-title"><code><a href="#//api/name/myShopifyURL">&nbsp;&nbsp;myShopifyURL</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The shop&rsquo;s &lsquo;myshopify.com&rsquo; <a href="#//api/name/domain">domain</a>.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) NSURL *myShopifyURL</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYShop.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYStoreViewController Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/delegate">delegate</option>
</optgroup>
<optgroup label="Instance Methods">
<option value="//api/name/initWithClient:url:">- initWithClient:url:</option>
<option value="//api/name/reloadHomePage">- reloadHomePage</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYStoreViewController Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYViewController.html">BUYViewController</a> : UIViewController</td>
</tr><tr>
<th>Declared in</th>
<td>BUYStoreViewController.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>This controller shows you how to build a controller that embeds a WKWebView (iOS 8+) with your store in it.
This means that you can show off your store and its sleek responsive design without having to build a full native app to showcase it.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/initWithClient:url:" title="initWithClient:url:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithClient:url:">&ndash;&nbsp;initWithClient:url:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creates a view controller with an embedded webview to show the shops storefront</p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithClient:(BUYClient *)<em>client</em> url:(NSURL *)<em>url</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>client</code></th>
<td><p>The client configured to your shop</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>url</code></th>
<td><p>The address where the shop can be viewed</p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>the BUYStoreViewController instance</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYStoreViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/reloadHomePage" title="reloadHomePage"></a>
<h3 class="method-title"><code><a href="#//api/name/reloadHomePage">&ndash;&nbsp;reloadHomePage</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Jumps back to the shops home page</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)reloadHomePage</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYStoreViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/delegate" title="delegate"></a>
<h3 class="method-title"><code><a href="#//api/name/delegate">&nbsp;&nbsp;delegate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The <a href="../Protocols/BUYStoreViewControllerDelegate.html">BUYStoreViewControllerDelegate</a></p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, weak) id&lt;BUYStoreViewControllerDelegate&gt; delegate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYStoreViewController.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYTaxLine Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/price">price</option>
<option value="//api/name/rate">rate</option>
<option value="//api/name/title">title</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYTaxLine Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td><a href="../Classes/BUYObject.html">BUYObject</a> : NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYTaxLine.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>BUYTaxLine represents a single tax line on a checkout. Use this to display an itemized list of taxes that a customer is being charged for.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/price" title="price"></a>
<h3 class="method-title"><code><a href="#//api/name/price">&nbsp;&nbsp;price</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The amount of tax to be charged.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSDecimalNumber *price</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYTaxLine.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/rate" title="rate"></a>
<h3 class="method-title"><code><a href="#//api/name/rate">&nbsp;&nbsp;rate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The rate of tax to be applied.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSDecimalNumber *rate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYTaxLine.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/title" title="title"></a>
<h3 class="method-title"><code><a href="#//api/name/title">&nbsp;&nbsp;title</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The name of the tax.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSString *title</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYTaxLine.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYTheme Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/showsProductImageBackground">showsProductImageBackground</option>
<option value="//api/name/style">style</option>
<option value="//api/name/tintColor">tintColor</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYTheme Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td>NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYTheme.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>This class provides properties used for theming the <a href="../Classes/BUYProductViewController.html">BUYProductViewController</a> UI elements.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/tintColor" title="tintColor"></a>
<h3 class="method-title"><code><a href="#//api/name/tintColor">&nbsp;&nbsp;tintColor</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Used for the highlight color</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) UIColor *tintColor</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYTheme.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/style" title="style"></a>
<h3 class="method-title"><code><a href="#//api/name/style">&nbsp;&nbsp;style</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Theme style for the views</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign) BUYThemeStyle style</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYTheme.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/showsProductImageBackground" title="showsProductImageBackground"></a>
<h3 class="method-title"><code><a href="#//api/name/showsProductImageBackground">&nbsp;&nbsp;showsProductImageBackground</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Determines whether a blurred scaled-up product image should appear behind the product details. Default is YES</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign) BOOL showsProductImageBackground</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYTheme.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYViewController Class Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Properties">
<option value="//api/name/checkout">checkout</option>
<option value="//api/name/client">client</option>
<option value="//api/name/delegate">delegate</option>
<option value="//api/name/isApplePayAvailable">isApplePayAvailable</option>
<option value="//api/name/merchantId">merchantId</option>
<option value="//api/name/shop">shop</option>
<option value="//api/name/supportedNetworks">supportedNetworks</option>
</optgroup>
<optgroup label="Class Methods">
<option value="//api/name/completeCheckoutFromLaunchURL:">+ completeCheckoutFromLaunchURL:</option>
</optgroup>
<optgroup label="Instance Methods">
<option value="//api/name/checkoutCompleted:status:">- checkoutCompleted:status:</option>
<option value="//api/name/initWithClient:">- initWithClient:</option>
<option value="//api/name/loadShopWithCallback:">- loadShopWithCallback:</option>
<option value="//api/name/paymentRequest">- paymentRequest</option>
<option value="//api/name/startApplePayCheckout:">- startApplePayCheckout:</option>
<option value="//api/name/startCheckoutWithCartToken:">- startCheckoutWithCartToken:</option>
<option value="//api/name/startWebCheckout:">- startWebCheckout:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYViewController Class Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Inherits from</th>
<td>UIViewController</td>
</tr><tr>
<th>Conforms to</th>
<td>PKPaymentAuthorizationViewControllerDelegate</td>
</tr><tr>
<th>Declared in</th>
<td>BUYViewController.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>This base class guides you through the entire Apple Pay process.</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/delegate" title="delegate"></a>
<h3 class="method-title"><code><a href="#//api/name/delegate">&nbsp;&nbsp;delegate</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Register yourself as a <a href="../Protocols/BUYViewControllerDelegate.html">BUYViewControllerDelegate</a> to handle all errors, and status changes.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, weak) id&lt;BUYViewControllerDelegate&gt; delegate</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/client" title="client"></a>
<h3 class="method-title"><code><a href="#//api/name/client">&nbsp;&nbsp;client</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Set the <a href="../Classes/BUYClient.html">BUYClient</a> using the provided initializer method <a href="#//api/name/initWithClient:"><code>initWithClient:</code></a> or
if using Storyboards, override after Storyboard initialization.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) BUYClient *client</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/shop" title="shop"></a>
<h3 class="method-title"><code><a href="#//api/name/shop">&nbsp;&nbsp;shop</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The associated shop. setting this prior to displaying will prevent another network request</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) BUYShop *shop</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/merchantId" title="merchantId"></a>
<h3 class="method-title"><code><a href="#//api/name/merchantId">&nbsp;&nbsp;merchantId</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The merchant ID used for Apple Pay</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong) NSString *merchantId</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/isApplePayAvailable" title="isApplePayAvailable"></a>
<h3 class="method-title"><code><a href="#//api/name/isApplePayAvailable">&nbsp;&nbsp;isApplePayAvailable</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Returns YES if the following conditions are met:
- the device hardware is capable of using Apple Pay
- the device has a payment card setup
- the merchant ID has been set to use Apple Pay</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, assign, readonly) BOOL isApplePayAvailable</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/checkout" title="checkout"></a>
<h3 class="method-title"><code><a href="#//api/name/checkout">&nbsp;&nbsp;checkout</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The current checkout object</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, strong, readonly) BUYCheckout *checkout</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/loadShopWithCallback:" title="loadShopWithCallback:"></a>
<h3 class="method-title"><code><a href="#//api/name/loadShopWithCallback:">&ndash;&nbsp;loadShopWithCallback:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Loads the <a href="#//api/name/shop">shop</a> details</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)loadShopWithCallback:(void ( ^ ) ( BOOL , NSError *))<em>block</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>block</code></th>
<td><p>callback block called on completion</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/supportedNetworks" title="supportedNetworks"></a>
<h3 class="method-title"><code><a href="#//api/name/supportedNetworks">&nbsp;&nbsp;supportedNetworks</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The supported credit card payment networks.
iOS 8.3: PKPaymentNetworkAmex, PKPaymentNetworkMasterCard, PKPaymentNetworkVisa.
iOS 9.0: PKPaymentNetworkAmex, PKPaymentNetworkDiscover, PKPaymentNetworkMasterCard, PKPaymentNetworkVisa.</p>
</div>
<div class="method-subsection method-declaration"><code>@property (nonatomic, copy) NSArray *supportedNetworks</code></div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/paymentRequest" title="paymentRequest"></a>
<h3 class="method-title"><code><a href="#//api/name/paymentRequest">&ndash;&nbsp;paymentRequest</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Override point to return a custom payment request</p>
</div>
<div class="method-subsection method-declaration"><code>- (PKPaymentRequest *)paymentRequest</code></div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>a new payment request object</p>
</div>
<div class="method-subsection discussion-section">
<h4 class="method-subtitle">Discussion</h4>
<p>The default merchantCapability is PKMerchantCapability3DS</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/initWithClient:" title="initWithClient:"></a>
<h3 class="method-title"><code><a href="#//api/name/initWithClient:">&ndash;&nbsp;initWithClient:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creates a BUYViewController using your</p>
</div>
<div class="method-subsection method-declaration"><code>- (instancetype)initWithClient:(BUYClient *)<em>client</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>client</code></th>
<td><p>A <a href="../Classes/BUYClient.html">BUYClient</a> configured to your <a href="#//api/name/shop">shop</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection return">
<h4 class="method-subtitle parameter-title">Return Value</h4>
<p>A BUYViewController</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/startApplePayCheckout:" title="startApplePayCheckout:"></a>
<h3 class="method-title"><code><a href="#//api/name/startApplePayCheckout:">&ndash;&nbsp;startApplePayCheckout:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Start an Apple Pay <a href="#//api/name/checkout">checkout</a> with a <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object.
The <a href="#//api/name/checkout">checkout</a> object will be created or updated on Shopify
before proceeding with the Apple Pay <a href="#//api/name/checkout">checkout</a></p>
</div>
<div class="method-subsection method-declaration"><code>- (void)startApplePayCheckout:(BUYCheckout *)<em>checkout</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>A <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object to start an Apple Pay <a href="#//api/name/checkout">checkout</a> with</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/startWebCheckout:" title="startWebCheckout:"></a>
<h3 class="method-title"><code><a href="#//api/name/startWebCheckout:">&ndash;&nbsp;startWebCheckout:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Start a responsive web <a href="#//api/name/checkout">checkout</a> with a <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object.
This call will jump out to Safari and the shop&rsquo;s responsive web <a href="#//api/name/checkout">checkout</a>.
The <a href="#//api/name/checkout">checkout</a> object will be created or updated on Shopify
before proceeding with the responsive web <a href="#//api/name/checkout">checkout</a></p>
</div>
<div class="method-subsection method-declaration"><code>- (void)startWebCheckout:(BUYCheckout *)<em>checkout</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>A <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object to start a web <a href="#//api/name/checkout">checkout</a> with</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/startCheckoutWithCartToken:" title="startCheckoutWithCartToken:"></a>
<h3 class="method-title"><code><a href="#//api/name/startCheckoutWithCartToken:">&ndash;&nbsp;startCheckoutWithCartToken:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Creates a <a href="#//api/name/checkout">checkout</a> using a web cart&rsquo;s token.
This is useful when handing off the cart from a WKWebView to an Apple Pay <a href="#//api/name/checkout">checkout</a>.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)startCheckoutWithCartToken:(NSString *)<em>token</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>token</code></th>
<td><p>Cart token from your Shopify store&rsquo;s storefront</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/checkoutCompleted:status:" title="checkoutCompleted:status:"></a>
<h3 class="method-title"><code><a href="#//api/name/checkoutCompleted:status:">&ndash;&nbsp;checkoutCompleted:status:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Override this method if you want to perform any actions before information the <a href="#//api/name/delegate">delegate</a></p>
</div>
<div class="method-subsection method-declaration"><code>- (void)checkoutCompleted:(BUYCheckout *)<em>checkout</em> status:(BUYStatus)<em>status</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The completed <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>status</code></th>
<td><p>The status of the <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/completeCheckoutFromLaunchURL:" title="completeCheckoutFromLaunchURL:"></a>
<h3 class="method-title"><code><a href="#//api/name/completeCheckoutFromLaunchURL:">+&nbsp;completeCheckoutFromLaunchURL:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Call this method from the application <a href="#//api/name/delegate">delegate</a> method openURL:sourceApplication:annotation when returning from a web <a href="#//api/name/checkout">checkout</a></p>
</div>
<div class="method-subsection method-declaration"><code>+ (void)completeCheckoutFromLaunchURL:(NSURL *)<em>url</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>url</code></th>
<td><p>the NSURL passed in to the app <a href="#//api/name/delegate">delegate</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYCheckoutError Constants Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYCheckoutError Constants Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYError.h</td>
</tr>
</tbody></table></div>
<h3 class="subsubtitle method-title">BUYCheckoutError</h3>
<div class="section section-overview">
<p>A collection of enums for error codes specific to the SDK</p>
</div>
<div class="section">
<!-- display enum values -->
<h4 class="method-subtitle">Definition</h4>
<code>typedef NS_ENUM(NSUInteger, BUYCheckoutError ) {<br>
&nbsp;&nbsp; <a href="">BUYShopifyError_CartFetchError</a>,<br>
&nbsp;&nbsp; <a href="">BUYShopifyError_NoShippingMethodsToAddress</a>,<br>
&nbsp;&nbsp; <a href="">BUYShopifyError_NoProductSpecified</a>,<br>
&nbsp;&nbsp; <a href="">BUYShopifyError_InvalidProductID</a>,<br>
&nbsp;&nbsp; <a href="">BUYShopifyError_NoCollectionIdSpecified</a>,<br>
&nbsp;&nbsp; <a href="">BUYShopifyError_NoGiftCardSpecified</a>,<br>
&nbsp;&nbsp; <a href="">BUYShopifyError_NoCreditCardSpecified</a>,<br>
&nbsp;&nbsp; <a href="">BUYShopifyError_NoApplePayTokenSpecified</a>,<br>
&nbsp;&nbsp; <a href="">BUYShopifyError_InvalidCheckoutObject</a>,<br>
};</code>
</div>
<div class="section section-methods">
<h4 class="method-subtitle">Constants</h4>
<dl class="termdef">
<dt><a name="" title="BUYShopifyError_CartFetchError"></a><code>BUYShopifyError_CartFetchError</code></dt>
<dd>
<p>An error occurred retrieving the cart for an existing web checkout with <a href="../Classes/BUYStoreViewController.html">BUYStoreViewController</a></p>
<p>
Declared In <code class="declared-in-ref">BUYError.h</code>.
</p>
</dd>
<dt><a name="" title="BUYShopifyError_NoShippingMethodsToAddress"></a><code>BUYShopifyError_NoShippingMethodsToAddress</code></dt>
<dd>
<p>No shipping rates are available for the selected address</p>
<p>
Declared In <code class="declared-in-ref">BUYError.h</code>.
</p>
</dd>
<dt><a name="" title="BUYShopifyError_NoProductSpecified"></a><code>BUYShopifyError_NoProductSpecified</code></dt>
<dd>
<p>No product or product ID was provided when loading a product in <a href="../Classes/BUYProductViewController.html">BUYProductViewController</a></p>
<p>
Declared In <code class="declared-in-ref">BUYError.h</code>.
</p>
</dd>
<dt><a name="" title="BUYShopifyError_InvalidProductID"></a><code>BUYShopifyError_InvalidProductID</code></dt>
<dd>
<p>The product ID or IDs provided were invalid for the shop. Check that the product are made visible on the Mobile App channel on /admin.</p>
<p>
Declared In <code class="declared-in-ref">BUYError.h</code>.
</p>
</dd>
<dt><a name="" title="BUYShopifyError_NoCollectionIdSpecified"></a><code>BUYShopifyError_NoCollectionIdSpecified</code></dt>
<dd>
<p>No collection ID was provided when loading a collection</p>
<p>
Declared In <code class="declared-in-ref">BUYError.h</code>.
</p>
</dd>
<dt><a name="" title="BUYShopifyError_NoGiftCardSpecified"></a><code>BUYShopifyError_NoGiftCardSpecified</code></dt>
<dd>
<p>No gift card code was provided when applying a gift card to a checkout</p>
<p>
Declared In <code class="declared-in-ref">BUYError.h</code>.
</p>
</dd>
<dt><a name="" title="BUYShopifyError_NoCreditCardSpecified"></a><code>BUYShopifyError_NoCreditCardSpecified</code></dt>
<dd>
<p>No credit card was provided when calling <code>storeCreditCard:completion:</code></p>
<p>
Declared In <code class="declared-in-ref">BUYError.h</code>.
</p>
</dd>
<dt><a name="" title="BUYShopifyError_NoApplePayTokenSpecified"></a><code>BUYShopifyError_NoApplePayTokenSpecified</code></dt>
<dd>
<p>No Apple Pay token was provided when attempting to complete a checkout using Apple Pay</p>
<p>
Declared In <code class="declared-in-ref">BUYError.h</code>.
</p>
</dd>
<dt><a name="" title="BUYShopifyError_InvalidCheckoutObject"></a><code>BUYShopifyError_InvalidCheckoutObject</code></dt>
<dd>
<p>The checkout is invalid and does not have a checkout token. This generally means the <a href="../Classes/BUYCheckout.html">BUYCheckout</a> object
has not been synced with Shopify via <code>createCheckout:completion:</code> before making subsequent calls to update
or complete the checkout</p>
<p>
Declared In <code class="declared-in-ref">BUYError.h</code>.
</p>
</dd>
</dl>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYError.h</code></p>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYCheckoutType Constants Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYCheckoutType Constants Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYStoreViewController.h</td>
</tr>
</tbody></table></div>
<h3 class="subsubtitle method-title">BUYCheckoutType</h3>
<div class="section">
<!-- display enum values -->
<h4 class="method-subtitle">Definition</h4>
<code>typedef NS_ENUM(NSUInteger, BUYCheckoutType ) {<br>
&nbsp;&nbsp; <a href="">BUYCheckoutTypeNormal</a>,<br>
&nbsp;&nbsp; <a href="">BUYCheckoutTypeApplePay</a>,<br>
&nbsp;&nbsp; <a href="">BUYCheckoutTypeCancel</a>,<br>
};</code>
</div>
<div class="section section-methods">
<h4 class="method-subtitle">Constants</h4>
<dl class="termdef">
<dt><a name="" title="BUYCheckoutTypeNormal"></a><code>BUYCheckoutTypeNormal</code></dt>
<dd>
<p>
Declared In <code class="declared-in-ref">BUYStoreViewController.h</code>.
</p>
</dd>
<dt><a name="" title="BUYCheckoutTypeApplePay"></a><code>BUYCheckoutTypeApplePay</code></dt>
<dd>
<p>
Declared In <code class="declared-in-ref">BUYStoreViewController.h</code>.
</p>
</dd>
<dt><a name="" title="BUYCheckoutTypeCancel"></a><code>BUYCheckoutTypeCancel</code></dt>
<dd>
<p>
Declared In <code class="declared-in-ref">BUYStoreViewController.h</code>.
</p>
</dd>
</dl>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYCollectionSort Constants Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYCollectionSort Constants Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<h3 class="subsubtitle method-title">BUYCollectionSort</h3>
<div class="section section-overview">
<p>The sort order for products in a collection</p>
</div>
<div class="section">
<!-- display enum values -->
<h4 class="method-subtitle">Definition</h4>
<code>typedef NS_ENUM(NSUInteger, BUYCollectionSort ) {<br>
&nbsp;&nbsp; <a href="">BUYCollectionSortCollectionDefault</a>,<br>
&nbsp;&nbsp; <a href="">BUYCollectionSortBestSelling</a>,<br>
&nbsp;&nbsp; <a href="">BUYCollectionSortTitleAscending</a>,<br>
&nbsp;&nbsp; <a href="">BUYCollectionSortTitleDescending</a>,<br>
&nbsp;&nbsp; <a href="">BUYCollectionSortPriceAscending</a>,<br>
&nbsp;&nbsp; <a href="">BUYCollectionSortPriceDescending</a>,<br>
&nbsp;&nbsp; <a href="">BUYCollectionSortCreatedAscending</a>,<br>
&nbsp;&nbsp; <a href="">BUYCollectionSortCreatedDescending</a>,<br>
};</code>
</div>
<div class="section section-methods">
<h4 class="method-subtitle">Constants</h4>
<dl class="termdef">
<dt><a name="" title="BUYCollectionSortCollectionDefault"></a><code>BUYCollectionSortCollectionDefault</code></dt>
<dd>
<p>Sort products by best selling using the order set in the shop&rsquo;s admin</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYCollectionSortBestSelling"></a><code>BUYCollectionSortBestSelling</code></dt>
<dd>
<p>Sort products by best selling</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYCollectionSortTitleAscending"></a><code>BUYCollectionSortTitleAscending</code></dt>
<dd>
<p>Sort products by title, ascending</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYCollectionSortTitleDescending"></a><code>BUYCollectionSortTitleDescending</code></dt>
<dd>
<p>Sort products by title, descending</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYCollectionSortPriceAscending"></a><code>BUYCollectionSortPriceAscending</code></dt>
<dd>
<p>Sort products by price (first variant), ascending</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYCollectionSortPriceDescending"></a><code>BUYCollectionSortPriceDescending</code></dt>
<dd>
<p>Sort products by price (first variant), descending</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYCollectionSortCreatedAscending"></a><code>BUYCollectionSortCreatedAscending</code></dt>
<dd>
<p>Sort products by creation date, ascending</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYCollectionSortCreatedDescending"></a><code>BUYCollectionSortCreatedDescending</code></dt>
<dd>
<p>Sort products by creation date, descending</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
</dl>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYPaymentButtonStyle Constants Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYPaymentButtonStyle Constants Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYPaymentButton.h</td>
</tr>
</tbody></table></div>
<h3 class="subsubtitle method-title">BUYPaymentButtonStyle</h3>
<div class="section">
<!-- display enum values -->
<h4 class="method-subtitle">Definition</h4>
<code>typedef NS_ENUM(NSInteger, BUYPaymentButtonStyle ) {<br>
&nbsp;&nbsp; <a href="">BUYPaymentButtonStyleWhite</a> = 0,<br>
&nbsp;&nbsp; <a href="">BUYPaymentButtonStyleWhiteOutline</a>,<br>
&nbsp;&nbsp; <a href="">BUYPaymentButtonStyleBlack</a>,<br>
};</code>
</div>
<div class="section section-methods">
<h4 class="method-subtitle">Constants</h4>
<dl class="termdef">
<dt><a name="" title="BUYPaymentButtonStyleWhite"></a><code>BUYPaymentButtonStyleWhite</code></dt>
<dd>
<p>
Declared In <code class="declared-in-ref">BUYPaymentButton.h</code>.
</p>
</dd>
<dt><a name="" title="BUYPaymentButtonStyleWhiteOutline"></a><code>BUYPaymentButtonStyleWhiteOutline</code></dt>
<dd>
<p>
Declared In <code class="declared-in-ref">BUYPaymentButton.h</code>.
</p>
</dd>
<dt><a name="" title="BUYPaymentButtonStyleBlack"></a><code>BUYPaymentButtonStyleBlack</code></dt>
<dd>
<p>
Declared In <code class="declared-in-ref">BUYPaymentButton.h</code>.
</p>
</dd>
</dl>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYPaymentButtonType Constants Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYPaymentButtonType Constants Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYPaymentButton.h</td>
</tr>
</tbody></table></div>
<h3 class="subsubtitle method-title">BUYPaymentButtonType</h3>
<div class="section">
<!-- display enum values -->
<h4 class="method-subtitle">Definition</h4>
<code>typedef NS_ENUM(NSInteger, BUYPaymentButtonType ) {<br>
&nbsp;&nbsp; <a href="">BUYPaymentButtonTypePlain</a> = 0,<br>
&nbsp;&nbsp; <a href="">BUYPaymentButtonTypeBuy</a>,<br>
&nbsp;&nbsp; <a href="">BUYPaymentButtonTypeSetup</a>,<br>
};</code>
</div>
<div class="section section-methods">
<h4 class="method-subtitle">Constants</h4>
<dl class="termdef">
<dt><a name="" title="BUYPaymentButtonTypePlain"></a><code>BUYPaymentButtonTypePlain</code></dt>
<dd>
<p>
Declared In <code class="declared-in-ref">BUYPaymentButton.h</code>.
</p>
</dd>
<dt><a name="" title="BUYPaymentButtonTypeBuy"></a><code>BUYPaymentButtonTypeBuy</code></dt>
<dd>
<p>
Declared In <code class="declared-in-ref">BUYPaymentButton.h</code>.
</p>
</dd>
<dt><a name="" title="BUYPaymentButtonTypeSetup"></a><code>BUYPaymentButtonTypeSetup</code></dt>
<dd>
<p>
Declared In <code class="declared-in-ref">BUYPaymentButton.h</code>.
</p>
</dd>
</dl>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYStatus Constants Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYStatus Constants Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYClient.h</td>
</tr>
</tbody></table></div>
<h3 class="subsubtitle method-title">BUYStatus</h3>
<div class="section section-overview">
<p>A BUYStatus is associated with the completion of an enqueued job on Shopify.
BUYStatus is equal is HTTP status codes returned from the server</p>
</div>
<div class="section">
<!-- display enum values -->
<h4 class="method-subtitle">Definition</h4>
<code>typedef NS_ENUM(NSUInteger, BUYStatus ) {<br>
&nbsp;&nbsp; <a href="">BUYStatusComplete</a> = 200,<br>
&nbsp;&nbsp; <a href="">BUYStatusProcessing</a> = 202,<br>
&nbsp;&nbsp; <a href="">BUYStatusNotFound</a> = 404,<br>
&nbsp;&nbsp; <a href="">BUYStatusPreconditionFailed</a> = 412,<br>
&nbsp;&nbsp; <a href="">BUYStatusFailed</a> = 424,<br>
&nbsp;&nbsp; <a href="">BUYStatusUnknown</a>,<br>
};</code>
</div>
<div class="section section-methods">
<h4 class="method-subtitle">Constants</h4>
<dl class="termdef">
<dt><a name="" title="BUYStatusComplete"></a><code>BUYStatusComplete</code></dt>
<dd>
<p>The job is complete</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYStatusProcessing"></a><code>BUYStatusProcessing</code></dt>
<dd>
<p>The job is still processing</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYStatusNotFound"></a><code>BUYStatusNotFound</code></dt>
<dd>
<p>The job is not found, please check the identifier</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYStatusPreconditionFailed"></a><code>BUYStatusPreconditionFailed</code></dt>
<dd>
<p>The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server.</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYStatusFailed"></a><code>BUYStatusFailed</code></dt>
<dd>
<p>The request failed, refer to an NSError for details</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
<dt><a name="" title="BUYStatusUnknown"></a><code>BUYStatusUnknown</code></dt>
<dd>
<p>The status is unknown</p>
<p>
Declared In <code class="declared-in-ref">BUYClient.h</code>.
</p>
</dd>
</dl>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYClient.h</code></p>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYThemeStyle Constants Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYThemeStyle Constants Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Declared in</th>
<td>BUYTheme.h</td>
</tr>
</tbody></table></div>
<h3 class="subsubtitle method-title">BUYThemeStyle</h3>
<div class="section section-overview">
<p>The theme style for the <a href="../Classes/BUYProductViewController.html">BUYProductViewController</a></p>
</div>
<div class="section">
<!-- display enum values -->
<h4 class="method-subtitle">Definition</h4>
<code>typedef NS_ENUM(NSInteger, BUYThemeStyle ) {<br>
&nbsp;&nbsp; <a href="">BUYThemeStyleLight</a>,<br>
&nbsp;&nbsp; <a href="">BUYThemeStyleDark</a>,<br>
};</code>
</div>
<div class="section section-methods">
<h4 class="method-subtitle">Constants</h4>
<dl class="termdef">
<dt><a name="" title="BUYThemeStyleLight"></a><code>BUYThemeStyleLight</code></dt>
<dd>
<p>Light theme style, providing light backgrounds and light styled UIVisualEffectViews</p>
<p>
Declared In <code class="declared-in-ref">BUYTheme.h</code>.
</p>
</dd>
<dt><a name="" title="BUYThemeStyleDark"></a><code>BUYThemeStyleDark</code></dt>
<dd>
<p>Dark theme style, providing dark backgrounds and dark styled UIVisualEffectViews</p>
<p>
Declared In <code class="declared-in-ref">BUYTheme.h</code>.
</p>
</dd>
</dl>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYTheme.h</code></p>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYStoreViewControllerDelegate Protocol Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Instance Methods">
<option value="//api/name/controller:shouldProceedWithCheckoutType:">- controller:shouldProceedWithCheckoutType:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYStoreViewControllerDelegate Protocol Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Conforms to</th>
<td><a href="../Protocols/BUYViewControllerDelegate.html">BUYViewControllerDelegate</a></td>
</tr><tr>
<th>Declared in</th>
<td>BUYStoreViewController.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>The BUYStoreViewControllerDelegate protocol implements methods related to the checkout process</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/controller:shouldProceedWithCheckoutType:" title="controller:shouldProceedWithCheckoutType:"></a>
<h3 class="method-title"><code><a href="#//api/name/controller:shouldProceedWithCheckoutType:">&ndash;&nbsp;controller:shouldProceedWithCheckoutType:</a></code>
<span class="task-item-suffix">required method</span></h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Tells the delegate that the user has proceeded to checkout. Use this opportunity to present an interface to a
user to choose between checking out with Apple Pay or standard webcheckout.
Note: Before presenting an option for Apple Pay, check if the device is setup to do so by calling <code>[PKPaymentAuthorizationViewController canMakePayments]</code></p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controller:(BUYStoreViewController *)<em>controller</em> shouldProceedWithCheckoutType:(BUYCheckoutTypeBlock)<em>completionHandler</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The controller with an embedded WKWebView displaying the Shopify store</p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>completionHandler</code></th>
<td><p>(^<a href="../Blocks/BUYCheckoutTypeBlock.html">BUYCheckoutTypeBlock</a>)(<a href="../Constants/BUYCheckoutType.html">BUYCheckoutType</a> type);</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYStoreViewController.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYThemeable Protocol Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="overview">Overview</option>
<option value="tasks">Tasks</option>
<optgroup label="Instance Methods">
<option value="//api/name/setTheme:">- setTheme:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYThemeable Protocol Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Conforms to</th>
<td>NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYTheme.h</td>
</tr>
</tbody></table></div>
<div class="section section-overview">
<a title="Overview" name="overview"></a>
<h2 class="subtitle subtitle-overview">Overview</h2>
<p>Protocol to enable theming for any class</p>
</div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/setTheme:" title="setTheme:"></a>
<h3 class="method-title"><code><a href="#//api/name/setTheme:">&ndash;&nbsp;setTheme:</a></code>
<span class="task-item-suffix">required method</span></h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Sets the theme for the view, and its subviews</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)setTheme:(BUYTheme *)<em>theme</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>theme</code></th>
<td><p>The new theme to apply</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYTheme.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>BUYViewControllerDelegate Protocol Reference</title>
<link rel="stylesheet" href="../css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>
<li id="on-this-page" role="navigation">
<label>
On This Page
<div class="chevron">
<div class="chevy chevron-left"></div>
<div class="chevy chevron-right"></div>
</div>
<select id="jump-to">
<option value="top">Jump To&#133;</option>
<option value="tasks">Tasks</option>
<optgroup label="Instance Methods">
<option value="//api/name/controller:didCompleteCheckout:status:">- controller:didCompleteCheckout:status:</option>
<option value="//api/name/controller:didDismissApplePayControllerWithStatus:forCheckout:">- controller:didDismissApplePayControllerWithStatus:forCheckout:</option>
<option value="//api/name/controller:didDismissWebCheckout:">- controller:didDismissWebCheckout:</option>
<option value="//api/name/controller:failedToCompleteCheckout:withError:">- controller:failedToCompleteCheckout:withError:</option>
<option value="//api/name/controller:failedToCreateCheckout:">- controller:failedToCreateCheckout:</option>
<option value="//api/name/controller:failedToGetShippingRates:withError:">- controller:failedToGetShippingRates:withError:</option>
<option value="//api/name/controller:failedToUpdateCheckout:withError:">- controller:failedToUpdateCheckout:withError:</option>
<option value="//api/name/controllerFailedToStartApplePayProcess:">- controllerFailedToStartApplePayProcess:</option>
<option value="//api/name/controllerWillCheckoutViaApplePay:">- controllerWillCheckoutViaApplePay:</option>
<option value="//api/name/controllerWillCheckoutViaWeb:">- controllerWillCheckoutViaWeb:</option>
<option value="//api/name/didDismissViewController:">- didDismissViewController:</option>
</optgroup>
</select>
</label>
</li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview_contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">BUYViewControllerDelegate Protocol Reference</h1>
<div class="section section-specification"><table cellspacing="0"><tbody>
<tr>
<th>Conforms to</th>
<td>NSObject</td>
</tr><tr>
<th>Declared in</th>
<td>BUYViewController.h</td>
</tr>
</tbody></table></div>
<div class="section section-tasks">
<a title="Tasks" name="tasks"></a>
<div class="task-list">
<div class="section-method">
<a name="//api/name/controller:failedToCreateCheckout:" title="controller:failedToCreateCheckout:"></a>
<h3 class="method-title"><code><a href="#//api/name/controller:failedToCreateCheckout:">&ndash;&nbsp;controller:failedToCreateCheckout:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>This is called if there is an error in creating the <a href="../Classes/BUYCheckout.html">BUYCheckout</a>. These problems include not being connected to the Internet,
or if there is a validation error in the checkout.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controller:(BUYViewController *)<em>controller</em> failedToCreateCheckout:(NSError *)<em>error</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The <a href="../Classes/BUYViewController.html">BUYViewController</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>error</code></th>
<td><p>An NSError describing the failure</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/controllerFailedToStartApplePayProcess:" title="controllerFailedToStartApplePayProcess:"></a>
<h3 class="method-title"><code><a href="#//api/name/controllerFailedToStartApplePayProcess:">&ndash;&nbsp;controllerFailedToStartApplePayProcess:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>This failure occurs when either the application is not properly configured to handle Apple Pay,
or if the user does not have any credit cards configured in PassBook or cannot add any credit cards.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controllerFailedToStartApplePayProcess:(BUYViewController *)<em>controller</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The <a href="../Classes/BUYViewController.html">BUYViewController</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/controller:failedToUpdateCheckout:withError:" title="controller:failedToUpdateCheckout:withError:"></a>
<h3 class="method-title"><code><a href="#//api/name/controller:failedToUpdateCheckout:withError:">&ndash;&nbsp;controller:failedToUpdateCheckout:withError:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>This failure occurs whenever an update to <a href="../Classes/BUYCheckout.html">BUYCheckout</a> fails (shipping address, billing address, etc.)</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controller:(BUYViewController *)<em>controller</em> failedToUpdateCheckout:(BUYCheckout *)<em>checkout</em> withError:(NSError *)<em>error</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The <a href="../Classes/BUYViewController.html">BUYViewController</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>error</code></th>
<td><p>An NSError describing the failure</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/controller:failedToGetShippingRates:withError:" title="controller:failedToGetShippingRates:withError:"></a>
<h3 class="method-title"><code><a href="#//api/name/controller:failedToGetShippingRates:withError:">&ndash;&nbsp;controller:failedToGetShippingRates:withError:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>This failure occurs when shipping rates cannot be retrieved.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controller:(BUYViewController *)<em>controller</em> failedToGetShippingRates:(BUYCheckout *)<em>checkout</em> withError:(NSError *)<em>error</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The <a href="../Classes/BUYViewController.html">BUYViewController</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>error</code></th>
<td><p>An NSError describing the failure</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/controller:failedToCompleteCheckout:withError:" title="controller:failedToCompleteCheckout:withError:"></a>
<h3 class="method-title"><code><a href="#//api/name/controller:failedToCompleteCheckout:withError:">&ndash;&nbsp;controller:failedToCompleteCheckout:withError:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>This failure occurs whenever completing a checkout fails.
This can occur if there is missing payment information or if the shop is improperly configured.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controller:(BUYViewController *)<em>controller</em> failedToCompleteCheckout:(BUYCheckout *)<em>checkout</em> withError:(NSError *)<em>error</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The <a href="../Classes/BUYViewController.html">BUYViewController</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>error</code></th>
<td><p>An NSError describing the failure</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/controller:didCompleteCheckout:status:" title="controller:didCompleteCheckout:status:"></a>
<h3 class="method-title"><code><a href="#//api/name/controller:didCompleteCheckout:status:">&ndash;&nbsp;controller:didCompleteCheckout:status:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>This is called whenever the checkout fully completes, success or failure.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controller:(BUYViewController *)<em>controller</em> didCompleteCheckout:(BUYCheckout *)<em>checkout</em> status:(BUYStatus)<em>status</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The <a href="../Classes/BUYViewController.html">BUYViewController</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>status</code></th>
<td><p>Checkout status <a href="../Constants/BUYStatus.html">BUYStatus</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/controller:didDismissApplePayControllerWithStatus:forCheckout:" title="controller:didDismissApplePayControllerWithStatus:forCheckout:"></a>
<h3 class="method-title"><code><a href="#//api/name/controller:didDismissApplePayControllerWithStatus:forCheckout:">&ndash;&nbsp;controller:didDismissApplePayControllerWithStatus:forCheckout:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>This is called when the Apple Pay Authorization View Controller has been dismissed.
It will be called if the user cancels Apple Pay or the authorization was successful and the Apple Pay
payment confirmation was shown to the user.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controller:(BUYViewController *)<em>controller</em> didDismissApplePayControllerWithStatus:(PKPaymentAuthorizationStatus)<em>status</em> forCheckout:(BUYCheckout *)<em>checkout</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The <a href="../Classes/BUYViewController.html">BUYViewController</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection discussion-section">
<h4 class="method-subtitle">Discussion</h4>
<p>Note: If the PKPaymentAuthorizationStatus is not PKPaymentAuthorizationStatusSuccess we will expire the checkout by
calling <code>expireCheckout:completion:</code> to release the hold on the product inventory.</p>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/controller:didDismissWebCheckout:" title="controller:didDismissWebCheckout:"></a>
<h3 class="method-title"><code><a href="#//api/name/controller:didDismissWebCheckout:">&ndash;&nbsp;controller:didDismissWebCheckout:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>This is called when the SFSafariViewController has been dismissed before checkout completion.</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controller:(BUYViewController *)<em>controller</em> didDismissWebCheckout:(BUYCheckout *)<em>checkout</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The <a href="../Classes/BUYViewController.html">BUYViewController</a></p></td>
</tr>
<tr>
<th scope="row" class="argument-name"><code>checkout</code></th>
<td><p>The <a href="../Classes/BUYCheckout.html">BUYCheckout</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/didDismissViewController:" title="didDismissViewController:"></a>
<h3 class="method-title"><code><a href="#//api/name/didDismissViewController:">&ndash;&nbsp;didDismissViewController:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>The view controller has been dismissed</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)didDismissViewController:(BUYViewController *)<em>controller</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>controller</code></th>
<td><p>The <a href="../Classes/BUYViewController.html">BUYViewController</a></p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/controllerWillCheckoutViaWeb:" title="controllerWillCheckoutViaWeb:"></a>
<h3 class="method-title"><code><a href="#//api/name/controllerWillCheckoutViaWeb:">&ndash;&nbsp;controllerWillCheckoutViaWeb:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Called when the user chooses to checkout via web checkout which will open Safari</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controllerWillCheckoutViaWeb:(BUYViewController *)<em>viewController</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>viewController</code></th>
<td><p>the view controller</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div><div class="section-method">
<a name="//api/name/controllerWillCheckoutViaApplePay:" title="controllerWillCheckoutViaApplePay:"></a>
<h3 class="method-title"><code><a href="#//api/name/controllerWillCheckoutViaApplePay:">&ndash;&nbsp;controllerWillCheckoutViaApplePay:</a></code>
</h3>
<div class="method-info">
<div class="pointy-thing"></div>
<div class="method-info-container">
<div class="method-subsection brief-description">
<p>Called when the user chooses to checkout via Apple Pay</p>
</div>
<div class="method-subsection method-declaration"><code>- (void)controllerWillCheckoutViaApplePay:(BUYViewController *)<em>viewController</em></code></div>
<div class="method-subsection arguments-section parameters">
<h4 class="method-subtitle parameter-title">Parameters</h4>
<table class="argument-def parameter-def">
<tr>
<th scope="row" class="argument-name"><code>viewController</code></th>
<td><p>the view controller</p></td>
</tr>
</table>
</div>
<div class="method-subsection declared-in-section">
<h4 class="method-subtitle">Declared In</h4>
<p><code class="declared-in-ref">BUYViewController.h</code></p>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</div>
</div>
</article>
<script src="../js/script.js"></script>
</body>
</html>
\ No newline at end of file
.index-container {
display: flex;
flex-direction: row;
flex-wrap: wrap;
@media (max-width: $mobile-max-width) {
flex-direction: column;
}
.index-column {
flex: 1 1 33%;
}
}
* {
box-sizing: border-box;
}
.clear {
clear: both;
}
.clearfix {
&:before, &:after {
clear: both;
display: table;
content: "";
}
}
.xcode .hide-in-xcode {
display: none;
}
body {
font: 62.5% $body-font;
background: $body-background;
}
h1, h2, h3 {
font-weight: 300;
color: #808080;
}
h1 {
font-size: 2em;
color: #000;
}
h4 {
font-size: 13px;
line-height: 1.5;
margin: 21px 0 0 0;
}
a {
color: $tint-color;
text-decoration: none;
}
pre, code {
font-family: $code-font;
word-wrap: break-word;
}
pre > code, .method-declaration code {
display: inline-block;
font-size: .85em;
padding: 4px 0 4px 10px;
border-left: 5px solid rgba(0, 155, 51, .2);
&:before {
content: "Objective-C";
display: block;
font: 9px/1 $body-font;
color: #009b33;
text-transform: uppercase;
letter-spacing: 2px;
padding-bottom: 6px;
}
}
pre > code {
font-size: inherit;
}
table, th, td {
border: 1px solid #e9e9e9;
}
table {
width: 100%;
}
th, td {
padding: 7px;
> :first-child {
margin-top: 0;
}
> :last-child {
margin-bottom: 0;
}
}
.container {
@extend .clearfix;
max-width: 980px;
padding: 0 10px;
margin: 0 auto;
@media (max-width: $mobile-max-width) {
padding: 0;
}
}
header {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 2;
background: #414141;
color: #fff;
font-size: 1.1em;
line-height: 25px;
letter-spacing: .05em;
#library-title {
float: left;
}
#developer-home {
float: right;
}
h1 {
font-size: inherit;
font-weight: inherit;
margin: 0;
}
p {
margin: 0;
}
h1, a {
color: inherit;
}
@media (max-width: $mobile-max-width) {
position: absolute;
.container {
padding: 0 10px;
}
}
}
aside {
position: fixed;
top: 25px;
left: 0;
width: 100%;
height: 25px;
z-index: 2;
font-size: 1.1em;
@media (max-width: $mobile-max-width) {
position: absolute;
}
#header-buttons {
background: rgba(255, 255, 255, .8);
margin: 0 1px;
padding: 0;
list-style: none;
text-align: right;
line-height: 32px;
li {
display: inline-block;
cursor: pointer;
padding: 0 10px;
}
label, select {
cursor: inherit;
}
#on-this-page {
position: relative;
.chevron {
display: inline-block;
width: 14px;
height: 4px;
position: relative;
.chevy {
background: #878787;
height: 2px;
position: absolute;
width: 10px;
&.chevron-left {
left: 0;
transform: rotateZ(45deg) scale(0.6);
}
&.chevron-right {
right: 0;
transform: rotateZ(-45deg) scale(0.6);
}
}
}
#jump-to {
opacity: 0;
font-size: 16px;
position: absolute;
top: 5px;
left: 0;
width: 100%;
height: 100%;
}
}
}
}
article {
margin-top: 25px;
#content {
@extend .clearfix;
background: $content-background;
border: 1px solid $content-border;
padding: 15px 25px 30px 25px;
font-size: 1.4em;
line-height: 1.45;
position: relative;
@media (max-width: $mobile-max-width) {
padding: 15px 10px 20px 10px;
}
.navigation-top {
position: absolute;
top: 15px;
right: 25px;
}
.title {
margin: 21px 0 0 0;
padding: 15px 0;
}
p {
color: #414141;
margin: 0 0 15px 0;
}
th, td {
p:last-child {
margin-bottom: 0;
}
}
main {
ul {
list-style: none;
margin-left: 24px;
margin-bottom: 12px;
padding: 0;
li {
position: relative;
padding-left: 1.3em;
&:before {
content: "\02022";
color: #414141;
font-size: 1.08em;
line-height: 1;
position: absolute;
left: 0;
padding-top: 2px;
}
}
}
}
footer {
@extend .clearfix;
.footer-copyright {
margin: 70px 25px 10px 0;
}
p {
font-size: .71em;
color: #a0a0a0;
}
}
}
}
/* ==========================================================================
Normalize.scss settings
========================================================================== */
/**
* Includes legacy browser support IE6/7
*
* Set to false if you want to drop support for IE6 and IE7
*/
$legacy_browser_support: false !default;
/* Base
========================================================================== */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
* 3. Corrects text resizing oddly in IE 6/7 when body `font-size` is set using
* `em` units.
*/
html {
font-family: sans-serif; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
@if $legacy_browser_support {
*font-size: 100%; /* 3 */
}
}
/**
* Remove default margin.
*/
body {
margin: 0;
}
/* HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined for any HTML5 element in IE 8/9.
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox.
* Correct `block` display not defined for `main` in IE 11.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
display: block;
}
/**
* 1. Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
progress,
video {
display: inline-block; /* 1 */
vertical-align: baseline; /* 2 */
@if $legacy_browser_support {
*display: inline;
*zoom: 1;
}
}
/**
* Prevents modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Address `[hidden]` styling not present in IE 8/9/10.
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
*/
[hidden],
template {
display: none;
}
/* Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
background-color: transparent;
}
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a {
&:active, &:hover {
outline: 0;
};
}
/* Text-level semantics
========================================================================== */
/**
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted;
}
/**
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
*/
b,
strong {
font-weight: bold;
}
@if $legacy_browser_support {
blockquote {
margin: 1em 40px;
}
}
/**
* Address styling not present in Safari and Chrome.
*/
dfn {
font-style: italic;
}
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari, and Chrome.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
@if $legacy_browser_support {
h2 {
font-size: 1.5em;
margin: 0.83em 0;
}
h3 {
font-size: 1.17em;
margin: 1em 0;
}
h4 {
font-size: 1em;
margin: 1.33em 0;
}
h5 {
font-size: 0.83em;
margin: 1.67em 0;
}
h6 {
font-size: 0.67em;
margin: 2.33em 0;
}
}
/**
* Addresses styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000;
}
@if $legacy_browser_support {
/**
* Addresses margins set differently in IE 6/7.
*/
p,
pre {
*margin: 1em 0;
}
/*
* Addresses CSS quotes not supported in IE 6/7.
*/
q {
*quotes: none;
}
/*
* Addresses `quotes` property not supported in Safari 4.
*/
q:before,
q:after {
content: '';
content: none;
}
}
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
@if $legacy_browser_support {
/* ==========================================================================
Lists
========================================================================== */
/*
* Addresses margins set differently in IE 6/7.
*/
dl,
menu,
ol,
ul {
*margin: 1em 0;
}
dd {
*margin: 0 0 0 40px;
}
/*
* Addresses paddings set differently in IE 6/7.
*/
menu,
ol,
ul {
*padding: 0 0 0 40px;
}
/*
* Corrects list images handled incorrectly in IE 7.
*/
nav ul,
nav ol {
*list-style: none;
*list-style-image: none;
}
}
/* Embedded content
========================================================================== */
/**
* 1. Remove border when inside `a` element in IE 8/9/10.
* 2. Improves image quality when scaled in IE 7.
*/
img {
border: 0;
@if $legacy_browser_support {
*-ms-interpolation-mode: bicubic; /* 2 */
}
}
/**
* Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
overflow: hidden;
}
/* Grouping content
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari.
*/
figure {
margin: 1em 40px;
}
/**
* Address differences between Firefox and other browsers.
*/
hr {
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0;
}
/**
* Contain overflow in all browsers.
*/
pre {
overflow: auto;
}
/**
* Address odd `em`-unit font size rendering in all browsers.
* Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
*/
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
@if $legacy_browser_support {
_font-family: 'courier new', monospace;
}
font-size: 1em;
}
/* Forms
========================================================================== */
/**
* Known limitation: by default, Chrome and Safari on OS X allow very limited
* styling of `select`, unless a `border` property is set.
*/
/**
* 1. Correct color not being inherited.
* Known issue: affects color of disabled elements.
* 2. Correct font properties not being inherited.
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
* 4. Improves appearance and consistency in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
color: inherit; /* 1 */
font: inherit; /* 2 */
margin: 0; /* 3 */
@if $legacy_browser_support {
vertical-align: baseline; /* 3 */
*vertical-align: middle; /* 3 */
}
}
/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
overflow: visible;
}
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
* Correct `select` style inheritance in Firefox.
*/
button,
select {
text-transform: none;
}
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
* 4. Removes inner spacing in IE 7 without affecting normal text inputs.
* Known issue: inner spacing remains in IE 6.
*/
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button; /* 2 */
cursor: pointer; /* 3 */
@if $legacy_browser_support {
*overflow: visible; /* 4 */
}
}
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default;
}
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
input {
line-height: normal;
}
/**
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
* Known issue: excess padding remains in IE 6.
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
@if $legacy_browser_support {
*height: 13px; /* 3 */
*width: 13px; /* 3 */
}
}
/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
* (include `-moz` to future-proof).
*/
input[type="search"] {
-webkit-appearance: textfield; /* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box; /* 2 */
box-sizing: content-box;
}
/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* Define consistent border, margin, and padding.
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
/**
* 1. Correct `color` not being inherited in IE 8/9/10/11.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
* 3. Corrects text not wrapping in Firefox 3.
* 4. Corrects alignment displayed oddly in IE 6/7.
*/
legend {
border: 0; /* 1 */
padding: 0; /* 2 */
@if $legacy_browser_support {
white-space: normal; /* 3 */
*margin-left: -7px; /* 4 */
}
}
/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
overflow: auto;
}
/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
font-weight: bold;
}
/* Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0;
}
td,
th {
padding: 0;
}
.section-specification {
table {
width: auto;
th {
text-align: left;
}
}
}
.method-title {
margin-left: -15px;
margin-bottom: 8px;
transition: margin-left .3s ease-out;
.section-method.hide & {
margin-left: 0;
}
code {
font-weight: 400;
font-size: .85em;
}
}
.method-info {
background: $object-background;
border-bottom: 1px solid $object-border;
margin: 0 -25px;
padding: 20px 25px 0 25px;
transition: height .3s ease-out;
position: relative;
.pointy-thing {
background: $content-background;
height: 10px;
border-bottom: 1px solid $object-border;
margin: -20px -25px 16px -25px;
&:before {
display: inline-block;
content: "";
background: $object-background;
border: 1px solid $object-border;
border-bottom: 0;
border-right: 0;
position: absolute;
left: 21px;
top: 3px;
width: 12px;
height: 12px;
transform: rotate(45deg);
}
}
.method-subsection {
margin-bottom: 15px;
.argument-name {
width: 1px;
text-align: right;
code {
color: #808080;
font-style: italic;
font-weight: 400;
}
}
}
}
.section-method {
&.hide .method-info {
height: 0 !important;
overflow: hidden;
display: none;
}
&.hide.animating .method-info {
display: block;
}
&.animating .method-info {
overflow: hidden;
}
}
@media print {
body {
background: #fff;
padding: 8px;
}
header {
position: static;
background: #fff;
color: #000;
}
aside {
display: none;
}
.container {
max-width: none;
padding: 0;
}
article {
margin-top: 0;
#content {
border: 0;
background: #fff;
padding: 15px 0 0 0;
.title {
margin-top: 0;
padding-top: 0;
}
}
}
.method-info {
&, & .pointy-thing {
background: #fff;
}
}
}
$body-font: -apple-system-font, "Helvetica Neue", Helvetica, sans-serif;
$code-font: "Source Code Pro", Monaco, Menlo, Consolas, monospace;
$body-background: #f2f2f2;
$content-background: #fff;
$content-border: #e9e9e9;
$tint-color: #08c;
$object-background: #f9f9f9;
$object-border: #e9e9e9;
$mobile-max-width: 650px;
.xcode {
header, aside {
display: none;
}
.container {
padding: 0;
}
article {
margin-top: 0;
#content {
border: 0;
margin: 0;
}
}
.method-info {
&, .section-method.hide & {
max-height: auto;
overflow: visible;
&.hiding {
display: block;
}
}
}
}
@import "variables", "normalize", "layout", "index", "object", "print", "xcode";
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box}.clear{clear:both}.clearfix:before,.container:before,article #content:before,article #content footer:before,.clearfix:after,.container:after,article #content:after,article #content footer:after{clear:both;display:table;content:""}.xcode .hide-in-xcode{display:none}body{font:62.5% -apple-system-font,"Helvetica Neue",Helvetica,sans-serif;background:#f2f2f2}h1,h2,h3{font-weight:300;color:gray}h1{font-size:2em;color:#000}h4{font-size:13px;line-height:1.5;margin:21px 0 0}a{color:#08c;text-decoration:none}pre,code{font-family:Source Code Pro,Monaco,Menlo,Consolas,monospace;word-wrap:break-word}pre>code,.method-declaration code{display:inline-block;font-size:.85em;padding:4px 0 4px 10px;border-left:5px solid rgba(0,155,51,.2)}pre>code:before,.method-declaration code:before{content:"Objective-C";display:block;font:9px/1 -apple-system-font,"Helvetica Neue",Helvetica,sans-serif;color:#009b33;text-transform:uppercase;letter-spacing:2px;padding-bottom:6px}pre>code{font-size:inherit}table,th,td{border:1px solid #e9e9e9}table{width:100%}th,td{padding:7px}th>:first-child,td>:first-child{margin-top:0}th>:last-child,td>:last-child{margin-bottom:0}.container{max-width:980px;padding:0 10px;margin:0 auto}@media(max-width:650px){.container{padding:0}}header{position:fixed;top:0;left:0;width:100%;z-index:2;background:#414141;color:#fff;font-size:1.1em;line-height:25px;letter-spacing:.05em}header #library-title{float:left}header #developer-home{float:right}header h1{font-size:inherit;font-weight:inherit;margin:0}header p{margin:0}header h1,header a{color:inherit}@media(max-width:650px){header{position:absolute}header .container{padding:0 10px}}aside{position:fixed;top:25px;left:0;width:100%;height:25px;z-index:2;font-size:1.1em}aside #header-buttons{background:rgba(255,255,255,.8);margin:0 1px;padding:0;list-style:none;text-align:right;line-height:32px}aside #header-buttons li{display:inline-block;cursor:pointer;padding:0 10px}aside #header-buttons label,aside #header-buttons select{cursor:inherit}aside #header-buttons #on-this-page{position:relative}aside #header-buttons #on-this-page .chevron{display:inline-block;width:14px;height:4px;position:relative}aside #header-buttons #on-this-page .chevron .chevy{background:#878787;height:2px;position:absolute;width:10px}aside #header-buttons #on-this-page .chevron .chevy.chevron-left{left:0;-webkit-transform:rotateZ(45deg) scale(.6);transform:rotateZ(45deg) scale(.6)}aside #header-buttons #on-this-page .chevron .chevy.chevron-right{right:0;-webkit-transform:rotateZ(-45deg) scale(.6);transform:rotateZ(-45deg) scale(.6)}aside #header-buttons #on-this-page #jump-to{opacity:0;filter:alpha(opacity=0);font-size:16px;position:absolute;top:5px;left:0;width:100%;height:100%}article{margin-top:25px}article #content{background:#fff;border:1px solid #e9e9e9;padding:15px 25px 30px;font-size:1.4em;line-height:1.45;position:relative}@media(max-width:650px){article #content{padding:15px 10px 20px}}article #content .navigation-top{position:absolute;top:15px;right:25px}article #content .title{margin:21px 0 0;padding:15px 0}article #content p{color:#414141;margin:0 0 15px}article #content th p:last-child,article #content td p:last-child{margin-bottom:0}article #content main ul{list-style:none;margin-left:24px;margin-bottom:12px;padding:0}article #content main ul li{position:relative;padding-left:1.3em}article #content main ul li:before{content:"\02022";color:#414141;font-size:1.08em;line-height:1;position:absolute;left:0;padding-top:2px}article #content footer .footer-copyright{margin:70px 25px 10px 0}article #content footer p{font-size:.71em;color:#a0a0a0}.index-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}@media(max-width:650px){.index-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}.index-container .index-column{-webkit-box-flex:1;-webkit-flex:1 1 33%;-ms-flex:1 1 33%;flex:1 1 33%}.section-specification table{width:auto}.section-specification table th{text-align:left}.method-title{margin-left:-15px;margin-bottom:8px;-webkit-transition:margin-left .3s ease-out;transition:margin-left .3s ease-out}.section-method.hide .method-title{margin-left:0}.method-title code{font-weight:400;font-size:.85em}.method-info{background:#f9f9f9;border-bottom:1px solid #e9e9e9;margin:0 -25px;padding:20px 25px 0;-webkit-transition:height .3s ease-out;transition:height .3s ease-out;position:relative}.method-info .pointy-thing{background:#fff;height:10px;border-bottom:1px solid #e9e9e9;margin:-20px -25px 16px}.method-info .pointy-thing:before{display:inline-block;content:"";background:#f9f9f9;border:1px solid #e9e9e9;border-bottom:0;border-right:0;position:absolute;left:21px;top:3px;width:12px;height:12px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.method-info .method-subsection{margin-bottom:15px}.method-info .method-subsection .argument-name{width:1px;text-align:right}.method-info .method-subsection .argument-name code{color:gray;font-style:italic;font-weight:400}.section-method.hide .method-info{height:0!important;overflow:hidden;display:none}.section-method.hide.animating .method-info{display:block}.section-method.animating .method-info{overflow:hidden}@media print{body{background:#fff;padding:8px}header{position:static;background:#fff;color:#000}aside{display:none}.container{max-width:none;padding:0}article{margin-top:0}article #content{border:0;background:#fff;padding:15px 0 0}article #content .title{margin-top:0;padding-top:0}.method-info,.method-info .pointy-thing{background:#fff}}.xcode header,.xcode aside{display:none}.xcode .container{padding:0}.xcode article{margin-top:0}.xcode article #content{border:0;margin:0}.xcode .section-method.hide .method-info,.xcode .section-method.hide.animating .method-info,.xcode .section-method.animating .method-info{height:auto!important;overflow:visible;display:block}.xcode .section-method.hide .method-title{margin-left:-15px}
/*# sourceMappingURL=to.css.map */
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Mobile Buy SDK Hierarchy</title>
<link rel="stylesheet" href="css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="index.html">Home</a></li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview-contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">Mobile Buy SDK Hierarchy</h1>
<div class="index-column hierarchy-column">
<h2 class="index-title">Class Hierarchy</h2>
<ul>
<li>NSError
<ul>
<li><a href="Classes/BUYError.html">BUYError</a></li>
</ul>
</li>
<li>NSObject
<ul>
<li><a href="Classes/BUYApplePayHelpers.html">BUYApplePayHelpers</a></li>
<li><a href="Classes/BUYCart.html">BUYCart</a></li>
<li><a href="Classes/BUYClient.html">BUYClient</a></li>
<li><a href="Classes/BUYCreditCard.html">BUYCreditCard</a></li>
<li><a href="Classes/BUYObject.html">BUYObject</a>
<ul>
<li><a href="Classes/BUYAddress.html">BUYAddress</a></li>
<li><a href="Classes/BUYCheckout.html">BUYCheckout</a></li>
<li><a href="Classes/BUYCollection.html">BUYCollection</a></li>
<li><a href="Classes/BUYDiscount.html">BUYDiscount</a></li>
<li><a href="Classes/BUYGiftCard.html">BUYGiftCard</a></li>
<li><a href="Classes/BUYImage.html">BUYImage</a></li>
<li><a href="Classes/BUYLineItem.html">BUYLineItem</a>
<ul>
<li><a href="Classes/BUYCartLineItem.html">BUYCartLineItem</a></li>
</ul>
</li>
<li><a href="Classes/BUYMaskedCreditCard.html">BUYMaskedCreditCard</a></li>
<li><a href="Classes/BUYOption.html">BUYOption</a></li>
<li><a href="Classes/BUYOptionValue.html">BUYOptionValue</a></li>
<li><a href="Classes/BUYOrder.html">BUYOrder</a></li>
<li><a href="Classes/BUYProduct.html">BUYProduct</a></li>
<li><a href="Classes/BUYProductVariant.html">BUYProductVariant</a></li>
<li><a href="Classes/BUYShippingRate.html">BUYShippingRate</a></li>
<li><a href="Classes/BUYShop.html">BUYShop</a></li>
<li><a href="Classes/BUYTaxLine.html">BUYTaxLine</a></li>
</ul>
</li>
<li><a href="Classes/BUYTheme.html">BUYTheme</a></li>
</ul>
</li>
<li>UIViewController
<ul>
<li><a href="Classes/BUYViewController.html">BUYViewController</a>
<ul>
<li><a href="Classes/BUYProductViewController.html">BUYProductViewController</a></li>
<li><a href="Classes/BUYStoreViewController.html">BUYStoreViewController</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="index-column">
<h2 class="index-title">Protocol References</h2>
<ul>
<li><a href="Protocols/BUYStoreViewControllerDelegate.html">BUYStoreViewControllerDelegate</a></li>
<li><a href="Protocols/BUYThemeable.html">BUYThemeable</a></li>
<li><a href="Protocols/BUYViewControllerDelegate.html">BUYViewControllerDelegate</a></li>
</ul>
<h2 class="index-title">Constant References</h2>
<ul>
<li><a href="Constants/BUYCheckoutError.html">BUYCheckoutError</a></li>
<li><a href="Constants/BUYCheckoutType.html">BUYCheckoutType</a></li>
<li><a href="Constants/BUYCollectionSort.html">BUYCollectionSort</a></li>
<li><a href="Constants/BUYPaymentButtonStyle.html">BUYPaymentButtonStyle</a></li>
<li><a href="Constants/BUYPaymentButtonType.html">BUYPaymentButtonType</a></li>
<li><a href="Constants/BUYStatus.html">BUYStatus</a></li>
<li><a href="Constants/BUYThemeStyle.html">BUYThemeStyle</a></li>
</ul>
</div>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</main>
</div>
</div>
</article>
<script src="js/script.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Mobile Buy SDK Reference</title>
<link rel="stylesheet" href="css/style.css">
<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
<meta name="generator" content="appledoc 2.2.1 (build 1333)">
</head>
<body class="appledoc">
<header>
<div class="container">
<h1 id="library-title">
<a href="https://www.shopify.com/app-developers/mobile-buy-sdk">Mobile Buy SDK </a>
</h1>
<p id="developer-home">
<a href="https://www.shopify.com">Shopify</a>
</p>
</div>
</header>
<aside>
<div class="container">
<nav>
<ul id="header-buttons" role="toolbar">
<li><a href="hierarchy.html">Hierarchy</a></li>
</ul>
</nav>
</div>
</aside>
<article>
<div id="overview-contents" class="container">
<div id="content">
<main role="main">
<h1 class="title">Mobile Buy SDK Reference</h1>
<div class="section section-overview index-overview">
<p>Shopify Mobile Buy SDK for iOS enables merchants to easily sell products in iOS apps and allow their customers to checkout using Shopify Checkout or Apple Pay.</p>
<p>This is the API documentation for the Mobile Buy framework. For an overview of framework and a more general guide to using and extending the framework, see the <a href="https://docs.shopify.com/api/mobile-buy-sdk/ios/integration-guide">Mobile Buy SDK Integration Guide</a>.</p>
</div>
<div class="index-container">
<div class="index-column">
<h2 class="index-title">Class References</h2>
<ul>
<li><a href="Classes/BUYAddress.html">BUYAddress</a></li>
<li><a href="Classes/BUYApplePayHelpers.html">BUYApplePayHelpers</a></li>
<li><a href="Classes/BUYCart.html">BUYCart</a></li>
<li><a href="Classes/BUYCartLineItem.html">BUYCartLineItem</a></li>
<li><a href="Classes/BUYCheckout.html">BUYCheckout</a></li>
<li><a href="Classes/BUYClient.html">BUYClient</a></li>
<li><a href="Classes/BUYCollection.html">BUYCollection</a></li>
<li><a href="Classes/BUYCreditCard.html">BUYCreditCard</a></li>
<li><a href="Classes/BUYDiscount.html">BUYDiscount</a></li>
<li><a href="Classes/BUYError.html">BUYError</a></li>
<li><a href="Classes/BUYGiftCard.html">BUYGiftCard</a></li>
<li><a href="Classes/BUYImage.html">BUYImage</a></li>
<li><a href="Classes/BUYLineItem.html">BUYLineItem</a></li>
<li><a href="Classes/BUYMaskedCreditCard.html">BUYMaskedCreditCard</a></li>
<li><a href="Classes/BUYObject.html">BUYObject</a></li>
<li><a href="Classes/BUYOption.html">BUYOption</a></li>
<li><a href="Classes/BUYOptionValue.html">BUYOptionValue</a></li>
<li><a href="Classes/BUYOrder.html">BUYOrder</a></li>
<li><a href="Classes/BUYProduct.html">BUYProduct</a></li>
<li><a href="Classes/BUYProductVariant.html">BUYProductVariant</a></li>
<li><a href="Classes/BUYProductViewController.html">BUYProductViewController</a></li>
<li><a href="Classes/BUYShippingRate.html">BUYShippingRate</a></li>
<li><a href="Classes/BUYShop.html">BUYShop</a></li>
<li><a href="Classes/BUYStoreViewController.html">BUYStoreViewController</a></li>
<li><a href="Classes/BUYTaxLine.html">BUYTaxLine</a></li>
<li><a href="Classes/BUYTheme.html">BUYTheme</a></li>
<li><a href="Classes/BUYViewController.html">BUYViewController</a></li>
</ul>
</div>
<div class="index-column">
<h2 class="index-title">Protocol References</h2>
<ul>
<li><a href="Protocols/BUYStoreViewControllerDelegate.html">BUYStoreViewControllerDelegate</a></li>
<li><a href="Protocols/BUYThemeable.html">BUYThemeable</a></li>
<li><a href="Protocols/BUYViewControllerDelegate.html">BUYViewControllerDelegate</a></li>
</ul>
<h2 class="index-title">Constant References</h2>
<ul>
<li><a href="Constants/BUYCheckoutError.html">BUYCheckoutError</a></li>
<li><a href="Constants/BUYCheckoutType.html">BUYCheckoutType</a></li>
<li><a href="Constants/BUYCollectionSort.html">BUYCollectionSort</a></li>
<li><a href="Constants/BUYPaymentButtonStyle.html">BUYPaymentButtonStyle</a></li>
<li><a href="Constants/BUYPaymentButtonType.html">BUYPaymentButtonType</a></li>
<li><a href="Constants/BUYStatus.html">BUYStatus</a></li>
<li><a href="Constants/BUYThemeStyle.html">BUYThemeStyle</a></li>
</ul>
</div>
</div>
<footer>
<div class="footer-copyright">
<p class="copyright">Copyright &copy; 2015 Shopify. All rights reserved. Updated: 2015-11-24</p>
<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1333)</a>.</p>
</div>
</footer>
</main>
</div>
</div>
</article>
<script src="js/script.js"></script>
</body>
</html>
\ No newline at end of file
function $() {
return document.querySelector.apply(document, arguments);
}
if (navigator.userAgent.indexOf("Xcode") != -1) {
document.documentElement.classList.add("xcode");
}
var jumpTo = $("#jump-to");
if (jumpTo) {
jumpTo.addEventListener("change", function(e) {
location.hash = this.options[this.selectedIndex].value;
});
}
function hashChanged() {
if (/^#\/\/api\//.test(location.hash)) {
var element = document.querySelector("a[name='" + location.hash.substring(1) + "']");
if (!element) {
return;
}
element = element.parentNode;
element.classList.remove("hide");
fixScrollPosition(element);
}
}
function fixScrollPosition(element) {
var scrollTop = element.offsetTop - 150;
document.documentElement.scrollTop = scrollTop;
document.body.scrollTop = scrollTop;
}
[].forEach.call(document.querySelectorAll(".section-method"), function(element) {
element.classList.add("hide");
element.querySelector(".method-title a").addEventListener("click", function(e) {
var info = element.querySelector(".method-info"),
infoContainer = element.querySelector(".method-info-container");
element.classList.add("animating");
info.style.height = (infoContainer.clientHeight + 40) + "px";
fixScrollPosition(element);
element.classList.toggle("hide");
if (element.classList.contains("hide")) {
e.preventDefault();
}
setTimeout(function() {
element.classList.remove("animating");
}, 300);
});
});
window.addEventListener("hashchange", hashChanged);
hashChanged();
...@@ -16,7 +16,9 @@ Official documentation can be found on the [Mobile Buy SDK for iOS page](https:/ ...@@ -16,7 +16,9 @@ Official documentation can be found on the [Mobile Buy SDK for iOS page](https:/
#### API Documentation #### API Documentation
API docs can be generated with the `Documentation` scheme or viewed on Cocoadocs: [http://cocoadocs.org/docsets/Mobile-Buy-SDK/](http://cocoadocs.org/docsets/Mobile-Buy-SDK/). API docs (`.docset`) can be generated with the `Documentation` scheme or viewed online at Cocoadocs: [http://cocoadocs.org/docsets/Mobile-Buy-SDK/](http://cocoadocs.org/docsets/Mobile-Buy-SDK/).
The SDK includes a pre-compiled [.docset](https://github.com/Shopify/mobile-buy-sdk-ios/tree/master/Mobile Buy SDK/docs/com.shopify.Mobile-Buy-SDK.docset) that can be used in API documentation browser apps such as Dash.
### Installation ### Installation
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment