     
     func testReturnsTokenWhenCalledWithValidParams() {
         let asyncExpectation = expectation(description: "requestToken")
-
-        let publicMerchantId = "10000001436354684173102102"
-        let totalAmount = 10.0
         let card = Card(name: "John Doe", number: "4242424242424242", cvv: "123", expiryMonth: "12", expiryYear: "21")
         let encryptedMessage = Helpers.randomAlphanumeric(64)
         let expectedToken = Helpers.randomAlphanumeric(32)
-        let expectedRequestMessage = buildRequestMessage(withMerchantId: publicMerchantId, withCard: card, withAmount: totalAmount)
+        let expectedRequestMessage = buildRequestMessage(withMerchantId: publicMerchantId!, withCard: card, withAmount: totalAmount!)
         let aurusEncryption = AurusEncryptionStub(whenEncryptCalledWith: expectedRequestMessage, thenReturn: encryptedMessage)
         let expectedRequestBody = "{\"request\": \"" + encryptedMessage + "\"}"
-        let kushki = Kushki(publicMerchantId: publicMerchantId,
+        let kushki = Kushki(publicMerchantId: publicMerchantId!,
                             currency: "USD",
                             environment: KushkiEnvironment.testing,
                             aurusEncryption: aurusEncryption)

                return OHHTTPStubsResponse(jsonObject: responseBody, statusCode: 200, headers: nil)
        }
        var transaction = Transaction(code: "", text: "", token: "")
        kushki.requestToken(card: card, totalAmount: totalAmount) { returnedTransaction in
            transaction = returnedTransaction
            asyncExpectation.fulfill()
        }

@testable import kushki_ios

class KushkiTests: XCTestCase {

    var publicMerchantId: String?
    var totalAmount: Double?

    override func setUp() {
        super.setUp()
        publicMerchantId = "10000001436354684173102102"
        totalAmount = 10.0
    }
    
    override func tearDown() {
