{"_id":"@skyscanner/react-native-awesome-card-io","_rev":"35-4a3cef74b1d1fb4f025a0d2257555f62","name":"@skyscanner/react-native-awesome-card-io","dist-tags":{"latest":"0.7.4-skyscanner"},"versions":{"0.7.1-skyscanner":{"name":"@skyscanner/react-native-awesome-card-io","version":"0.7.1-skyscanner","keywords":["react-native","react-component","card.io","credit card","scan","android","ios"],"author":{"name":"Yann Pringault","email":"yann.pringault@gmail.com"},"license":"MIT","_id":"@skyscanner/react-native-awesome-card-io@0.7.1-skyscanner","maintainers":[{"name":"jiri.mikulka","email":"jiri.mikulka@skyscanner.net"},{"name":"geekykaran","email":"karanjthakkar@gmail.com"},{"name":"tiagohngl","email":"tiagohngl@gmail.com"},{"name":"amolgupta","email":"amolgupta1989@gmail.com"},{"name":"mattface","email":"matthew.davidson@skyscanner.net"},{"name":"k0nserv","email":"h@tunius.se"},{"name":"georgegillams","email":"g@georgegillams.co.uk"},{"name":"shaundon","email":"shaundonnelly@gmail.com"},{"name":"mhdev","email":"info@matteohertel.com"}],"homepage":"https://github.com/Skyscanner/react-native-awesome-card-io#readme","bugs":{"url":"https://github.com/Skyscanner/react-native-awesome-card-io/issues"},"dist":{"shasum":"b90643fa7661b45573a2a154c52438fff692d872","tarball":"https://registry.npmjs.org/@skyscanner/react-native-awesome-card-io/-/react-native-awesome-card-io-0.7.1-skyscanner.tgz","fileCount":42,"integrity":"sha512-z6DizYk/RF1LcaSDAzbaEwi8B8vd/AZA28L9NXd9Rhn/9qcBnvZ7GWy4SPlz/ttWf2BfpslMn/9vPEHTpp3ODA==","signatures":[{"sig":"MEUCIG6e2EvFnG/2KsY9fOu8H/RpYwKZsRWn7sVoaPRQ9B1wAiEAnjFcAh1gnhB7WPNrbNsomMkqCIF72DG+9QtntPZvuEA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":292716332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcUc+9CRA9TVsSAnZWagAAibUP/3i/etXmVt9gXRpjWsaS\nu8F3uEkw7/xkJe8XIdOyh/WsK8Pd7RyU47jZPqkOfDYQMZ6n+4gDVk7qFu0t\ne6OvZMH+UTO239qDMU1+DHwR1ivF/7107v8z/qqBWQlXw166707N4nmcyHE/\nVHPdWL2GOw59mIINq/6s6ZFEicP8csIi8//QntmtlEkYqP34PSeAWw5fwjPj\nsKsSXdUGWdGDbscFKt6eQYUTRP2N4/beuws/j4Q0bK80yZk/L77kv0JKO35h\nOytWwVnf7h6Ig0hBkKmPufpdY8yQMdF7/EXVRg79ZkXcrbZt1FVZIpwdsJZa\nkj4g3KwEBG576DTon/XpO1hCEoCn6QYF1AilMqeUcOjCh7qR3/jcEW0ElLpC\nPXULVIEPG72DGspq1KzeYupZe//VTSKFU/kxeLCvGJli6MKDoE7QfZV+isOI\nSKYOC5cXCyzLGD8w+efaaXju3cGcXPVRF31Hv1iKGtOO5klVIiyg4EObzLKq\nZ8FIkKd5vMrYQxGcKU7Mjh9wumlP8bhEql+fv3IBeG7uyFBnSUwIKKU5YExd\ndSiauE6ZrsPKVi7DH4Y5l8cDozlXIwEtdsUhOyg9Cr1UimWzRS3c08jeOMJ3\n+i5bicMmYw15/BykWRZRvsO72F5VUU/6BVK1iANLqzsJHbm+aYfp7Bo9B5ZC\niCeq\r\n=bH62\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"6cd84793075e981ec9f6583db697252209264e0c","scripts":{"lint":"eslint *.js --fix","test":"echo \"Error: no test specified\" && exit 1","prettier":"prettier --write *.js"},"_npmUser":{"name":"jiri.mikulka","email":"jiri.mikulka@skyscanner.net"},"repository":{"url":"git+https://github.com/Skyscanner/react-native-awesome-card-io.git","type":"git"},"_npmVersion":"6.4.1","description":"A complete and cross-platform React Native component for card.io","directories":{},"_nodeVersion":"10.13.0","dependencies":{"prop-types":"^15.5.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^4.9.0","prettier":"^1.7.4","babel-eslint":"^8.0.1","eslint-plugin-react":"^7.4.0","eslint-config-airbnb":"^16.1.0","eslint-plugin-import":"^2.7.0","eslint-config-prettier":"^2.6.0","eslint-plugin-jsx-a11y":"^6.0.2"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-awesome-card-io_0.7.1-skyscanner_1548865466029_0.5133606087391338","host":"s3://npm-registry-packages"}},"0.7.2-skyscanner":{"name":"@skyscanner/react-native-awesome-card-io","version":"0.7.2-skyscanner","keywords":["react-native","react-component","card.io","credit card","scan","android","ios"],"author":{"name":"Yann Pringault","email":"yann.pringault@gmail.com"},"license":"MIT","_id":"@skyscanner/react-native-awesome-card-io@0.7.2-skyscanner","maintainers":[{"name":"amolgupta","email":"amolgupta1989@gmail.com"},{"name":"geekykaran","email":"karanjthakkar@gmail.com"},{"name":"georgegillams","email":"g@georgegillams.co.uk"},{"name":"jiri.mikulka","email":"jiri.mikulka@skyscanner.net"},{"name":"k0nserv","email":"h@tunius.se"},{"name":"mattface","email":"matthew.davidson@skyscanner.net"},{"name":"mhdev","email":"info@matteohertel.com"},{"name":"shaundon","email":"shaundonnelly@gmail.com"},{"name":"tiagohngl","email":"tiagohngl@gmail.com"}],"homepage":"https://github.com/Skyscanner/react-native-awesome-card-io#readme","bugs":{"url":"https://github.com/Skyscanner/react-native-awesome-card-io/issues"},"dist":{"shasum":"84fd318688f546c58e56a0c215fb63c7d29f553b","tarball":"https://registry.npmjs.org/@skyscanner/react-native-awesome-card-io/-/react-native-awesome-card-io-0.7.2-skyscanner.tgz","fileCount":42,"integrity":"sha512-A0VpkvkXqUB+wfb8CqmG4ZANuAfnI84BHpKYnTlTjHLImKcP0oHeiK4ePBaGcW7Gy2NV3n1TAhyBU0jJDvL6eA==","signatures":[{"sig":"MEUCIQD3zr0zJIKkuFtnvPLsTrzjSVrBsbiCpg9TjnCiXB+gggIgdVJmOtQvgTEH8i4eMy+Av9Zz5WYMlK8aJlsss0t2l9w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":292716364,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcUtK5CRA9TVsSAnZWagAA5H0P/0ezufUL9VQSGcgd75Em\n1rQ3jKDTg8qGz1nL44UrolVFxTp12CbBk+mQU6n3bCFEwt25dKMLH8MmQCEe\n3vv/J/1NAqnTqvNGNd3l8EcL1/KzLqXZdrS3K7ErU0tf9Hycz7Vg35CXPYd5\nevP5KXD2JYUSDnp69dSlXrm3OrzRzlhgrHKXXtxWjStx1/5fHZy37OlYKuec\notVPDZuVzDJyihCWQabI9qXynCZOaoCXybXh02MqiP/+MfS4kjUwizPl1byr\n4weKyrNG4M0lORzg3i55yD0+XBD0sQ45UTcuZqZRX8cRREo2chL6ekSoHgJq\nLdu+8FdjMNOKzc0D2hK+0AMZEqZy+jOOhuomXOsP2k+PrkJX+bDWlr6YLmXN\nG/tvdWfxKvkhbiDI+CAM5awVrw8rdvoOlqoaou+0am3bQiEbTSK0953vTCLC\nKuKdb1bIPq5G0X6frTXMwW3JHUg86Dzfiz3hs5krkfo6yPP2VlcbHdEGToB0\nDbR2eqD7byr9rPnEPjERMVhihYcTGO9z5z1zQKdp3lqy5ToTFLsBNJuUif2f\nbVf7SlxvmAdp48ZzK2u4GJ3ZkHHb0ECk9As2bSfj6QnaY5ByPCAGcL3WgdoE\nkTCxor0SGDUgHudwN22GmU3okwRdhdSqK5837KFEQ13Ruio68/++BsBLN3vl\nEehH\r\n=FuZG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"80b42d6cf303bbe4ebb9065a783f5298787c5adf","scripts":{"lint":"eslint *.js --fix","test":"echo \"Error: no test specified\" && exit 1","prettier":"prettier --write *.js"},"_npmUser":{"name":"jiri.mikulka","email":"jiri.mikulka@skyscanner.net"},"repository":{"url":"git+https://github.com/Skyscanner/react-native-awesome-card-io.git","type":"git"},"_npmVersion":"6.4.1","description":"A complete and cross-platform React Native component for card.io","directories":{},"_nodeVersion":"10.13.0","dependencies":{"prop-types":"^15.5.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^4.9.0","prettier":"^1.7.4","babel-eslint":"^8.0.1","eslint-plugin-react":"^7.4.0","eslint-config-airbnb":"^16.1.0","eslint-plugin-import":"^2.7.0","eslint-config-prettier":"^2.6.0","eslint-plugin-jsx-a11y":"^6.0.2"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-awesome-card-io_0.7.2-skyscanner_1548931765406_0.7944439718242637","host":"s3://npm-registry-packages"}},"0.7.3-skyscanner":{"name":"@skyscanner/react-native-awesome-card-io","version":"0.7.3-skyscanner","keywords":["react-native","react-component","card.io","credit card","scan","android","ios"],"author":{"name":"Yann Pringault","email":"yann.pringault@gmail.com"},"license":"MIT","_id":"@skyscanner/react-native-awesome-card-io@0.7.3-skyscanner","maintainers":[{"name":"amolgupta","email":"amolgupta1989@gmail.com"},{"name":"geekykaran","email":"karanjthakkar@gmail.com"},{"name":"georgegillams","email":"g@georgegillams.co.uk"},{"name":"jiri.mikulka","email":"jiri.mikulka@skyscanner.net"},{"name":"k0nserv","email":"h@tunius.se"},{"name":"mattface","email":"matthew.davidson@skyscanner.net"},{"name":"mhdev","email":"info@matteohertel.com"},{"name":"shaundon","email":"shaundonnelly@gmail.com"},{"name":"tiagohngl","email":"tiagohngl@gmail.com"}],"homepage":"https://github.com/Skyscanner/react-native-awesome-card-io","bugs":{"url":"https://github.com/Skyscanner/react-native-awesome-card-io/issues"},"dist":{"shasum":"31170449e77b05ba36221ead93a20938491e1ec3","tarball":"https://registry.npmjs.org/@skyscanner/react-native-awesome-card-io/-/react-native-awesome-card-io-0.7.3-skyscanner.tgz","fileCount":42,"integrity":"sha512-ea7yDqaocUlkulVX7NcN4dpjn3TR+W/dUJa2U+RT+oR5P0HBkzcu+iqxyyBByeI38yoOnVRfIndhsvJuW04W8Q==","signatures":[{"sig":"MEYCIQDbZrqnSQuVfPcY97VX7/sCNmZIb6W7HFKTfd1A8T+aQwIhAKPvkXjotF1gY3kRHFApSzGA2VwsDTRpRKCb3RiXpWLy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":292716431,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWYqoCRA9TVsSAnZWagAAb6EP/in9cQS1dn+nCFat6uGV\n0FEorZHZX1P5lGefP3PGgCJfZAuUKTVa8HhldcU2H3zQvU75R+3g6Q8kSdYb\n3akevkZWKYxHXHZG63ksmFcVpTHi3iUwJoE9sMH6Fjvk3oXddStj6PqKpyfq\nFQ6DZ4Ordqt8Cc9ifaQ1a+Rat8alXENrNwQ/dlQSGVefx08q6UxC+oobgSC8\nD/BORXpvMlpQOdeCP2rfibEywmnSKo82IgmKr+e3UfQB8qCiNpTEO6HEveAK\noH2IbrokXV7Zabgd9UmtmDbqmtYMvWWlfCZrKEPD4ZnVxmIqxh+T6/ytypXx\n8NTLxjn84+p73//kkShb19CQKP1poebc4GdBXfnh/omV3yFJMk4QYsSV9UX1\nzYmG2/eqysDZOwucjrw92qZPUinHB1+rHa4qhI9qAR8PEuZFM1JKTGIhbf52\n+lGWZDKRJc+wyJi66uaVTXcVswjo0rEFdoWb4HNm5n144ObQI5P8ySNCDDpq\neZM5cXieQwyXFg8QensBTrfvUzFlHkdby9mpqFmj7o5mi1nEuGClqPxginZa\nrzuMiyzNlDy2KUwO3FnK00vxfZwG28ZnU7P2Niv6zrYBn7hr9HU0/jVeSqWZ\nHd7amAASE3vtTSFkoS+B4xmOYfyFxeSU3dAOD6WNiYuSaODStwac4X7ke8dQ\nu1Ve\r\n=kWuJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"30aba399c1fe5b5994e23bd61a748f46e63ad84d","scripts":{"lint":"eslint *.js --fix","test":"echo \"Error: no test specified\" && exit 1","prettier":"prettier --write *.js"},"_npmUser":{"name":"jiri.mikulka","email":"jiri.mikulka@skyscanner.net"},"repository":{"url":"git+https://github.com/Skyscanner/react-native-awesome-card-io.git","type":"git"},"_npmVersion":"6.4.1","description":"A complete and cross-platform React Native component for card.io","directories":{},"_nodeVersion":"10.13.0","dependencies":{"prop-types":"^15.5.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^4.9.0","prettier":"^1.7.4","babel-eslint":"^8.0.1","eslint-plugin-react":"^7.4.0","eslint-config-airbnb":"^16.1.0","eslint-plugin-import":"^2.7.0","eslint-config-prettier":"^2.6.0","eslint-plugin-jsx-a11y":"^6.0.2"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-awesome-card-io_0.7.3-skyscanner_1549372068944_0.10788036910499477","host":"s3://npm-registry-packages"}},"0.7.4-skyscanner":{"name":"@skyscanner/react-native-awesome-card-io","version":"0.7.4-skyscanner","keywords":["react-native","react-component","card.io","credit card","scan","android","ios"],"author":{"name":"Yann Pringault","email":"yann.pringault@gmail.com"},"license":"MIT","_id":"@skyscanner/react-native-awesome-card-io@0.7.4-skyscanner","maintainers":[{"name":"amolgupta","email":"amolgupta1989@gmail.com"},{"name":"geekykaran","email":"karanjthakkar@gmail.com"},{"name":"georgegillams","email":"g@georgegillams.co.uk"},{"name":"jiri.mikulka","email":"jiri.mikulka@skyscanner.net"},{"name":"k0nserv","email":"h@tunius.se"},{"name":"mattface","email":"matthew.davidson@skyscanner.net"},{"name":"mhdev","email":"info@matteohertel.com"},{"name":"shaundon","email":"shaundonnelly@gmail.com"},{"name":"tiagohngl","email":"tiagohngl@gmail.com"}],"homepage":"https://github.com/Skyscanner/react-native-awesome-card-io","bugs":{"url":"https://github.com/Skyscanner/react-native-awesome-card-io/issues"},"dist":{"shasum":"80e93084c94cd7680863382a5b6aa63d777182a1","tarball":"https://registry.npmjs.org/@skyscanner/react-native-awesome-card-io/-/react-native-awesome-card-io-0.7.4-skyscanner.tgz","fileCount":30,"integrity":"sha512-Y0bVvhgZ/nIFz3kG8LlIwYG05rtrg0hBSERRMRDa+bi44G7mdRJoKSqwA+YUnLllKt308+uyYCvucQZ70JQ06w==","signatures":[{"sig":"MEUCIQDIE7iYzV7zgnlcWjZx6fp+3Vt68IpOPW4Pon9IJ/RLpwIgQYaIG3GUlkacwFtR36nZtXsWXCxl23H7DqZPjUftdjM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":139872,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWvWiCRA9TVsSAnZWagAATY8P/0khM6MnSOZ8uRFC2t0Y\nn+dROCqTBTfFAME4e7kfG1LMkzdC9o00lJLe8MDj+W3MTQdApgqRFkz+GLmT\nPANG0DHyFS4mlOMvuqtunTw/ugO/odG6tH2OzZqCQq0XVBqQb+APp4tT4RAG\n1CKMwDzCSRtNo3qxlbvcTCaBc8NOCYIwGkR/zs359WjTXfXIHAE2fkWFFFpi\nfUB7/WPs7b/F3viINfxU9pnRDp8hnwjy6X/diqd+E8IprSlUYd+HVv2TeicM\nuHcu2AK1kdOLpSqc9x7AUfErjQwduuzQR0nwRHQo7k3AjdWc/DFZ30YoIgdf\nrYmevXfEbwvQ4zaSZawwCCPp4eMp7YLaNn/fwEK5C07eGtpN12/dHMKQx1ue\nTvyxcWOEkJmLZUHFbsGZqjDhiXoPeCIXohu/5swGqyHk/Lwl5uXEJcxfCfl+\n30uUL7ng7VNO4rGIxf22ZSiULxllCrzOXK4PRoeyxW5nsMeGV0Z3T1/uiVA9\nME9oBGQzFUBR5HvCDaZGUAectXU6TuuOo/syc8n3YdxU5j5LCmvJoPDOBN48\n5FyiPAikkd6UFFetVDFtr54XNfF/Nhh/IH4AJjSk0CfzMj061A7wwkP6c6Fw\npm/to6bHy1DBt9Z5372c1tv0x7BEOR00/9rP/E8Jd8PEUzmh+KNkBYBbGegv\nIqc/\r\n=mbVb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"4980fe59e775bf1fb86d9e04e61537debccf8806","scripts":{"lint":"eslint *.js --fix","test":"echo \"Error: no test specified\" && exit 1","prettier":"prettier --write *.js"},"_npmUser":{"name":"jiri.mikulka","email":"jiri.mikulka@skyscanner.net"},"repository":{"url":"git+https://github.com/Skyscanner/react-native-awesome-card-io.git","type":"git"},"_npmVersion":"6.4.1","description":"A complete and cross-platform React Native component for card.io","directories":{},"_nodeVersion":"10.13.0","dependencies":{"prop-types":"^15.5.10"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^4.9.0","prettier":"^1.7.4","babel-eslint":"^8.0.1","eslint-plugin-react":"^7.4.0","eslint-config-airbnb":"^16.1.0","eslint-plugin-import":"^2.7.0","eslint-config-prettier":"^2.6.0","eslint-plugin-jsx-a11y":"^6.0.2"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-awesome-card-io_0.7.4-skyscanner_1549464993918_0.6622534509840583","host":"s3://npm-registry-packages"}}},"time":{"created":"2019-01-30T16:24:25.833Z","modified":"2025-10-09T08:53:25.962Z","0.7.0-skyscanner":"2019-01-30T14:51:45.012Z","0.7.1-skyscanner":"2019-01-30T16:24:29.080Z","0.7.2-skyscanner":"2019-01-31T10:49:28.622Z","0.7.3-skyscanner":"2019-02-05T13:07:52.007Z","0.7.4-skyscanner":"2019-02-06T14:56:34.148Z"},"bugs":{"url":"https://github.com/Skyscanner/react-native-awesome-card-io/issues"},"author":{"name":"Yann Pringault","email":"yann.pringault@gmail.com"},"license":"MIT","homepage":"https://github.com/Skyscanner/react-native-awesome-card-io","keywords":["react-native","react-component","card.io","credit card","scan","android","ios"],"repository":{"url":"git+https://github.com/Skyscanner/react-native-awesome-card-io.git","type":"git"},"description":"A complete and cross-platform React Native component for card.io","maintainers":[{"email":"backpack@skyscanner.net","name":"skyscanner-koalasquad"},{"email":"oliver.curtis@skyscanner.net","name":"ojcurt"},{"email":"weavershared@skyscanner.net","name":"skyscanner-webenablement"}],"readme":"# [react-native-awesome-card-io](https://kerumen.github.io/react-native-awesome-card-io/)\nA complete and **cross-platform** [card.io](https://www.card.io/) component for React Native.\n\n## Getting started\n\n```bash\n$ npm install react-native-awesome-card-io --save\n$ react-native link react-native-awesome-card-io\n```\n\n## Usage\n\nThis component provides an abstraction of the card.io entry points for iOS and Android.\n\n| Javascript     | iOS                                                                                             | Android                                                                                              | Description                                                                         |\n|----------------|-------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------|\n| `CardIOModule` | [`CardIOPaymentViewController`](https://github.com/card-io/card.io-iOS-SDK#integrate-as-a-view) | [`CardIOActivity`](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html) | A module to launch the card.io view controller which handles everything.            |\n| `CardIOView`   | [`CardIOView`](https://github.com/card-io/card.io-iOS-SDK#integrate-as-a-view-controller)       | N / A                                                                                                | Create a `CardIOView` to do card scanning only and manage everything else yourself. |\n\n### `CardIOView`\n\n*This component is iOS-only as the card.io Android SDK does not offer this functionality.*\n\n```jsx\nimport React, { Component } from 'react';\nimport { View } from 'react-native';\nimport { CardIOView, CardIOUtilities } from 'react-native-awesome-card-io';\n\nclass CardIOExample extends Component {\n\n  componentWillMount() {\n    CardIOUtilities.preload();\n  }\n\n  didScanCard = (card) => {\n    // the scanned card\n  }\n\n  render() {\n    return (\n      <View>\n        <CardIOView\n          didScanCard={this.didScanCard}\n          style={{ flex: 1 }}\n        />\n      </View>\n    );\n  }\n}\n```\n\n#### Props\n\n`didScanCard` *function* **Required** - This function will be called when the CardIOView completes its work and returns a [CreditCard](#creditcard). ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOViewDelegate.h#L24))\n\n`languageOrLocale` *string* - The preferred language for all strings appearing in the user interface. ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOView.h#L38))\n\n`guideColor` *string* - Alter the card guide (bracket) color. Opaque colors recommended. ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOView.h#L42))\n\n`useCardIOLogo` *boolean* `false` - Set to `true` to show the card.io logo over the camera instead of the PayPal logo. ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOView.h#L45))\n\n`hideCardIOLogo` *boolean* `false` - Hide the PayPal or card.io logo in the scan view. ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOView.h#L48))\n\n`allowFreelyRotatingCardGuide` *boolean* `true` - By default, in camera view the card guide and the buttons always rotate to match the device's orientation. ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOView.h#L55))\n\n`scanInstructions` *string* - Set the scan instruction text. ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOView.h#L59))\n\n`scanExpiry` *string* `true` - Set to `false` if you don't want the camera to try to scan the card expiration. ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOView.h#L79))\n\n`scannedImageDuration` *number* `1.0` - How long the CardIOView will display an image of the card with the computed card number superimposed after a successful scan. ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOView.h#L97))\n\n`detectionMode` *[CardIODetectionMode](#constants)* `CardIODetectionModeCardImageAndNumber` - Set the detection mode. ([Docs](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOView.h#L90))\n\n### `CardIOModule`\n\n*This module abstracts the [`CardIOPaymentViewController`](https://github.com/card-io/card.io-iOS-SDK#integrate-as-a-view) on iOS and the [`CardIOActivity`](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html) on Android.*\n\n```jsx\nimport React, { Component } from 'react';\nimport { View, TouchableOpacity, Text, Platform } from 'react-native';\nimport { CardIOModule, CardIOUtilities } from 'react-native-awesome-card-io';\n\nclass CardIOExample extends Component {\n\n  componentWillMount() {\n    if (Platform.OS === 'ios') {\n      CardIOUtilities.preload();\n    }\n  }\n\n  scanCard() {\n    CardIOModule\n      .scanCard()\n      .then(card => {\n        // the scanned card\n      })\n      .catch(() => {\n        // the user cancelled\n      })\n  }\n\n  render() {\n    return (\n      <View>\n        <TouchableOpacity onPress={this.scanCard.bind(this)}>\n          <Text>Scan card!</Text>\n        </TouchableOpacity>\n      </View>\n    );\n  }\n}\n```\n\n#### Methods\n\n`scanCard([config])` -> Promise - Launch the card.io controller to manage the card scanning and get the [CreditCard](#creditcard) result in the resolved promise.\n\n - `config` On object with the following available keys:\n   - `languageOrLocale` *string* - The preferred language for all strings appearing in the user interface. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L43) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_LANGUAGE_OR_LOCALE))\n   - `guideColor` *string* - Alter the card guide (bracket) color. Opaque colors recommended. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L70) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_GUIDE_COLOR))\n   - `useCardIOLogo` *boolean* `false` - Set to `true` to show the card.io logo over the camera view instead of the PayPal logo. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L148) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_USE_CARDIO_LOGO))\n   - `hideCardIOLogo` *boolean* `false` - Hide the PayPal or card.io logo in the scan view. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L96) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_HIDE_CARDIO_LOGO))\n   - `scanInstructions` *string* - Set the scan instruction text. If nil, use the default text. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L93) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_SCAN_INSTRUCTIONS))\n   - `suppressManualEntry` *boolean* `false` - Set to `true` to prevent card.io from showing its \"Enter Manually\" button. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L163) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_SUPPRESS_MANUAL_ENTRY))\n   - `suppressConfirmation` *boolean* `false` - If `true`, don't have the user confirm the scanned card, just return the results immediately. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L74) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_SUPPRESS_CONFIRMATION))\n   - `requireExpiry` *boolean* `true` - Set to `false` if you don't need to collect the card expiration. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L126) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_REQUIRE_EXPIRY))\n   - `requireCVV` *boolean* `true` - Set to `false` if you don't need to collect the CVV from the user. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L129) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_REQUIRE_CVV))\n   - `requirePostalCode` *boolean* `false` - Set to `false` if you need to collect the billing postal code. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L132) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_REQUIRE_POSTAL_CODE))\n   - `restrictPostalCodeToNumericOnly` *boolean* `false` - Set to `true` if the postal code should only collect numeric input. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L137) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_RESTRICT_POSTAL_CODE_TO_NUMERIC_ONLY))\n   - `requireCardholderName` *boolean* `false` - Set to `true` if you need to collect the cardholder name. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L140) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_REQUIRE_CARDHOLDER_NAME))\n   - `scanExpiry` *boolean* `true` - Set to `false` if you don't want the camera to try to scan the card expiration. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L145) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_SCAN_EXPIRY))\n\n   - `disableBlurWhenBackgrounding` *boolean* `false` (iOS only) - Disable the blur of the screen when the app is backgrounded. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L163))\n   - `keepStatusBarStyle` *boolean* `false` (iOS only) - If `true`, the status bar's style will be kept as whatever your app has set it to. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L48))\n   - `detectionMode` *[CardIODetectionMode](#constants)* `false` (iOS only) - Set the detection mode. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L123))\n   - `suppressScannedCardImage` *boolean* `false` (iOS only) - If `true`, instead of displaying the image of the scanned card, present the manual entry screen with the scanned card number prefilled. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L79))\n   - `scannedImageDuration` *number* `0.1` (iOS only) - How long card.io will display an image of the card with the computed card number superimposed after a successful scan. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L86))\n   - `allowFreelyRotatingCardGuide` *boolean* `true` (iOS only) - By default, in camera view the card guide and the buttons always rotate to match the device's orientation. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOPaymentViewController.h#L155))\n\n   - `noCamera` *boolean* `false` (Android only) - If set, the card will not be scanned with the camera. ([Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_NO_CAMERA))\n   - `unblurDigits` *number* `-1` (Android only) - Privacy feature. How many of the Card number digits NOT to blur on the resulting image. Setting it to 4 will blur all digits except the last four. ([Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_UNBLUR_DIGITS))\n   - `usePaypalActionbarIcon` *boolean* `false` (Android only) - Use the PayPal icon in the ActionBar. ([Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#EXTRA_USE_PAYPAL_ACTIONBAR_ICON))\n\n### CreditCard\n\nAn object with the following keys:\n\n- `cardType` *string* - Localized card type.\n- `cardNumber` *string* - Card number.\n- `redactedCardNumber` *string* - Card number with all but the last four digits obfuscated.\n- `expiryMonth` *number* - Expiry month with january as 1 (may be 0 if expiry information was not requested).\n- `expiryYear` *number* - Expiry year (may be 0 if expiry information was not requested).\n- `cvv` *string* - Security code.\n- `postalCode` *string* - Postal code. Format is country dependent.\n- `scanned` *boolean* (iOS only) - Was the card number scanned (as opposed to entered manually)?\n- `cardholderName` *string* - Card holder name.\n\n### CardIOUtilities\n\n#### Methods\n\n`preload` -> void (iOS only) - The preload method prepares card.io to launch faster. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOUtilities.h#L31))\n\n#### Constants\n\n`CAN_READ_CARD_WITH_CAMERA`: Boolean\n   \nDetermine whether this device supports camera-based card scanning. ([iOS](https://github.com/card-io/card.io-iOS-SDK/blob/ec9a8632c9fd879537354d4b9075aa487dcebe8b/CardIO/CardIOUtilities.h#L24) / [Android](http://card-io.github.io/card.io-Android-SDK/io/card/payment/CardIOActivity.html#canReadCardWithCamera--))\n\n`DETECTION_MODE`: String\n\n  - `IMAGE_AND_NUMBER` (CardIODetectionModeCardImageAndNumber) - the scanner must successfully identify the card number.\n  - `IMAGE` (CardIODetectionModeCardImageOnly) - don't scan the card, just detect a credit-card-shaped card.\n  - `AUTOMATIC` (CardIODetectionModeAutomatic) - start as CardIODetectionModeCardImageAndNumber, but fall back to CardIODetectionModeCardImageOnly if scanning has not succeeded within a reasonable time.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}