---
title: Withdrawal Fields
slug: legacy-fraud-apis/withdrawal-fields
createdAt: 2026-06-10T15:59:14.464Z
---

{
  "id": "2sftHFfX7Sv7ZDb17RjD0",
  "type": "api-oas-v2",
  "data": {
    "method": "POST",
    "url": "https://icnow01.accertify.net/icNowImport/{importerIdWithdrawal}",
    "name": "Withdrawal Fields",
    "description": "",
    "contentType": "application/json",
    "request": {
      "pathParameters": [
        {
          "kind": "required",
          "name": "importerIdWithdrawal",
          "type": "string",
          "description": ""
        }
      ],
      "headerParameters": [],
      "queryParameters": [],
      "bodyDataParameters": [
        {
          "kind": "optional",
          "name": "withdrawal",
          "type": "object",
          "description": "The inputs to record the withdrawal event",
          "schema": [
            {
              "name": "eventSource",
              "kind": "required",
              "type": "string<agentPhone | agentStore | affiliate | kiosk | mobileApp | other | web>",
              "description": "<p>[REQUIRED] Required. Where or how the event originated.</p>",
              "enum": [
                "agentPhone",
                "agentStore",
                "affiliate",
                "kiosk",
                "mobileApp",
                "other",
                "web"
              ]
            },
            {
              "name": "success",
              "kind": "required",
              "type": "boolean",
              "description": "<p>[REQUIRED] Required. Whether the event was successful or not.</p>\n<p>Options are:</p>\n<ul>\n<li>true</li>\n<li>false</li>\n</ul>",
              "enum": [
                "true",
                "false"
              ]
            },
            {
              "name": "isMobileAppInstalled",
              "kind": "required",
              "type": "boolean",
              "description": "<p>[REQUIRED] Required. Whether the withdrawal was made with a mobile application.</p>\n<p>Options are:</p>\n<ul>\n<li>true</li>\n<li>false</li>\n</ul>",
              "enum": [
                "true",
                "false"
              ]
            },
            {
              "name": "withdrawalConfirmation",
              "kind": "required",
              "type": "string",
              "description": "<p>[REQUIRED] Required. Confirmation number for the withdrawal.</p>\n<p><strong>Note</strong>: This could be internal or external. Whatever number can be looked up in your system.</p>"
            },
            {
              "name": "withdrawal",
              "kind": "required",
              "type": "object",
              "description": "<p>[REQUIRED] Object introducing withdrawal fields.</p>",
              "example": "",
              "schema": [
                {
                  "name": "withdrawalID",
                  "kind": "required",
                  "type": "string",
                  "description": "<p>[REQUIRED] Required. Unique identifier you assigned to the withdrawal.</p>",
                  "example": 120955
                },
                {
                  "name": "withdrawalType",
                  "kind": "required",
                  "type": "string<preAuthorization | postAuthorization>",
                  "description": "<p>[REQUIRED] Required. The timing of the withdrawal.</p>\n<p>Options are:</p>\n<ul>\n<li>preAuthorization</li>\n<li>postAuthorization</li>\n</ul>",
                  "enum": [
                    "preAuthorization",
                    "postAuthorization"
                  ]
                },
                {
                  "name": "withdrawalDateTime",
                  "kind": "required",
                  "type": "string<date-time>",
                  "description": "<p>[REQUIRED] Required. Date and time the withdrawal was authorized formatted in yyyy-MM-dd'T'HH:mm</p><div></div>. This cannot be a future date.<p></p>",
                  "example": "2020-08-28 19:00:00-04:00",
                  "format": "date-time"
                },
                {
                  "name": "withdrawalTotalAmount",
                  "kind": "required",
                  "type": "number<decimal>",
                  "description": "<p>[REQUIRED] Required. Total amount, including taxes, of all withdrawals made in the currency specified by the currencyCode field.</p>",
                  "example": 450,
                  "format": "decimal"
                },
                {
                  "name": "currencyCode",
                  "kind": "required",
                  "type": "string",
                  "description": "<p>[REQUIRED] Required. Consumer's local three-character currency code in ISO 4217 format. This applies to all amounts in the API.</p>",
                  "example": "USD"
                }
              ]
            },
            {
              "name": "ipAddress",
              "kind": "optional",
              "type": "string",
              "description": "<p>[IMPERATIVE] Imperative. User's IP Address you captured. Maximum field length = 45 characters.</p>",
              "example": "192.168.41.17"
            },
            {
              "name": "userAgent",
              "kind": "optional",
              "type": "string",
              "description": "<p>[IMPERATIVE] Imperative. User Agent of the user's browser and operating system captured by the site owner. Maximum field length = 250 characters.</p>",
              "example": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:72.0) Gecko/20100101 Firefox/72.0"
            },
            {
              "name": "devicePayload",
              "kind": "optional",
              "type": "string",
              "description": "<p>[IMPERATIVE] Imperative. From Accertify Device, the user's device data sent by our Collector script. You will take the devicePayload from the script and add additional server-side properties to it as described in our \"Device Payload via the Interceptas Platform\" section of our Accertify Data Collector Script Implementation document. Maximum field length = 150,000 characters.</p>\n<p><strong>Note</strong>: We recommend this field for high volume, low latency clients. You can send this instead of the  deviceTransactionID.</p>",
              "example": "afklasdjlasdjl3l23j23423klj"
            },
            {
              "name": "deviceTransactionID",
              "kind": "optional",
              "type": "string",
              "description": "<p>[IMPERATIVE] Imperative. From Accertify Device, the device Transaction ID from the Collector JS or SDK file captured by the site or application owner. Maximum field length = 100 characters.</p>\n<p><strong>Notes</strong>:</p>\n<ul>\n<li>We recommend you send devicePayload instead of deviceTransactionID. We are leaving this here for backward compatibility.</li>\n<li>You do not have to put in logic to account for deviceTransactionID returning blank. This can happen if JavaScript is blocked or if it is an event taken over the phone.</li>\n</ul>",
              "example": "e1a1aade06e2557f34036eeb06173faf1fa05c64959383"
            },
            {
              "name": "ubaID",
              "kind": "optional",
              "type": "string",
              "description": "<p>[IMPERATIVE] Imperative. From Accertify UBA, the ID used to reference behavior data already captured by Accertify. Maximum field length = 100 characters.</p>\n<p>This value is retrieved from:</p>\n<ul>\n<li>Browser from the JavaScript function getToken</li>\n<li>iOS/Android from the SDK?function getUbaId()</li>\n</ul>\n<p><strong>Note</strong>: You do not have to put in logic to account for ubaID returning blank.   This can happen if JavaScript is blocked or if it is an event taken over the phone.</p>",
              "example": "3143e969395de649c48c1c9f3e363a3e7ae7"
            },
            {
              "name": "emailAddress",
              "kind": "optional",
              "type": "string",
              "description": "<p>[IMPERATIVE] Imperative. Either the email address associated with their account, inventory hold, or with this payment (for guest checkout). Maximum field length = 100 characters.</p>",
              "example": "a@b.com"
            },
            {
              "name": "ubaEvents",
              "kind": "optional",
              "type": "string",
              "description": "<p>[IMPERATIVE] Imperative. From Accertify UBA, a payload of the most recent fields. This is used to make sure we have up to the second information.</p>",
              "example": "lasjdlkfdsljelkrrjwl3kl324j32k432"
            },
            {
              "name": "pageID",
              "kind": "optional",
              "type": "string",
              "description": "<p>[IMPERATIVE] Imperative. From Accertify UBA, the unique page ID defined from the Collector script.</p>",
              "example": "lk32j4lk324lkj324"
            },
            {
              "name": "username",
              "kind": "optional",
              "type": "string",
              "description": "<p>[IMPERATIVE] Imperative. User's username if your site allows logging in using username. Maximum field length = 100 characters.</p>",
              "example": "erlichb"
            },
            {
              "name": "authenticationMethod",
              "kind": "optional",
              "type": "string<appAuthenticator | appPush | FIDO | other | password | magicLink | SMS>",
              "description": "<p>[IMPERATIVE] Imperative. How the user authenticated onto your site.</p>",
              "enum": [
                "appAuthenticator",
                "appPush",
                "FIDO",
                "other",
                "password",
                "magicLink",
                "SMS"
              ]
            },
            {
              "name": "latitude",
              "kind": "optional",
              "type": "number",
              "description": "<p>[OPTIONAL] Optional. The HTML 5 or GPS based latitude location of the user in decimal degrees format without letters. Maximum field length = 10 characters.</p>",
              "example": "Numbers with up to 8 decimals, 58.99993333"
            },
            {
              "name": "longitude",
              "kind": "optional",
              "type": "number",
              "description": "<p>[OPTIONAL] Optional. The HTML 5 or GPS based longitude location of the user in decimal degrees format without letters. Maximum field length = 10 characters.</p>",
              "example": "Numbers with up to 8 decimals, 58.99993333"
            },
            {
              "name": "brand",
              "kind": "optional",
              "type": "string",
              "description": "<p>[OPTIONAL] Optional. The brand submitting the event. Maximum field length = 50 characters.</p>\n<p><strong>Note</strong>: For clients with multiple brands under one corporate entity.</p>",
              "example": "Acme"
            },
            {
              "name": "sessionID",
              "kind": "optional",
              "type": "string",
              "description": "<p>[OPTIONAL] Optional. From Accertify UBA, the user's Session ID defined by you for the user's web browsing activity. Maximum field length = 250 characters.</p>",
              "example": "961b521892e68f6c4d1c8459dfb530466eed"
            },
            {
              "name": "ubaSessionID",
              "kind": "optional",
              "type": "string",
              "description": "<p>[OPTIONAL] Optional. From Accertify UBA, the user's Session ID defined by Accertify for the user's web browsing activity. Maximum field length = 50 characters.</p>\n<p><strong>Note</strong>: Ideally you would send this or your sessionID.</p>",
              "example": "961b521892e68f6c4d1c8459dfb530466eed"
            }
          ],
          "isExpanded": true
        }
      ],
      "formDataParameters": [],
      "oAuthParameters": []
    },
    "responses": [
      {
        "statusCode": "200",
        "description": "Success response",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "example": "{\"transaction-results\":{\"transaction-id\":\"23\",\"cross-reference\":\"f85b9ed2-fe5a-425a-9ff5-a9988e56110b\",\"rules-tripped\":\"5237260000001680431:obsrv_Transaction Total Amount Greater Than 500:500;\",\"total-score\":500,\"recommendation-code\":\"ACCEPT\",\"remarks\":\"\"},\"validation_response\":{\"warnings\":{\"ipAddress\":\"ipAddress is invalid\"},\"originalValues\":{\"ipAddress\":\"1\"},\"status\":\"true\"}}",
            "description": "Success response",
            "customType": "successResponse",
            "schema": [
              {
                "name": "transaction-results",
                "kind": "optional",
                "type": "object",
                "description": "A block indicating the results of your successful call.",
                "example": "",
                "schema": [
                  {
                    "name": "transaction-id",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p>Transaction's unique identifier. Typically, this is your order number.</p>\n<p><strong>Note</strong>: This is the transactionID field.</p>"
                  },
                  {
                    "name": "cross-reference",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier Accertify assigns to this transaction. It is a cross reference to the transactionID field."
                  },
                  {
                    "name": "rules-tripped",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p>Identifier, description, and score of the rules that tripped on this transaction.</p>\n<p><strong>Example</strong>: 5237260000001628419</p><div></div> Between IP Postal Code and Billing Postal Code Greater Than 1000<div></div>\nWhere:<p></p>\n<ul>\n<li>Identifier: 5237260000001628419</li>\n<li>Description: apir_Distance Between IP Postal Code and Billing Postal Code Greater Than 1000</li>\n<li>Score: 500</li>\n</ul>"
                  },
                  {
                    "name": "total-score",
                    "kind": "optional",
                    "type": "integer",
                    "description": "The accumulated fraud score of this transaction."
                  },
                  {
                    "name": "recommendation-code",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p>Our transaction recommendation.</p>\n<ul>\n<li>ACCEPT</li>\n<li>REJECT</li>\n<li>REVIEW</li>\n<li>ACCEPT_POLICY</li>\n<li>REJECT_POLICY</li>\n<li>REVIEW_POLICY</li>\n</ul>"
                  },
                  {
                    "name": "remarks",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p>Details left by an analyst if they resolve the transaction.</p>\n<p><strong>Example</strong>: AT: 5/5/21 1:04</p><div></div> PM CDT<p></p>"
                  }
                ]
              },
              {
                "name": "validation_response",
                "kind": "optional",
                "type": "object",
                "description": "",
                "example": "",
                "schema": [
                  {
                    "name": "warnings",
                    "kind": "optional",
                    "type": "object",
                    "description": "Map of field names and warning messages that may impair fraud scoring if not resolved.",
                    "example": "",
                    "schema": []
                  },
                  {
                    "name": "originalValues",
                    "kind": "optional",
                    "type": "object",
                    "description": "Map of field names and input values present when warnings or errors are reported. \n\nThe values here should be fixed to validate.                 \n",
                    "example": "",
                    "schema": []
                  },
                  {
                    "name": "status",
                    "kind": "optional",
                    "type": "string<true when there are no errors | false when there are errors>",
                    "description": "<p>Whether the validation has errors.</p>\n<p>Options are:</p>\n<ul>\n<li>true when there are no errors.</li>\n<li>false when there are errors.</li>\n</ul>",
                    "enum": [
                      "true when there are no errors",
                      "false when there are errors"
                    ]
                  }
                ]
              }
            ],
            "modelRef": "#/definitions/successResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "400",
        "description": "Error response",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "example": "{\"validation_response\":{\"errors\":{\"Transaction ID\":\"A unique transaction ID is required (max length = 40)\",\"ipAddress\":\"ipAddress is required\"},\"warnings\":{},\"originalValues\":{\"transaction-id\":\"23\",\"ipAddress\":\"1\"},\"status\":\"false\"}}",
            "description": "Error response",
            "customType": "errorResponse",
            "schema": [
              {
                "name": "validation_response",
                "kind": "optional",
                "type": "object",
                "description": "",
                "example": "",
                "schema": [
                  {
                    "name": "errors",
                    "kind": "optional",
                    "type": "object",
                    "description": "Map of field names and error messages that have prevented processing of the transaction.",
                    "example": "",
                    "schema": []
                  },
                  {
                    "name": "warnings",
                    "kind": "optional",
                    "type": "object",
                    "description": "Map of field names and warning messages that may impair fraud scoring if not resolved.",
                    "example": "",
                    "schema": []
                  },
                  {
                    "name": "originalValues",
                    "kind": "optional",
                    "type": "object",
                    "description": "Map of field names and input values present when warnings or errors are reported. \n\nThe values here should be fixed to validate.\n",
                    "example": "",
                    "schema": []
                  },
                  {
                    "name": "status",
                    "kind": "optional",
                    "type": "string<true when there are no errors | false when there are errors>",
                    "description": "<p>Whether the validation has errors.</p>\n<p>Options are:</p>\n<ul>\n<li>true when there are no errors.</li>\n<li>false when there are errors.</li>\n</ul>",
                    "enum": [
                      "true when there are no errors",
                      "false when there are errors"
                    ]
                  }
                ]
              }
            ],
            "modelRef": "#/definitions/errorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "500",
        "description": "",
        "jsonExample": "",
        "isExpanded": true
      }
    ],
    "examples": {
      "languages": [
        {
          "id": "example-0-curl",
          "language": "curl",
          "label": "cURL",
          "code": "curl --request POST \\\n     --url https://icnow01.accertify.net/icNowImport/{importerIdWithdrawal} \\\n     --header 'accept: application/json' \\\n     --header 'content-type: application/json' \\\n     --data '{\n     \"eventSource\": \"\",\n     \"success\": \"\",\n     \"isMobileAppInstalled\": \"\",\n     \"withdrawalConfirmation\": \"\",\n     \"withdrawal\": {\n     \"withdrawalID\": 120955,\n     \"withdrawalType\": \"\",\n     \"withdrawalDateTime\": \"2020-08-28 19:00:00-04:00\",\n     \"withdrawalTotalAmount\": 450,\n     \"currencyCode\": \"USD\"\n     }\n     }'"
        },
        {
          "id": "example-1-javascript",
          "language": "javascript",
          "label": "javascript",
          "code": "var myHeaders = new Headers();\nmyHeaders.append(\"accept\", \"application/json\");\nmyHeaders.append(\"content-type\", \"application/json\");\n\nvar raw = JSON.stringify({\n   \"eventSource\": \"\",\n   \"success\": \"\",\n   \"isMobileAppInstalled\": \"\",\n   \"withdrawalConfirmation\": \"\",\n   \"withdrawal\": {\n      \"withdrawalID\": 120955,\n      \"withdrawalType\": \"\",\n      \"withdrawalDateTime\": \"2020-08-28 19:00:00-04:00\",\n      \"withdrawalTotalAmount\": 450,\n      \"currencyCode\": \"USD\"\n   }\n});\n\nvar requestOptions = {\n   method: 'POST',\n   headers: myHeaders,\n   body: raw,\n   redirect: 'follow'\n};\n\nfetch(\"https://icnow01.accertify.net/icNowImport/{importerIdWithdrawal}\", requestOptions)\n   .then(response => response.text())\n   .then(result => console.log(result))\n   .catch(error => console.log('error', error));"
        },
        {
          "id": "example-2-ruby",
          "language": "ruby",
          "label": "Ruby",
          "code": "require \"uri\"\nrequire \"json\"\nrequire \"net/http\"\n\nurl = URI(\"https://icnow01.accertify.net/icNowImport/{importerIdWithdrawal}\")\n\nhttps = Net::HTTP.new(url.host, url.port)\nhttps.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"accept\"] = \"application/json\"\nrequest[\"content-type\"] = \"application/json\"\nrequest.body = JSON.dump({\n   \"eventSource\": \"\",\n   \"success\": \"\",\n   \"isMobileAppInstalled\": \"\",\n   \"withdrawalConfirmation\": \"\",\n   \"withdrawal\": {\n      \"withdrawalID\": 120955,\n      \"withdrawalType\": \"\",\n      \"withdrawalDateTime\": \"2020-08-28 19:00:00-04:00\",\n      \"withdrawalTotalAmount\": 450,\n      \"currencyCode\": \"USD\"\n   }\n})\n\nresponse = https.request(request)\nputs response.read_body\n"
        },
        {
          "id": "example-3-python",
          "language": "python",
          "label": "Python",
          "code": "import requests\nimport json\n\nurl = \"https://icnow01.accertify.net/icNowImport/{importerIdWithdrawal}\"\n\npayload = json.dumps({\n   \"eventSource\": \"\",\n   \"success\": \"\",\n   \"isMobileAppInstalled\": \"\",\n   \"withdrawalConfirmation\": \"\",\n   \"withdrawal\": {\n      \"withdrawalID\": 120955,\n      \"withdrawalType\": \"\",\n      \"withdrawalDateTime\": \"2020-08-28 19:00:00-04:00\",\n      \"withdrawalTotalAmount\": 450,\n      \"currencyCode\": \"USD\"\n   }\n})\nheaders = {\n   'accept': 'application/json',\n   'content-type': 'application/json'\n}\n\nresponse = requests.request(\"POST\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
        }
      ],
      "selectedLanguageId": "example-0-curl"
    },
    "results": {
      "languages": [
        {
          "id": "response-0-200",
          "language": "200",
          "code": "// Success response\n{\n  \"transaction-results\": {\n    \"transaction-id\": \"\",\n    \"cross-reference\": \"\",\n    \"rules-tripped\": \"\",\n    \"total-score\": 0,\n    \"recommendation-code\": \"\",\n    \"remarks\": \"\"\n  },\n  \"validation_response\": {\n    \"warnings\": {},\n    \"originalValues\": {},\n    \"status\": \"\"\n  }\n}"
        },
        {
          "id": "response-1-400",
          "language": "400",
          "code": "// Error response\n{\n  \"validation_response\": {\n    \"errors\": {},\n    \"warnings\": {},\n    \"originalValues\": {},\n    \"status\": \"\"\n  }\n}"
        },
        {
          "id": "response-2-500",
          "language": "500",
          "code": ""
        }
      ],
      "selectedLanguageId": "response-0-200"
    }
  },
  "children": [
    {
      "text": ""
    }
  ]
}