{"_id":"@dadesystems/dademobile","_rev":"13-96f3aaf34789b1eea689aca9e508dd90","name":"@dadesystems/dademobile","dist-tags":{"latest":"1.2.1","beta":"1.2.0-beta.1"},"versions":{"1.0.0-rc1":{"name":"@dadesystems/dademobile","version":"1.0.0-rc1","description":"Dade Mobile API wrapper","main":"lib/dademobile.js","author":{"name":"DadeSystems Inc"},"license":"MIT","dependencies":{"axios":"^0.18.0","lodash":"^4.17.11"},"devDependencies":{"@babel/core":"^7.2.2","@babel/preset-env":"^7.3.1","babel-loader":"^8.0.5","webpack":"^4.29.0","webpack-cli":"^3.2.1"},"scripts":{"build":"webpack","build:prod":"webpack -p"},"gitHead":"2654fbb3e603db8a6cfd0b8a801510fb95681809","_id":"@dadesystems/dademobile@1.0.0-rc1","_nodeVersion":"10.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-ZTe0p8JDSX5Q9Nlr9UqG1K1Yip2RN7vEJJRI4gmkWG72FMt2Le2vO6rYGXpe/Qugb8fSMbXHi2mcRXBPVsItkQ==","shasum":"19dc6647ec216879a570b96658560fe7a8214325","tarball":"https://registry.npmjs.org/@dadesystems/dademobile/-/dademobile-1.0.0-rc1.tgz","fileCount":7,"unpackedSize":198086,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcXOS/CRA9TVsSAnZWagAAJQUP/RO62k59ekTwcIBuqe6P\nEM/GrTMFDFpoDqCmllYMjaopzeXVLbBAYTkTayk4N3H0UkuqzJD1yYnSV4yv\nwgyBbzkeQHneep///jYFDyKTq1NuId4yZgh70U7cGijY2w0rpF4LGe2yvBqI\ntPIxRUZo3LAhHX9lcsHCxPwvX8RcJrY5H8BsrelrMLrUdqryW3KoISIuPQA4\nLyqABDAcjLQ6AGNS7Iv35a4ooJJ+B5BvUEN84yvLXtAb3hfB8CHV/UhyISDE\nBzukn6Sw9XsuLZgpa4B9J3wDZVh+v/U/Sq4qX8WVVqwGx1/oOW/6VGVut97B\n+R0oGESfHGUi5VuK3Br9DGRyzuNkFJQoHr0yxd5mzswmIFcmwpIOCt817top\n2YrAsVQIwmCG92/84Jz0so/Vo/IKuGEkZGvX3VMuNvQdk9mmk+HtTLt7bh5j\njIfZPuu/tD0mQ8gP4EAGR1rLtGQ0djl7d/CYGxTh9LFRq/JisllX6whWcK3v\nJGMFYnI3VocKgff2MQJ3y24m55etCAC6VrsH1zqdeK54yUtQ+zHoJGd8ckEn\nwQvQeLInMCMOWhHjK7O6RXuDgd2Sn+XElmzAiZ9QFJvjl97J/m6eIso3N3An\nuEwTrikAEi5thJxW31+bAaRBJq7/emlIzRzngCuRNairULVhlKT2++tSm5sx\nBBcD\r\n=liy5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFnHpaxc8WwA0K0nXOkspZIDwDlPdFF5pZOIS6hf1Kl9AiEArLjOjaJmbcSoOTuAYLk2GZcDDRlZ/Ayeem+i3Gz0ucY="}]},"maintainers":[{"name":"mohaballi","email":"mohaballi@dadesystems.com"}],"_npmUser":{"name":"mohaballi","email":"mohaballi@dadesystems.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dademobile_1.0.0-rc1_1549591743204_0.1509021030622908"},"_hasShrinkwrap":false},"1.0.1":{"name":"@dadesystems/dademobile","version":"1.0.1","description":"Dade Mobile API wrapper","main":"lib/dademobile.js","author":{"name":"DadeSystems Inc"},"license":"MIT","dependencies":{"axios":"^0.18.0","lodash":"^4.17.11"},"devDependencies":{"@babel/core":"^7.2.2","@babel/preset-env":"^7.3.1","babel-loader":"^8.0.5","jasmine":"^2.6.0","sinon":"^7.2.3","webpack":"^4.29.0","webpack-cli":"^3.2.1"},"scripts":{"build":"webpack -p","test":"jasmine test/*"},"gitHead":"49d7ab36f8c80d60ca258b68049ebb51d8feb45b","_id":"@dadesystems/dademobile@1.0.1","_nodeVersion":"10.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-7/Lmdd8qEFEvlvGa/YsNk4AA1CQIqRKk4ZsHEmYEmoZrE9oD4EEk0N2CMrL/uQkrn+/jOddQzvX5DqIcZ8+sfg==","shasum":"b68687d399bc0405256017a4f58908b5d868d623","tarball":"https://registry.npmjs.org/@dadesystems/dademobile/-/dademobile-1.0.1.tgz","fileCount":6,"unpackedSize":134837,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcYfgICRA9TVsSAnZWagAAEF0QAKJevIBDkh9th/NORi3y\nPloIVmdzKbIEy9WteDoDkLGIHTDxIf8vXaZDQB6Z2JfeLlX8KCoTrTEpsbsH\nMW0+FVOPPGvGHt+xjnidLsv3O9xkKfx2XDMVG8mA/DTPQf4DiH+LUN3mfK9K\ndkeqeEjioA7ob0yhUXi8ZNL03VZ63btga2q9ycHCYeIMG2Xb622yfOKRIV3W\n4APyEW5eO3FKEAD2YOU5XKKAfGbkZq4IPdWkX5dHvycZBaRceO4bq63kvIP/\nFDTIjZvbzMswydGmlbgEP9iu07rHxgbMsyOyoMVyMDswhY9jP0S//r6WVsIK\nW6IxDnPZA5Z8Zoo/DgxP6bAPnh+x1FgUCpU3NVIsHd1mLR4HBVpC0enM/SGA\nSqHhCwOnUw8F38TUEd9kgXb4Mw2eU2DVJ/6gTI2ENN/v5VakwltM0Qlq/V6k\nWVZWRFJL4h4vDi+fb5oeFigKbgoR3i4n2ROvlElGXyhas+AgGNybFZ5itA0F\nA65NOkiiDIHUitS1JtlnNMaUPaMpYLM54PobFhWByAhv9zqMXsaQT5YW0Q1a\nKBLruWpkAZRI95bJvKdz47fsLedOdvk7FN1bB99SeMi9EVSJeRRxot5zyhSM\nP0VNysLybjspTOPhOhyMoC9s+qa9d14fAaf2kbddvEKyYjVc+kH1j+jIWXtf\nPH6w\r\n=74QN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGIPpc89RfsMjjGSDCHN9DSM8N6PEyGmjLDGSwZn4D63AiEA15RBnDCsBLGCmHVvQP1m6yWgZV0ZBK8dMTGVPUi4KKQ="}]},"maintainers":[{"name":"mohaballi","email":"mohaballi@dadesystems.com"}],"_npmUser":{"name":"mohaballi","email":"mohaballi@dadesystems.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dademobile_1.0.1_1549924359615_0.6139939368682843"},"_hasShrinkwrap":false},"1.0.2":{"name":"@dadesystems/dademobile","version":"1.0.2","description":"JavaScript library for Dade Mobile API","main":"lib/dademobile.js","author":{"name":"DadeSystems Inc"},"license":"MIT","dependencies":{"axios":"^0.18.0","lodash":"^4.17.11"},"devDependencies":{"@babel/core":"^7.2.2","@babel/preset-env":"^7.3.1","babel-loader":"^8.0.5","jasmine":"^2.6.0","sinon":"^7.2.3","webpack":"^4.29.0","webpack-cli":"^3.2.1"},"scripts":{"build":"webpack -p","test":"jasmine test/*"},"gitHead":"3c193182ed49f8661c81d8304ef79a8429a5e2da","_id":"@dadesystems/dademobile@1.0.2","_nodeVersion":"10.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-VJTaYKSpkW3sXJO8ChfVed7B9ac+1WvFkosnl6nypT2OGCwRjtC4aNjC5hkx2fr4VFOh3ucsQ/tYi7sDO2jCmg==","shasum":"c4116fc7821d3ca829951505b69a3c1230b5c8f3","tarball":"https://registry.npmjs.org/@dadesystems/dademobile/-/dademobile-1.0.2.tgz","fileCount":6,"unpackedSize":137354,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcY3PPCRA9TVsSAnZWagAAI2YP/jMzNoLUKs1ZNgQKwQxS\nSVRKnjeLNHNzBn8fab1GYTllU/ZkYXXoZcNwLCjoiQsDv57dOpAQYfamLtH2\nUCKK/UfBGs3QFrL3gAChKXdCgL0Z76CQ8jncQK/ujWnUzZzjg/G1L5FoPuJi\nhXttYHKcf91tm+aObvdS3PsNZFa4SmAVcevFEUkGuf9Lb/fr3SftSFGRb0H+\nuE3NOZQGQiwqIgmS/F/kbbyj5IIOu7BQhkb3pMeYUiqupeLpbmcPkrzcx4ce\nwrHuCNELZwJRh8Lz+QD6oWzx6h/VNvBVFTidDLmfMekRDF7b7yZ+k0zJ2du/\nGXcsg+956XaO4WHoWgnPv0d7SwHrOUCJcU0lBpi5xOgA7BB1sOHDBtsR/B+p\nTbdfQ2b0stby6dkW4nJltg+ZWXXZuTb/ioJ4koHewPplxxIeL34DqgvhEU8X\n9JVcE5JKQGEbFmtYSmUDAgNIa33+aiaBKI3JiwlKgcDmZC7Ni1xvUeuwvhr8\nN+dSvSQHQo+w9OGB3KW9V0xF2hn84joaspn2zwSyJRfAvussAkYPq8JNbErA\nDxwVEW7CSI/SrcMAAAIVIjm8iIRnm6lOhvVQ5Po+htpzmb8HZp7cqqjzRDIq\nLkt4MwIbnF1ZwONJ/UAIgKXRQoeKFiH2gUZL/i3qA0GEFrqXH0qXczI7zDHW\nYFSl\r\n=YKxe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzsByOeztqstMK5CGlTgt1v6wSSPJjejEzx9v5RJXKKgIgWacDQP0xWKFYcLLAqzRBbVTShCaCGZg9BUGTCCWTpxI="}]},"maintainers":[{"email":"cwalker86@gmail.com","name":"cwalker86"},{"email":"mohaballi@dadesystems.com","name":"mohaballi"}],"_npmUser":{"name":"mohaballi","email":"mohaballi@dadesystems.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dademobile_1.0.2_1550021583153_0.18663091178045277"},"_hasShrinkwrap":false},"1.0.3":{"name":"@dadesystems/dademobile","version":"1.0.3","description":"JavaScript library for Dade Mobile API","main":"lib/dademobile.js","author":{"name":"DadeSystems Inc"},"license":"MIT","dependencies":{"axios":"^0.18.0","lodash":"^4.17.11"},"devDependencies":{"@babel/core":"^7.2.2","@babel/preset-env":"^7.3.1","babel-loader":"^8.0.5","jasmine":"^2.6.0","sinon":"^7.2.3","webpack":"^4.29.0","webpack-cli":"^3.2.1"},"scripts":{"build":"webpack -p","test":"jasmine test/*"},"gitHead":"d8f2358ce22f0b6ea2b22b65e405499c164773d3","_id":"@dadesystems/dademobile@1.0.3","_nodeVersion":"10.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-y4wrAUZ0sHB0tPZK9jXdShbScvyKC0ZzwmXMGJHS5aQKzcO7mJN2KdR1l6eq2jYcWA+AlsU6qRiqJBLb2PipYA==","shasum":"188d3e8d5c51f52ccca47bb6d22f39612101f4f1","tarball":"https://registry.npmjs.org/@dadesystems/dademobile/-/dademobile-1.0.3.tgz","fileCount":6,"unpackedSize":137632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcY6ZYCRA9TVsSAnZWagAA83wP/2rBppQb0w1NuJsoqkgi\nW6sxVLX0VE8vEmPuyhuQAWib39GDPSD157dQ7DcRGnqDAai72jCkhhIi47EY\noPVrxA8Xt4Dkep1rUem0ju8qThfa4AFJgbMrBP3xyrBWmJ8wlc4hGN+1giq1\npreVrjfmWu7i+k2AVofhPtOM/K9jzaiut/j+sn538XiGTOXJPm7I3Xsf2wLN\nXmPhvODRUNHSSNb/G2QJZYbPTxjodJvuV7bMYq8F8tO8aiaaQXX1alT9IJ27\nl552Bs5pD1bFz+7ofSRBhVG1jxC3NlsGMMowprSwAQtqyLJl2Yiucu69HmJO\n5UmKPope0H6WOYpCRQZJf6LOam14zgc42X0+iKm/Kwy5gAVYFHUvblesCTme\nZ1LD2l6v4vupz1oSAynwO9lxbTdueRNpuJ/gZ+IIkwOpa8xJR6igNEuc6wrH\ng/XEJsz0sYZq123yV5Q9Tu8/o9X0ibi4NaIJDBVEshTJ13JXvdPLbZ4nfQac\neezyMZD/uEfZTypGS6XL1krSierpRv4cr/tP0hAzKtyrcbzl2foV4N6CyaPq\nz9xmyuveb9DLPuIQEWjJVXKicOzQIXY0iCG9eI43vtyg7odQ0BtcPMhBgF1P\nw7uoYwk+0VVXarnHsyAcpLaYqPneTNWcZHpi8JC/KIVHxLsYsOgiI1GY/GL3\nZb9V\r\n=kf/H\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGAsm9RNxelHVHPZb1+lSea/DSKmsXosjMFzDQlb4C6uAiB9RaQh2Kl9geTbYzglRTteW6QP2OaAsDvi6z1y2OkpHw=="}]},"maintainers":[{"email":"cwalker86@gmail.com","name":"cwalker86"},{"email":"mohaballi@dadesystems.com","name":"mohaballi"}],"_npmUser":{"name":"mohaballi","email":"mohaballi@dadesystems.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dademobile_1.0.3_1550034519266_0.9561863654133329"},"_hasShrinkwrap":false},"1.2.0-beta.0":{"author":{"name":"DadeSystems Inc"},"bundleDependencies":false,"dependencies":{},"deprecated":false,"description":"JavaScript library for Dade Mobile API","devDependencies":{"rollup":"^1.2.1","rollup-plugin-typescript":"^1.0.0","tslib":"^1.9.3","typescript":"^3.3.3"},"license":"MIT","main":"dist/index.js","module":"dist/index.esm.js","name":"@dadesystems/dademobile","scripts":{"build":"npm run build:types && rollup -c","build:types":"tsc --emitDeclarationOnly","prepare":"npm run build","prepublish":"npm run build","test":"jasmine test/*"},"version":"1.2.0-beta.0","types":"dist/index.d.ts","readme":"# DadeMobile.js\nJavaScript library for Dade Mobile API. This library provides convenient access to the Dade Mobile API from applications written in JavaScript.\n\n## Sample App\nApache Cordova sample app demonstrating the use of DadeMobile.js:\nhttps://github.com/DadeSystems/CordovaSample\n\n## Installation\nInstall the package with npm:\n\n```bash\nnpm install @dadesystems/dademobile --save\n```\n\nOr using yarn:\n```bash\nyarn add @dadesystems/dademobile\n```\n\n## Usage\n\nThe general workflow for capturing payments is as follows:\n\n- Initialize `DadeMobile` with provided API Key and API URL.\n- Use instance of `DadeMobile` to stage, update, and confirm a payment.\n\n### Initialization\nThe first step is to initialize `DadeMobile` with provided API Key and API URL:\n\n```js\nconst dadeMobile = require('@dadesystems/dademobile')(API_KEY, API_URL);\n```\n\nOr using ES modules:\n\n```js\nimport { DadeMobile } from '@dadesystems/dademobile';\nconst dadeMobile = new DadeMobile(API_KEY, API_URL);\n```\n\n### Stage Payment\nAfter initialization, the next step is to stage a payment. The payment amount can be set when staging a payment, or after a payment has already been staged, depending on your workflow. If a payment was previously staged but not confirmed, then it will be resumed.\n\n#### Params\n- `external_user_id`: Unique identifer for your user making the payment.\n- `external_reference`: (Optional) your reference for the payment.\n- `amount`: (Optional) payment amount. This can be set after staging the payment.\n\n#### Example\n```js\ndadeMobile.stagePayment({ \n  external_user_id: '123',\n  external_reference: '321',\n  amount: 5.00\n})\n.then((payment) => {\n  // Payment successfully staged\n})\n.catch((error) => {\n  // Failed to stage payment\n});\n```\n\n### Set Amount \nSet the amount of a staged payment.\n\n#### Params\n- `payment`: The staged payment.\n- `amount`: Payment amount.\n\n#### Example\n```js\ndadeMobile.setAmount(payment, 15.00)\n.then((payment) => {\n  // Payment amount updated successfully\n})\n.catch((error) => {\n  // Failed to update payment amount\n});\n```\n\n### Upload Image\nUpload image for a staged payment.\n\n#### Params\n- `payment`: The staged payment.\n- `imageType`: The type of image being uploaded:\n  - `dadeMobile.ImageTypes.CHECK_FRONT` \n  - `dadeMobile.ImageTypes.CHECK_REAR`\n- `encodedImage`: Base64 encoding of the image data.\n\n#### Example\n```js\ndadeMobile.uploadImage(\n  payment, \n  dadeMobile.ImageTypes.CHECK_FRONT, \n  encodedImage\n)\n.then((payment) => {\n  // Image uploaded successfully\n})\n.catch((error) => {\n  // Failed to upload image\n});\n```\n\n### Confirm Payment\nOnce a payment is staged and all properties have been set, the final step is to confirm the payment. If the payment fails validation, then validation errors will be returned. See the next section for error codes.\n\n#### Params\n- `payment`: The staged payment.\n\n#### Example\n```js\ndadeMobile.confirmPayment(payment)\n.then((payment) => {\n  // Payment confirmed successfully\n})\n.catch((error) => {\n  // Failed to confirm payment\n  // Handle validation errors if present\n  const { validationErrors } = error;\n});\n```\n\n#### Success Response\nExample payment data returned upon successful confirmation of a payment:\n```js\n{\n  id: 1001,\n  type: \"Check Payment\",\n  status: \"Completed\",\n  amount: 5.0,\n  external_user_id: \"123\",\n  external_reference: \"321\",\n  date: \"2019-02-12\",\n  check_routing_number: \"123456789\",\n  check_account_number: \"987654321\",\n  check_number: \"2808\"\n}\n```\n\n### Validation Errors\nValidation errors are returned as an array of error objects containing the error code and error message, example:\n\n```js\n[\n  {\n    error_code: 2001,\n    error_message: 'Front image required'\n  }\n]\n```\n\nThe following is a list of validation error codes and descriptions:\n\n```yaml\n2000: Check amount required\n2001: Check front image required\n2002: Check rear image required\n2003: Check image still processing\n2004: Check IQA failed\n2005: Check duplicate found\n2006: Check amount mismatch\n```\n\n### Using Promises\nEvery method returns a chainable promise:\n\n```js\ndadeMobile.stagePayment({ \n  external_user_id: '123',\n  external_reference: '321',\n  amount: 5.00\n})\n.then((payment) => {\n  return dadeMobile.setAmount(payment, 10.00);\n})\n.then((payment) => {\n  return dadeMobile.uploadImage(\n    payment, \n    dadeMobile.ImageTypes.CHECK_FRONT, \n    encodedImage\n  );\n})\n.then((payment) => {\n  return dadeMobile.uploadImage(\n    payment, \n    dadeMobile.ImageTypes.CHECK_REAR, \n    encodedImage\n  );\n})\n.then((payment) => {\n  return dadeMobile.confirmPayment(payment);\n})\n.then((payment) => {\n  console.log(payment);\n})\n.catch((error) => {\n  console.log(error);\n});\n```\n","readmeFilename":"README.md","gitHead":"c90c599402d622c1629b4b0aed096b903f7e3c4a","_id":"@dadesystems/dademobile@1.2.0-beta.0","_nodeVersion":"10.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-4/xgrtDj0aHjUxuB4FmEWs6aKLkAvHEgjhHerTzKP28Ki+vsXEGG7WkLxuRMqjtbPuekHilx9/7zJ0nVOSM71Q==","shasum":"235d41d325971eabd3f5895a404294f52b2f3f1e","tarball":"https://registry.npmjs.org/@dadesystems/dademobile/-/dademobile-1.2.0-beta.0.tgz","fileCount":5,"unpackedSize":22267,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcb2nRCRA9TVsSAnZWagAAHkwP/1VGLjJVw+JYUEGNk650\nOBDVk0b9rcmI6HqUOcM9A3hiPFP6nwiIgJf5DFkzQ7EXy+8mWPYRaIWXE3za\nBAaKcbA/d+riaz4ycfntHknHUns1E9zklX0Bc96xWcEjAF2b+MfYLzkNK+E0\nrVlwt3V43YGIZTIXnbKAmdePgXrVXulr4k5kbTeAWEdVHj+Pa9J2FfHNsJgS\nSnS/0JlzfSerQZUApCuKMAuPAku6tQeUPmC5lHCgBdx0dwLdJRkbHrEtz9O5\nT8Xtfq18P13bOmgkyv6QRdI/QMpvArQY/aolAA2hlZAPW3I2+bHMKVZrli3G\nwa0yYAisqwwtcHHXJd91WOZg67Fl0lKTOpSkz7Jk5mDKNIbl4mLt5QWa6Yb0\n+jZ5xq88h38vwqU//trK8kYYjVRLIROo1WQX952h/4P32ib1FzfC5LgtKlTH\nGYn5QEkU1jG+MdQ4sDWfHIs0qxogWptdHn5DbtKrfT6FJN2MmWaCBDckeRKa\nsGzbTQva2usimGmNIFSBqKMSbMLvak5su6X0Zp0uuS3P4jk+6TQHJHs81Xeu\nBLkMPhumtQqpylDBpLMUj7riIy3aim9X4/tQINA9/Hbd9K50T984oLIx3nJz\nf4schp4UC+DjdNkDN3643eY2TwwFlceTaLoPTVrSb1HevWgeTF0ECmdLm9gH\n6Qk7\r\n=mV20\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFOCbzdYKobZocdLTxQIXCLkvZQx9H1aKsBH6rLmV3TUAiAq9dnAduNiOoira5AX0r7dvfHFRLf4xq/dt4gDAEpekg=="}]},"maintainers":[{"email":"cwalker86@gmail.com","name":"cwalker86"},{"email":"mohaballi@dadesystems.com","name":"mohaballi"}],"_npmUser":{"name":"mohaballi","email":"mohaballi@dadesystems.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dademobile_1.2.0-beta.0_1550805456849_0.945350687645377"},"_hasShrinkwrap":false},"1.2.0-beta.1":{"name":"@dadesystems/dademobile","version":"1.2.0-beta.1","description":"JavaScript library for Dade Mobile API","license":"MIT","author":{"name":"DadeSystems Inc"},"contributors":[{"name":"Mohaballi Barakat"},{"name":"Cyrus Walker"},{"name":"Joe Ciancio"},{"name":"Bobby Johnson"}],"main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","scripts":{"build":"npm run build:types && rollup -c","build:types":"tsc --emitDeclarationOnly","prepare":"npm run build","prepublish":"npm run build","test":"jasmine test/*"},"devDependencies":{"rollup":"^1.2.1","rollup-plugin-typescript":"^1.0.0","tslib":"^1.9.3","typescript":"^3.3.3"},"readme":"# DadeMobile.js\nJavaScript library for Dade Mobile API. This library provides convenient access to the Dade Mobile API from applications written in JavaScript.\n\n## Sample App\nApache Cordova sample app demonstrating the use of DadeMobile.js:\nhttps://github.com/DadeSystems/CordovaSample\n\n## Installation\nInstall the package with npm:\n\n```bash\nnpm install @dadesystems/dademobile --save\n```\n\nOr using yarn:\n```bash\nyarn add @dadesystems/dademobile\n```\n\n## Usage\n\nThe general workflow for capturing payments is as follows:\n\n- Initialize `DadeMobile` with provided API Key and API URL.\n- Use instance of `DadeMobile` to stage, update, and confirm a payment.\n\n### Initialization\nThe first step is to initialize `DadeMobile` with provided API Key and API URL:\n\n```js\nconst dadeMobile = require('@dadesystems/dademobile')(API_KEY, API_URL);\n```\n\nOr using ES modules:\n\n```js\nimport { DadeMobile } from '@dadesystems/dademobile';\nconst dadeMobile = new DadeMobile(API_KEY, API_URL);\n```\n\n### Stage Payment\nAfter initialization, the next step is to stage a payment. The payment amount can be set when staging a payment, or after a payment has already been staged, depending on your workflow. If a payment was previously staged but not confirmed, then it will be resumed.\n\n#### Params\n- `external_user_id`: Unique identifer for your user making the payment.\n- `external_reference`: (Optional) your reference for the payment.\n- `amount`: (Optional) payment amount. This can be set after staging the payment.\n\n#### Example\n```js\ndadeMobile.stagePayment({ \n  external_user_id: '123',\n  external_reference: '321',\n  amount: 5.00\n})\n.then((payment) => {\n  // Payment successfully staged\n})\n.catch((error) => {\n  // Failed to stage payment\n});\n```\n\n### Set Amount \nSet the amount of a staged payment.\n\n#### Params\n- `payment`: The staged payment.\n- `amount`: Payment amount.\n\n#### Example\n```js\ndadeMobile.setAmount(payment, 15.00)\n.then((payment) => {\n  // Payment amount updated successfully\n})\n.catch((error) => {\n  // Failed to update payment amount\n});\n```\n\n### Upload Image\nUpload image for a staged payment.\n\n#### Params\n- `payment`: The staged payment.\n- `imageType`: The type of image being uploaded:\n  - `dadeMobile.ImageTypes.CHECK_FRONT` \n  - `dadeMobile.ImageTypes.CHECK_REAR`\n- `encodedImage`: Base64 encoding of the image data.\n\n#### Example\n```js\ndadeMobile.uploadImage(\n  payment, \n  dadeMobile.ImageTypes.CHECK_FRONT, \n  encodedImage\n)\n.then((payment) => {\n  // Image uploaded successfully\n})\n.catch((error) => {\n  // Failed to upload image\n});\n```\n\n### Confirm Payment\nOnce a payment is staged and all properties have been set, the final step is to confirm the payment. If the payment fails validation, then validation errors will be returned. See the next section for error codes.\n\n#### Params\n- `payment`: The staged payment.\n\n#### Example\n```js\ndadeMobile.confirmPayment(payment)\n.then((payment) => {\n  // Payment confirmed successfully\n})\n.catch((error) => {\n  // Failed to confirm payment\n  // Handle validation errors if present\n  const { validationErrors } = error;\n});\n```\n\n#### Success Response\nExample payment data returned upon successful confirmation of a payment:\n```js\n{\n  id: 1001,\n  type: \"Check Payment\",\n  status: \"Completed\",\n  amount: 5.0,\n  external_user_id: \"123\",\n  external_reference: \"321\",\n  date: \"2019-02-12\",\n  check_routing_number: \"123456789\",\n  check_account_number: \"987654321\",\n  check_number: \"2808\"\n}\n```\n\n### Validation Errors\nValidation errors are returned as an array of error objects containing the error code and error message, example:\n\n```js\n[\n  {\n    error_code: 2001,\n    error_message: 'Front image required'\n  }\n]\n```\n\nThe following is a list of validation error codes and descriptions:\n\n```yaml\n2000: Check amount required\n2001: Check front image required\n2002: Check rear image required\n2003: Check image still processing\n2004: Check IQA failed\n2005: Check duplicate found\n2006: Check amount mismatch\n```\n\n### Using Promises\nEvery method returns a chainable promise:\n\n```js\ndadeMobile.stagePayment({ \n  external_user_id: '123',\n  external_reference: '321',\n  amount: 5.00\n})\n.then((payment) => {\n  return dadeMobile.setAmount(payment, 10.00);\n})\n.then((payment) => {\n  return dadeMobile.uploadImage(\n    payment, \n    dadeMobile.ImageTypes.CHECK_FRONT, \n    encodedImage\n  );\n})\n.then((payment) => {\n  return dadeMobile.uploadImage(\n    payment, \n    dadeMobile.ImageTypes.CHECK_REAR, \n    encodedImage\n  );\n})\n.then((payment) => {\n  return dadeMobile.confirmPayment(payment);\n})\n.then((payment) => {\n  console.log(payment);\n})\n.catch((error) => {\n  console.log(error);\n});\n```\n","readmeFilename":"README.md","gitHead":"fd42207f73d0e61b2227aa0df3bf6ec5b79d5f27","_id":"@dadesystems/dademobile@1.2.0-beta.1","_nodeVersion":"10.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-JBOi53T4TTUePG4DiAOWmawlU/YKLOI6ZEwafuWVEG9ywoFTDE6v+bMx7flebA3xW4kAKzGmI3Tc22Km/6pwMg==","shasum":"a78558bb4d8b0bae12475899a7191f9b62510de9","tarball":"https://registry.npmjs.org/@dadesystems/dademobile/-/dademobile-1.2.0-beta.1.tgz","fileCount":6,"unpackedSize":26480,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJccDgoCRA9TVsSAnZWagAAllAP/jKe439+WYKqmTe/jc+a\n5QobhDXpo1hcBEr7buq3aM2TNFn5NPHrzTc2nN5SdxqF36xcIfit0gVLOdQi\nRZIgAkrCGF5HMpQKLBr+l4B4sFbKQfcM13JRqC8iYuN8L6RYivhE18VGdlix\nkoipLPF6L5ujEO2HID3Ekcg1dVvo6TXiHhHfmzp7syt5WyK6LkmauMPRo71+\ne/gnJaI4b8/VyXnfh2TzEhu6eKkqeexAI9YMZ96P4scnwqljL6iGywrMV/6R\niiAt4YQsuvhs9FJSOFeA2Kb8G2/c4xt6JL6bL5OdpTSmfJI/Zm0hosTVkJN8\n2HBzrLnxfSPMCjy2TZG2ad+om0S+Xm1x4y4IfN0+w6Eiv8qrQLCoCgNLHMgX\n7bVEHUe+JvW+XSF0EcQa6qBWjcdUcoXEwToRAfd+3+vqOoeaaxZ0uIcgyCDv\npz/y0iQUO9LG4ZAv03QYnSV+KnDRc9obdUsvl8coB3bLn8ETPX9KrA0kCsls\nsipx//rjbJT/+ccST330o7BMrCGvWZYeeYaJ/XVv8jWepMl2g//uzDewxw5L\n6bPoKQib5Xm+Yw8hULduDdOU1+i3/EljLhOC5oyV7GxEE1mZ8e0I92QzPqoj\nW68SSQ4txh8oQQCaKSn6zg7Ggzk7VprKZyVvZ9bouH1GcVygJXdXNJ1wUof3\nxnNZ\r\n=DfWM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqGdI9GyicKGM9MgthPn1/i0CB3TELXtIDaZ9tGkW9RQIhAOJjHazKB7GzJkFVZbPlCl8T5qX95VdW7k9cgaUtbR3X"}]},"maintainers":[{"email":"cwalker86@gmail.com","name":"cwalker86"},{"email":"mohaballi@dadesystems.com","name":"mohaballi"}],"_npmUser":{"name":"mohaballi","email":"mohaballi@dadesystems.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dademobile_1.2.0-beta.1_1550858279271_0.8260954901086961"},"_hasShrinkwrap":false},"1.2.0":{"name":"@dadesystems/dademobile","version":"1.2.0","description":"JavaScript library for Dade Mobile API","license":"MIT","author":{"name":"DadeSystems Inc"},"contributors":[{"name":"Mohaballi Barakat"},{"name":"Cyrus Walker"},{"name":"Joe Ciancio"},{"name":"Bobby Johnson","email":"bobby@madnesslabs.net","url":"https://madnesslabs.net"}],"main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","scripts":{"build":"npm run build:types && rollup -c","build:types":"tsc --emitDeclarationOnly","prepare":"npm run build","prepublish":"npm run build","test":"jest","test-watch":"jest --watch"},"devDependencies":{"jest":"^24.1.0","rollup":"^1.2.1","rollup-plugin-typescript":"^1.0.0","ts-jest":"^24.0.0","tslib":"^1.9.3","typescript":"^3.3.3333","xhr-mock":"^2.4.1"},"jest":{"moduleFileExtensions":["ts","js"],"transform":{"\\.(ts)$":"ts-jest"},"testRegex":"/__test__/.*\\.(ts|js)$"},"gitHead":"c1bd40b7ade613f1510abd4722c3247400ae2479","_id":"@dadesystems/dademobile@1.2.0","_nodeVersion":"10.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-ZemksXVVEsuD/3L0HTvgh4dy4qdEyPLGLDPACmsOJ9ZbteXMD/EeHRXKwIGrIA1pdKd2OZfeUbv46s3fEWq4Qg==","shasum":"baf4f987dc557391847dfee51799d0ba36791553","tarball":"https://registry.npmjs.org/@dadesystems/dademobile/-/dademobile-1.2.0.tgz","fileCount":6,"unpackedSize":27531,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcd4W3CRA9TVsSAnZWagAA8MwP/0ROhDSJnVJ1KLwmoVYk\nrhmEkZY1JAoIAOjjSgL176vbGX0V3Ypov1DhYqdcNpUVSouLcbzROcD4np4/\nFjADNwPbA2ZUKkPDYR2ZycYYd1pb9BC7SOQYe08R2KTxirA0lPajyk/Gi72D\n4wbAngfv8mArsKoXTKvBDbiQIXhfVFvhaBnJW9tcqHvNuLwnc4APJNzbD55F\nqCAxKFycRZp7XDvvgGC6lnLTAw47uImN2YIEFG5OyZzFVfGA5x/KTaQ0q48F\nsGW2YKBlgSGeOXGlOShT9onXatDRR1VE+djZYdcEK6Ok69VcEl2ZBAYMT/n9\nVdql2SoJB17BocaprBVDV9e4ht9W6NA2NS4DyfoXDUHuyFfAwLPpa1ukcs4z\nrbaVVEVZi5/Wm0dLGalhQNRAtsM5Zy1NgZA7tRQ0eIDL85V2zPyFS21WaQnp\nUhKri4fKo1BcS1E6HsBacbEb8fgDDuVs+emYqaqutwfjEj3RWxLIF+1aKBz+\ndInQrjFksPU2hkgUFclMIqDYz1OjLn88cZCLnbKgVcMXHicd9PE98NBPLEnN\njPbX0Hq+ljrmfMNw0DtIX2aEAV63esE7xgrflW1TO44qc02vcXZoB/Q11sSz\n7jxeQLGOBy4JO265Zc8sCG3z0o/XfSiromG5MDhb07dMi+D4D7fekwpsTQ4V\nYzRi\r\n=5vo/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAsTWSM95VFeB7vj3So4wYZOVmsXvfcBve8dOMKKuaJrAiBUzagXgrHsg/ZGn9UVsLnHV6jDtAz3GFNCMikPOoZNCg=="}]},"maintainers":[{"email":"cwalker86@gmail.com","name":"cwalker86"},{"email":"mohaballi@dadesystems.com","name":"mohaballi"}],"_npmUser":{"name":"mohaballi","email":"mohaballi@dadesystems.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dademobile_1.2.0_1551336886743_0.9386416424403117"},"_hasShrinkwrap":false},"1.2.1":{"name":"@dadesystems/dademobile","version":"1.2.1","description":"JavaScript library for Dade Mobile API","license":"MIT","author":{"name":"DadeSystems Inc"},"contributors":[{"name":"Mohaballi Barakat"},{"name":"Cyrus Walker"},{"name":"Joe Ciancio"},{"name":"Bobby Johnson","email":"bobby@madnesslabs.net","url":"https://madnesslabs.net"}],"main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","scripts":{"build":"npm run build:types && rollup -c","build:types":"tsc --emitDeclarationOnly","prepare":"npm run build","prepublish":"npm run build","test":"jest","test-watch":"jest --watch"},"devDependencies":{"jest":"^24.1.0","rollup":"^1.2.1","rollup-plugin-typescript":"^1.0.0","ts-jest":"^24.0.0","tslib":"^1.9.3","typescript":"^3.3.3333","xhr-mock":"^2.4.1"},"jest":{"moduleFileExtensions":["ts","js"],"transform":{"\\.(ts)$":"ts-jest"},"testRegex":"/__test__/.*\\.(ts|js)$"},"gitHead":"ca0ddd70574f9add8f8b5b4b3723e27554dc5fc6","_id":"@dadesystems/dademobile@1.2.1","_nodeVersion":"8.11.2","_npmVersion":"6.11.3","dist":{"integrity":"sha512-jGhKSMVftWT0VHz05pjzD8OWrKT4fqjWwwsuQ2QMC2b6tltlQIWxQ0FKZLmUZuv3Itcu8qMfZiEaZhajS9c4hg==","shasum":"d657da73d999aa9b26d3c4a9244459cb97eede78","tarball":"https://registry.npmjs.org/@dadesystems/dademobile/-/dademobile-1.2.1.tgz","fileCount":6,"unpackedSize":28358,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdi/r5CRA9TVsSAnZWagAAwJAP/1rDc6LhTIIK2P2VN5a2\numOhOZ4HtveMpuYN51jGwD6OXrZzI6re+zzoma6AaqrLxAOdpC6l+xu9ijaH\nT/hjpnsXR2T5IIss74NY4YRqkry2D4iJKFoYnLkqHZJhIKhtTwy2ug+t4mqF\naNvJyKOsx1nmAZmUg1uHoxhqErHnUnlNLJIBf6Uy2Sb/nroMfzueZpdnExOH\ntf5VZVBZLJwK7pXMP1QQUoAFBBqqjquxlGBbAOHMSmNJL7OK2boCzFRkpXN3\n0UwxEq6WfY+HXbgVSCBD2j30HHmIVWFZOwsa05Kmn+HpcRIrumtRr8/pKOqm\nsjGOAXZ8RTr20Fz5uQvTqe/vk82mCSokAca8ni8pQz7FG0zK5QYyXO71AcqP\n6fYcJN27NL9Bs+qOBmiSqjTjPtfcA/Dv5Mg22dMd6YzGJGvKKZru3ECm+H5d\ntwBV9h4h79tkks2i/cLlNYIUr5vajUkrOKjL7K+ACcBBvS+qIcDUsGmlZBO6\nXdxzxv4yYN6hSuAco0utSMu9Lu/6UzyzOEEH7VQ7v2jCjqGhQzow6ddc6CUA\nITu3tRYYMHO7K1+RmoOG4Y6KPz1vsziLcWwrbvooFLenNGjr64xn2ilGwr4V\nmzClJinhDLH3p9ArHr1ba1YVUDB2Vq7QXQZbx/zW4DtvVie9VP9nZeAUD0B8\nDJRj\r\n=sfPp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG46hRnUUQxMsPJyHF0nELOZ8IByBV4AbDHRLH2INfFxAiA7QrjddCaC/Veoap2FvJuszFGukzA2osaciFl29d3oJQ=="}]},"maintainers":[{"email":"cwalker86@gmail.com","name":"cwalker86"},{"email":"mohaballi@dadesystems.com","name":"mohaballi"}],"_npmUser":{"name":"mohaballi","email":"mohaballi@dadesystems.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dademobile_1.2.1_1569454841302_0.8059970867211441"},"_hasShrinkwrap":false}},"time":{"created":"2019-02-08T02:09:03.027Z","1.0.0-rc1":"2019-02-08T02:09:03.330Z","modified":"2022-04-05T02:32:44.786Z","1.0.0-rc2":"2019-02-11T16:51:50.320Z","1.0.0":"2019-02-11T22:26:35.898Z","1.0.1":"2019-02-11T22:32:39.719Z","1.0.2":"2019-02-13T01:33:03.273Z","1.0.3":"2019-02-13T05:08:39.388Z","1.2.0-beta.0":"2019-02-22T03:17:37.311Z","1.2.0-beta.1":"2019-02-22T17:57:59.374Z","1.2.0":"2019-02-28T06:54:46.873Z","1.2.1":"2019-09-25T23:40:41.410Z"},"maintainers":[{"email":"cwalker86@gmail.com","name":"cwalker86"},{"email":"mohaballi@dadesystems.com","name":"mohaballi"}],"description":"JavaScript library for Dade Mobile API","author":{"name":"DadeSystems Inc"},"license":"MIT","readme":"# DadeMobile.js\nJavaScript library for Dade Mobile API. This library provides convenient access to the Dade Mobile API from applications written in JavaScript.\n\n## Sample App\nApache Cordova sample app demonstrating the use of DadeMobile.js:\nhttps://github.com/DadeSystems/CordovaSample\n\n## Installation\nInstall the package with npm:\n\n```bash\nnpm install @dadesystems/dademobile --save\n```\n\nOr using yarn:\n```bash\nyarn add @dadesystems/dademobile\n```\n\n## Usage\n\nThe general workflow for capturing payments is as follows:\n\n- Initialize `DadeMobile` with provided API Key and API URL.\n- Use instance of `DadeMobile` to stage, update, and confirm a payment.\n\n### Initialization\nThe first step is to initialize `DadeMobile` with provided API Key and API URL:\n\nCommonJS:\n```js\nconst { DadeMobile } = require('@dadesystems/dademobile');\n```\nOr using ES modules:\n\n```js\nimport { DadeMobile } from '@dadesystems/dademobile';\n```\n\n#### Initialize\n```js\nconst dadeMobile = new DadeMobile(API_KEY, API_URL);\n```\n\n### Stage Payment\nAfter initialization, the next step is to stage a payment. The payment amount can be set when staging a payment, or after a payment has already been staged, depending on your workflow. If a payment was previously staged but not confirmed, then it will be resumed.\n\n#### Params\n- `external_user_id`: Unique identifer for your user making the payment.\n- `external_reference`: (Optional) your reference for the payment.\n- `amount`: (Optional) payment amount. This can be set after staging the payment.\n\n#### Example\n```js\ndadeMobile\n  .stagePayment({ \n    external_user_id: '123',\n    external_reference: '321',\n    amount: 5.00\n  })\n  .then((payment) => {\n    // Payment successfully staged\n  })\n  .catch((error) => {\n    // Failed to stage payment\n  });\n```\n\n### Set Amount \nSet the amount of a staged payment.\n\n#### Params\n- `payment`: The staged payment.\n- `amount`: Payment amount.\n\n#### Example\n```js\ndadeMobile\n  .setAmount(payment, 15.00)\n  .then((payment) => {\n    // Payment amount updated successfully\n  })\n  .catch((error) => {\n    // Failed to update payment amount\n  });\n```\n\n### Upload Image\nUpload image for a staged payment.\n\n#### Params\n- `payment`: The staged payment.\n- `imageType`: The type of image being uploaded (`checkfront` or `checkrear`).\n- `encodedImage`: Base64 encoding of the image data.\n\n#### Example\n```js\ndadeMobile\n  .uploadImage(payment, 'checkfront', encodedImage)\n  .then((payment) => {\n    // Image uploaded successfully\n  })\n  .catch((error) => {\n    // Failed to upload image\n  });\n```\n\n### Confirm Payment\nOnce a payment is staged and all properties have been set, the final step is to confirm the payment. If the payment fails validation, then validation errors will be returned. See the next section for error codes.\n\n#### Params\n- `payment`: The staged payment.\n\n#### Example\n```js\ndadeMobile\n  .confirmPayment(payment)\n  .then((payment) => {\n    // Payment confirmed successfully\n  })\n  .catch((error) => {\n    // Failed to confirm payment\n    // Handle validation errors if present\n    const { errors } = error;\n  });\n```\n\n#### Success Response\nExample payment data returned upon successful confirmation of a payment:\n```js\n{\n  id: 1001,\n  type: \"Check Payment\",\n  status: \"Completed\",\n  amount: 5.0,\n  external_user_id: \"123\",\n  external_reference: \"321\",\n  date: \"2019-02-12\",\n  check_routing_number: \"123456789\",\n  check_account_number: \"987654321\",\n  check_number: \"2808\"\n}\n```\n\n### Validation Errors\nValidation errors are returned as an array of error objects containing the error code and error message, example:\n\n```js\n[\n  {\n    error_code: 2001,\n    error_message: 'Front image required'\n  }\n]\n```\n\nThe following is a list of validation error codes and descriptions:\n\n```yaml\n2000: Check amount required\n2001: Check front image required\n2002: Check rear image required\n2003: Check image still processing\n2004: Check IQA failed\n2005: Check duplicate found\n2006: Check amount mismatch\n```\n\n### Check Amount Mismatch\nWhen check read amount validation is enabled, and the amount set for the payment does not match the amount read from the check, a check amount mismatch validation error will be returned containing the amount read, example:\n\n```js\n[\n  {\n    error_code: 2006,\n    error_message: 'Check amount mismatch',\n    error_data: {\n      read_amount: 10.0\n    }\n  }\n]\n```\n\nThis can be resolved by updating the payment with the correct amount before resubmitting. If the amount was read incorrectly, you can ignore the amount mismatch when resubmitting, example:\n\n```js\ndadeMobile\n  .confirmPayment(payment, { \n    ignore_check_amount_mismatch: true \n  })\n```\n\n### Using Promises\nEvery method returns a chainable promise:\n\n```js\ndadeMobile\n  .stagePayment({ \n    external_user_id: '123',\n    external_reference: '321',\n    amount: 5.00\n  })\n  .then((payment) => {\n    return dadeMobile.setAmount(payment, 10.00);\n  })\n  .then((payment) => {\n    return dadeMobile.uploadImage(payment, 'checkfront' encodedImage);\n  })\n  .then((payment) => {\n    return dadeMobile.uploadImage(payment, 'checkrear' encodedImage);\n  })\n  .then((payment) => {\n    return dadeMobile.confirmPayment(payment);\n  })\n  .then((payment) => {\n    console.log(payment);\n  })\n  .catch((error) => {\n    console.log(error);\n  });\n```\n","readmeFilename":"README.md","contributors":[{"name":"Mohaballi Barakat"},{"name":"Cyrus Walker"},{"name":"Joe Ciancio"},{"name":"Bobby Johnson","email":"bobby@madnesslabs.net","url":"https://madnesslabs.net"}]}