From 3057359ef8ed2de34f25319591082b104efc872b Mon Sep 17 00:00:00 2001 From: Ben Guo Date: Thu, 30 Mar 2017 13:58:01 -0700 Subject: [PATCH] make sepa line1 optional --- Stripe/PublicHeaders/STPSourceParams.h | 4 ++-- Stripe/STPSourceParams.m | 15 ++++++--------- Tests/Tests/STPSourceFunctionalTest.m | 1 + 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/Stripe/PublicHeaders/STPSourceParams.h b/Stripe/PublicHeaders/STPSourceParams.h index c869481c90..24236314dd 100644 --- a/Stripe/PublicHeaders/STPSourceParams.h +++ b/Stripe/PublicHeaders/STPSourceParams.h @@ -156,7 +156,7 @@ NS_ASSUME_NONNULL_BEGIN * * @param name The full name of the account holder. * @param iban The IBAN number for the bank account you wish to debit. - * @param addressLine1 The bank account holder's first address line. + * @param addressLine1 The bank account holder's first address line (optional). * @param city The bank account holder's city. * @param postalCode The bank account holder's postal code. * @param country The bank account holder's two-letter country code. @@ -165,7 +165,7 @@ NS_ASSUME_NONNULL_BEGIN */ + (STPSourceParams *)sepaDebitParamsWithName:(NSString *)name iban:(NSString *)iban - addressLine1:(NSString *)addressLine1 + addressLine1:(nullable NSString *)addressLine1 city:(NSString *)city postalCode:(NSString *)postalCode country:(NSString *)country; diff --git a/Stripe/STPSourceParams.m b/Stripe/STPSourceParams.m index edf5522b5c..be3d785420 100644 --- a/Stripe/STPSourceParams.m +++ b/Stripe/STPSourceParams.m @@ -150,17 +150,14 @@ params.type = STPSourceTypeSEPADebit; params.currency = @"eur"; // SEPA Debit must always use eur - NSDictionary *address = - @{ - @"line1": addressLine1, - @"city": city, - @"postal_code": postalCode, - @"country": country - }; - + NSMutableDictionary *address = [NSMutableDictionary new]; + address[@"city"] = city; + address[@"postal_code"] = postalCode, + address[@"country"] = country; + address[@"line1"] = addressLine1; params.owner = @{ @"name": name, - @"address": address + @"address": [address copy] }; params.additionalAPIParameters = @{ @"sepa_debit": @{ diff --git a/Tests/Tests/STPSourceFunctionalTest.m b/Tests/Tests/STPSourceFunctionalTest.m index 523a5295b9..e79de432da 100644 --- a/Tests/Tests/STPSourceFunctionalTest.m +++ b/Tests/Tests/STPSourceFunctionalTest.m @@ -184,6 +184,7 @@ static NSString *const apiKey = @"pk_test_vOo1umqsYxSrP5UXfOeL3ecm"; XCTAssertEqualObjects(source.currency, params.currency); XCTAssertEqualObjects(source.owner.name, params.owner[@"name"]); XCTAssertEqualObjects(source.owner.address.city, @"Berlin"); + XCTAssertEqualObjects(source.owner.address.line1, @"Nollendorfstraße 27"); XCTAssertEqualObjects(source.sepaDebitDetails.country, @"DE"); XCTAssertEqualObjects(source.sepaDebitDetails.last4, @"3000"); XCTAssertEqualObjects(source.metadata, params.metadata);