{"info":{"_postman_id":"d39de219-bbcb-460c-b112-a1c2dd46eef3","name":"Direct - Customer Experience API's v05 Documentation","description":"<html><head></head><body><h2 id=\"welcome-developers\">Welcome Developers!</h2>\n<p>Welcome to the Consumer Experience (CX) API Documentation! If you're here, it means you're ready to take your software to the next level by offering world-class consumer experiences through seamless integrations with our robust APIs.</p>\n<h3 id=\"what-can-you-do\">What Can You Do?</h3>\n<p>Our suite of APIs has been designed to help you create, manage, and optimize consumer interactions. With these APIs, you can:</p>\n<ul>\n<li><p><strong>Generate Payment Requests and Receive Payment Notifications</strong>: Easily initiate secure transactions to enhance the buying experience for your users.</p>\n</li>\n<li><p><strong>Create Forms Requests and Receive Form Completions</strong>: Use dynamic forms to capture and organize necessary data from consumers.</p>\n</li>\n<li><p><strong>Create Booking Requests and Recieve Events</strong>: Streamline the booking process with real-time updates and automated scheduling.</p>\n</li>\n</ul>\n<p>Whether you're a small startup or an enterprise, our APIs provide you with the flexibility to design consumer interactions that are customized to your specific needs.</p>\n<h3 id=\"who-is-this-documentation-for\">Who Is This Documentation For?</h3>\n<p>This documentation is aimed at developers who are responsible for integrating CX functionalities into their software products. We provide detailed technical instructions, including the types of API calls you can make, the required fields, and structure for each call, along with example code to get you started.</p>\n<h3 id=\"how-is-this-documentation-organized\">How Is This Documentation Organized?</h3>\n<ol>\n<li><p><strong>Common API Calls</strong>: General calls that can be used across multiple functionalities. These are the service location, customer and configuration calls. It also includes the call to create credientials for new locations for your customers.</p>\n</li>\n<li><p><strong>Specific Interactions</strong>: Detailed explanation of APIs for specific tasks like payment requests, forms, and online booking. Each will include a description of all the required fields and their specific structure for making API calls.</p>\n</li>\n<li><p><strong>Examples</strong>: Each API will include some example calls shown on the request/response screen (to the right) with a dropdown to choose the desired example</p>\n</li>\n</ol>\n<h3 id=\"getting-started\">Getting Started</h3>\n<p>To kick-start your integration, you'll need:</p>\n<ul>\n<li><p>Implementation API Key: This will be provided by your integration team. This is used to generate keys for each of your customer locations.</p>\n</li>\n<li><p>Base URL: This will be provided by your integration team for the appropriate environment for getting you started.</p>\n</li>\n</ul>\n<hr>\n<p>Thank you for considering Global Payments Integrated for enhancing your consumer experiences. We are excited to see what you will build!</p>\n<p>If you have any questions, feel free to reach out to our dedicated support team at <a href=\"https://cx-support@openedgepay.com\">CX-Support@openedgepay.com</a> or consult our <a href=\"https://developer.globalpaymentsintegrated.com/#/landing/splash\">FAQs</a>.</p>\n<p>Happy Coding!</p>\n<p>The CX Team.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"10238133","collectionId":"d39de219-bbcb-460c-b112-a1c2dd46eef3","publishedId":"2s93CGRb71","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"publishDate":"2023-02-16T20:41:24.000Z"},"item":[{"name":"Common Requests","item":[{"name":"Create API Key","id":"33c4b807-3688-4685-b35a-a4e31b1dce57","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"CX-API-KEY","value":"{{cx-implementation-api-key}}"}],"url":"{{baseUrl}}/cx/implementationApiKey/instances","description":"<p>Each of your customers will need to have a CX-API-KEY generated for them in order to store their specific location, customers and action details against. This is generated using your Implementation API Key that will be provided when you start your integration - Please email <a href=\"https://cx-support@openedgepay.com\">CX-Support@openedgepay.com</a> if you haven't received this yet.</p>\n<p>The resulting key will be used to Create a Service Location</p>\n","urlObject":{"path":["cx","implementationApiKey","instances"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"68aac5ca-2ed2-49d2-998b-65c8d54a335e","name":"200 Created","originalRequest":{"method":"POST","header":[{"key":"CX-API-KEY","value":"{{cx-implementation-api-key}}"}],"url":"{{baseUrl}}/cx/implementationApiKey/instances"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\n    \"CX-API-KEY\": \"{{servicelocationCxApiKey}}\"\n}"}],"_postman_id":"33c4b807-3688-4685-b35a-a4e31b1dce57"},{"name":"Create / Update Service Location","event":[{"listen":"test","script":{"id":"8e516ae5-c368-4e5b-ba7a-d885c7019e70","exec":["pm.environment.set(\"serviceLocationId\", JSON.parse(responseBody).id);"],"type":"text/javascript","packages":{}}}],"id":"bc8bb5cd-45ff-4d8c-b784-2e5b9f5b6dce","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"<p>(Required) CX Api key for the Service Location</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"name\": \"Bob Service Location\",\n\t\"locale\": \"en\",\n\t\"timezone\": \"America/Denver\",\n\t\"primaryWebsite\": \"http://www.google.com\",\n\t\"primaryPhone\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": false,\n\t\t\t\"supportsMms\": false,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": true\n\t\t},\n\t\t\"value\": \"+18015555555\"\n\t},\n\t\"primaryEmail\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false\n\t\t},\n\t\t\"value\": \"test@openedgepay.com\"\n\t},\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"suite #3\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"5555\"\n\t}\n}"},"url":"{{baseUrl}}/cx/action/setServiceLocation","description":"<p>After generating a new API key using the Implementation API Key, the next step is to establish a Service Location. To do so, issue a POST request to the setServiceLocation endpoint. A successful request will yield a response containing the details of your newly created Service Location. In case of any issues, an error message will be returned to indicate what needs to be addressed.</p>\n<p>It is advisable to store the servicelocation ID that is returned in the response for subsequent Updates and other API Calls such as the Configuration.</p>\n<p>Field requirements are noted below and examples are found to the right (with different payloads in the dropdown):</p>\n<table><tbody><tr><th>Field</th><th>Notes</th></tr><tr><td><div>name</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Required. The Business name for the location. This will be displayed on all communications and the consumer portal</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>locale</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>In <a href=\"https://en.wikipedia.org/wiki/IETF_language_tag\">IETF BCP 47</a> format.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>timezone</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required.</p><p>Must be IANA standard format. <a href=\"https://en.wikipedia.org/wiki/List_of_tz_database_time_zones\">https://en.wikipedia.org/wiki/List_of_tz_database_time_zones</a>)<br /></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryWebsite</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryPhone</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. Displays on Consumer Portal</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryPhone.value</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p><b>Required</b> if primaryPhone included. In E.164 format. Full (Java) Regex is \\+[1-9]\\d{1,14}</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryEmail</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. Displays on Consumer Portal</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryEmail.value</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p><b>Required</b> if primaryEmail included.</p><p>Full (Java) Regex is <code>^(?:[a-zA-Z0-9!#$%&amp;'\\\\*+/=?^_`{|}~-]+(?:\\\\.[a-zA-Z0-9!#$%&amp;'\\\\*+/=?^_`{|}~-]+)\\\\*|\\\"(?:[\\\\x01-\\\\x08\\\\x0b\\\\x0c\\\\x0e-\\\\x1f\\\\x21\\\\x23-\\\\x5b\\\\x5d-\\\\x7f]|\\\\\\\\[\\\\x01-\\\\x09\\\\x0b\\\\x0c\\\\x0e-\\\\x7f])\\\\*\\\")@(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]\\\\*[a-zA-Z0-9])?\\\\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]\\\\*[a-zA-Z0-9])?|\\\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-zA-Z0-9-]\\\\*[a-zA-Z0-9]:(?:[\\\\x01-\\\\x08\\\\x0b\\\\x0c\\\\x0e-\\\\x1f\\\\x21-\\\\x5a\\\\x53-\\\\x7f]|\\\\\\\\[\\\\x01-\\\\x09\\\\x0b\\\\x0c\\\\x0e-\\\\x7f])+)\\\\])$</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryAddress</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. Business Location Address. Displays on Consumer Portal</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>primaryAddress.streetAddress1</p></div><div><div><div><div></div></div></div><div></div></div></td><td><div>Required if primaryAddress included.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>primaryAddress.streetAddress2</p></div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryAddress.streetAddress3</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required if primaryAddress included.</p><p>Content:<i>{City/district, state}</i>.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryAddress.country</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required if primaryAddress included.</p><p>In <a href=\"https://en.wikipedia.org/wiki/ISO_3166-2\">iso-3166-2</a> format.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryAddress.postalCode</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Required if primaryAddress included.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Discretionary data that is stored with the Service Location. Actions related to the Service Location return this data in the response.</p><p>(examples: Create Customer, receive Payment item via PUSH or PULL)</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata.externalId</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Alternate identifier for a service location.</p><p>example <code>{\"externalId\": \"storeId-boston456\"}</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata.data</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Key-value pairs of strings.</p><p>example <code>{\"myCustomkey1\": \"myCustomValue1\", \"myCustomkey2\": \"myCustomValue2\"}</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr></tbody></table>","urlObject":{"path":["cx","action","setServiceLocation"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"5fbadcd9-d0df-46b6-9772-41fc038002c7","name":"201 Created","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location"}],"body":{"mode":"raw","raw":"{\n\t\"name\": \"Bob Service Location\",\n\t\"locale\": \"en\",\n\t\"primaryWebsite\": \"https://www.google.com\",\n\t\"timeZone\": \"US/Eastern\",\n\t\"primaryPhone\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": false,\n\t\t\t\"supportsMms\": false,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": false\n\t\t},\n\t\t\"value\": \"+18015555555\"\n\t},\n\t\"primaryEmail\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false\n\t\t},\n\t\t\"value\": \"test@openedgepay.com\"\n\t},\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"suite #3\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"55555\"\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setServiceLocation"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\r\n\t\"id\": \"{{serviceLocationId}}\",\r\n\t\"name\": \"Bob Service Location\",\r\n\t\"locale\": \"en\",\r\n\t\"primaryWebsite\": \"https://www.google.com\",\r\n\t\"timeZone\": \"US/Eastern\",\r\n\t\"primaryPhone\": {\r\n\t\t\"value\": \"+18015555555\",\r\n\t\t\"verifiedByCX\": {\r\n\t\t\t\"verified\": false,\r\n\t\t\t\"supportsSms\": false,\r\n\t\t\t\"supportsVoice\": false,\r\n\t\t\t\"supportsFax\": false,\r\n\t\t\t\"supportsMms\": false\r\n\t\t},\r\n\t\t\"verifiedByManagementSystem\": {\r\n\t\t\t\"verified\": false,\r\n\t\t\t\"supportsSms\": false,\r\n\t\t\t\"supportsVoice\": false,\r\n\t\t\t\"supportsFax\": false,\r\n\t\t\t\"supportsMms\": false\r\n\t\t}\r\n\t},\r\n\t\"primaryEmail\": {\r\n\t\t\"value\": \"test@openedgepay.com\",\r\n\t\t\"verifiedByCX\": {\r\n\t\t\t\"verified\": false\r\n\t\t},\r\n\t\t\"verifiedByManagementSystem\": {\r\n\t\t\t\"verified\": false\r\n\t\t}\r\n\t},\r\n\t\"primaryAddress\": {\r\n\t\t\"value\": \"PO BOX Box 1234 Testington, suite #3, Testington, Alabama US\",\r\n\t\t\"verifiedByManagementSystem\": {\r\n\t\t\t\"verified\": false,\r\n\t\t\t\"supportsSignature\": false\r\n\t\t},\r\n\t\t\"verifiedByCX\": {\r\n\t\t\t\"verified\": false,\r\n\t\t\t\"supportsSignature\": false\r\n\t\t},\r\n\t\t\"country\": \"US\",\r\n\t\t\"streetAddress1\": \"123 Easy Street\",\r\n\t\t\"streetAddress2\": \"suite #3\",\r\n\t\t\"streetAddress3\": \"Testington, Alabama\",\r\n\t\t\"postalCode\": \"5555\",\r\n\t\t\"poBox\": null\r\n\t}\r\n}"},{"id":"f23be6e7-3c16-4d69-823c-a83626b80260","name":"201 Created with myMetadata","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location"}],"body":{"mode":"raw","raw":"{\n\t\"name\": \"Bob Service Location\",\n\t\"locale\": \"en\",\n\t\"primaryWebsite\": \"https://www.google.com\",\n\t\"timeZone\": \"US/Eastern\",\n\t\"primaryPhone\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": false,\n\t\t\t\"supportsMms\": false,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": true\n\t\t},\n\t\t\"value\": \"+18015555555\"\n\t},\n\t\"primaryEmail\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false\n\t\t},\n\t\t\"value\": \"test@openedgepay.com\"\n\t},\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"suite #3\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"5555\"\n\t},\n\t\"myMetadata\": {\n\t\t\"externalId\": \"{{serviceLocationExternalId}}\",\n\t\t\"data\": {\n\t\t\t\"region\": \"northwest\"\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setServiceLocation"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n\t\"id\": \"{{serviceLocationId}}\",\n\t\"name\": \"Bob Service Location\",\n\t\"locale\": \"en\",\n\t\"primaryWebsite\": \"https://www.google.com\",\n\t\"timeZone\": \"US/Eastern\",\n\t\"primaryPhone\": {\n\t\t\"value\": \"+18015555555\",\n\t\t\"verifiedByCX\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": false,\n\t\t\t\"supportsVoice\": false,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsMms\": false\n\t\t},\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": false,\n\t\t\t\"supportsVoice\": false,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsMms\": false\n\t\t}\n\t},\n\t\"primaryEmail\": {\n\t\t\"value\": \"test@openedgepay.com\",\n\t\t\"verifiedByCX\": {\n\t\t\t\"verified\": false\n\t\t},\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false\n\t\t}\n\t},\n\t\"primaryAddress\": {\n\t\t\"value\": \"PO BOX Box 1234 Testington, suite #3, Testington, Alabama US\",\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"verifiedByCX\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"suite #3\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"5555\",\n\t\t\"poBox\": null\n\t},\n\t\"myMetadata\": {\n\t\t\"externalId\": \"{{serviceLocationExternalId}}\",\n\t\t\"data\": {\n\t\t\t\"region\": \"northwest\"\n\t\t}\n\t}\n}"},{"id":"c29b2b63-f5ec-433c-838e-a0fef8a51dce","name":"400 Bad Request","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"locale\": \"en\",\n\t\"primaryPhone\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": false,\n\t\t\t\"supportsMms\": false,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": false\n\t\t},\n\t\t\"value\": \"+18015555555\"\n\t},\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"Testington, Alabama\",\n\t\t\"streetAddress3\": \"ATTN Bob\",\n\t\t\"postalCode\": \"5555\"\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setServiceLocation"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"value:null|field:ServiceLocation.name,  error:Field is required||\"\n}"},{"id":"a1d3fb13-a6bd-43d6-bfd3-10101f3d43e8","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"name\": \"Bob Service Location 2\",\n\t\"locale\": \"en\",\n\t\"primaryPhone\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": false,\n\t\t\t\"supportsMms\": false,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": false\n\t\t},\n\t\t\"value\": \"+18015555555\"\n\t},\n\t\"primaryEmail\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false\n\t\t},\n\t\t\"value\": \"test@openedgepay.com\"\n\t},\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"Testington, Alabama\",\n\t\t\"streetAddress3\": \"ATTN Bob\",\n\t\t\"postalCode\": \"5555\"\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setServiceLocation"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"No api key to onboard, or service location to update\"\n}"}],"_postman_id":"bc8bb5cd-45ff-4d8c-b784-2e5b9f5b6dce"},{"name":"Create / Update Customer","event":[{"listen":"test","script":{"id":"57524a53-be7d-481b-9193-205dbb73b235","exec":["pm.environment.set(\"customerId\", JSON.parse(responseBody).id);"],"type":"text/javascript"}}],"id":"f41386c2-53bb-43d5-8c61-60443445141b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"<p>(Required) CX Api key for the Service Location</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"id\": \"{{customerId}}\",\n\t\"locale\": \"en\",\n\t\"familyName\": \"Robertson\",\n\t\"givenName\": \"Robert\",\n\t\"sex\": \"MALE\",\n\t\"dateOfBirth\": \"1988-12-14\",\n\t\"primaryPhone\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": true,\n\t\t\t\"supportsMms\": true,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": true\n\t\t},\n\t\t\"value\": \"+18015555555\"\n\t},\n\t\"primaryEmail\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": true\n\t\t},\n\t\t\"value\": \"test@openedgepay.com\"\n\t},\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"55555\"\n\t}\n}"},"url":"{{baseUrl}}/cx/action/setCustomer","description":"<p>Next, you'll want to associate your Merchants Consumers to their Service Location. This is done via the setCustomer API</p>\n<p>To Add a New Customer: Make a POST request to the setCustomer endpoint. A successful call will return a response containing the ID for the newly created Customer and an echo of the data provided by you.</p>\n<p>Please note a customer must have either a mobile number or email to create a record.</p>\n<p>To Update any Customer data: Make a POST request to the setCustomer endpoint including the id that was generated when creating the customer.</p>\n<table><tbody><tr><th>Field</th><th>Notes</th></tr><tr><td><div>id</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Required</b> to UPDATE an existing Customer. Omit to CREATE a new Customer.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>locale</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>In <a href=\"https://en.wikipedia.org/wiki/IETF_language_tag\">IETF BCP 47</a> format.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>familyName</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Required.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>givenName</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Required.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>sex</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p><code>MALE | FEMALE | NOT_KNOWN | NOT_APPLICABLE</code></p><ul><li><p><a href=\"http://en.wikipedia.org/wiki/ISO/IEC_5218\">ISO/IEC 5218 Standard for Sex</a></p></li></ul></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>dateOfBirth</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>In <a href=\"https://en.wikipedia.org/wiki/ISO_8601\">ISO8601</a> format.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>displayCustomerId</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional. Id that will be used to display on receipts. Informational Only. Full (Java) Regex is ^([A-Za-z0-9-_]){1,50}$</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryPhone</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p><b>Required</b> if SMS communications required</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryPhone.value</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required if primaryPhone included.</p><p>In <a href=\"https://en.wikipedia.org/wiki/E.164\">E.164</a> format.</p><p>Full (Java) Regex is <code>\\\\+[1-9]\\\\d{1,14}</code></p><p></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryEmail</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Required</b> if Email communications required</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryEmail.value</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required if primaryEmail included</p><p>Full (Java) Regex is <code>^(?:[a-zA-Z0-9!#$%&amp;'\\\\*+/=?^_`{|}~-]+(?:\\\\.[a-zA-Z0-9!#$%&amp;'\\\\*+/=?^_`{|}~-]+)\\\\*|\\\"(?:[\\\\x01-\\\\x08\\\\x0b\\\\x0c\\\\x0e-\\\\x1f\\\\x21\\\\x23-\\\\x5b\\\\x5d-\\\\x7f]|\\\\\\\\[\\\\x01-\\\\x09\\\\x0b\\\\x0c\\\\x0e-\\\\x7f])\\\\*\\\")@(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]\\\\*[a-zA-Z0-9])?\\\\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]\\\\*[a-zA-Z0-9])?|\\\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-zA-Z0-9-]\\\\*[a-zA-Z0-9]:(?:[\\\\x01-\\\\x08\\\\x0b\\\\x0c\\\\x0e-\\\\x1f\\\\x21-\\\\x5a\\\\x53-\\\\x7f]|\\\\\\\\[\\\\x01-\\\\x09\\\\x0b\\\\x0c\\\\x0e-\\\\x7f])+)\\\\])$</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryAddress</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>primaryAddress.streetAddress1</p></div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Required</b> if primaryAddress included.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryAddress.streetAddress2</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryAddress.streetAddress3</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required if primaryAddress included.</p><p>Content:<i>{City/district, state}</i>.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryAddress.postalCode</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Required</b> if primaryAddress included.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>primaryAddress.country</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p><b>Required</b> if primaryAddress included. In <a href=\"https://en.wikipedia.org/wiki/ISO_3166-2\">iso-3166-2</a> format.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Discretionary data that is stored with the Customer. Actions related to the Customer return this data in the response.</p><p>(examples: Create Statement, receive Payment item via PUSH or PULL)</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata.externalId</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Alternate identifier for a customer.</p><p>example <code>{\"externalId\": \"customerCode-John7892\"}</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata.data</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Key-value pairs of strings.</p><p>example <code>{\"myCustomkey1\": \"myCustomValue1\", \"myCustomkey2\": \"myCustomValue2\"}</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr></tbody></table>","urlObject":{"path":["cx","action","setCustomer"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"aca461ec-aefd-4177-b667-f6590440c9cc","name":"201 Created","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"familyName\": \"Robertson\",\n\t\"givenName\": \"Robert\",\n\t\"locale\": \"en\",\n\t\"sex\": \"MALE\",\n\t\"dateOfBirth\": \"1988-12-14\",\n\t\"primaryPhone\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": true,\n\t\t\t\"supportsMms\": true,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": true\n\t\t},\n\t\t\"value\": \"+18015555555\"\n\t},\n\t\"primaryEmail\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false\n\t\t},\n\t\t\"value\": \"test@openedgepay.com\"\n\t},\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"Apartment 8206\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"55555\"\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setCustomer"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\r\n\t\"id\": \"{{customerId}}\",\r\n\t\"familyName\": \"Robertson\",\r\n\t\"givenName\": \"Robert\",\r\n\t\"locale\": \"en\",\r\n\t\"sex\": \"MALE\",\r\n\t\"dateOfBirth\": \"1988-12-14\",\r\n\t\"primaryPhone\": {\r\n\t\t\"value\": \"+18015555555\",\r\n\t\t\"verifiedByCX\": {\r\n\t\t\t\"verified\": false,\r\n\t\t\t\"supportsSms\": false,\r\n\t\t\t\"supportsVoice\": false,\r\n\t\t\t\"supportsFax\": false,\r\n\t\t\t\"supportsMms\": false\r\n\t\t},\r\n\t\t\"verifiedByManagementSystem\": {\r\n\t\t\t\"verified\": false,\r\n\t\t\t\"supportsSms\": true,\r\n\t\t\t\"supportsMms\": true,\r\n\t\t\t\"supportsFax\": false,\r\n\t\t\t\"supportsVoice\": true\r\n\t\t}\r\n\t},\r\n\t\"primaryEmail\": {\r\n\t\t\"value\": \"test@openedgepay.com\",\r\n\t\t\"verifiedByCX\": {\r\n\t\t\t\"verified\": false\r\n\t\t},\r\n\t\t\"verifiedByManagementSystem\": {\r\n\t\t\t\"verified\": true\r\n\t\t}\r\n\t},\r\n\t\"primaryAddress\": {\r\n\t\t\"value\": \"123 Easy Street, Apartment 8206, Testington, Alabama 55555 US\",\r\n\t\t\"verifiedByManagementSystem\": {\r\n\t\t\t\"verified\": false,\r\n\t\t\t\"supportsSignature\": false\r\n\t\t},\r\n\t\t\"verifiedByCX\": {\r\n\t\t\t\"verified\": false,\r\n\t\t\t\"supportsSignature\": false\r\n\t\t},\r\n\t\t\"country\": \"US\",\r\n\t\t\"streetAddress1\": \"123 Easy Street\",\r\n\t\t\"streetAddress2\": \"Apartment 8206\",\r\n\t\t\"streetAddress3\": \"Testington, Alabama\",\r\n\t\t\"postalCode\": \"55555\"\r\n\t},\r\n\t\"_embedded\": {\r\n\t\t\"serviceLocation\": {\r\n\t\t\t\"id\": \"{{serviceLocationId}}\"\r\n\t\t}\r\n\t}\r\n}"},{"id":"dfd7122b-cd0e-4167-9fad-cdd00daeecce","name":"201 Created with myMetadata","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"locale\": \"en\",\n\t\"familyName\": \"Robertson\",\n\t\"givenName\": \"Robert\",\n\t\"sex\": \"MALE\",\n\t\"dateOfBirth\": \"1988-12-14\",\n\t\"primaryPhone\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": true,\n\t\t\t\"supportsMms\": true,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": true\n\t\t},\n\t\t\"value\": \"+18015555555\"\n\t},\n\t\"primaryEmail\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": true\n\t\t},\n\t\t\"value\": \"test@openedgepay.com\"\n\t},\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"55555\"\n\t},\n\t\"myMetadata\": {\n\t\t\"externalId\": \"{{customerExternalId}}\",\n\t\t\"data\": {\n\t\t\t\"middleName\": \"Joe\"\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setCustomer"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n\t\"id\": \"{{customerId}}\",\n\t\"familyName\": \"Robertson\",\n\t\"givenName\": \"Robert\",\n\t\"locale\": \"en\",\n\t\"sex\": \"MALE\",\n\t\"dateOfBirth\": \"1988-12-14\",\n\t\"primaryPhone\": {\n\t\t\"value\": \"+18015555555\",\n\t\t\"verifiedByCX\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": false,\n\t\t\t\"supportsVoice\": false,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsMms\": false\n\t\t},\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSms\": true,\n\t\t\t\"supportsMms\": true,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": true\n\t\t}\n\t},\n\t\"primaryEmail\": {\n\t\t\"value\": \"test@openedgepay.com\",\n\t\t\"verifiedByCX\": {\n\t\t\t\"verified\": false\n\t\t},\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": true\n\t\t}\n\t},\n\t\"primaryAddress\": {\n\t\t\"value\": \"123 Easy Street, Apartment 8206, Testington, Alabama 55555 US\",\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"verifiedByCX\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"Apartment 8206\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"55555\"\n\t},\n\t\"myMetadata\": {\n\t\t\"externalId\": \"{{customerExternalId}}\",\n\t\t\"data\": {\n\t\t\t\"middleName\": \"Joe\"\n\t\t}\n\t},\n\t\"_embedded\": {\n\t\t\"serviceLocation\": {\n\t\t\t\"id\": \"{{serviceLocationId}}\",\n\t\t\t\"myMetadata\": {\n\t\t\t\t\"externalId\": \"{{serviceLocationExternalId}}\",\n\t\t\t\t\"data\": {\n\t\t\t\t\t\"region\": \"northwest\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}"},{"id":"5fd3dea8-9071-4be2-914a-de26bb25f22f","name":"400 Bad Request","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"locale\": \"en\",\n\t\"familyName\": \"Robertson\",\n\t\"givenName\": \"Robert\",\n\t\"sex\": \"MALE\",\n\t\"dateOfBirth\": \"1988-12-14\",\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"Apartment 8206\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"55555\"\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setCustomer"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Mon, 24 Feb 2020 17:29:29 GMT"},{"key":"Expires","value":"0"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"value:null|field:primaryEmail,  error:An email address is required||\"\n}"},{"id":"b605b9a5-79dd-40ff-802a-082d42690d51","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"locale\": \"en\",\n\t\"familyName\": \"Robertson\",\n\t\"givenName\": \"Robert\",\n\t\"sex\": \"MALE\",\n\t\"dateOfBirth\": \"1988-12-14\",\n\t\"primaryPhone\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": true,\n\t\t\t\"supportsSms\": true,\n\t\t\t\"supportsMms\": true,\n\t\t\t\"supportsFax\": false,\n\t\t\t\"supportsVoice\": false\n\t\t},\n\t\t\"value\": \"+18015555555\"\n\t},\n\t\"primaryEmail\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": true\n\t\t},\n\t\t\"value\": \"test@openedgepay.com\"\n\t},\n\t\"primaryAddress\": {\n\t\t\"verifiedByManagementSystem\": {\n\t\t\t\"verified\": false,\n\t\t\t\"supportsSignature\": false\n\t\t},\n\t\t\"country\": \"US\",\n\t\t\"streetAddress1\": \"123 Easy Street\",\n\t\t\"streetAddress2\": \"Apartment 8206\",\n\t\t\"streetAddress3\": \"Testington, Alabama\",\n\t\t\"postalCode\": \"55555\"\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setCustomer"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Mon, 24 Feb 2020 17:29:54 GMT"},{"key":"Expires","value":"0"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"Not authorized for this service location\"\n}"}],"_postman_id":"f41386c2-53bb-43d5-8c61-60443445141b"},{"name":"Create Link for Configuration UI","id":"270327c0-670c-4978-8bc2-c25aaf4c06b5","protocolProfileBehavior":{"disableBodyPruning":true,"disabledSystemHeaders":{}},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","type":"text","description":"<p>(Required) CX Api key for the Service Location</p>\n"}],"body":{"mode":"raw","raw":"{\n\t\"action\": \"{{actionDescriptor}}\",\n\t\"context\": {\n\t\t\"_embedded\": {\n\t\t\t\"serviceLocation\": {\n\t\t\t\t\"id\": \"{{serviceLocationId}}\"\n\t\t\t}\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/ui/instances","description":"<p>This API call allows you to create a tiny URL to our Configuration Page. The configuration page allows the user to set up different features and functions for the CX product suite. A full list of items that can be configured can be found in our FAQ's</p>\n<h4 id=\"displaying-the-link\"><strong>Displaying the Link</strong></h4>\n<ul>\n<li><strong>In a Browser:</strong> The tiny link can be directly opened in a new browser tab for immediate user interaction.</li>\n<li><strong>As an iframe:</strong> Alternatively, the tiny link can be embedded within an iframe on your application's UI for a more integrated experience.</li>\n</ul>\n<p>This feature offers an efficient way to engage with users while keeping them within the context of your platform. Additional instructions and code examples for implementing this feature will be covered in subsequent sections.</p>\n<p>For some specific configurations (such as credentials) we offer a direct API for setting these</p>\n<table><tbody><tr><th>Field</th><th>Notes</th></tr><tr><td><div>action</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required. Indicates the action to be performed.<br /></p><p><code>administerServiceLocation</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>context._embedded.serviceLocation.id</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Conditional.</b> ID of the Service Location.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>context._embedded.serviceLocation.resolveIdFromCredentials</p></div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Conditional</b>. Set to \"true\". Optional if you don't have the Service Location ID.</div><div><div><div><div></div></div></div><div></div></div></td></tr></tbody></table>","urlObject":{"path":["cx","ui","instances"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"ea2e01a3-9516-49ba-bc1b-f2cfc1cbc2f9","name":"200 OK - Administer Service Location","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","type":"text","description":"(Required) CX Api key for the Service Location"}],"body":{"mode":"raw","raw":"{\n\t\"action\": \"{{actionDescriptor}}\",\n\t\"context\": {\n\t\t\"_embedded\": {\n\t\t\t\"serviceLocation\": {\n\t\t\t\t\"id\": \"{{serviceLocationId}}\"\n\t\t\t}\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/ui/instances"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json"},{"key":"Date","value":"Fri, 23 Apr 2021 16:28:37 GMT"},{"key":"Expires","value":"0"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.18.0"},{"key":"Vary","value":"origin,access-control-request-method,access-control-request-headers,accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"tinyLink\": \"https://c.rt2.me/175WRHDSjf\"\n}"},{"id":"abc82479-6b20-4f0f-b9a2-047c625b4218","name":"400 Bad Request","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","type":"text","description":"(Required) CX Api key for the Service Location","disabled":true}],"body":{"mode":"raw","raw":"{\n\t\"action\": \"{{actionDescriptor}}\",\n\t\"context\": {\n\t\t\"_embedded\": {\n\t\t\t\"serviceLocation\": {\n\t\t\t\t\"id\": \"{{serviceLocationId}}\"\n\t\t\t}\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/ui/instances"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json"},{"key":"Date","value":"Fri, 23 Apr 2021 16:23:00 GMT"},{"key":"Expires","value":"0"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.18.0"},{"key":"Set-Cookie","value":"CX2SESSIONID=FF97E0ED67E2890C7AE619F493C755C6; Path=/; SameSite=None; Secure; HttpOnly"},{"key":"Vary","value":"origin,access-control-request-method,access-control-request-headers,accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"value:null|field:action,  error:Not a valid action||\"\n}"},{"id":"3d4b6d0d-7080-49a5-9afb-0c2e4cffce15","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","type":"text","description":"(Required) CX Api key for the Service Location"}],"body":{"mode":"raw","raw":"{\n\t\"action\": \"{{actionDescriptor}}\",\n\t\"context\": {\n\t\t\"_embedded\": {\n\t\t\t\"serviceLocation\": {\n\t\t\t\t\"id\": \"{{serviceLocationId}}\"\n\t\t\t}\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/ui/instances"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json"},{"key":"Date","value":"Fri, 23 Apr 2021 16:25:44 GMT"},{"key":"Expires","value":"0"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.18.0"},{"key":"Vary","value":"origin,access-control-request-method,access-control-request-headers,accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"Not authenticated to create tiny link for this service location\"\n}"}],"_postman_id":"270327c0-670c-4978-8bc2-c25aaf4c06b5"},{"name":"Set Configuration","id":"454a1780-0200-44ab-b366-f010bb5665bc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"CX-API-KEY","value":"{{cx-api-key}}"}],"body":{"mode":"raw","raw":"{\r\n    \"on_push_auth_header_value\": \"\"\r\n  //  \"pay_geniusCheckout_webApiKey\": \"\"\r\n  //  \"pay_genius_credentials\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/config/setForKey","description":"<p>This API call allows you to update a service location's Configuration via API.</p>\n<p>For some specific configurations (such as credentials) we offer a direct API for setting these configuration values.</p>\n<table><tbody><tr><th>Field</th><th>Notes</th></tr><tr><td><div>pay_genius_credentials</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p><b>Required for Merchantware Payment Processing</b>. This is the merchant credentials provided when the merchant is boarded for payment processing. The values for merchant name, merchant key, and site id.</p><p>Format (merchant name:merchant key:site id)</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>pay_geniusCheckout_webApiKey</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Required for Merchantware Payment Processing. </b>This is the Web API key for the Merchant that is provided when the merchant is boarded for payment processing.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>on_push_auth_header_value</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional. If you are using a specific security method for your post endpoint.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>on_updateMessage_pushUrl</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Push URL for notifying ManagementSystem on Updates to Communications</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>on_quoteComplete_queueQuoteToManagementSystem_rootUri</div><div><div><div><div></div></div></div><div></div></div></td><td><div>URI endpoint used to PUSH Quote objects to management system on successful Quote completion</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>on_doCheckin_queuePresenceStatusToManagementSystem_rootUri</div><div><div><div><div></div></div></div><div></div></div></td><td><div>URI endpoint used to PUSH Presence Status objects to management system on Check In</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>on_finishForm_queueFormToManagementSystem_rootUri</div><div><div><div><div></div></div></div><div></div></div></td><td><div>URI endpoint used to PUSH form objects to management system on form completion</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>on_setPayment_queuePaymentToManagementSystem_rootUri</div><div><div><div><div></div></div></div><div></div></div></td><td><div>URI endpoint used to PUSH payment objects to management system on successful payment</div><div><div><div><div></div></div></div><div></div></div></td></tr></tbody></table>","urlObject":{"path":["cx","config","setForKey"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"454a1780-0200-44ab-b366-f010bb5665bc"},{"name":"Clear Configuration","id":"48ccfab5-9d01-42af-8f20-a40e9931acef","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"CX-API-KEY","value":"{{cx-api-key}}"}],"body":{"mode":"raw","raw":"[\"on_push_auth_header_value\", \"foo\", \"bar\"]","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/config/setForKey","description":"<p>This API allows you to clear out a configuration value based on the configuration name.</p>\n","urlObject":{"path":["cx","config","setForKey"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"48ccfab5-9d01-42af-8f20-a40e9931acef"}],"id":"1f1bb412-39fb-49c4-a6c1-775a9e007fcd","description":"<p>This section provides an overview of the foundational API requests that are relevant across all our Consumer Experience (CX) products. These include:</p>\n<h4 id=\"generating-a-service-locations-api-key\">Generating a Service Locations API Key</h4>\n<ul>\n<li>Generate: This creates an API key that is used for all subsequent actions specific for one of your customers.</li>\n</ul>\n<h4 id=\"service-locations-merchant-physical-locations\">Service Locations (Merchant Physical Locations)</h4>\n<ul>\n<li><strong>Creating</strong>: To establish a new service location, use the appropriate API calls, typically involving POST requests to endpoints like <code>setServiceLocation</code>.</li>\n<li><strong>Updating</strong>: If modifications are needed, similar API calls can be made with updated parameters.</li>\n</ul>\n<h4 id=\"customers\">Customers</h4>\n<ul>\n<li><strong>Creating</strong>: Add new customers to a service location by making a POST request to the <code>setCustomer</code> endpoint.</li>\n<li><strong>Updating</strong>: Existing customers can be updated by including the Customer ID in the request payload to the same <code>setCustomer</code> endpoint.</li>\n</ul>\n<h4 id=\"configuration\">Configuration</h4>\n<ul>\n<li><strong>Product and Service Configuration UI</strong>: We also provide API calls that allow you to trigger a User Interface for configuring various products and services. These calls will typically return a URL that can be embedded or opened in a browser, enabling customization of the service experience.</li>\n<li>Product and Service Configuration API: Some configurations such as payment credentials can be set via API to programmatically onboard new locations.</li>\n</ul>\n<p>These common requests form the building blocks for integrating various functionalities into your software, ensuring a comprehensive and seamless consumer experience. Detailed examples and further explanations for each are provided in subsequent sections.</p>\n","_postman_id":"1f1bb412-39fb-49c4-a6c1-775a9e007fcd"},{"name":"Receiving Completed Actions","item":[{"name":"PUSH - Your System's Completed Action Webhook","id":"e3686892-78ef-423f-a1b6-df53109449a4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"EXAMPLE","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"id\": \"{{paymentId}}\",\n\t\"chargeId\": \"00000000456\",\n\t\"capturedCurrency\": \"USD\",\n\t\"capturedAmount\": 10000,\n\t\"capturedDate\": \"2020-04-20T15:35:38.73Z\",\n\t\"cardLast4\": \"1234\",\n\t\"cardBrand\": \"VISA\", \n\t\"cardExpireMonth\": \"12\",\t\n\t\"cardExpireYear\": \"2023\",\n\t\"paymentType\": \"CARD\",\n\t\"approvalCode\": \"ABC123\",\n\t\"pickupDateTime\": \"2020-04-20T15:00\",\n\t\"paymentOnFileToken\": \"AbCdEf1357\",\n\t\"paidLineItemReferences\": [\"{{lineItemRef1}}\",\"{{lineItemRef2}}\"],\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t},\n\t\t\"serviceLocation\": {\n\t\t\t\"id\": \"{{serviceLocationId}}\"\n\t\t},\n\t\t\"itemsPaid\": [\n\t\t\t{\n\t\t\t\t\"id\": \"{{itemPaidId}}\"\n\t\t\t}\n\t\t]\n\t}\n}"},"url":"{{YourURL}}","description":"<p>This section details the webhook mechanism that is triggered when a payment or other action is completed by the consumer within the Consumer Experience (CX) platform.</p>\n<h4 id=\"purpose\">Purpose</h4>\n<p>The primary function of this webhook is to enable real-time notifications or actions to your system as soon as a payment is initiated in the CX platform.</p>\n<h4 id=\"how-it-works\">How It Works</h4>\n<ul>\n<li><strong>Payment Initiation</strong>: When a payment is initiated in CX, the platform will automatically trigger this webhook.</li>\n</ul>\n<h4 id=\"implementation-notes\">Implementation Notes</h4>\n<ul>\n<li>The webhook URL and related settings typically need to be configured within the CX platform. Please provide your integration team members your url for your endpoint.</li>\n<li>Make sure your external system is prepared to handle the webhook calls, both in terms of authentication and in executing the required actions upon receiving the webhook payload.<ul>\n<li>We support the following security:<ul>\n<li>OAuth 2.0</li>\n<li>Bearer Token</li>\n<li>CXAPI Key relay (Default)</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n<p>This webhook serves as a vital mechanism for enabling real-time updates and seamless interactions between the CX platform and other integrated systems. For a comprehensive setup guide and payload examples, refer to subsequent sections of this documentation. If you are unable to create a webhook for your system we also offer a queuing solution that you can poll to get action results</p>\n<table><tbody><tr><th>Field</th><th>Notes</th></tr><tr><td><div>cardLast4<br />cardBrand<br />cardExpireMonth<br />cardExpireYear<br /></div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>These elements will only be included when `paymentType` is `CARD`</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>checkRoutingNumber<br />checkAccountNumber<br />checkAccountType<br /></div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>These elements will only be included when `paymentType` is `ACH`</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>paymentType</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>The type of payment that was made. Possible values include `CARD`, `ACH`, `ACF`</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>pickupDateTime</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>If configured, this value indicates the pickup date and an unzoned timestamp that the Customer selected before the Payment.</p><p></p><div><table><tbody><tr><td><div>Early Morning</div><div><div><div><div></div></div></div><div></div></div></td><td><div>`T08:00`</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>Late Morning</div><div><div><div><div></div></div></div><div></div></div></td><td><div>`T10:00`</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>Early Afternoon</div><div><div><div><div></div></div></div><div></div></div></td><td><div>`T13:00`</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>Late Afternoon</div><div><div><div><div></div></div></div><div></div></div></td><td><div>`T15:00`</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>Early Evening</div><div><div><div><div></div></div></div><div></div></div></td><td><div>`T18:00`</div><div><div><div><div></div></div></div><div></div></div></td></tr></tbody></table></div><p></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>paymentOnFileToken</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>If configured, this payment on file token can be used for subsequent payments to this method.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>paidLineItemReferences</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>A list of the line item references from the Statement that were selected to be paid by the Customer. This field will only be included if the Statement included line items.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>_embedded</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>The _embedded structure contains object references related to the Payment.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>_embedded.statement</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p><b>This object is being deprecated</b></p><p>Use <b>_embedded.itemsPaid</b> to obtain the Statement id and myMetadata values for a Statement.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>_embedded.itemsPaid</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>A collection of items that the payment applies to.</p><p>For Customer Statements, an item could include the id and myMetadata values of the Statement that was paid.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr></tbody></table>","urlObject":{"host":["{{YourURL}}"],"query":[],"variable":[]}},"response":[{"id":"b6b530ac-eb0b-4375-aec3-fa7a1b1cedd2","name":"201 Created (Card)","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"id\": \"{{paymentId}}\",\n\t\"chargeId\": \"00000000456\",\n\t\"capturedCurrency\": \"USD\",\n\t\"capturedAmount\": 10000,\n\t\"capturedDate\": \"2020-04-20T15:35:38.73Z\",\n\t\"cardLast4\": \"1234\",\n\t\"cardBrand\": \"VISA\",\n\t\"cardExpireMonth\": \"12\",\n\t\"cardExpireYear\": \"2023\",\n\t\"paymentType\": \"CARD\",\n\t\"approvalCode\": \"\",\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t},\n\t\t\"serviceLocation\": {\n\t\t\t\"id\": \"{{serviceLocationId}}\"\n\t\t},\n\t\t\"itemsPaid\": [\n\t\t\t{\n\t\t\t\t\"id\": \"{{itemPaidId}}\"\n\t\t\t}\n\t\t]\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setPayment"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Mon, 24 Feb 2020 17:01:10 GMT"},{"key":"Expires","value":"0"},{"key":"Location","value":"http://tpd-sb-cx-pit.3pointdata.com/cx/statement/instances/4f5df462-05eb-440e-8f3c-8ae5e1363bf7"},{"key":"Location-As-Navigable-Url","value":"http://tpd-sb-cx-pit.3pointdata.com/cx/v2/view/user/dashboard.html"},{"key":"Location-As-Navigable-Url-As-TinyLink","value":"https://c.rt2.me/80Niy6oUJ6"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{}"},{"id":"405ef339-dfe8-40f0-80b2-f4158dbdbfff","name":"201 Created (ACH)","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"id\": \"{{paymentId}}\",\n\t\"chargeId\": \"00000000456\",\n\t\"capturedCurrency\": \"USD\",\n\t\"capturedAmount\": 10000,\n\t\"capturedDate\": \"2020-04-20T15:35:38.73Z\",\n\t\"checkRoutingNumber\": \"1234\",\n\t\"checkAccountNumber\": \"5678\",\n\t\"checkAccountType\": \"CHECKING\",\n\t\"paymentType\": \"ACH\",\n\t\"approvalCode\": \"\",\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t},\n\t\t\"serviceLocation\": {\n\t\t\t\"id\": \"{{serviceLocationId}}\"\n\t\t},\n\t\t\"itemsPaid\": [\n\t\t\t{\n\t\t\t\t\"id\": \"{{itemPaidId}}\"\n\t\t\t}\n\t\t]\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setPayment"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Mon, 24 Feb 2020 17:01:10 GMT"},{"key":"Expires","value":"0"},{"key":"Location","value":"http://tpd-sb-cx-pit.3pointdata.com/cx/statement/instances/4f5df462-05eb-440e-8f3c-8ae5e1363bf7"},{"key":"Location-As-Navigable-Url","value":"http://tpd-sb-cx-pit.3pointdata.com/cx/v2/view/user/dashboard.html"},{"key":"Location-As-Navigable-Url-As-TinyLink","value":"https://c.rt2.me/80Niy6oUJ6"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{}"},{"id":"49710f85-9199-42f8-b37a-02c4803b8935","name":"201 Created with line items","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"id\": \"{{paymentId}}\",\n\t\"chargeId\": \"00000000456\",\n\t\"capturedCurrency\": \"USD\",\n\t\"capturedAmount\": 10000,\n\t\"capturedDate\": \"2020-04-20T15:35:38.73Z\",\n\t\"cardLast4\": \"1234\",\n\t\"cardBrand\": \"VISA\",\n\t\"cardExpireMonth\": \"12\",\n\t\"cardExpireYear\": \"2023\",\n\t\"paymentType\": \"CARD\",\n\t\"approvalCode\": \"\",\n\t\"paidLineItemReferences\": [\"INV-000002\",\"INV-000003\"],\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t},\n\t\t\"serviceLocation\": {\n\t\t\t\"id\": \"{{serviceLocationId}}\"\n\t\t},\n\t\t\"itemsPaid\": [\n\t\t\t{\n\t\t\t\t\"id\": \"{{itemPaidId}}\"\n\t\t\t}\n\t\t]\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setPayment"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Mon, 24 Feb 2020 17:01:10 GMT"},{"key":"Expires","value":"0"},{"key":"Location","value":"http://tpd-sb-cx-pit.3pointdata.com/cx/statement/instances/4f5df462-05eb-440e-8f3c-8ae5e1363bf7"},{"key":"Location-As-Navigable-Url","value":"http://tpd-sb-cx-pit.3pointdata.com/cx/v2/view/user/dashboard.html"},{"key":"Location-As-Navigable-Url-As-TinyLink","value":"https://c.rt2.me/80Niy6oUJ6"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{}"},{"id":"8dc92a83-3c7f-40c1-b154-ea2bb53d3cfe","name":"201 Created with myMetadata","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"id\": \"{{paymentId}}\",\n\t\"chargeId\": \"00000000456\",\n\t\"capturedCurrency\": \"USD\",\n\t\"capturedAmount\": 10000,\n\t\"capturedDate\": \"2020-04-20T15:35:38.73Z\",\n\t\"cardLast4\": \"1234\",\n\t\"cardBrand\": \"VISA\",\n\t\"cardExpireMonth\": \"12\",\n\t\"cardExpireYear\": \"2023\",\n\t\"paymentType\": \"CARD\",\n\t\"approvalCode\": \"\",\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\",\n\t\t\t\"myMetadata\": {\n\t\t\t\t\"externalId\": \"{{customerExternalId}}\",\n\t\t\t\t\"data\": {\n\t\t\t\t\t\"middleName\": \"Joe\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"serviceLocation\": {\n\t\t\t\"id\": \"{{serviceLocationId}}\",\n\t\t\t\"myMetadata\": {\n\t\t\t\t\"externalId\": \"{{serviceLocationExternalId}}\",\n\t\t\t\t\"data\": {\n\t\t\t\t\t\"region\": \"northwest\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"itemsPaid\": [\n\t\t\t{\n\t\t\t\t\"id\": \"{{itemPaidId}}\",\n\t\t\t\t\"myMetadata\": {\n\t\t\t\t\t\"externalId\": \"{{itemPaidExternalId}}\",\n\t\t\t\t\t\"data\": {\n\t\t\t\t\t\t\"loyaltyProgram\": \"GOLD\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t]\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setPayment"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":null}],"_postman_id":"e3686892-78ef-423f-a1b6-df53109449a4"},{"name":"PULL - Queue Package Home","id":"588df4ec-62ee-4d16-a2ed-aa0d1b80e70b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"CX-API-KEY","type":"text","value":"{{cx-api-key}}"}],"url":"{{queuePackageHomeUrl}}","description":"<p>This section details the queue mechanism that can be polled to gather new payments or other actions when they are completed by the consumer within the Consumer Experience (CX) platform.</p>\n<p>This API is used to query information about the Queue Package. It will return the number of items in the queue and the URLs to work with the queue. This URL can be persisted and called on an interval. Do not persist the \"queuePackagePickupUrl\" url.</p>\n","urlObject":{"host":["{{queuePackageHomeUrl}}"],"query":[],"variable":[]}},"response":[{"id":"2930c1f1-3870-42f1-9dca-510800742234","name":"Home: 200 - null urls","originalRequest":{"method":"GET","header":[{"key":"CX-API-KEY","value":"{{cx-api-key}}","type":"text"}],"url":"{{queuPackageHomeUrl}}"},"code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"numberOfItemsInQueue\": 0,\n    \"queuePackagePickupUrl\": null,\n    \"queuePackagePostUrl\": null,\n    \"items\":[],\n    \"actionResponses\": []  \n}"},{"id":"42e317f0-ddb8-4d90-b1f0-ae9897b16219","name":"Home: 200 - with urls","originalRequest":{"method":"GET","header":[{"key":"CX-API-KEY","value":"{{cx-api-key}}","type":"text"}],"body":{"mode":"raw","raw":""},"url":"{{queuPackageHomeUrl}}"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{  \n    \"numberOfItemsInQueue\": 1,\n    \"queuePackagePickupUrl\": \"{{queuePackagePickupUrl}}\",\n    \"queuePackagePostUrl\": \"{{queuePackagePostUrl}}\",\n    \"items\":[],\n    \"actionResponses\": []  \n}"},{"id":"3894dca4-e3c7-4ab4-a9cd-b3fb925ef0f2","name":"Home: 200 - with urls and events","originalRequest":{"method":"GET","header":[{"key":"CX-API-KEY","type":"text","value":"{{cx-api-key}}"}],"url":"{{queuPackageHomeUrl}}"},"_postman_previewlanguage":"json","header":[{"description":"","key":"Content-Type","type":"text","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{  \n    \"numberOfItemsInQueue\": 1,\n    \"queuePackagePickupUrl\": \"{{queuePackagePickupUrl}}\",\n    \"queuePackagePostUrl\": \"{{queuePackagePostUrl}}\",  \n    \"items\" : [\n    {\n      \"__objectType\" : \"EVENT\",\n      \"id\": \"7945e0c3-ef91-49e7-9916-587999db5a12\",\n      \"name\" : \"onPaymentAccepted\", \n      \"payloadType\" : \"ID_ONLY\",\n      \"order\" : 1,\n      \"payload\": {\n        \"__objectType\" : \"PMNT-\",\n        \"id\": \"ec6afe0a-4bea-4217-a3f5-e5b8228b575f\"        \n      }\n    }\n  ],\n  \"actionResponses\": []\n}"}],"_postman_id":"588df4ec-62ee-4d16-a2ed-aa0d1b80e70b"},{"name":"PULL - Queue Package Pickup","id":"ba66c3dd-f416-4b3c-83d3-e7b68f2ecf8c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"CX-API-KEY","type":"text","value":"{{cx-api-key}}"}],"url":"{{queuePackagePickupUrl}}","description":"<p>Used to pickup the items in the queue. This URL can change. Always go back to the Home URL to get the latest pickup URL.</p>\n<p>This API will return an array of items (limited to first 10) for you to receive the objects completed by the consumers.</p>\n<p>Each object will have an __objectType with its object data.</p>\n<p>After you have completed your processing of each object you can make them using the POST Package Action API</p>\n","urlObject":{"host":["{{queuePackagePickupUrl}}"],"query":[],"variable":[]}},"response":[{"id":"4005c8ac-858d-4096-8afb-f2c67923a34c","name":"Pickup: 200 - null urls","originalRequest":{"method":"GET","header":[{"key":"CX-API-KEY","value":"{{cx-api-key}}","type":"text"}],"url":"{{topOfEventQueueUrl}}"},"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n    \"numberOfItemsInQueue\": 0,\n    \"queuePackagePickupUrl\": null,\n    \"queuePackagePostUrl\": null,\n    \"items\": [],\n    \"actionResponses\": []\n}"},{"id":"56c97025-a638-4215-875e-014bffbd51b0","name":"Pickup: 200 - with events","originalRequest":{"method":"GET","header":[{"key":"CX-API-KEY","value":"{{cx-api-key}}","type":"text"}],"url":"{{queuePackagePickupUrl}}"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"numberOfItemsInQueue\": 1,\n    \"queuePackagePickupUrl\": \"{{queuePackagePickupUrl}}\",\n    \"queuePackagePostUrl\": \"{{queuePackagePostUrl}}\",\n    \"items\" : [{\n        \"__objectType\" : \"EVENT\",\n        \"id\": \"7945e0c3-ef91-49e7-9916-587999db5a12\",\n        \"name\" : \"onSetPayment\", \n        \"payloadType\" : \"ID_ONLY\",\n        \"order\" : 1,\n        \"payload\": {\n            \"__objectType\" : \"PMNT-\",\n            \"id\": \"ec6afe0a-4bea-4217-a3f5-e5b8228b575f\"        \n        }\n    }],\n    \"actionResponses\": []\n}"}],"_postman_id":"ba66c3dd-f416-4b3c-83d3-e7b68f2ecf8c"},{"name":"PULL - Queue Package Action","id":"1cf75dd5-291f-43d8-978f-be5af1abd478","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n  \"actions\" : [\n    {\n      \"name\" : \"updateQueue\",\n      \"version\" : \"1\",  \n      \"body\" : {\n        \"itemId\" : \"7945e0c3-ef91-49e7-9916-587999db5a12\",\n        \"status\" : \"HANDLED\", // QUEUED | IGNORED | HANDLED | RESCHEDULE | DEAD_LETTER,\n        \"rescheduleDate\" : null // ISO Date\n      }\n    }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"{{queuePackagePostUrl}}","description":"<p>This API is used for updating objects in the queue. The main function is to mark an item as HANDLED once you no longer need it in the queue.</p>\n<table><tbody><tr><th>Field</th><th>Notes</th></tr><tr><td><div><p>actions.name</p></div><div><div><div><div></div></div></div><div></div></div></td><td><div><p><b>Required</b>. \"updateQueue\"</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>actions.body.eventId</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Required</b>. Id of the item in the queue. Received during pickup step.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>actions.body.status</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required. Allows setting of a new status. Currently \"QUEUED\" and \"HANDLED\" status are only used</p></div><div><div><div><div></div></div></div><div></div></div></td></tr></tbody></table>","urlObject":{"host":["{{queuePackagePostUrl}}"],"query":[],"variable":[]}},"response":[{"id":"b3a6bba0-198a-44cb-8303-5908547ac285","name":"Action: 200 - null urls","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n  \"actions\" : [\n    {\n      \"name\" : \"updateQueue\",\n      \"version\" : \"1\",\n      \"order\" : 1,\n      // \"payloadType\" : \"ID_ONLY|ID_AND_PAYLOAD|ID_AND_PAYLOAD_AND_EMBEDDED_ID|ID_AND_PAYLOAD_AND_EMBEDDED_PAYLOAD\",\n      \"body\" : {\n        \"eventId\" : \"SDSDFTh45o48ioemvomr\",\n                  //202      202       200/201?  429          ->400\n                  //-del     -del      -del      -resched     ->dlq\n        \"status\" : (queued | ignored | handled | reschedule | deadLetter),\n        \"rescheduleDate\" : // ISO Date\n      }\n    }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"{{queuePackagePostUrl}}"},"_postman_previewlanguage":"json","header":[{"description":"","key":"Content-Type","type":"text","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{  \n    \"numberOfItemsInQueue\": 0,\n    \"queuePackagePickupUrl\": null,\n    \"queuePackagePostUrl\": null,\n    \"items\": [],\n    \"actionResponses\" : [{ \n        \"name\" : \"updateQueue\",\n        \"id\" : \"76f7d6b4-ff63-4730-a807-0beef938d93b\",\n        \"version\" : \"1\",\n        \"order\" : 1,\n        \"statusCode\" : 200,\n        \"body\" : {\n            \"eventId\" : \"7945e0c3-ef91-49e7-9916-587999db5a12\",\n            \"status\" : \"HANDLED\",\n            \"rescheduleDate\" : null // ISO Date\n        }      \n    }]\n}"},{"id":"7d63a169-3264-437f-b00e-df05acf3ff68","name":"Action: 200 - with events","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n  \"actions\" : [\n    {\n      \"name\" : \"updateQueue\",\n      \"version\" : \"1\",\n      \"order\" : 1,\n      // \"payloadType\" : \"ID_ONLY|ID_AND_PAYLOAD|ID_AND_PAYLOAD_AND_EMBEDDED_ID|ID_AND_PAYLOAD_AND_EMBEDDED_PAYLOAD\",\n      \"body\" : {\n        \"eventId\" : \"SDSDFTh45o48ioemvomr\",\n                  //202      202       200/201?  429          ->400\n                  //-del     -del      -del      -resched     ->dlq\n        \"status\" : (queued | ignored | handled | reschedule | deadLetter),\n        \"rescheduleDate\" : // ISO Date\n      }\n    }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"{{queuePackagePostUrl}}"},"_postman_previewlanguage":"json","header":[{"description":"","key":"Content-Type","type":"text","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"numberOfItemsInQueue\": 1,\n    \"queuePackagePickupUrl\": \"{{queuePackagePickupUrl}}\",\n    \"queuePackagePostUrl\": \"{{queuePackagePostUrl}}\",\n    \"items\" : [{\n        \"__objectType\" : \"EVENT\",\n        \"name\" : \"onPaymentAccepted\",\n        \"payloadType\" : \"ID_ONLY\",\n        \"order\" : 1,\n        \"payload\": {\n            \"__objectType\" : \"PMNT-\",\n            \"id\": \"id1\"        \n        }\n    }],\n    \"actionResponses\" : [{ \n        \"name\" : \"updateQueue\",\n        \"id\" : \"76f7d6b4-ff63-4730-a807-0beef938d93b\",\n        \"version\" : \"1\",\n        \"order\" : 1,\n        \"statusCode\" : 200,\n        \"body\" : {\n            \"eventId\" : \"7945e0c3-ef91-49e7-9916-587999db5a12\",\n            \"status\" : \"HANDLED\",\n            \"rescheduleDate\": null // ISO Date\n        }\n    }]  \n}"},{"id":"4fe71462-6b86-475d-bfa3-4de878420619","name":"Action: 200 - with error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n  \"actions\" : [\n    {\n      \"name\" : \"updateQueue\",\n      \"version\" : \"1\",\n      \"order\" : 1,      \n      \"body\" : {\n        \"eventId\" : \"SDSDFTh45o48ioemvomr\",\n        \"status\" : \"HANDLED\", // QUEUED | IGNORED | HANDLED | RESCHEDULE | DEAD_LETTER,\n        \"rescheduleDate\" : null // ISO Date\n      }\n    }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"{{queuePackagePostUrl}}"},"_postman_previewlanguage":"json","header":[{"description":"","key":"Content-Type","type":"text","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{  \n    \"numberOfItemsInQueue\": 0,\n    \"queuePackagePickupUrl\": null,\n    \"queuePackagePostUrl\": null,\n    \"items\": [],\n    \"actionResponses\" : [{ \n        \"name\" : \"updateQueue\",\n        \"id\" : \"76f7d6b4-ff63-4730-a807-0beef938d93b\",\n        \"version\" : \"1\",\n        \"order\" : 1,\n        \"statusCode\" : 400,\n        \"body\" : null,\n        \"errors\" : [{  \n            \"message\" : \"there was a problem removing the item from the queue\"\n        }]     \n    }]\n}\n      \n      \n      \n"}],"_postman_id":"1cf75dd5-291f-43d8-978f-be5af1abd478"}],"id":"a87a7b29-38d2-4de6-b495-8fd71c18dd83","description":"<p>The CX Platform returns the result of Consumer Actions via a PUSH to an end point of your choice or via pulling from our queue. This section will cover both methods so you are able to decide what works best for your system.</p>\n<p>PUSH</p>\n<p>At the completion of an action - for example a payment - the payment object is pushed to an endpoint of your designation in specific format. This object is specific to the action type and we can configure an endpoint for each action (payment, form, event, quote and check in). The example objects are shown in the</p>\n<p>PULL</p>\n<p>This section elaborates on the API endpoint used to query details about the Queue, such as the number of items in the queue and associated URLs to manipulate the queue. This can be used as an alternative to the Push Webhook.</p>\n<p>The Queue API's consist of</p>\n<p>GET - Package Home - Provides the total items in queue and URL for Pickup</p>\n<p>GET - Package Pickup - Provides the detail of the items in queue and actions url</p>\n<p>POST - Package Action - Provides a way to mutate a queue item (mark as Handled)</p>\n","_postman_id":"a87a7b29-38d2-4de6-b495-8fd71c18dd83"},{"name":"Payment Requests","item":[{"name":"Create Payment Request","id":"83ba6b56-cbba-4f99-a856-bc2bcfda7ead","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location-As-Navigable-Url","value":"true"},{"key":"CX-API-KEY","value":"{{cx-api-key}}"}],"body":{"mode":"raw","raw":"{\n    \"currency\": \"USD\",\n    \"totalAmount\": 123456,\n    \"paymentRequestDateTime\": \"2020-10-04T15:50:43.947Z\",\n    \"customerMessage\": \"Thank you for your business\",\n    \"description\":\"PR-12345\",\n    \"dueInFullDateTime\": \"2024-02-09T15:55:33.885Z\",\n    \"lineItems\": [\n        {\n            \"lineItemReference\": \"1-31663098\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 100,\n            \"description\": \"CREDIT!\"\n        },\n        {\n            \"lineItemReference\": \"2-09632236\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 123356,\n            \"description\": \"PAYMENT!\"\n        }\n    ],\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"data\": {\n            \"myKey\": \"myData\",\n            \"thisKey\": \"thatData\",\n            \"statementData\": \"MyData\",\n            \"thisIsANewKey\" :\"thisIsANewValue\"\n        }\n    }\n}"},"url":"{{baseUrl}}/cx/action/createPaymentRequest","description":"<p>With a Customer in place, your next step is to generate a Payment Request. You will define the amount and any additional information to display to the end consumer in this API.</p>\n<h3 id=\"creating-a-payment-request\">Creating a Payment Request</h3>\n<ul>\n<li><p><strong>New Payment Request:</strong> Issue a POST request to the createPaymentRequest endpoint for a given customer ID. Upon success, a response will be returned containing the ID of the created Payment Request. Your Customer will be automatically sent a communication with the new payment request immediately.</p>\n</li>\n<li><p>Limitations and Guidelines</p>\n<ul>\n<li><p><strong>Many-at-a-Time</strong>: A Customer can have any number of active Payment Requests.</p>\n</li>\n<li><p><strong>Attachments:</strong> You can attach a PDF document to the Payment Request. The attachment should be a raw Base64 encoded string. Refer to the Postman example titled 'Statement with Attachment' for more information.</p>\n<ul>\n<li><p>One attachment per Statement.</p>\n</li>\n<li><p>Maximum size of 500,000 Base64 characters (~approx 370,000 bytes on disk).</p>\n</li>\n</ul>\n</li>\n<li><p><strong>Line Items:</strong> You can provide more detail for each item by including an array of line items, please note the total amount must equal the sum of the line items.</p>\n</li>\n<li><p><strong>QR Code and Link:</strong> By providing an additional header ‘Location-As-Navigable-Url: true’ we will return in the response the tinylink URL and a QR base64 image for your use in other communication platforms (eg print on paper copy).</p>\n</li>\n</ul>\n</li>\n</ul>\n<table><tbody><tr><th>Field</th><th>Notes</th></tr><tr><td><div>currency</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Required.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>totalAmount</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required.</p><p>In <a href=\"https://en.wikipedia.org/wiki/Basis_point\">Basis Points</a><br />(in USD, 1 cent = 1 basis point) eg $1 = 100</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>paymentRequestDateTime</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required.</p><p>In <a href=\"https://en.wikipedia.org/wiki/ISO_8601\">ISO8601</a> format.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>description</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Required<br />Any Text, up to 60 characters.<br />Will be displayed on the Customer Portal to assist the customer in differentiating different payment requests.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>_embedded.customer.id</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Conditional</b>. Internal system Id referencing the customer for which the Payment Request is being created. Either Id or External Id is <b>required</b>.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>_embedded.customer.externalId</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Conditional</b>. External system Id referencing the customer for which the Payment Request is being created. Either Id for External Id is <b>required</b>.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>lineItems</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. An array of lineitem</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>lineItem</div><div><div><div><div></div></div></div><div></div></div></td><td><div><ul><li><p><code>lineItemReference</code> - Required. 36 characters max.</p></li><li><p><code>date</code> - Required. Format 'YYYY-MM-DD'</p></li><li><p><code>description</code> - Required. 125 characters max.</p></li><li><p><code>amount</code> - Required. In <a href=\"https://en.wikipedia.org/wiki/Basis_point\">Basis Points</a></p></li><li><p><code>attachmentUrl</code> - Optional. Url reference to hosted document for this line item. 255 characters max.</p></li></ul></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Discretionary data that is stored with the Statement. Actions related to the Statement return this data in the response.</p><p>(example: receive Payment item via PUSH or PULL)</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata.externalId</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Alternate identifier for a statement.</p><p>example <code>{\"externalId\": \"john-outstanding-balance-1299\"}</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata.data</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Key-value pairs of strings.</p><p>example <code>{\"myCustomkey1\": \"myCustomValue1\", \"myCustomkey2\": \"myCustomValue2\"}</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>configOverrides</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.<br /></p><p>Map of configuration setting names and values</p><p>example <code>configOverrides: {\"configName\": \"configValue\", \"configName\": \"configValue\"}</code></p><p>Currently, the only supported configuration option is <b>on_setStatement_sendMessage_enabled</b>, which controls the sending of notifications to the customer when a statement is updated. \"true\" sends a notification, \"false\" does not. Configuration overrides are only in effect for the duration and scope of the request in which they are specified.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional Data for additional features</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.referenceId</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, the reference ID will be used as a prefix to build incrementing reference IDs when Customers make multiple payments. e.g. ref-123-abc will result in ref-123-abc-1, ref-123-abc-2, ref-123-abc-3, etc attached to each subsequent payment until the Payment Request is updated. NOTE: these values should be unique from one Payment Request update to the next.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.poNumber</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, will be sent with the payment to qualify for Level II/III processing rates.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.destinationPostalCode</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, will be sent with the payment to qualify for Level II/III processing rates</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.taxAmount</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, will be sent with the payment to qualify for Level II/III processing rates</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.invoiceNumber</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, will be sent with the payment and will show up in payment gateway reports.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>viewDetailUrl</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. HTTPS Url When included, a 'View Detail URL' will be available on the Payment page which will link to the Url sent</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>attachments</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. Limitations listed previously base 64 object (see examples)</div><div><div><div><div></div></div></div><div></div></div></td></tr></tbody></table>\n\n<p><strong>Important Note: The Payment Request link is only for the Customer. A merchant user should never use that link! Autocomplete is enabled, and a merchant user’s browser may autofill incorrect card details.</strong></p>\n<p><strong>Here is an email and SMS Text example of a Communication sent out when the Create / Update statement call is completed:</strong></p>\n<img src=\"https://lh5.googleusercontent.com/i7FgoyYOxmIdGNj94DIIMdNkcsAA9MxD5IU5RUtNzmx3eyxpT9fY22zrlqEg7_dZdew2qSxDqiyzm6465nrz5fOPZh33rQWRh6UQ74iedSLy5LrH8_lTxEq_NGUeqTIGbjhfrnI9K_b9-S0y_0ETqsg\" />\n\n<img src=\"https://lh4.googleusercontent.com/a_dWT9Knbv0BRDcD7EXgE0xNE8J1V7eJW6QE39AA6S-XkVYN90lvWNJZvQelG5dg76w441D2Yj9Ki7SaLMF4Nzig_BQlRt_BHaZWbMJ8jr9BARwHy0vHe4PyTYr7gcyb38L4VAS1V2cproTtERt7H8Y\" />","urlObject":{"path":["cx","action","createPaymentRequest"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"f436d74f-cf0c-46c3-8446-8a2ad748c9cd","name":"201 Create with Attachment and TinyLink","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location-As-Navigable-Url","value":"true"},{"key":"CX-API-KEY","value":"{{cx-api-key}}"}],"body":{"mode":"raw","raw":"{\n    \"currency\": \"USD\",\n    \"totalAmount\": 123456,\n    \"paymentRequestDateTime\": \"2020-10-04T15:50:43.947Z\",\n    \"customerMessage\": \"Thank you for your business\",\n    \"dueInFullDateTime\": \"2024-02-09T15:55:33.885Z\",\n    \"description\":\"PR-12345\",\n    \"attachments\": [\n\t\t{\n\t\t\t\"contentType\": \"application/pdf\",\n\t\t\t\"content\": \"{{base64Content}}\"\n\t\t}\n\t],\n    \"lineItems\": [\n        {\n            \"lineItemReference\": \"1-31663098\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 100,\n            \"description\": \"CREDIT!\"\n        },\n        {\n            \"lineItemReference\": \"2-09632236\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 123356,\n            \"description\": \"PAYMENT!\"\n        }\n    ],\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"data\": {\n            \"myKey\": \"myData\",\n            \"thisKey\": \"thatData\",\n            \"statementData\": \"MyData\",\n            \"thisIsANewKey\" :\"thisIsANewValue\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createPaymentRequest"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\":\"{{paymentRequestId}}\",\n    \"currency\": \"USD\",\n    \"totalAmount\": 123456,\n    \"paymentRequestDateTime\": \"2020-10-04T15:50:43.947Z\",\n    \"customerMessage\": \"Thank you for your business\",\n    \"dueInFullDateTime\": \"2024-02-09T15:55:33.885Z\",\n    \"description\":\"PR-12345\",\n    \"lineItems\": [\n        {\n            \"lineItemReference\": \"1-31663098\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 100,\n            \"description\": \"CREDIT!\"\n        },\n        {\n            \"lineItemReference\": \"2-09632236\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 123356,\n            \"description\": \"PAYMENT!\"\n        }\n    ],\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"data\": {\n            \"myKey\": \"myData\",\n            \"thisKey\": \"thatData\",\n            \"statementData\": \"MyData\",\n            \"thisIsANewKey\": \"thisIsANewValue\"\n        }\n    }\n}"},{"id":"67dd34b6-9619-4d6e-8af7-ed37c46b10a3","name":"201 Create with Optional Data","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location-As-Navigable-Url","value":"true"},{"key":"CX-API-KEY","value":"{{cx-api-key}}"}],"body":{"mode":"raw","raw":"{\n    \"currency\": \"USD\",\n    \"totalAmount\": 123456,\n    \"paymentRequestDateTime\": \"2020-10-04T15:50:43.947Z\",\n    \"customerMessage\": \"Thank you for your business\",\n    \"dueInFullDateTime\": \"2024-02-09T15:55:33.885Z\",\n    \"description\":\"PR-12345\",\n    \"optionalData\":{\n        \"taxAmount\":10000,\n        \"destinationPostalCode\":\"84045\",\n        \"poNumber\":\"12345\",\n        \"clerkId\":\"Derek\",\n        \"referenceId\":\"51c4d815-abd4-45fa-9e2a-f8bf2329a021\",\n        \"invoiceNumber\":\"12345\"\n    },\n    \"attachments\": [\n\t\t{\n\t\t\t\"contentType\": \"application/pdf\",\n\t\t\t\"content\": \"{{base64Content}}\"\n\t\t}\n\t],\n    \"lineItems\": [\n        {\n            \"lineItemReference\": \"1-31663098\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 100,\n            \"description\": \"CREDIT!\"\n        },\n        {\n            \"lineItemReference\": \"2-09632236\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 123356,\n            \"description\": \"PAYMENT!\"\n        }\n    ],\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"data\": {\n            \"myKey\": \"myData\",\n            \"thisKey\": \"thatData\",\n            \"statementData\": \"MyData\",\n            \"thisIsANewKey\" :\"thisIsANewValue\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createPaymentRequest"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\":\"{{paymentRequestId}}\",\n    \"currency\": \"USD\",\n    \"totalAmount\": 123456,\n    \"paymentRequestDateTime\": \"2020-10-04T15:50:43.947Z\",\n    \"customerMessage\": \"Thank you for your business\",\n    \"dueInFullDateTime\": \"2024-02-09T15:55:33.885Z\",\n    \"description\":\"PR-12345\",\n    \"lineItems\": [\n        {\n            \"lineItemReference\": \"1-31663098\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 100,\n            \"description\": \"CREDIT!\"\n        },\n        {\n            \"lineItemReference\": \"2-09632236\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 123356,\n            \"description\": \"PAYMENT!\"\n        }\n    ],\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"data\": {\n            \"myKey\": \"myData\",\n            \"thisKey\": \"thatData\",\n            \"statementData\": \"MyData\",\n            \"thisIsANewKey\": \"thisIsANewValue\"\n        }\n    }\n}"},{"id":"c7ee9443-201f-4fc2-b04a-45ecb01d898c","name":"201 Create with URI Link","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location-As-Navigable-Url","value":"true"},{"key":"CX-API-KEY","value":"{{cx-api-key}}"}],"body":{"mode":"raw","raw":"{\n    \"currency\": \"USD\",\n    \"totalAmount\": 123456,\n    \"paymentRequestDateTime\": \"2020-10-04T15:50:43.947Z\",\n    \"customerMessage\": \"Thank you for your business\",\n    \"dueInFullDateTime\": \"2024-02-09T15:55:33.885Z\",\n    \"description\":\"PR-12345\",\n    \"viewDetailUrl\":\"https://www.google.com\",\n    \"attachments\": [\n\t\t{\n\t\t\t\"contentType\": \"application/pdf\",\n\t\t\t\"content\": \"{{base64Content}}\"\n\t\t}\n\t],\n    \"lineItems\": [\n        {\n            \"lineItemReference\": \"1-31663098\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 100,\n            \"description\": \"CREDIT!\"\n        },\n        {\n            \"lineItemReference\": \"2-09632236\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 123356,\n            \"description\": \"PAYMENT!\"\n        }\n    ],\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"data\": {\n            \"myKey\": \"myData\",\n            \"thisKey\": \"thatData\",\n            \"statementData\": \"MyData\",\n            \"thisIsANewKey\" :\"thisIsANewValue\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createPaymentRequest"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\":\"{{paymentRequestId}}\",\n    \"currency\": \"USD\",\n    \"totalAmount\": 123456,\n    \"paymentRequestDateTime\": \"2020-10-04T15:50:43.947Z\",\n    \"customerMessage\": \"Thank you for your business\",\n    \"dueInFullDateTime\": \"2024-02-09T15:55:33.885Z\",\n    \"description\":\"PR-12345\",\n    \"viewDetailUrl\":\"https://www.google.com\",\n    \"lineItems\": [\n        {\n            \"lineItemReference\": \"1-31663098\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 100,\n            \"description\": \"CREDIT!\"\n        },\n        {\n            \"lineItemReference\": \"2-09632236\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 123356,\n            \"description\": \"PAYMENT!\"\n        }\n    ],\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"data\": {\n            \"myKey\": \"myData\",\n            \"thisKey\": \"thatData\",\n            \"statementData\": \"MyData\",\n            \"thisIsANewKey\": \"thisIsANewValue\"\n        }\n    }\n}"},{"id":"1eb697ff-a9ae-4ef6-9ba1-e7d58c5644ea","name":"201 Create with Configuration Override","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location-As-Navigable-Url","value":"true"},{"key":"CX-API-KEY","value":"{{cx-api-key}}"}],"body":{"mode":"raw","raw":"{\n    \"currency\": \"USD\",\n    \"totalAmount\": 123456,\n    \"paymentRequestDateTime\": \"2020-10-04T15:50:43.947Z\",\n    \"customerMessage\": \"Thank you for your business\",\n    \"dueInFullDateTime\": \"2024-02-09T15:55:33.885Z\",\n    \"description\":\"PR-12345\",\n    \"viewDetailUrl\":\"https://www.google.com\",\n    \"attachments\": [\n\t\t{\n\t\t\t\"contentType\": \"application/pdf\",\n\t\t\t\"content\": \"{{base64Content}}\"\n\t\t}\n\t],\n    \"lineItems\": [\n        {\n            \"lineItemReference\": \"1-31663098\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 100,\n            \"description\": \"CREDIT!\"\n        },\n        {\n            \"lineItemReference\": \"2-09632236\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 123356,\n            \"description\": \"PAYMENT!\"\n        }\n    ],\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"data\": {\n            \"myKey\": \"myData\",\n            \"thisKey\": \"thatData\",\n            \"statementData\": \"MyData\",\n            \"thisIsANewKey\" :\"thisIsANewValue\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createPaymentRequest"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\":\"{{paymentRequestId}}\",\n    \"currency\": \"USD\",\n    \"totalAmount\": 123456,\n    \"paymentRequestDateTime\": \"2020-10-04T15:50:43.947Z\",\n    \"customerMessage\": \"Thank you for your business\",\n    \"dueInFullDateTime\": \"2024-02-09T15:55:33.885Z\",\n    \"description\":\"PR-12345\",\n    \"viewDetailUrl\":\"https://www.google.com\",\n    \"lineItems\": [\n        {\n            \"lineItemReference\": \"1-31663098\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 100,\n            \"description\": \"CREDIT!\"\n        },\n        {\n            \"lineItemReference\": \"2-09632236\",\n            \"date\": \"2024-02-09T15:55:33.885Z\",\n            \"amount\": 123356,\n            \"description\": \"PAYMENT!\"\n        }\n    ],\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"data\": {\n            \"myKey\": \"myData\",\n            \"thisKey\": \"thatData\",\n            \"statementData\": \"MyData\",\n            \"thisIsANewKey\": \"thisIsANewValue\"\n        }\n    }\n}"},{"id":"14254ab3-b3dd-4d12-a2cd-645d37b9238b","name":"401 Unauthorized Copy","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement."},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location"}],"body":{"mode":"raw","raw":"{\n\t\"currency\": \"USD\",\n\t\"totalAmount\": 10000,\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createPaymentRequest"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Mon, 24 Feb 2020 17:26:05 GMT"},{"key":"Expires","value":"0"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"Not authorized for this service location\"\n}"}],"_postman_id":"83ba6b56-cbba-4f99-a856-bc2bcfda7ead"},{"name":"Discard Payment Request","event":[{"listen":"test","script":{"id":"aa468c56-66db-428e-88cc-c6ae1d9a518f","exec":["var jsonData = JSON.parse(responseBody);","if (jsonData.msg !== undefined) {","    postman.setEnvironmentVariable(\"testCustomerId\", \"\");","}","","pm.test(\"response is created\", function() {","    pm.response.to.have.status(200);","});"],"type":"text/javascript","packages":{}}}],"id":"e722b0a6-cffa-47d4-8235-146adc5976ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"CX-API-KEY","value":"{{cxApiKey}}"}],"body":{"mode":"raw","raw":"{\n    \"id\": \"{{paymentRequestId}}\"\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/discard","description":"<p>This endpoint allows you to remove an existing payment request from a customer's list of payment requests.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Required. Should be the payment request ID for the Payment request that will be discarded.  <br />  <br />This id is returned on a Payment Request post.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["cx","action","discard"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"89805273-c033-47bc-8d6f-8b6d29c51b5f","name":"Discard Payment Request / OK","originalRequest":{"method":"POST","header":[{"key":"CX-API-KEY","value":"{{cxApiKey}}"}],"body":{"mode":"raw","raw":"{\n    \"id\": \"{{paymentRequestId}}\"\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/discard"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":null},{"id":"7c4f56a0-1937-4e8f-8645-23050d2b22ed","name":"Discard Payment Request / Not found","originalRequest":{"method":"POST","header":[{"key":"CX-API-KEY","value":"{{cxApiKey}}"}],"body":{"mode":"raw","raw":"{\n    \"id\": \"{{paymentRequestId}}\"\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/discard"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Object not found\"\n}"}],"_postman_id":"e722b0a6-cffa-47d4-8235-146adc5976ff"},{"name":"Create / Update Statement","id":"b61d02ac-6dcf-45fb-893c-4b552e02f359","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"description":"<p>If set to true, the response will have \"Location-As-Navigable-Url-As-TinyLink\" and \"Location-As-Navigable-Url-As-QR-Code\" headers.  The values will be a TinyLink URL and associated QR Code that can be used to link to the statement.</p>\n","key":"Location-As-Navigable-Url","value":"false"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"<p>(Required) CX Api key for the Service Location</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"currency\": \"USD\",\n\t\"totalAmount\": 10000,\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"attachments\": [\n\t\t{\n\t\t\t\"contentType\": \"application/pdf\",\n\t\t\t\"content\": \"{{base64Content}}\"\n\t\t}\n\t],\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}"},"url":"{{baseUrl}}/cx/action/setStatement","description":"<p>With a Customer in place, your next step is to generate a Statement, which will serve as a Statement Request for them. You will define the amount and any additional information to display to the end consumer in this API.</p>\n<h3 id=\"creating-a-payment-request\">Creating a Payment Request</h3>\n<ul>\n<li><p><strong>New Payment Request:</strong> Issue a POST request to the setStatement endpoint for a given customer ID. Upon success, a response will be returned containing the ID of the created Statement. Your Customer will be automatically sent a communication with the new payment request immediately.</p>\n</li>\n<li><p>Limitations and Guidelines</p>\n<ul>\n<li><p><strong>One-at-a-Time</strong>: A Customer can have only one active Statement Request. Any new request will overwrite the existing one, showing the most recent amount due.</p>\n</li>\n<li><p><strong>Attachments:</strong> You can attach a PDF document to the Payment Request. The attachment should be a raw Base64 encoded string. Refer to the Postman example titled 'Statement with Attachment' for more information.</p>\n<ul>\n<li><p>One attachment per Statement.</p>\n</li>\n<li><p>Maximum size of 500,000 Base64 characters (~approx 370,000 bytes on disk).</p>\n</li>\n</ul>\n</li>\n<li><p><strong>Line Items:</strong> You can provide more detail for each item by including an array of line items, please note the total amount must equal the sum of the line items.</p>\n</li>\n<li><p><strong>QR Code and Link:</strong> By providing an additional header ‘Location-As-Navigable-Url: true’ we will return in the response the tinylink URL and a QR base64 image for your use in other communication platforms (eg print on paper copy).</p>\n</li>\n</ul>\n</li>\n</ul>\n<table><tbody><tr><th>Field</th><th>Notes</th></tr><tr><td><div>currency</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Required.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>totalAmount</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Required.</p><p>In <a href=\"https://en.wikipedia.org/wiki/Basis_point\">Basis Points</a><br />(in USD, 1 cent = 1 basis point) eg $1 = 100</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>statementDateTime</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>If not provided will be defaulted to the current time.</p><p>In <a href=\"https://en.wikipedia.org/wiki/ISO_8601\">ISO8601</a> format.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>_embedded.customer.id</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Conditional</b>. Internal system Id referencing the customer for which the Payment Request is being created. Either Id or External Id is <b>required</b>.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>_embedded.customer.externalId</div><div><div><div><div></div></div></div><div></div></div></td><td><div><b>Conditional</b>. External system Id referencing the customer for which the Payment Request is being created. Either Id for External Id is <b>required</b>.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>lineItems</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. An array of lineitem</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>lineItem</div><div><div><div><div></div></div></div><div></div></div></td><td><div><ul><li><p><code>lineItemReference</code> - Required. 36 characters max.</p></li><li><p><code>date</code> - Required. Format 'YYYY-MM-DD'</p></li><li><p><code>description</code> - Required. 125 characters max.</p></li><li><p><code>amount</code> - Required. In <a href=\"https://en.wikipedia.org/wiki/Basis_point\">Basis Points</a></p></li><li><p><code>attachmentUrl</code> - Optional. Url reference to hosted document for this line item. 255 characters max.</p></li></ul></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Discretionary data that is stored with the Statement. Actions related to the Statement return this data in the response.</p><p>(example: receive Payment item via PUSH or PULL)</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata.externalId</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Alternate identifier for a statement.</p><p>example <code>{\"externalId\": \"john-outstanding-balance-1299\"}</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>myMetadata.data</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.</p><p>Key-value pairs of strings.</p><p>example <code>{\"myCustomkey1\": \"myCustomValue1\", \"myCustomkey2\": \"myCustomValue2\"}</code></p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>configOverrides</div><div><div><div><div></div></div></div><div></div></div></td><td><div><p>Optional.<br /></p><p>Map of configuration setting names and values</p><p>example <code>configOverrides: {\"configName\": \"configValue\", \"configName\": \"configValue\"}</code></p><p>Currently, the only supported configuration option is <b>on_setStatement_sendMessage_enabled</b>, which controls the sending of notifications to the customer when a statement is updated. \"true\" sends a notification, \"false\" does not. Configuration overrides are only in effect for the duration and scope of the request in which they are specified.</p></div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional Data for additional features</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.referenceId</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, the reference ID will be used as a prefix to build incrementing reference IDs when Customers make multiple payments. e.g. ref-123-abc will result in ref-123-abc-1, ref-123-abc-2, ref-123-abc-3, etc attached to each subsequent payment until the Payment Request is updated. NOTE: these values should be unique from one Payment Request update to the next.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.poNumber</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, will be sent with the payment to qualify for Level II/III processing rates.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.destinationPostalCode</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, will be sent with the payment to qualify for Level II/III processing rates</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.taxAmount</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, will be sent with the payment to qualify for Level II/III processing rates</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>optionalData.invoiceNumber</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. When included, will be sent with the payment and will show up in payment gateway reports.</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>viewDetailUrl</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. HTTPS Url When included, a 'View Detail URL' will be available on the Payment page which will link to the Url sent</div><div><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>attachments</div><div><div><div><div></div></div></div><div></div></div></td><td><div>Optional. Limitations listed previously base 64 object (see examples)</div><div><div><div><div></div></div></div><div></div></div></td></tr></tbody></table>\n\n<p><strong>Important Note: The Payment Request link is only for the Customer. A merchant user should never use that link! Autocomplete is enabled, and a merchant user’s browser may autofill incorrect card details.</strong></p>\n<p><strong>Here is an email and SMS Text example of a Communication sent out when the Create / Update statement call is completed:</strong></p>\n<img src=\"https://lh5.googleusercontent.com/i7FgoyYOxmIdGNj94DIIMdNkcsAA9MxD5IU5RUtNzmx3eyxpT9fY22zrlqEg7_dZdew2qSxDqiyzm6465nrz5fOPZh33rQWRh6UQ74iedSLy5LrH8_lTxEq_NGUeqTIGbjhfrnI9K_b9-S0y_0ETqsg\" />\n\n<img src=\"https://lh4.googleusercontent.com/a_dWT9Knbv0BRDcD7EXgE0xNE8J1V7eJW6QE39AA6S-XkVYN90lvWNJZvQelG5dg76w441D2Yj9Ki7SaLMF4Nzig_BQlRt_BHaZWbMJ8jr9BARwHy0vHe4PyTYr7gcyb38L4VAS1V2cproTtERt7H8Y\" />","urlObject":{"path":["cx","action","setStatement"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"7da21b4f-b6e5-4d61-9b8b-da5ea30cd880","name":"200 Update with Attachment and Tiny Link","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement."},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"currency\": \"USD\",\n\t\"totalAmount\": 10000,\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"attachments\": [\n\t\t{\n\t\t\t\"contentType\": \"application/pdf\",\n\t\t\t\"content\": \"{{base64Content}}\"\n\t\t}\n\t],\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setStatement"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Wed, 26 Feb 2020 19:51:38 GMT"},{"key":"Expires","value":"0"},{"key":"Location-As-Navigable-Url-As-TinyLink","value":"https://c.rt2.me_72r7btloi6/"},{"key":"Location-As-Navigable-Url-As-QR-Code","value":"{{base64QRCode}}","description":"","type":"text"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"Set-Cookie","value":"CX2SESSIONID=4171880F2385BD4CF2907EBB0949221B; Path=/; Secure; HttpOnly"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"id\": \"{{statementId}}\",\n\t\"currency\": \"USD\",\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"totalAmount\": 10000,\n\t\"remainingAmount\": 10000,\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-03-09T15:47:52.887Z\",\n\t\"attachments\": [\n\t\t{\n\t\t\t\"contentType\": \"application/pdf\",\n\t\t\t\"content\": \"{{base64Content}}\"\n\t\t}\n\t],\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}"},{"id":"7a91ffca-39e4-4a15-9932-382387cee7b3","name":"200 Update with Url Link","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement."},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location"}],"body":{"mode":"raw","raw":"{\n\t\"currency\": \"USD\",\n\t\"totalAmount\": 10000,\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-02-24T16:47:52.887Z\",\n    \"viewDetailUrl\": \"https://www.google.com/\",\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setStatement"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Wed, 26 Feb 2020 19:51:38 GMT"},{"key":"Expires","value":"0"},{"key":"Location-As-Navigable-Url-As-TinyLink","value":"https://c.rt2.me_72r7btloi6/"},{"key":"Location-As-Navigable-Url-As-QR-Code","value":"{{base64QRCode}}","description":""},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"Set-Cookie","value":"CX2SESSIONID=4171880F2385BD4CF2907EBB0949221B; Path=/; Secure; HttpOnly"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"id\": \"{{statementId}}\",\n\t\"currency\": \"USD\",\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"totalAmount\": 10000,\n\t\"remainingAmount\": 10000,\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-03-09T15:47:52.887Z\",\n\t\"attachments\": [\n\t\t{\n\t\t\t\"contentType\": \"application/pdf\",\n\t\t\t\"content\": \"{{base64Content}}\"\n\t\t}\n\t],\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}"},{"id":"b0a450ea-e8bf-4654-b9e2-41b3783a6b2e","name":"200 Update with Configuration Override","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement."},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"currency\": \"USD\",\n\t\"totalAmount\": 10000,\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t},\n\t\"configOverrides\":{\n\t\t\"on_setStatement_sendMessage_enabled\": \"true\"\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setStatement"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Wed, 26 Feb 2020 19:51:38 GMT"},{"key":"Expires","value":"0"},{"key":"Location-As-Navigable-Url-As-TinyLink","value":"https://c.rt2.me_72r7btloi6/"},{"key":"Location-As-Navigable-Url-As-QR-Code","value":"{{base64QRCode}}","description":"","type":"text"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"Set-Cookie","value":"CX2SESSIONID=4171880F2385BD4CF2907EBB0949221B; Path=/; Secure; HttpOnly"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"id\": \"{{statementId}}\",\n\t\"currency\": \"USD\",\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"totalAmount\": 10000,\n\t\"remainingAmount\": 10000,\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-03-09T15:47:52.887Z\",\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t},\n\t\"configOverrides\":{\n\t\t\"on_setStatement_sendMessage_enabled\": \"true\"\n\t}\n}"},{"id":"eb1f8348-60b1-4d98-b44e-42a54985b512","name":"201 Created - No Link","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"Location-As-Navigable-Url","value":"false","description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement."},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"currency\": \"USD\",\n\t\"totalAmount\": 10000,\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setStatement"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Mon, 24 Feb 2020 17:28:31 GMT"},{"key":"Expires","value":"0"},{"key":"Location","value":"http://tpd-sb-cx-pit.3pointdata.com/cx/statement/instances/0ee4463a-5318-4806-90b1-21438174803b"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"id\": \"{{statementId}}\",\n\t\"currency\": \"USD\",\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"totalAmount\": 10000,\n\t\"remainingAmount\": 10000,\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-03-09T15:47:52.887Z\",\n\t\"attachments\": null,\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}"},{"id":"1253f057-8d4e-45f2-8fc1-54f0d657f490","name":"201 Created with myMetadata","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement.","key":"Location-As-Navigable-Url","value":"false"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"currency\": \"USD\",\n\t\"totalAmount\": 10000,\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"myMetadata\": {\n\t\t\"externalId\": \"{{statementExternalId}}\",\n\t\t\"data\": {\n\t\t\t\"loyaltyProgram\": \"GOLD\"\n\t\t}\n\t},\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setStatement"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n\t\"id\": \"{{statementId}}\",\n\t\"currency\": \"USD\",\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"totalAmount\": 10000,\n\t\"remainingAmount\": 10000,\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-03-09T15:47:52.887Z\",\n\t\"attachments\": null,\n\t\"myMetadata\": {\n\t\t\"externalId\": \"{{statementExternalId}}\",\n\t\t\"data\": {\n\t\t\t\"loyaltyProgram\": \"GOLD\"\n\t\t}\n\t},\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\",\n\t\t\t\"myMetadata\": {\n\t\t\t\t\"externalId\": \"{{customerExternalId}}\",\n\t\t\t\t\"data\": {\n\t\t\t\t\t\"middleName\": \"Joe\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}"},{"id":"09944992-22e9-43bb-85a3-ff247bac53aa","name":"201 Created with line items","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement.","key":"Location-As-Navigable-Url","value":"false"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"currency\": \"USD\",\n\t\"totalAmount\": 6000,\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"lineItems\": [\n\t\t{\n\t\t\t\"lineItemReference\": \"INV-000001\",\n\t\t\t\"date\": \"2021-01-03\",\n\t\t\t\"description\": \"Services provided\",\n\t\t\t\"amount\": 5000\n\t\t},\n\t\t{\n\t\t\t\"lineItemReference\": \"INV-000002\",\n\t\t\t\"date\": \"2021-01-03\",\n\t\t\t\"description\": \"More services provided\",\n\t\t\t\"amount\": 1000\n\t\t}\n\t],\n\t\"myMetadata\": {\n\t\t\"externalId\": \"{{statementExternalId}}\",\n\t\t\"data\": {\n\t\t\t\"loyaltyProgram\": \"GOLD\"\n\t\t}\n\t},\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setStatement"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n\t\"id\": \"{{statementId}}\",\n\t\"currency\": \"USD\",\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"totalAmount\": 6000,\n\t\"remainingAmount\": 6000,\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-03-09T15:47:52.887Z\",\n\t\"attachments\": null,\n\t\"lineItems\": [\n\t\t{\n\t\t\t\"lineItemReference\": \"INV-000001\",\n\t\t\t\"date\": \"2021-01-03\",\n\t\t\t\"description\": \"Services provided\",\n\t\t\t\"amount\": 5000\n\t\t},\n\t\t{\n\t\t\t\"lineItemReference\": \"INV-000002\",\n\t\t\t\"date\": \"2021-01-03\",\n\t\t\t\"description\": \"More services provided\",\n\t\t\t\"amount\": 1000\n\t\t}\n\t],\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\",\n\t\t\t\"myMetadata\": {\n\t\t\t\t\"externalId\": \"{{customerExternalId}}\",\n\t\t\t\t\"data\": {\n\t\t\t\t\t\"middleName\": \"Joe\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}"},{"id":"e9510090-2504-4b17-ae12-934b859ee463","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement."},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"currency\": \"USD\",\n\t\"totalAmount\": 10000,\n\t\"statementDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"customerMessage\": \"Thank you for your business\",\n\t\"dueInFullDateTime\": \"2020-02-24T16:47:52.887Z\",\n\t\"_embedded\": {\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setStatement"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Mon, 24 Feb 2020 17:26:05 GMT"},{"key":"Expires","value":"0"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"nginx/1.14.1"},{"key":"vary","value":"accept-encoding"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"transfer-encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"Not authorized for this service location\"\n}"}],"_postman_id":"b61d02ac-6dcf-45fb-893c-4b552e02f359"}],"id":"545fb117-6406-46b4-bb39-8528a0f497f6","description":"<p>There are 2 options for sending requests for payment to the customers:</p>\n<p>A <strong>Payment Request</strong> creates a new request each time it is called allowing 1:Many requests for a given customer.</p>\n<p><em>Note: Payment Requests use the discard function when they are no longer needed</em></p>\n<p>A <strong>Statement Request</strong> will overide the current balance for a customer every time it is called allowing only 1 request for a given customer.</p>\n","_postman_id":"545fb117-6406-46b4-bb39-8528a0f497f6"},{"name":"Forms","item":[{"name":"Create Form For Customer","id":"ce749d9f-b6b4-4c42-8948-73a287c324b8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"<p>(Required) CX Api key for the Service Location</p>\n","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","type":"text","description":"<p>If set to true, the response will have \"Location-As-Navigable-Url-As-TinyLink\" and \"Location-As-Navigable-Url-As-QR-Code\" headers.  The values will be a TinyLink URL and associated QR Code that can be used to link to the statement.</p>\n"}],"body":{"mode":"raw","raw":"{\r\n\t\"_embedded\": {\r\n\t\t\"formType\": {\r\n\t\t\t\"formTypeIdentifier\": \"{{formTypeIdentifier}}\"\r\n\t\t},\r\n\t\t\"customer\": {\r\n\t\t\t\"id\": \"{{customerId}}\"\r\n\t\t}\r\n\t}\r\n}"},"url":"{{baseUrl}}/cx/action/createForm","description":"<p>With a Customer in place, your next step is to generate a Form Request. Forms are requested using the formTypeIdentifier that has been assigned to your system. Please reach out to the Integrataion team to organise the forms required for your system.</p>\n<h3 id=\"creating-a-form-request\">Creating a Form Request</h3>\n<ul>\n<li><p><strong>New Form Request:</strong> Issue a POST request to the createFormRequest endpoint for a given customer ID. Upon success, a response will be returned containing the ID of the created Form Request. Your Customer will be automatically sent a communication with the new form request immediately.</p>\n</li>\n<li><p>Limitations and Guidelines</p>\n<ul>\n<li><p><strong>Many-at-a-Time</strong>: A Customer can have any number of active Form Requests. Note that some forms are defined with a cardinality of 1 which only allows 1 active form at a time</p>\n</li>\n<li><p><strong>Attachments:</strong> You can attach a PDF document to the Form Request. The attachment should be a raw Base64 encoded string. Refer to the Postman example titled 'Created with Attachment' for more information.</p>\n<ul>\n<li><p>One attachment per Form Request.</p>\n</li>\n<li><p>Maximum size of 500,000 Base64 characters (~approx 370,000 bytes on disk).</p>\n</li>\n</ul>\n</li>\n<li><p><strong>QR Code and Link:</strong> By providing an additional header ‘Location-As-Navigable-Url: true’ we will return in the response the tinylink URL and a QR base64 image for your use in other communication platforms (eg print on paper copy).</p>\n</li>\n</ul>\n</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>formElementData</td>\n<td>Allows for alternate/default form element <em>values</em> to be applied for the given customer level.  <br />  <br />Optional  <br />  <br />id: The unique identifier for the formElement to be set.  <br />  <br />value: The <em>value</em> represents the desired input to override or default the value defined on the form type defintion.  <br />  <br />Ids' not found in the form type definition are ignored.  <br />  <br />To learn more about the individual form element data please refer to the form template guide via your Integration team.</td>\n</tr>\n<tr>\n<td>_embedded.formType.formTypeIdentifier</td>\n<td>Required.</td>\n</tr>\n<tr>\n<td>_embedded.formType.customer.id</td>\n<td>Required.</td>\n</tr>\n<tr>\n<td>myMetadata</td>\n<td>Optional.  <br />  <br />Discretionary data that is stored with the form. Actions related to the form return this data in the response.</td>\n</tr>\n<tr>\n<td>myMetadata.externalId</td>\n<td>Optional.  <br />  <br />Alternate identifier for a form. External IDs should be unique.  <br />  <br />example <code>{\"external_id\": \"john-generalConsent-X1b\"}</code></td>\n</tr>\n<tr>\n<td>myMetadata.data</td>\n<td>Optional.  <br />  <br />Key-value pairs of strings.  <br />  <br />example <code>{\"my_custom_key1\": \"my_custom_value1\", \"my_custom_key2\": \"my_custom_value2\"}</code></td>\n</tr>\n<tr>\n<td>configOverrides</td>\n<td>Optional.  <br />  <br />Map of configuration setting names and values  <br />  <br />example <code>config_overrides: {\"config_name\": \"config_value\", \"config_name\": \"config_value\"}</code>  <br />  <br />Currently, the only supported configuration option is <strong>on_createForm_sendMessage_enabled</strong>, which controls the sending of notifications to the customer when a form is created. \"true\" sends a notification, \"false\" does not. Configuration overrides are only in effect for the duration and scope of the request in which they are specified.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["cx","action","createForm"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"9f301b30-8824-4deb-a141-75200df82160","name":"201 Created with Form Element Data","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have \"Location-As-Navigable-Url-As-TinyLink\" and \"Location-As-Navigable-Url-As-QR-Code\" headers.  The values will be a TinyLink URL and associated QR Code that can be used to link to the statement."}],"body":{"mode":"raw","raw":"{\r\n\t\"formElementData\": [\r\n\t\t{\r\n\t\t\t\"id\": \"formElementId\",\r\n\t\t\t\"value\": \"formElementValue\"\r\n\t\t}\r\n\t],\r\n\t\"_embedded\": {\r\n\t\t\"formType\": {\r\n\t\t\t\"formTypeIdentifier\": \"{{formTypeIdentifier}}\"\r\n\t\t},\r\n\t\t\"customer\": {\r\n\t\t\t\"id\": \"{{customerId}}\"\r\n\t\t}\r\n\t}\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createForm"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Location-As-Navigable-Url-As-TinyLink","value":"https://c.rt2.me/81c2iY1AvL-Z23dqAVS","description":""},{"key":"Location-As-Navigable-Url-As-QR-Code","value":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsAQAAAABRBrPYAAACTElEQVR42u2asXXDMAxEwecipUfQKB5NGo2jeASXKvyE4A4gHScu0p/YyCZ/hQfgAJDm/1kPO7ETE8AehvXl3u2IH0s3f8bHN3xiNTlsCcs8vx5LX5vvebAHvcYmjCaIdWu548BuMNjVfYvNsOkqi93DYHF+v230n5vLY3keIRWOBLu5LJaRFTt0JFuPCzfbxwAUwDL3MtU83z8fUrQANhWYBqM/XfYIsM8iLoKFea73cCTKshfdMgULYn21C2nm3kwuU523poZhB/VbWAo5JlUI0sSME7QaFucOu90RWaVC4UHdIsBMEishDllmCp4JJo3pchjOD5iIWJZx1GqjI5keFjX9QR22qvCzTqE/ISHLYWz+GFk+E08ZDJ1yU8PgOq/67S3OpjTJYfCgkWrQAJVbUZpcDYPBDst2L0t7qBCGBVnlymEIKdb0xpAKS3HMFnWtvcwnhTlni5iXOMYDHYVbzh1TmuQwphO4jh9ZoBzsAbc5fhTDRoXvvXrA0fyxD/rTCEhg6To8xxzpNZl+L1dUsFfXZ1nXHpRly9uK6Ug6GEs1tHuWljLOHZGCOZJ2NYwrc2/6U6oQOuVdFOucPo9ZdOZerzlS/6FZIhhm0W0mXRRupc7jFkcNG/PmpSaNcJ199jq3zdWwcVthNgeORrqNOx01bNxnMdtevR4JZEgt/fcjAQWMN55ZtbD5q5mBvbU8cth8JMDemDPXvMyRxXg/sVe2LSwbQzmMkQWRzvOt3MqrmpPD5surtV5eZaHv9a+pYecrxBM7sf9j38RLvzidaS3aAAAAAElFTkSuQmCC","description":""},{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"{{formId}}\",\n    \"formElementData\": [\n        {\n            \"id\": \"formElementId\",\n            \"value\": \"formElementValue\"\n        }\n    ],\n    \"_embedded\": {\n        \"formType\": {\n            \"formTypeIdentifier\": \"{{formTypeIdentifier}}\"\n        },\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}"},{"id":"5d58e5e8-050b-4cbb-be91-7a0ed088b1dd","name":"201 Created with myMetadata","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have \"Location-As-Navigable-Url-As-TinyLink\" and \"Location-As-Navigable-Url-As-QR-Code\" headers.  The values will be a TinyLink URL and associated QR Code that can be used to link to the statement."},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\r\n\t\"_embedded\": {\r\n\t\t\"formType\": {\r\n\t\t\t\"formTypeIdentifier\": \"{{formTypeIdentifier}}\"\r\n\t\t},\r\n\t\t\"customer\": {\r\n\t\t\t\"id\": \"{{customerId}}\"\r\n\t\t}\r\n\t},\r\n\t\"myMetadata\": {\r\n\t\t\"externalId\": \"9bdcaaae-6bf1-4015-96b1-d4e405110a71\",\r\n\t\t\"data\": {\r\n\t\t\t\"key\": \"value\"\r\n\t\t}\r\n\t}\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createForm"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Location-As-Navigable-Url-As-TinyLink","value":"https://c.rt2.me/81c2iY1AvL-Z23dqAVS","description":""},{"key":"Location-As-Navigable-Url-As-QR-Code","value":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsAQAAAABRBrPYAAACTElEQVR42u2asXXDMAxEwecipUfQKB5NGo2jeASXKvyE4A4gHScu0p/YyCZ/hQfgAJDm/1kPO7ETE8AehvXl3u2IH0s3f8bHN3xiNTlsCcs8vx5LX5vvebAHvcYmjCaIdWu548BuMNjVfYvNsOkqi93DYHF+v230n5vLY3keIRWOBLu5LJaRFTt0JFuPCzfbxwAUwDL3MtU83z8fUrQANhWYBqM/XfYIsM8iLoKFea73cCTKshfdMgULYn21C2nm3kwuU523poZhB/VbWAo5JlUI0sSME7QaFucOu90RWaVC4UHdIsBMEishDllmCp4JJo3pchjOD5iIWJZx1GqjI5keFjX9QR22qvCzTqE/ISHLYWz+GFk+E08ZDJ1yU8PgOq/67S3OpjTJYfCgkWrQAJVbUZpcDYPBDst2L0t7qBCGBVnlymEIKdb0xpAKS3HMFnWtvcwnhTlni5iXOMYDHYVbzh1TmuQwphO4jh9ZoBzsAbc5fhTDRoXvvXrA0fyxD/rTCEhg6To8xxzpNZl+L1dUsFfXZ1nXHpRly9uK6Ug6GEs1tHuWljLOHZGCOZJ2NYwrc2/6U6oQOuVdFOucPo9ZdOZerzlS/6FZIhhm0W0mXRRupc7jFkcNG/PmpSaNcJ199jq3zdWwcVthNgeORrqNOx01bNxnMdtevR4JZEgt/fcjAQWMN55ZtbD5q5mBvbU8cth8JMDemDPXvMyRxXg/sVe2LSwbQzmMkQWRzvOt3MqrmpPD5surtV5eZaHv9a+pYecrxBM7sf9j38RLvzidaS3aAAAAAElFTkSuQmCC","description":""}],"cookie":[],"responseTime":null,"body":"{\n\t\"id\": \"{{formId}}\",\n\t\"_embedded\": {\n\t\t\"formType\": {\n\t\t\t\"formTypeIdentifier\": \"{{formTypeIdentifier}}\"\n\t\t},\n\t\t\"customer\": {\n\t\t\t\"id\": \"{{customerId}}\"\n\t\t}\n\t},\n\t\"myMetadata\": {\n\t\t\"externalId\": \"8a5a742f-5ce8-4e02-99a7-5ce7c7640139\",\n\t\t\"data\": {\n\t\t\t\"key\": \"value\"\n\t\t}\n\t}\n}"},{"id":"56e083dc-79a4-45bd-ae6e-cd30eb5c340c","name":"201 Created with Attachment","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have \"Location-As-Navigable-Url-As-TinyLink\" and \"Location-As-Navigable-Url-As-QR-Code\" headers.  The values will be a TinyLink URL and associated QR Code that can be used to link to the statement."},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\r\n\t\"formElement_data\": [\r\n\t\t{\r\n\t\t\t\"id\": \"formElementId\",\r\n\t\t\t\"value\": \"formElementValue\"\r\n\t\t}\r\n\t],\r\n\t\"attachments\": [\r\n\t\t{\r\n\t\t\t\"contentType\": \"application/pdf\",\r\n\t\t\t\"content\": \"{{base64Content}}\"\r\n\t\t}\r\n\t],\r\n\t\"_embedded\": {\r\n\t\t\"formType\": {\r\n\t\t\t\"formTypeIdentifier\": \"{{formTypeIdentifier}}\"\r\n\t\t},\r\n\t\t\"customer\": {\r\n\t\t\t\"id\": \"{{customerId}}\"\r\n\t\t}\r\n\t},\r\n\t\"myMetadata\": {\r\n\t\t\"externalId\": \"662e987a-a93c-4ae8-b971-700c2bfce4c4\",\r\n\t\t\"data\": {\r\n\t\t\t\"key\": \"value\"\r\n\t\t}\r\n\t}\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createForm"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Location-As-Navigable-Url-As-TinyLink","value":"https://c.rt2.me/81c2iY1AvL-Z23dqAVS","description":""},{"key":"Location-As-Navigable-Url-As-QR-Code","value":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsAQAAAABRBrPYAAACTElEQVR42u2asXXDMAxEwecipUfQKB5NGo2jeASXKvyE4A4gHScu0p/YyCZ/hQfgAJDm/1kPO7ETE8AehvXl3u2IH0s3f8bHN3xiNTlsCcs8vx5LX5vvebAHvcYmjCaIdWu548BuMNjVfYvNsOkqi93DYHF+v230n5vLY3keIRWOBLu5LJaRFTt0JFuPCzfbxwAUwDL3MtU83z8fUrQANhWYBqM/XfYIsM8iLoKFea73cCTKshfdMgULYn21C2nm3kwuU523poZhB/VbWAo5JlUI0sSME7QaFucOu90RWaVC4UHdIsBMEishDllmCp4JJo3pchjOD5iIWJZx1GqjI5keFjX9QR22qvCzTqE/ISHLYWz+GFk+E08ZDJ1yU8PgOq/67S3OpjTJYfCgkWrQAJVbUZpcDYPBDst2L0t7qBCGBVnlymEIKdb0xpAKS3HMFnWtvcwnhTlni5iXOMYDHYVbzh1TmuQwphO4jh9ZoBzsAbc5fhTDRoXvvXrA0fyxD/rTCEhg6To8xxzpNZl+L1dUsFfXZ1nXHpRly9uK6Ug6GEs1tHuWljLOHZGCOZJ2NYwrc2/6U6oQOuVdFOucPo9ZdOZerzlS/6FZIhhm0W0mXRRupc7jFkcNG/PmpSaNcJ199jq3zdWwcVthNgeORrqNOx01bNxnMdtevR4JZEgt/fcjAQWMN55ZtbD5q5mBvbU8cth8JMDemDPXvMyRxXg/sVe2LSwbQzmMkQWRzvOt3MqrmpPD5surtV5eZaHv9a+pYecrxBM7sf9j38RLvzidaS3aAAAAAElFTkSuQmCC","description":""},{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"{{formId}}\",\n    \"formElementData\": [\n        {\n            \"id\": \"formElementId\",\n            \"value\": \"formElementValue\"\n        }\n    ],\n    \"_embedded\": {\n        \"formType\": {\n            \"formTypeIdentifier\": \"{{formTypeIdentifier}}\"\n        },\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"myMetadata\": {\n        \"externalId\": \"73b9536e-f607-4849-9a7b-8476b0533b19\",\n        \"data\": {\n            \"key\": \"value\"\n        }\n    }\n}"},{"id":"4560424a-6f51-43e7-baac-b3b7148921f7","name":"201 Created with Configuration Override","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}"}],"body":{"mode":"raw","raw":"{\r\n    \"_embedded\": {\r\n        \"formType\": {\r\n            \"formTypeIdentifier\": \"{{formTypeId}}\"\r\n        },\r\n        \"customer\": {\r\n            \"id\": \"{{customerId}}\"\r\n        }\r\n    },\r\n    \"configOverrides\":{\r\n\t\t\"on_createForm_sendMessage_enabled\": \"false\"\r\n\t}\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createForm"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"_{{formId}}\",\n    \"_embedded\": {\n        \"formType\": {\n            \"formTypeIdentifier\": \"{{formTypeId}}\"\n        },\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    },\n    \"configOverrides\": {\n        \"on_createForm_sendMessage_enabled\": \"false\"\n    }\n}"},{"id":"85e7bf0d-2a78-41b6-838e-50ad46e56d41","name":"404 Form Type Not Found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","type":"text","description":"If set to true, the response will have \"Location-As-Navigable-Url-As-TinyLink\" and \"Location-As-Navigable-Url-As-QR-Code\" headers.  The values will be a TinyLink URL and associated QR Code that can be used to link to the statement."}],"body":{"mode":"raw","raw":"{\r\n\t\"formElementData\": [\r\n\t\t{\r\n\t\t\t\"id\": \"formElementId\",\r\n\t\t\t\"value\": \"formElementValue\"\r\n\t\t}\r\n\t],\r\n\t\"_embedded\": {\r\n\t\t\"formType\": {\r\n\t\t\t\"formTypeIdentifier\": \"badFormType\"\r\n\t\t},\r\n\t\t\"customer\": {\r\n\t\t\t\"id\": \"{{customerId}}\"\r\n\t\t}\r\n\t},\r\n\t\"myMetadata\": {\r\n\t\t\"externalId\": \"70de972f-ab81-4182-9a1d-7564ee1f2a26\",\r\n\t\t\"data\": {\r\n\t\t\t\"key\": \"value\"\r\n\t\t}\r\n\t}\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createForm"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"Couldn't find formtype for badFormType\"\n}"},{"id":"9596b73d-43f4-4010-a83f-e3577d3d65db","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","type":"text","description":"If set to true, the response will have \"Location-As-Navigable-Url-As-TinyLink\" and \"Location-As-Navigable-Url-As-QR-Code\" headers.  The values will be a TinyLink URL and associated QR Code that can be used to link to the statement."}],"body":{"mode":"raw","raw":"{\r\n\t\"form_element_data\": [\r\n\t\t{\r\n\t\t\t\"id\": \"formElementId\",\r\n\t\t\t\"value\": \"formElementValue\"\r\n\t\t}\r\n\t],\r\n\t\"_embedded\": {\r\n\t\t\"form_type\": {\r\n\t\t\t\"form_type_identifier\": \"{{formTypeIdentifier}}\"\r\n\t\t},\r\n\t\t\"customer\": {\r\n\t\t\t\"id\": \"{{customerId}}\"\r\n\t\t}\r\n\t},\r\n\t\"my_metadata\": {\r\n\t\t\"external_id\": \"e94ac8a2-1c2c-4669-982a-bfba64107687\",\r\n\t\t\"data\": {\r\n\t\t\t\"key\": \"value\"\r\n\t\t}\r\n\t}\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/createForm"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"Not authorized to create a form for this customer\"\n}"}],"_postman_id":"ce749d9f-b6b4-4c42-8948-73a287c324b8"},{"name":"Set Form Defaults for Service Location","id":"4d6e1b8a-5bc5-43cd-a39d-0be0c3b657c5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"<p>(Required) CX Api key for the Service Location</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"formLabel\": {\r\n        \"EN\": \"Custom Title\"\r\n    },\r\n\t\"formElementData\": [\r\n\t\t{\r\n\t\t\t\"id\": \"testKey\",\r\n\t\t\t\"value\": \"ServiceLocationDefaultMarkdown\"\r\n\t\t}\r\n\t],\r\n\t\"_embedded\": {\r\n\t\t\"formType\": {\r\n\t\t\t\"formTypeIdentifier\": \"postmanExampleForm\"\r\n\t\t}\r\n\t}\r\n}"},"url":"{{baseUrl}}/cx/action/setFormDefaults","description":"<p>This endpoint allows you to set defaults for a given location's form. This allows for certain customization by indiviudal location for any given form type ID.</p>\n<p>Set form label(title) and/or data defaults for a form type.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>formLabel</td>\n<td>Allows for alternate form labels to be applied at the service location level.  <br />  <br />Optional  <br />  <br />Accepts language <em>keys</em> \"EN\" (English). The <em>value</em> represents the desired input to override the label defined on the form type defintion.</td>\n</tr>\n<tr>\n<td>formElementData</td>\n<td>Allows for alternate/default form element <em>values</em> to be applied at the service location level.  <br />  <br />Optional  <br />  <br />id: The unique identifier for the form_element to be set.  <br />  <br />value: The <em>value</em> represents the desired input to override or default the value defined on the form type defintion.  <br />  <br />Ids' not found in the form type definition are ignored.</td>\n</tr>\n<tr>\n<td><em>embedded.formType.formTypeIdentifier</em></td>\n<td>Required.  <br />  <br />Returns a 404 in the event the formTypeIdentifier is not found.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["cx","action","setFormDefaults"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"f6308ad4-d724-41a8-a09a-ddabce6e8413","name":"200 Created with form label","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"formLabel\": {\r\n        \"EN\": \"Custom Title\"\r\n    },\r\n\t\"_embedded\": {\r\n\t\t\"formType\": {\r\n\t\t\t\"formTypeIdentifier\": \"postmanExampleForm\"\r\n\t\t}\r\n\t}\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setFormDefaults"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"{{formId}}\", \n    \"formLabel\": {\n        \"EN\": \"Custom Title\"\n    },\n\t\"_embedded\": {\n\t\t\"formType\": {\n\t\t\t\"formTypeIdentifier\": \"postmanExampleForm\"\n\t\t}\n\t}\n}"},{"id":"60c34e25-e16a-4caf-95f6-87e3d0d0b0e9","name":"200 Created with Form Element Data","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\r\n\t\"formElementData\": [\r\n\t\t{\r\n\t\t\t\"id\": \"testKey\",\r\n\t\t\t\"value\": \"ServiceLocationDefaultMarkdown\"\r\n\t\t}\r\n\t],\r\n\t\"_embedded\": {\r\n\t\t\"formType\": {\r\n\t\t\t\"formTypeIdentifier\": \"postmanExampleForm\"\r\n\t\t}\r\n\t}\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setFormDefaults"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"{{formId}}\",\n\t\"formElementData\": [\n\t\t{\n\t\t\t\"id\": \"testKey\",\n\t\t\t\"value\": \"ServiceLocatioNDefaultMarkdown\"\n\t\t}\n\t],\n\t\"_embedded\": {\n\t\t\"formType\": {\n\t\t\t\"formTypeIdentifier\": \"postmanExampleForm\"\n\t\t}\n\t}\n}"},{"id":"1056a64c-2da4-496b-92e4-0f1fe733e25c","name":"200 OK Change Form Title","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"formLabel\": {\r\n        \"EN\": \"Custom Title\"\r\n    },\r\n\t\"formElementData\": [\r\n\t\t{\r\n\t\t\t\"id\": \"testKey\",\r\n\t\t\t\"value\": \"ServiceLocationDefaultMarkdown\"\r\n\t\t}\r\n\t],\r\n\t\"_embedded\": {\r\n\t\t\"formType\": {\r\n\t\t\t\"formTypeIdentifier\": \"postmanExampleForm\"\r\n\t\t}\r\n\t}\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setFormDefaults"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n\t\"formElementData\": [\n\t\t{\n\t\t\t\"id\": \"testKey\",\n\t\t\t\"value\": \"ServiceLocatioNDefaultMarkdown\"\n\t\t}\n\t],\n\t\"_embedded\": {\n\t\t\"formType\": {\n\t\t\t\"formTypeIdentifier\": \"postmanExampleForm\"\n\t\t}\n\t}\n}"},{"id":"8ba2f750-f628-4e3f-a303-e8249a674fdd","name":"404 Form Type Not Found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\r\n\t\"form_element_data\": [\r\n\t\t{\r\n\t\t\t\"id\": \"testKey\",\r\n\t\t\t\"value\": \"ServiceLocationDefaultMarkdown\"\r\n\t\t}\r\n\t],\r\n\t\"_embedded\": {\r\n\t\t\"form_type\": {\r\n\t\t\t\"form_type_identifier\": \"doesntExist\"\r\n\t\t}\r\n\t}\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/setFormDefaults"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"Couldn't find formtype for doesntExist\"\n}"}],"_postman_id":"4d6e1b8a-5bc5-43cd-a39d-0be0c3b657c5"},{"name":"Discard Form Request","id":"ab57f1f2-eab6-4991-b157-93b220b7484b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"CX-API-KEY","value":"{{cxApiKey}}"}],"body":{"mode":"raw","raw":"{\n    \"id\": \"{{formRequestId}}\"\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/discard","description":"<p>This endpoint allows you to remove an existing form request from a customer's list of forms.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Required. Should be the form request ID for the Form request that will be discarded.  <br />  <br />This id is returned on a create Form Request post.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["cx","action","discard"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"854cfe97-eec6-49b6-a739-50965d1e8bb9","name":"Discard Form Request / OK","originalRequest":{"method":"POST","header":[{"key":"CX-API-KEY","value":"{{cxApiKey}}"}],"body":{"mode":"raw","raw":"{\n    \"id\": \"{{paymentRequestId}}\"\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/discard"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":null},{"id":"853f8a5f-5b5b-41c6-a63e-f24dbfa06eac","name":"Discard Form Request / Not found","originalRequest":{"method":"POST","header":[{"key":"CX-API-KEY","value":"{{cxApiKey}}"}],"body":{"mode":"raw","raw":"{\n    \"id\": \"{{formRequestId}}\"\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/discard"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Object not found\"\n}"}],"_postman_id":"ab57f1f2-eab6-4991-b157-93b220b7484b"}],"id":"e134a055-3e9f-4449-9279-ceaba1523151","_postman_id":"e134a055-3e9f-4449-9279-ceaba1523151","description":""},{"name":"Events","item":[{"name":"Add an Event","id":"110001a8-4d49-4b70-800d-47a860385ddd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"<p>(Required) CX Api key for the Service Location</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/event","description":"<p>Add an Event</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>description</td>\n<td>Optional. String  <br />  <br />Max: 1000 characters</td>\n</tr>\n<tr>\n<td>start_date_time</td>\n<td>Required. String  <br />  <br />In <a href=\"https://en.wikipedia.org/wiki/ISO_8601\">ISO-8601</a> format. YYYY-MM-DDThh:mm:ss.sssZ</td>\n</tr>\n<tr>\n<td>duration</td>\n<td>Optional. Numeric  <br />Default: 0  <br />  <br />The duration of the Event represented in minutes.</td>\n</tr>\n<tr>\n<td>my_metadata</td>\n<td>Optional.  <br />  <br />Discretionary data that is stored with the Event. Actions related to the Event return this data in the response.</td>\n</tr>\n<tr>\n<td>my_metadata.external_id</td>\n<td>Optional.  <br />  <br />Alternate identifier for an event. External IDs should be unique.  <br />  <br />example <code>{\"external_id\": \"john-outstanding-event-1299\"}</code></td>\n</tr>\n<tr>\n<td>my_metadata.data</td>\n<td>Optional.  <br />  <br />Key-value pairs of strings.  <br />  <br />example <code>{\"my_custom_key1\": \"my_custom_value1\", \"my_custom_key2\": \"my_custom_value2\"}</code></td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["cx","event"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"70624aa2-8d96-46a0-b713-50c309c047b6","name":"201 Add an Event","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/event"},"status":"Created","code":201,"_postman_previewlanguage":"Text","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"{{eventId}}\",\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}"},{"id":"fef367ad-fc52-45b2-80a0-ff5eca5c780f","name":"201 Add an Event with myMetadata","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"myMetadata\": {\n        \"externalId\": \"{{eventExternalId}}\",\n        \"data\": {\n            \"reason\": \"yearly checkup\"\n        }\n    },\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/customer_experience/event"},"_postman_previewlanguage":"Text","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"{{eventId}}\",\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"myMetadata\": {\n        \"externalId\": \"{{eventExternalId}}\",\n        \"data\": {\n            \"reason\": \"yearly checkup\"\n        }\n    },\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}"}],"_postman_id":"110001a8-4d49-4b70-800d-47a860385ddd"},{"name":"Update an Event","id":"2887dc05-1177-4cd3-8529-875600a275d5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"<p>(Required) CX Api key for the Service Location</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/event/{{eventId}}","description":"<p>Update an Event</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>description</td>\n<td>Optional. String  <br />  <br />Max: 1000 characters</td>\n</tr>\n<tr>\n<td>start_date_time</td>\n<td>Required. String  <br />  <br />In <a href=\"https://en.wikipedia.org/wiki/ISO_8601\">ISO-8601</a> format. YYYY-MM-DDThh:mm:ss.sssZ</td>\n</tr>\n<tr>\n<td>duration</td>\n<td>Required. Numeric  <br />Default: 0  <br />  <br />The duration of the Event represented in minutes.</td>\n</tr>\n<tr>\n<td>my_metadata</td>\n<td>Optional.  <br />  <br />Discretionary data that is stored with the Event. Actions related to the Event return this data in the response.</td>\n</tr>\n<tr>\n<td>my_metadata.external_id</td>\n<td>Optional.  <br />  <br />Alternate identifier for an event. External IDs should be unique.  <br />  <br />example <code>{\"external_id\": \"john-outstanding-event-1299\"}</code></td>\n</tr>\n<tr>\n<td>my_metadata.data</td>\n<td>Optional.  <br />  <br />Key-value pairs of strings.  <br />  <br />example <code>{\"my_custom_key1\": \"my_custom_value1\", \"my_custom_key2\": \"my_custom_value2\"}</code></td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["cx","event","{{eventId}}"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"a24ec78f-9952-41ca-bbca-760c6427116d","name":"200 Update an Event","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/event/{{eventId}}"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"{{eventId}}\",\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}"},{"id":"b0d44586-21fd-4af2-8443-d018660ba7f5","name":"200 Update an Event with myMetadata","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"myMetadata\": {\n        \"externalId\": \"{{eventExternalId}}\",\n        \"data\": {\n            \"reason\": \"yearly checkup\"\n        }\n    },\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/event/{{eventId}}"},"_postman_previewlanguage":"Text","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"{{eventId}}\",\n    \"description\": \"Pet check up\",\n    \"startDateTime\": \"2020-02-24T16:00:00.000Z\",\n    \"duration\": 30,\n    \"myMetadata\": {\n        \"externalId\": \"{{eventExternalId}}\",\n        \"data\": {\n            \"reason\": \"yearly checkup\"\n        }\n    },\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}"}],"_postman_id":"2887dc05-1177-4cd3-8529-875600a275d5"},{"name":"Delete an Event","id":"010ea2e3-edf4-473e-93cc-e844e83cbf2f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"<p>(Required) CX Api key for the Service Location</p>\n","type":"text"}],"body":{"mode":"raw","raw":""},"url":"{{baseUrl}}/cx/event/{{eventId}}","description":"<p>Delete an event</p>\n","urlObject":{"path":["cx","event","{{eventId}}"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"df6ca3f9-2ed3-4984-bfcf-e1e39aeb7c68","name":"200 Delete an Event","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/event/{{eventId}}"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"010ea2e3-edf4-473e-93cc-e844e83cbf2f"}],"id":"1a3c3edd-8b1b-4b6d-a829-b21801ac6f4a","description":"<p>The Events API is a secure and reliable platform for storing customer events such as appointments, and providing merchants with access to the stored information in other CX products such as Callpop and Merchant Success Hub. This API allows partner software to seamlessly synchronize with their system, providing up-to-date event information and enabling efficient and effective management of customer events.</p>\n","_postman_id":"1a3c3edd-8b1b-4b6d-a829-b21801ac6f4a"},{"name":"Check In","item":[{"name":"Ask To Check In","id":"e223eb73-7070-4f1e-8832-615f55d9aac5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","description":"<p>If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement.</p>\n","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"<p>(Required) CX Api key for the Service Location</p>\n","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"_embedded\": {\r\n        \"customer\":{\r\n            \"id\": \"{{customerId}}\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/askToCheckIn","description":"<p>Generate a link for a customer to check in. Requires the service location to be configured to push or pull the check in response.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>_embedded.customer.id</td>\n<td>Required.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["cx","action","askToCheckIn"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"127ff40d-4cbb-430a-96ab-e7697335ef6d","name":"201 Created","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement.","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"_embedded\": {\r\n        \"customer\":{\r\n            \"id\": \"{{customerId}}\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/askToCheckIn"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n    \"_embedded\": {\n        \"customer\": {\n            \"id\": \"{{customerId}}\"\n        }\n    }\n}"},{"id":"99b98c4d-bd6b-4af9-8f64-ba6ca0f7e603","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Location-As-Navigable-Url","value":"true","description":"If set to true, the response will have the \"Location-As-Navigable-Url-As-TinyLink\" header.  The value will be a TinyLink URL that can be used to link to the statement.","type":"text"},{"key":"CX-API-KEY","value":"{{cx-api-key}}","description":"(Required) CX Api key for the Service Location","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"_embedded\": {\r\n        \"customer\":{\r\n            \"id\": \"{{customerId}}\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/cx/action/askToCheckIn"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":null}],"_postman_id":"e223eb73-7070-4f1e-8832-615f55d9aac5"}],"id":"8a7f91a3-575d-4aef-aad2-180031af09e2","description":"<p>Send a request to your customers to prompt to Check in for a service.</p>\n","_postman_id":"8a7f91a3-575d-4aef-aad2-180031af09e2"}],"event":[{"listen":"prerequest","script":{"id":"e25ed7ce-d7bd-4c3b-a5f5-93eebd9c0d60","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8b0928c5-fc1c-441f-b4fa-0599c8a6c205","type":"text/javascript","exec":[""]}}]}