I am developing a Cordova plugin for PayPal Here which was working fine with SDK 1.6.x in early June. I since returned to this project and found that a crash occurs in PPHBondReaderDelegate on a device using IOS 10.3.3.
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[2]' *** First throw call stack: (0x1eb37b3d 0x1ddbf067 0x1ea4f485 0x1ea4f2ef 0xd7971 0xd6bc3 0xd66f3 0xb9e91 0x5a0467 0x5a0453 0x5a4d47 0x1eaf3d69 0x1eaf1e19 0x1ea451af 0x1ea44fd1 0x201efb41 0x23dc7a53 0x4ce9b 0x1e2324eb) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb)
This happens after the handset state changes to “Ready to accept payments”. I have tried different versions of the SDK up to 1.6.11. The plugin initially connects to the reader and I receive metadata i.e. handset friendly name which updates the UI as expected. I have factory reset the handset and have tried it out on the official PayPal Here app and it works fine.
We've moved onto supporting native apps only (iOS, Android, SideLoader )with our new V2 SDK. Unfortunately, PhoneGap & Cordova Apps don't have the same user experience as these native platforms.
I am developing a Cordova plugin for PayPal Here which was working fine with SDK 1.6.x in early June. I since returned to this project and found that a crash occurs in PPHBondReaderDelegate on a device using IOS 10.3.3.
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[2]' *** First throw call stack: (0x1eb37b3d 0x1ddbf067 0x1ea4f485 0x1ea4f2ef 0xd7971 0xd6bc3 0xd66f3 0xb9e91 0x5a0467 0x5a0453 0x5a4d47 0x1eaf3d69 0x1eaf1e19 0x1ea451af 0x1ea44fd1 0x201efb41 0x23dc7a53 0x4ce9b 0x1e2324eb) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb)
This happens after the handset state changes to “Ready to accept payments”. I have tried different versions of the SDK up to 1.6.11. The plugin initially connects to the reader and I receive metadata i.e. handset friendly name which updates the UI as expected. I have factory reset the handset and have tried it out on the official PayPal Here app and it works fine.
It seems similar to this issue:
[https://github.com/paypal/paypal-here-sdk-ios-distribution/issues/22]
I have also tested the TakePayment demo app which throws the same error:
`6:54:39.849823+0100 TakePayment[287:14766] 15:54:36.0855 Main thread | PayPalHere: Clearing payment data 2018-07-24 16:54:39.850185+0100 TakePayment[287:14766] 15:54:36.0855 Main thread | PayPalHere: setState: 1 2018-07-24 16:54:39.851097+0100 TakePayment[287:14766] 15:54:36.0855 Main thread | PayPalHere: setState: !_ignoreHardwareReaders 2018-07-24 16:54:39.851877+0100 TakePayment[287:14766] 15:54:36.0855 Main thread | PayPalHere: Watching current invoice. 2018-07-24 16:54:39.852055+0100 TakePayment[287:14766] 15:54:36.0857 Main thread | PayPalHere: Credit card flow payment method updated: 0 2018-07-24 16:54:39.852150+0100 TakePayment[287:14766] 15:54:36.0857 Main thread | PayPalHere: SDK Flow Controller beginning flow 2018-07-24 16:54:39.852241+0100 TakePayment[287:14766] 15:54:36.0947 Main thread | PayPalHere: Flow step became active: PPHSDKWaitForCardFlowStep 2018-07-24 16:54:39.852329+0100 TakePayment[287:14766] 15:54:36.0947 Main thread | PayPalHere: EMVSDK Payment Flow: PPHSDKWaitForCardFlowStep&Unique Trace Key: 8CE623D9-650C-4E1D-B8ED-B01F8891DF01-287-0000001054AF2671&Flow Action:Step Became Active 2018-07-24 16:54:39.852418+0100 TakePayment[287:14766] 15:54:36.0947 Main thread | PayPalHere: setInteger 460221 forKey pp.msgIndex 2018-07-24 16:54:39.852506+0100 TakePayment[287:14766] 15:54:36.0948 Main thread | PayPalHere: [EMV] Waiting for card 2018-07-24 16:54:39.857747+0100 TakePayment[287:14766] 15:54:36.0948 Main thread | PayPalHere: Flow Type&Unique Trace Key: 8CE623D9-650C-4E1D-B8ED-B01F8891DF01-287-0000001054AF2671&Flow Type:Payment 2018-07-24 16:54:39.857875+0100 TakePayment[287:14766] 15:54:36.0948 Main thread | PayPalHere: setInteger 460222 forKey pp.msgIndex 2018-07-24 16:54:41.904254+0100 TakePayment[287:14766] 15:54:39.0891 Main thread | PayPalHere: --- _OBSCURO_EMFJSONRequest (POST https://www.paypal.com/webapps/hereapi/merchant/v1/cal)
Headers: { "Accept-Encoding" = "gzip,deflate"; Authorization = "Bearer A23AAFy0zyhudtXPiHJfec9Fuz9yPlncw3aw3PFoAhbchsgCHkTshgCL2ntBr5mc2yJKtfpgZxG2haPsahyO132JEKz2Uwb-A"; "Content-Length" = 996; "Content-Type" = "application/json; charset=UTF-8"; "X-PAYPAL-REQUEST-SOURCE" = "MPA-DEVICE_iOS_iPad3,4_10.3.3_SDK_1.6.8_edfefqwef_1.0_L0"; }
Data: {"events":[{"status":"0","type":"BIZ","name":"ClientInfo.CLIENT","data":"sessionId=0DED48E2-513F-4623-920C-E982CFC57496&msgId=3.460218.1×tamp=2018-07-24 15:54:28:785 +0000&actionId=ClientInfo&level=INFO&result=0&deviceType=iPad&osVersion=10.3.3&sdkVersion=1.6.8&appVersion=1.0&appName=edfefqwef&merchantName=Xactaware Limited&country=GB"},{"status":"0","type":"BIZ","name":"ClientInfo.CLIENT","data":"sessionId=0DED48E2-513F-4623-920C-E982CFC57496&msgId=3.460220.3×tamp=2018-07-24 15:54:36:129 +0000&actionId=ClientInfo&level=INFO&result=0&deviceType=iPad&osVersion=10.3.3&sdkVersion=1.6.8&appVersion=1.0&appName=edfefqwef&merchantName=Xactaware Limited&country=GB"},{"status":"0","type":"BIZ","name":"Message.CLIENT","data":"sessionId=0DED48E2-513F-4623-920C-E982CFC57496&msgId=3.460219.2×tamp=2018-07-24 15:54:36:128 +0000&actionId=Message&level=INFO&result=0&details=PayPalHere%3A%20Flow%20Type%26%26Flow%20Action%3ADeActivate%20reader%20for%20payments%20invoked.&country=GB"}]} 2018-07-24 16:54:41.910788+0100 TakePayment[287:14766] 15:54:39.0893 Main thread | PayPalHere: -[PPHCardReaderManager activateReader:] entry 2018-07-24 16:54:41.910930+0100 TakePayment[287:14766] 15:54:39.0893 Main thread | PayPalHere: CardReaderManager::activateReader 2018-07-24 16:54:41.911671+0100 TakePayment[287:14766] 15:54:39.0893 Main thread | PayPalHere: Bluetooth Reader connection status changed from "Available" to "Connecting" 2018-07-24 16:54:41.912726+0100 TakePayment[287:14766] 15:54:39.0893 Main thread | PayPalHere: TXMgr: did detect reader 2018-07-24 16:54:41.912862+0100 TakePayment[287:14766] 15:54:41.0903 Main thread | PayPalHere: BondAccessory 0x146c79a0 Connect 2018-07-24 16:54:41.912955+0100 TakePayment[287:14766] 15:54:41.0903 Main thread | PayPalHere: EAAccessory protocols: ( "com.paypal.here.reader" ) 2018-07-24 16:54:41.913043+0100 TakePayment[287:14766] 15:54:41.0904 Main thread | PayPalHere: EAAccessory Device Model: M010 2018-07-24 16:54:41.913132+0100 TakePayment[287:14766] 15:54:41.0904 Main thread | PayPalHere: About to instantiate a EAAccessory delegate connection.. 2018-07-24 16:54:46.548990+0100 TakePayment[287:14766] 15:54:41.0912 Main thread | PayPalHere: -[PPHCardReaderWatcher activeReaderChanged:] entry 2018-07-24 16:54:46.550251+0100 TakePayment[287:14766] 15:54:46.0548 Main thread | PayPalHere: -[PPHCardReaderWatcher activeReaderChanged:] entry 2018-07-24 16:54:46.550871+0100 TakePayment[287:14766] 15:54:46.0550 Main thread | PayPalHere: -[PPHCardReaderWatcher activeReaderChanged:] entry 2018-07-24 16:54:46.551359+0100 TakePayment[287:14766] 15:54:46.0550 Main thread | PayPalHere: -[PPHCardReaderWatcher activeReaderChanged:] entry 2018-07-24 16:54:48.373772+0100 TakePayment[287:14766] 15:54:46.0552 Main thread | PayPalHere: EAAccessory connected 2018-07-24 16:54:48.373916+0100 TakePayment[287:14766] 15:54:46.0552 Main thread | PayPalHere: EAAccessory connected 2018-07-24 16:54:48.374011+0100 TakePayment[287:14766] 15:54:46.0553 Main thread | PayPalHere: < EMV Terminal Message: 01401AE616C30101C41144657669636520706F7765726564206F6E90006A 2018-07-24 16:54:48.374100+0100 TakePayment[287:14766] 15:54:46.0554 Main thread | PayPalHere: Terminal Message TAG: E6 2018-07-24 16:54:48.374188+0100 TakePayment[287:14766] 15:54:46.0554 Main thread | PayPalHere: > EMV Terminal Message 010004D0610100B5 (OK) 2018-07-24 16:54:48.374277+0100 TakePayment[287:14766] 15:54:46.0554 Main thread | PayPalHere: > EMV Terminal Message 010004D0600D00B8 (FAIL) 2018-07-24 16:54:48.374368+0100 TakePayment[287:14766] 15:54:48.0368 Main thread | PayPalHere: < EMV Terminal Message: 010002900093 2018-07-24 16:54:48.374459+0100 TakePayment[287:14766] 15:54:48.0368 Main thread | PayPalHere: < EMV Terminal Message: 014008E10448020000900076 2018-07-24 16:54:48.379324+0100 TakePayment[287:14766] 15:54:48.0368 Main thread | PayPalHere: Terminal Message TAG: E1 2018-07-24 16:54:48.379525+0100 TakePayment[287:14766] 15:54:48.0369 Main thread | PayPalHere: > EMV Terminal Message 010004D0610000B4 (OK) 2018-07-24 16:54:48.379623+0100 TakePayment[287:14766] 15:54:48.0369 Main thread | PayPalHere: > EMV Terminal Message 010004D0600000B5 (FAIL) 2018-07-24 16:54:48.379713+0100 TakePayment[287:14766] 15:54:48.0369 Main thread | PayPalHere: Bluetooth Reader connection status changed from "Connecting" to "Connecting" 2018-07-24 16:54:48.379801+0100 TakePayment[287:14766] 15:54:48.0369 Main thread | PayPalHere: Checking terminal's P2PE Status.... 2018-07-24 16:54:48.380279+0100 TakePayment[287:14766] 15:54:48.0370 Main thread | PayPalHere: > EMV Terminal Message 010004EEE000000B (FAIL) 2018-07-24 16:54:58.952441+0100 TakePayment[287:14766] 15:54:48.0378 <NSThread: 0x146de890>{number = 6, name = (null)} | PayPalHere: --- _OBSCURO_EMFJSONResponse https://www.paypal.com/webapps/hereapi/merchant/v1/cal
Headers: { "Server" : "Apache", "Vary" : "Accept-Encoding", "Cache-Control" : "max-age=0, no-cache, no-store, must-revalidate", "Strict-Transport-Security" : "max-age=63072000", "Connection" : "keep-alive", "Content-Length" : "0", "X-EdgeConnect-MidMile-RTT" : "173", "Pragma" : "no-cache", "Date" : "Tue, 24 Jul 2018 15:54:47 GMT", "Set-Cookie" : "X-PP-SILOVER=name%3DLIVE5.WEB.1%26silo_version%3D880%26app%3Dplatformapi_sdkcal_web%26TIME%3D3343603547%26HTTP_X_PP_AZ_LOCATOR%3D; Expires=Tue, 24 Jul 2018 16:24:47 GMT; domain=.paypal.com; path=\/; Secure; HttpOnly, X-PP-SILOVER=; Expires=Thu, 01 Jan 1970 00:00:01 GMT, akavpau_ppsd=1532448287~id=fe12714a79d2d0587182350948d6fabb; Domain=www.paypal.com; Path=\/; Secure; HttpOnly", "Content-Type" : "text\/html", "DC" : "ccg11-origin-www-1.paypal.com", "Paypal-Debug-Id" : "8b95b2db59237, 8b95b2db59237", "X-EdgeConnect-Origin-MEX-Latency" : "56" }
Error: (null)
Data: 2018-07-24 16:54:58.954850+0100 TakePayment[287:14766] 15:54:48.0387 Main thread | PayPalHere: < EMV Terminal Message: 010002900093 2018-07-24 16:54:58.954994+0100 TakePayment[287:14766] 15:54:48.0395 Main thread | PayPalHere: < EMV Terminal Message: 014008E10448020000900076 2018-07-24 16:54:58.955275+0100 TakePayment[287:14766] 15:54:48.0395 Main thread | PayPalHere: Terminal Message TAG: E1 2018-07-24 16:54:58.955381+0100 TakePayment[287:14766] 15:54:48.0404 Main thread | PayPalHere: < EMV Terminal Message: 010009E105DFAE01010690000B 2018-07-24 16:54:58.955543+0100 TakePayment[287:14766] 15:54:48.0405 Main thread | PayPalHere: Terminal Message TAG: E1 2018-07-24 16:54:58.955722+0100 TakePayment[287:14766] 15:54:48.0405 Main thread | PayPalHere: Bond P2PE status received: 4 2018-07-24 16:54:58.956003+0100 TakePayment[287:14766] 15:54:48.0405 Main thread | PayPalHere: Checking terminal's config..... 2018-07-24 16:54:58.956163+0100 TakePayment[287:14766] 15:54:48.0406 Main thread | PayPalHere: > EMV Terminal Message 010004D0010000D4 (OK) 2018-07-24 16:54:58.956259+0100 TakePayment[287:14766] 15:54:48.0483 Main thread | PayPalHere: < EMV Terminal Message: 0101FEE1820345ED15DF0D0B41525143444F4C2E434647DF7F04312E3236ED14DF0D0A414143444F4C2E434647DF7F04312E3134ED10DF0D07656D762E636667DF7F03342E39ED18DF0D0F636F6E746163746C6573732E636667DF7F03362E31ED1ADF0D0B50325045444F4C2E434647DF7F094D697572612D312D32ED20DF0D10656D762D66616C6C6261636B2E636667DF7F0A4D697572612D56312D30ED19DF0D094F50444F4C2E434647DF7F0A4D697572612D56312D30ED13DF0D095443444F4C2E434647DF7F04312E3135ED12DF0D0854444F4C2E434647DF7F04312E3132ED1BDF0D0A54524D444F4C2E434647DF7F0B4D697572612D56312D3031ED1D6D 2018-07-24 16:54:58.956356+0100 TakePayment[287:14766] 15:54:48.0483 Main thread | PayPalHere: EMV chained message - first packet 2018-07-24 16:54:58.956787+0100 TakePayment[287:14766] 15:54:48.0496 Main thread | PayPalHere: < EMV Terminal Message: 0101FEDF0D0B6361706B6579732E636667DF7F0C454D564341504B2D56312D39ED1BDF0D117469702D74656D706C617465732E636667DF7F04312E3030ED12DF0D0931327833322E626466DF7F03312E34ED11DF0D08367831322E626466DF7F03312E30ED14DF0D0B6C63642D7374642E626466DF7F03312E39ED1BDF0D0B70726F6D7074732E747874DF7F0A4D697572612D312D3136ED21DF0D11656D762D70696E6279706173732E636667DF7F0A4D697572612D56312D30ED1EDF0D146163632D646174612D70726F6D7074732E747874DF7F04312E3033ED27DF0D1E53617A616E616D692D4D696E63686F2D526567756C61722D31302E626466DF7F0331C9 2018-07-24 16:54:58.957004+0100 TakePayment[287:14766] 15:54:48.0496 Main thread | PayPalHere: EMV chained message 2018-07-24 16:54:58.957100+0100 TakePayment[287:14766] 15:54:48.0508 Main thread | PayPalHere: < EMV Terminal Message: 0101FE2E30ED27DF0D1E53617A616E616D692D4D696E63686F2D526567756C61722D32302E626466DF7F03312E30ED11DF0D08397831382E626466DF7F03312E30ED15DF0D0C737265642D6D61672E636667DF7F03302E31ED27DF0D17656D762D646174612D76616C69646174696F6E2E636667DF7F0A4D697572612D56312D32ED12DF0D0931347832382E626466DF7F03312E32ED1BDF0D0B656D762D6172632E636667DF7F0A4D697572612D56312D34ED21DF0D116E756D657269632D656E7472792E636667DF7F0A4D697572612D56312D30ED22DF0D1063746C732D70726F6D7074732E747874DF7F0C50617970616C2D56312D3037ED22DF0D0F4D5049DA 2018-07-24 16:54:58.957507+0100 TakePayment[287:14766] 15:54:48.0508 Main thread | PayPalHere: EMV chained message 2018-07-24 16:54:58.957996+0100 TakePayment[287:14766] 15:54:48.0546 Main thread | PayPalHere: < EMV Terminal Message: 0100512D44796E616D69632E636667DF7F0D50617950616C2D562D312D3034ED14DF0D0B6269746D6170732E636667DF7F03322E33ED1BDF0D124D50492D50726F64756374696F6E2E636667DF7F03352E33900039 2018-07-24 16:54:58.958225+0100 TakePayment[287:14766] 15:54:48.0546 Main thread | PayPalHere: EMV chained message - Last packet. 2018-07-24 16:54:58.958319+0100 TakePayment[287:14766] 15:54:48.0546 Main thread | PayPalHere: Multiple Len Bytes 2018-07-24 16:54:58.958826+0100 TakePayment[287:14766] 15:54:48.0546 Main thread | PayPalHere: Total Len Bytes: 2 2018-07-24 16:54:58.958932+0100 TakePayment[287:14766] 15:54:48.0551 Main thread | PayPalHere: Terminal Message TAG: E1 2018-07-24 16:54:58.959036+0100 TakePayment[287:14766] 15:54:48.0557 Main thread | PayPalHere: ARQCDOL.CFG - 1.26 2018-07-24 16:54:58.960152+0100 TakePayment[287:14766] 15:54:48.0557 Main thread | PayPalHere: AACDOL.CFG - 1.14 2018-07-24 16:54:58.960569+0100 TakePayment[287:14766] 15:54:48.0557 Main thread | PayPalHere: emv.cfg - 4.9 2018-07-24 16:54:58.960792+0100 TakePayment[287:14766] 15:54:48.0557 Main thread | PayPalHere: contactless.cfg - 6.1 2018-07-24 16:54:58.960904+0100 TakePayment[287:14766] 15:54:48.0557 Main thread | PayPalHere: P2PEDOL.CFG - Miura-1-2 2018-07-24 16:54:58.961073+0100 TakePayment[287:14766] 15:54:48.0557 Main thread | PayPalHere: emv-fallback.cfg - Miura-V1-0 2018-07-24 16:54:58.961491+0100 TakePayment[287:14766] 15:54:48.0557 Main thread | PayPalHere: OPDOL.CFG - Miura-V1-0 2018-07-24 16:54:58.961598+0100 TakePayment[287:14766] 15:54:48.0557 Main thread | PayPalHere: TCDOL.CFG - 1.15 2018-07-24 16:54:58.961699+0100 TakePayment[287:14766] 15:54:48.0557 Main thread | PayPalHere: TDOL.CFG - 1.12 2018-07-24 16:54:58.962114+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: TRMDOL.CFG - Miura-V1-01 2018-07-24 16:54:58.962228+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: capkeys.cfg - EMVCAPK-V1-9 2018-07-24 16:54:58.962333+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: tip-templates.cfg - 1.00 2018-07-24 16:54:58.962563+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: 12x32.bdf - 1.4 2018-07-24 16:54:58.962747+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: 6x12.bdf - 1.0 2018-07-24 16:54:58.963140+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: lcd-std.bdf - 1.9 2018-07-24 16:54:58.963279+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: prompts.txt - Miura-1-16 2018-07-24 16:54:58.963447+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: emv-pinbypass.cfg - Miura-V1-0 2018-07-24 16:54:58.963679+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: acc-data-prompts.txt - 1.03 2018-07-24 16:54:58.964866+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: Sazanami-Mincho-Regular-10.bdf - 1.0 2018-07-24 16:54:58.965057+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: Sazanami-Mincho-Regular-20.bdf - 1.0 2018-07-24 16:54:58.965159+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: 9x18.bdf - 1.0 2018-07-24 16:54:58.966862+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: sred-mag.cfg - 0.1 2018-07-24 16:54:58.967114+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: emv-data-validation.cfg - Miura-V1-2 2018-07-24 16:54:58.967300+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: 14x28.bdf - 1.2 2018-07-24 16:54:58.967405+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: emv-arc.cfg - Miura-V1-4 2018-07-24 16:54:58.967627+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: numeric-entry.cfg - Miura-V1-0 2018-07-24 16:54:58.968441+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: ctls-prompts.txt - Paypal-V1-07 2018-07-24 16:54:58.968701+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: MPI-Dynamic.cfg - PayPal-V-1-04 2018-07-24 16:54:58.968872+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: bitmaps.cfg - 2.3 2018-07-24 16:54:58.969191+0100 TakePayment[287:14766] 15:54:48.0558 Main thread | PayPalHere: MPI-Production.cfg - 5.3 2018-07-24 16:54:58.969757+0100 TakePayment[287:14766] 15:54:48.0559 Main thread | PayPalHere: > EMV Terminal Message 010004D0620000B7 (OK) 2018-07-24 16:54:58.969932+0100 TakePayment[287:14766] 15:54:48.0605 Main thread | PayPalHere: < EMV Terminal Message: 01000EE10ADFA2090101DFA20A0164900012 2018-07-24 16:54:58.970036+0100 TakePayment[287:14766] 15:54:48.0606 Main thread | PayPalHere: Terminal Message TAG: E1 2018-07-24 16:54:58.970972+0100 TakePayment[287:14766] 15:54:48.0607 Main thread | PayPalHere: > EMV Terminal Message 010004D0000000D5 (OK) 2018-07-24 16:54:58.971145+0100 TakePayment[287:14766] 15:54:48.0607 Main thread | PayPalHere: -[PPHCardReaderWatcher readerMetadata:] entry 2018-07-24 16:54:58.971286+0100 TakePayment[287:14766] 15:54:58.0943 Main thread | PayPalHere: -[PPHCardReaderWatcher readerMetadata:] entry 2018-07-24 16:54:58.971523+0100 TakePayment[287:14766] 15:54:58.0944 Main thread | PayPalHere: -[PPHCardReaderWatcher readerMetadata:] entry 2018-07-24 16:54:58.971636+0100 TakePayment[287:14766] 15:54:58.0945 Main thread | PayPalHere: -[PPHCardReaderWatcher readerMetadata:] entry 2018-07-24 16:54:58.971820+0100 TakePayment[287:14766] 15:54:58.0947 Main thread | PayPalHere: < EMV Terminal Message: 010035E1319F1E083130373137373131EF12DF0D084D3030302D4D5049DF7F04312D3435EF10DF0D074D3030302D4F53DF7F03372D37900088 2018-07-24 16:54:58.972102+0100 TakePayment[287:14766] 15:54:58.0947 Main thread | PayPalHere: Terminal Message TAG: E1 2018-07-24 16:54:58.973809+0100 TakePayment[287:14766] 15:54:58.0948 Main thread | PayPalHere: > EMV Terminal Message 010004D0020000D7 (OK) 2018-07-24 16:55:09.524022+0100 TakePayment[287:14715] Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: ' -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[2]' *** First throw call stack: (0x1eb37b3d 0x1ddbf067 0x1ea4f485 0x1ea4f2ef 0xd7971 0xd6bc3 0xd66f3 0xb9e91 0x5a0467 0x5a0453 0x5a4d47 0x1eaf3d69 0x1eaf1e19 0x1ea451af 0x1ea44fd1 0x201efb41 0x23dc7a53 0x4ce9b 0x1e2324eb) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb) `
The TakePayment and my app still works fine on IOS 11.4 device. Let me know if you need more info to debug this error.