{"info":{"_postman_id":"606957c9-6366-4cc7-b69b-50fa490b26d6","name":"Shuttle - API","description":"<html><head></head><body><p>This document is intended for app developers using our developer portal.</p>\n<p>Before using this API, you will need a developer portal account, if you do not have one of these, please contact us via online chat or <a href=\"mailto:support@shuttleglobal.com\">support@shuttleglobal.com</a>. Please <a href=\"https://app.shuttleglobal.com/c/devportal/\">login</a>, and add an <code>application</code>. You will be provided a set of sandbox credentials including a <code>shared_key</code> and <code>secret_key</code>.  </p>\n<p>An integration consists of:</p>\n<ol>\n<li><p><strong>UX Components</strong>: Shuttle provides a number of ready made \"widgets\" you can use to accelerate development:</p>\n</li>\n<li><p>Onboarding: Allow a merchant to select and connect a payment processor.  </p>\n</li>\n<li><p>Checkout: Capture payment details. </p>\n</li>\n<li><p>Authenticate: Checkout using a payment wallet, where the wallet is also providing authentication and shipping address capture.</p>\n</li>\n<li><p>Merchant View: Allow your staff or merchants browse payment related data and perform common tasks like refunds. </p>\n</li>\n<li><p><strong>REST API</strong>: Shuttle provides a full-featured REST API </p>\n</li>\n<li><p><strong>Webhooks</strong>: Stay up to date with real time webhooks</p>\n</li>\n</ol>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"6049226","collectionId":"606957c9-6366-4cc7-b69b-50fa490b26d6","publishedId":"RztfvXAn","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"2E30BE"},"publishDate":"2022-04-29T08:40:47.000Z"},"item":[{"name":"UX Components","item":[{"name":"Onboarding","item":[{"name":"Browser Events","item":[],"id":"9f3de0c8-dd08-4939-9c6f-c064d9f1d6c9","description":"<h3 id=\"setup_status\">SETUP_STATUS</h3>\n<p>A message <code>SETUP_STATUS</code> will indicate a change in whether Shuttle is ready to process payments for this merchant. This will also be raised on load for convenience.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>SETUP_STATUS</code></td>\n</tr>\n<tr>\n<td><code>payment_ready</code></td>\n<td>eg <code>true</code> if the Shuttle instance is ready to process a payment. Note, this will indicate true if connected to a gateway successfully and at least one payment method enabled, there may be other factors that prevent payment on the payment processor side.</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"SETUP_STATUS\",\n        payment_ready: true\n    }\n    ...\n}\n</code></pre><h3 id=\"extend_session\">EXTEND_SESSION</h3>\n<p>A message <code>EXTEND_SESSION</code> will be raised when a server request is made, so that you can extend the session of the user in your app (if you so wish). The intent is to prevent your session expiring if they are configuring payment processors for some time. This will generally only be raised at most once per minute.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>EXTEND_SESSION</code></td>\n</tr>\n</tbody>\n</table>\n</div><p>Example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"EXTEND_SESSION\"\n    }\n    ...\n}\n</code></pre><h3 id=\"setup_display\">SETUP_DISPLAY</h3>\n<p>A message <code>SETUP_DISPLAY</code> will indicate the frame height has changed, eg after a re-render. Shuttle.js will use this to resize the frame. This message also contains a boolean indicating if we are displaying a modal dialog if you decide to dim / block any other controls on the page.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>SETUP_DISPLAY</code></td>\n</tr>\n<tr>\n<td><code>height</code></td>\n<td>eg <code>137</code> the height of the frame box in pixels</td>\n</tr>\n<tr>\n<td><code>modal</code></td>\n<td>eg <code>false</code> if a modal dialog is being displayed</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"SETUP_DISPLAY\",\n        height: 137,\n        modal: false\n    }\n    ...\n}\n</code></pre><h3 id=\"setup_error\">SETUP_ERROR</h3>\n<p>A message <code>SETUP_ERROR</code> will indicate an error has occurred in the setup component. The typical use case is the session has expired however errors may occur for other reasons.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>SETUP_ERROR</code></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>eg <code>SESSION_EXPIRED</code> the type of error (currently only <code>SESSION_EXPIRED</code> is expired)</td>\n</tr>\n<tr>\n<td><code>error</code></td>\n<td>A user friendly message about the error.</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"SETUP_ERROR\",\n        type: \"SESSION_EXPIRED\",\n        error: \"Session expired\"\n    }\n    ...\n}\n</code></pre>","_postman_id":"9f3de0c8-dd08-4939-9c6f-c064d9f1d6c9"}],"id":"edfc1ec0-70a8-4481-b36d-cfc1945cd897","description":"<h5 id=\"see-demo\"><a href=\"https://jsfiddle.net/fc3d9yge/\">SEE DEMO</a></h5>\n<p>The onboarding component allows a merchant (business), connect their payment processor(s) through which they wish to collect payment.</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/multi.png\" alt=\"embed_multi\" />\n\n<h3 id=\"pre-requisites\">Pre-requisites</h3>\n<p>Before using the onboarding component, you must first create a Shuttle \"instance\" for the merchant via <code>POST /instances</code></p>\n<p>You can check if you have done this via <code>GET /instances/:instance_key/capabilities</code></p>\n<p>Everything in Shuttle is organised under the <code>instance_key</code>, which should generally be you primary key for your merchant.</p>\n<p>See:</p>\n<ul>\n<li><a href=\"#cf558889-cb20-4375-819e-def485b6d58a\">Instance API</a></li>\n</ul>\n<h3 id=\"integration\">Integration</h3>\n<p>There are 4 steps to merchant onboarding:</p>\n<ol>\n<li><p>See if an instance for the merchant exists in Shuttle</p>\n</li>\n<li><p>If required, create an instance for the merchant on Shuttle (see pre-requisites)</p>\n</li>\n<li><p>Create a <code>deep_link</code> to the onboarding component for the merchant</p>\n</li>\n<li><p>Embed the onboarding component on your site via <code>shuttle.js</code></p>\n</li>\n</ol>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>// Server Side\n// Check if the merchant is ready to process payments\ninstance = GET [api]/instances/:instance_key/capabilities\n// If they don't have a Shuttle instance, create one\nif (HTTP 404) {\n    POST [api]/instances {...options}\n}\n// Create a deep_link embed onboarding\ndeep_link = POST [api]/instances/:instance_key/deep_links {...options}\n\n</code></pre><p>Then when rendering your page:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>// Rendering Engine\n// Include shuttle.js\n&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.4.X.js\"&gt;\n{{if !instance.payments_ready}}\n    // Show call to action to configure payments\n{{/if}}\n// Include a container div for the onboarding component\n&lt;div class=&amp;#x27;preserveHtml&amp;#x27; class=&amp;#x27;preserveHtml&amp;#x27; data-shuttle-embed=\"${deep_link.id}\"&gt;&lt;/div&gt;\n// If the &lt;div class=&amp;#x27;preserveHtml&amp;#x27; class=&amp;#x27;preserveHtml&amp;#x27; class=&amp;#x27;preserveHtml&amp;#x27;&gt; is added to the DOM AFTER page load, call\nShuttle.bind();\n\n</code></pre><p><strong>Try it now:</strong> <a href=\"https://jsfiddle.net/fc3d9yge/\"><b>JSFiddle</b></a></p>\n<p>See also:</p>\n<ul>\n<li><p><a href=\"#be31d7d7-01ed-4f0f-8959-0e25de2f2ed4\">Get capabilities API</a></p>\n</li>\n<li><p><a href=\"#97eeba26-8895-49c8-a179-c763283115ce\">Create a deep link API</a></p>\n</li>\n<li><p><a href=\"#d95bf841-c0b5-4fa3-bbff-0c5dd7dcd1be\">Embedding a deep link via shuttle.js</a></p>\n</li>\n</ul>\n<h3 id=\"presentation\">Presentation</h3>\n<p>The onboarding component component is designed to be presented inline within your app as such.</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/embed_inline.png\" alt=\"embed_inline\" />\n\n<p>You can adjust key CSS elements such as font, text-size and colors to make it feel more natural within your app.</p>\n<p>While we've tried to make the UX feel natural in any environment, if its too different, we suggest presenting it in a modal dialog, such as:</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/embed_popup.png\" alt=\"embed_popup\" />\n\n<p>A Javascript message of type <code>SETUP_DISPLAY</code> will be raised every page render with the vertical <code>height</code> of the component so you can adjust your page if required, this also includes a <code>modal</code> flag to indicate if a modal dialog is being presented should you want to obscure your page.</p>\n<h3 id=\"terms--conditions\">Terms &amp; Conditions</h3>\n<p>As merchants have a contract with you (the software vendor) and not Shuttle, they must agree to Shuttle's terms and conditions before using Shuttle. You can let us handle this, and we will prompt the user to agree to them on first use, or you can reflect Shuttle's terms and conditions in your terms and conditions with the user, and disable Shuttle's prompt. You can do this in the Developer section of the portal.</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/activate.png\" alt=\"embed_activate\" />\n\n<h3 id=\"new-merchant\">New Merchant</h3>\n<p>A new merchant is prompted to \"Add Payment Processor\". When adding a payment processor, if you have multiple payment processors enabled they will be taken to a selection screen, if you only have one available then they will skip this step.</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/new.png\" alt=\"new\" />\n\n<h3 id=\"add-payment-processor\">Add Payment Processor</h3>\n<p>When multiple payment processors are enable, the user will be prompted to select one, a country selector helps the merchant select one that onboards merchants in their country. The country selector will only display countries supported via the enabled processors.</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/add.png\" alt=\"add\" />\n\n<p>Some processors require an OAUTH (login) process, whereas other require API keys. For those requiring an OAUTH login process, the login will be opened in a popup as such:</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/oauth.png\" alt=\"oauth\" />\n\n<hr />\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/oauth_ext.png\" alt=\"oauth_ext\" />\n\n<hr />\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/connecting.png\" alt=\"connecting\" />\n\n<h3 id=\"edit-payment-processor\">Edit Payment Processor</h3>\n<p>Once you've connected a payment processor the user will see the edit page, here they can control any configuration as well as disconnect the payment processor. Different payment processors have different options:</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/edit_stripe.png\" alt=\"edit_stripe\" />\n\n<hr />\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/edit_paypal.png\" alt=\"edit_paypal\" />\n\n<p>This screen is also used for connecting a payment processor via API keys, for example checkout.com.</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/edit_checkout.png\" alt=\"edit_checkout\" />\n\n<blockquote>\n<p>TIP!<br />We try to make configuration as simple as possible and automatically reflect the configuration of the payment processor, however this is not always possible and it is ultimately the merchant's responsibility to ensure the Shuttle and payment processor are configured inline. For example, if they have configured \"billing address\" as mandatory on the gateway's fraud rules, they should ensure \"Require address (AVS)\" is selected Shuttle, so that it is always prompted during checkout. </p>\n</blockquote>\n<h3 id=\"multiple-processors\">Multiple Processors</h3>\n<p>A merchant can connect multiple payment processors to cater for the following scenarios:</p>\n<ol>\n<li><p>When switching payment processors, they can connect a new payment processor, and direct new transactions to that, while retaining the old connection for saved cards and for refunding old transactions.</p>\n</li>\n<li><p>To run different payment methods into different payment processors, eg Stripe + Paypal</p>\n</li>\n</ol>\n<p>When the merchant connects multiple processors, the screen will display the list of supported payment methods and which processor will be used for it. A payment processor with no payment methods directed to it can still be used if a card has been saved to it.</p>\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/multi.png\" alt=\"multi\" />\n\n<hr />\n<img src=\"https://cdn.shuttleglobal.com/api/onboarding/routing.png\" alt=\"multi\" />\n\n<p>By design, you can only route payments based on high level type (cards / wallets / direct debit), and you cannot route for example AMEX to one processor and VISA to another, or local cards to one processor and international cards to another.</p>\n<h3 id=\"completion\">Completion</h3>\n<p>When the onboarding component is opened a Javascript message <code>SETUP_STATUS</code> will be raised with a boolean <code>payment_ready</code> to indicate if a valid configuration exists to process a payment, as the user connects / disconnects payment processors, if <code>payment_ready</code> changes, <code>SETUP_STATUS</code> will be raised again.</p>\n<p>This is to allow you adjust your call to action from \"configure payments\", to whatever you want once they have been configured.</p>\n<p>You can access further details around the connected processors via the REST API.</p>\n<p>See:</p>\n<ul>\n<li><p><a href=\"#be31d7d7-01ed-4f0f-8959-0e25de2f2ed4\">Capabilities API</a>, for the current payment capabilities of the merchant</p>\n</li>\n<li><p><a href=\"#878dcfb1-8d04-4720-ae51-2dbf9e89fd0f\">Gateways API</a>, for a list of current and historical processor connections</p>\n</li>\n<li><p><a href=\"#fb4bd2ac-5720-459b-8860-4387b1e22071\">Legal Entity Routes API</a>, for a list of current and historical payment method routing rules</p>\n</li>\n</ul>\n","_postman_id":"edfc1ec0-70a8-4481-b36d-cfc1945cd897"},{"name":"Shuttle.js","item":[{"name":"Deep Links","item":[],"id":"d95bf841-c0b5-4fa3-bbff-0c5dd7dcd1be","description":"<p>To embed a deep_link onto a page:</p>\n<ol>\n<li><p>Create the deep_link server-side via <a href=\"#cca63a85-6910-40fa-887c-23aad07d309e\">POST /deep_links</a></p>\n</li>\n<li><p>On the client side, include <code>shuttle.js</code></p>\n</li>\n<li><p>Mark up the</p>\n<p> where you want to place the deep link with a <code>data-shuttle-embed</code> attribute</p>\n</li>\n<li><p>If you added the</p>\n<p> AFTER page load, you will need to run <code>Shuttle.bind();</code></p>\n</li>\n</ol>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>// Include shuttle.js on the page\n&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.4.X.min.js\"&gt;&lt;/script&gt;\n// Include a container div, with data attribute \"data-shuttle-embed\"\n&lt;div class=&amp;#x27;preserveHtml&amp;#x27; class=&amp;#x27;preserveHtml&amp;#x27; data-shuttle-embed=\"${deep_link.id}\"&gt;&lt;/div&gt;\n// If the &lt;div class=&amp;#x27;preserveHtml&amp;#x27; class=&amp;#x27;preserveHtml&amp;#x27; class=&amp;#x27;preserveHtml&amp;#x27;&gt; is added to the page after page load, call\nShuttle.bind();\n\n</code></pre><p><strong>Try it now:</strong> <a href=\"https://jsfiddle.net/crfke254/\"><b>JSFiddle</b></a></p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"b82a0121-b417-4727-9d0e-5ff1e92af948","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"d63bafbb-5462-40e3-9b0b-27754c770fa9","type":"text/javascript","exec":[""]}}],"_postman_id":"d95bf841-c0b5-4fa3-bbff-0c5dd7dcd1be"},{"name":"Payment","item":[],"id":"9dd09218-5f9c-4e04-a19f-105607a75c8a","description":"<p>The payment popover works the same way as setup by constructing your options and signature. Note you can pass a <code>success_url</code> which will redirect the browser to a new URL on successful payment, or catch the javascript window message.</p>\n<p><strong>Try it now:</strong> <a href=\"https://jsfiddle.net/phil_peters/qfyta0wk/48/\"><strong>JSFiddle</strong></a></p>\n<h2 id=\"options\">Options</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>var options = {\n    instance_key: \"10000\",\n    amount: \"100\",\n    currency: \"USD\"\n};\n\n</code></pre><p>Where <code>options</code> support <em>all parameters from the</em> <a href=\"https://api.shuttleglobal.com/#fe184f65-c12c-41c0-84cc-34e6b611a13b\"><em>REST API</em></a> (except <code>payment_method</code>):</p>\n<p>In addition, the following <code>options</code> are available that only affect the UX:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>title</code></td>\n<td>(optional) The label to use in the header of the checkout dialogue</td>\n</tr>\n<tr>\n<td><code>checkout_text</code></td>\n<td>(optional) additional text to describe the reason for selecting a token to the user</td>\n</tr>\n<tr>\n<td><code>force_add</code></td>\n<td>(optional) disable the selecting of an existing payment method, and only allow the addition of a new payment method</td>\n</tr>\n<tr>\n<td><code>disable_receipt</code></td>\n<td>(default: false) if true the dialogue will be dismissed on successful token selection rather than receipt being displayed</td>\n</tr>\n<tr>\n<td><code>disable_redirect</code></td>\n<td>(default: false) disable redirecting to the select token process on mobile devices. Typically on mobile devices, rather than a popover, the user is redirected to a new page and on close, redirected back to the page they were on. This is to overcome the poor performance of mobile devices showing full-screen iframes over existing websites. This parameter will disable this behaviour.</td>\n</tr>\n<tr>\n<td><code>disable_new_window</code></td>\n<td>(default: false) disables opening a popover window if the user is in an iFrame</td>\n</tr>\n<tr>\n<td><code>success_url</code></td>\n<td>(optional) the URL to redirect the user to after successful payment (on dialogue close). The query parameters, <code>payment=pay_1234_5678&amp;contract=co_13234_5678&amp;transaction=tr_1234_5678&amp;status=SUCCESS</code> will be added for one time payments, or <code>contract=co_13234_5678&amp;transaction=tr_1234_5678&amp;status=SUCCESS</code> will be added for recurring payments. <code>status</code> is the transaction status and you need to handle <code>SUCCESS</code> or <code>UNATTRIBUTED</code> as a successful scenario and <code>PENDING</code> or <code>UNRESOLVED</code> as an in-progress scenario. If you pass <code>force_payment_method=true</code> you may also be passed <code>DECLINED</code> or <code>INVALID_PAYMENT_METHOD</code> status.</td>\n</tr>\n<tr>\n<td><code>cancel_url</code></td>\n<td>(optional) the URL to redirect the user to if the payment is abandoned. The query parameter, <code>cancelled=true&amp;error=message</code> will be added to the URL (<code>error</code> will only be added where appropriate).</td>\n</tr>\n<tr>\n<td><code>locale</code></td>\n<td>(optional) the 2 letter language code or full locale (eg en or en_US). If you pass this, this locale will be used for localisation, otherwise, it defaults to the browsers locale or IP lookup where there is no browser locale. If the language is not available, the default language will be returned. Typically this is English, however, you can customise it.</td>\n</tr>\n<tr>\n<td><code>timezone</code></td>\n<td>(optional) if you want to override the timezone when localising date/times, by default date/times will be adjusted for the browsers timezone. This should be passed as a TZ database name record (<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>) eg \"Africa/Abidjan\"</td>\n</tr>\n<tr>\n<td><code>payment_method_type</code></td>\n<td>(optional) restrict the forms of payment available to the user eg <code>[\"CARDS\"]</code> or <code>[\"ACH\",\"SEPA\"]</code></td>\n</tr>\n<tr>\n<td><code>hide_save_card_toggle</code></td>\n<td>(optional) suppress displaying the checkbox displaying if a card is going to be saved</td>\n</tr>\n<tr>\n<td><code>style</code></td>\n<td>(optional) <code>DEFAULT</code> or <code>INLINE</code> , <code>DEFAULT</code> will present a modal popup and <code>INLINE</code> will render the payment capture area within the div marked by attribute <code>parent</code></td>\n</tr>\n<tr>\n<td><code>parent</code></td>\n<td>(optional) required if <code>style = INLINE</code> , is the ID of the div where you want to embed the payment</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"method\">Method</h2>\n<p>To use button DOM attributes, you will need to populate:</p>\n<p>*   <code>data-shuttle-payment</code>: With the serialised options\n*   <code>data-shuttle-signature</code>: With the signature</p>\n<p>eg</p>\n<p>for Javascript, call:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>var options = {...};\nvar signature = generateSignature(options);\n// Note: signature generation should be server side,\n// never pass your secret-key to the client browser \nShuttle.doPayment(options, signature);\n\n</code></pre><h2 id=\"events\">Events</h2>\n<p>You only need to use the <code>success_url</code> (for multi-page apps) or catch the <code>PAYMENT_CLOSE</code> window event (for single-page apps) to transition the user to the next state in your user flow. A number of additional messages are however available.</p>\n<h3 id=\"payment_close\">PAYMENT_CLOSE</h3>\n<p>A message <code>PAYMENT_CLOSE</code> will be raised when the payment dialogue is closed. Only one of <code>success</code> or <code>cancelled</code> will be returned, if <code>cancelled</code> you should check for <code>error</code>, which describes any reasons outside of the user's control why this could not be completed (eg an integration error). If <code>success</code> is returned, so will some or all of <code>payment</code>, <code>contract</code>, <code>transaction</code> and <code>status</code> (see below).</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>PAYMENT_CLOSE</code></td>\n</tr>\n<tr>\n<td><code>success</code></td>\n<td>the user successfully submitted a payment without decline before closing the dialogue. Please note: Payment may still be in progress in some scenarios as some processors take seconds/hours/days to authorise a transaction (PENDING), or bank connectivity issues (UNRESOLVED)), so don't rely on this field alone. In these scenarios, you will need to handle webhooks or poll for updates.</td>\n</tr>\n<tr>\n<td><code>cancelled</code></td>\n<td>the user cancelled the process without successfully submitting a payment</td>\n</tr>\n<tr>\n<td><code>error</code></td>\n<td>the dialogue has been closed but the user was not able to attempt payment due to an error (typically invalid input parameters - eg instance not payment_ready, or signature). This field describes the reason.</td>\n</tr>\n<tr>\n<td><code>payment</code></td>\n<td>if <code>success</code> and this is a one-time payment, the payment object</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>if <code>success</code> the contract object, this will ALWAYS be returned for <code>success: true</code> however you will typically only need this for recurring payments.</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>if <code>success</code> the transaction object (if one), recurring contracts with a future start date won't have a transaction yet.</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>if <code>success</code> the transaction status, recurring contracts with a future start date won't have a transaction and as such this field will not exist. Note: you need to handle <code>SUCCESS</code>, <code>UNATTRIBUTED</code> as a successful scenario and <code>PENDING</code>, <code>UNRESOLVED</code> as an in-progress scenario. If you pass <code>force_payment_method=true</code> you may also be returned <code>DECLINED</code>, <code>INVALID_PAYMENT_METHOD</code> status.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>// Cancellation\nevent = {\n    ...\n    data: {\n        message: \"PAYMENT_CLOSE\",\n        cancelled: true,\n        error: \"Invalid account\"\n    }\n    ...\n}\n// Successful recurring payment\nevent = {\n    ...\n    data: {\n        message: \"PAYMENT_CLOSE\",\n        success: true,\n        contract: {\n            \"id\": \"co_5139_36612\",\n            \"alt_key\": \"00036612\",\n            \"account\": \"acc_5139_10163\",\n            \"payment_method\": \"pm_5139_10123\",\n            \"parent\": \"co_5139_1234\",\n            \"currency\": \"AUD\",\n            \"amount\": \"100\",\n            \"frequency\": \"WEEKLY\",\n            \"next_charge\": \"2019-11-01T16:25:02.000Z\",\n            \"status\": \"ACTIVE\",\n            \"description\": \"UK Compassion\",\n            \"created\": \"2019-10-01T16:25:02.000Z\",\n            \"updated\": \"2019-10-01T16:25:04.000Z\",\n            \"initiated\": \"2019-10-01T16:25:02.000Z\"\n        },\n        transaction: {\n            \"id\": \"tr_5139_10150\",\n            \"action\": \"PAYMENT\",\n            \"source\": \"RECURRING\",\n            \"status\": \"SUCCESS\",\n            \"gateway_status\": \"APPROVED\",\n            \"gateway_reference\": \"ch_1FOo9r28aBTFOTZXpwpY2cZY\",\n            \"authorisation_code\": \"pi_1FOo9r28aBTFOTZXZvU6o8eC (TEST)\",\n            \"reference\": \"REF-00010150\",\n            \"amount\": \"100\",\n            \"balance\": \"0\",\n            \"currency\": \"AUD\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"account\": \"acc_5139_10163\",\n            \"payment_method\": \"pm_5139_10123\",\n            \"contract\": \"co_5139_10186\",\n            \"created\": \"2019-10-01T16:25:02.000Z\",\n            \"processed\": \"2019-10-01T16:25:04.000Z\"\n        },\n        status\": \"SUCCESS\"\n    }\n    ...\n}\n\n</code></pre><h3 id=\"payment_success\">PAYMENT_SUCCESS</h3>\n<p>A message <code>PAYMENT_SUCCESS</code> will be raised as soon as a payment is successfully performed in ADVANCE of <code>PAYMENT_CLOSE</code>. This will be raised while the popover is still visible once the decision to progress to the receipt screen is made. As client-side messaging is inherently insecure (ie a user could fake a message in the browser \"inspector\"), it is advised you validate the transaction via server request before performing any important business logic (like dispatching goods). As this message will arrive earlier than the <code>PAYMENT_CLOSE</code> message (which isn't until the dialogue is closed) it provides a way to start loading content so you can be more responsive when the popover is closed.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>PAYMENT_SUCCESS</code></td>\n</tr>\n<tr>\n<td><code>payment</code></td>\n<td>if this is a one-time payment, the payment object</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract object, this will ALWAYS be returned for <code>success: true</code> however you will typically only need this for recurring payments.</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>the transaction object (if one), recurring contracts with a future start date won't have a transaction yet.</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the transaction status, recurring contracts with a future start date won't have a transaction and as such this field will not exist. Note: you need to handle <code>SUCCESS</code>, <code>UNATTRIBUTED</code> as a successful scenario and <code>PENDING</code>, <code>UNRESOLVED</code> as an in-progress scenario. If you pass <code>force_payment_method=true</code> you may also be returned <code>DECLINED</code>, <code>INVALID_PAYMENT_METHOD</code> status.</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"PAYMENT_SUCCESS\",\n        contract: {\n            id: \"co_5139_36612\",\n            alt_key: \"00036612\",\n            account: \"acc_5139_10163\",\n            payment_method: \"pm_5139_10123\",\n            parent: \"co_5139_1234\",\n            currency: \"AUD\",\n            amount: \"100\",\n            frequency: \"WEEKLY\",\n            next_charge: \"2019-11-01T16:25:02.000Z\",\n            status: \"ACTIVE\",\n            description: \"UK Compassion\",\n            created: \"2019-10-01T16:25:02.000Z\",\n            updated: \"2019-10-01T16:25:04.000Z\",\n            initiated: \"2019-10-01T16:25:02.000Z\"\n        },\n        transaction: {\n            id: \"tr_5139_10150\",\n            action: \"PAYMENT\",\n            source: \"RECURRING\",\n            status: \"SUCCESS\",\n            gateway_status: \"APPROVED\",\n            gateway_reference: \"ch_1FOo9r28aBTFOTZXpwpY2cZY\",\n            authorisation_code: \"pi_1FOo9r28aBTFOTZXZvU6o8eC (TEST)\",\n            reference: \"REF-00010150\",\n            amount: \"100\",\n            balance: \"0\",\n            currency: \"AUD\",\n            channel: \"ch_5139_10000\",\n            initiative: \"in_5139_10000\",\n            designation: \"des_5139_10000\",\n            legal_entity: \"le_5139_10000\",\n            gateway: \"gw_5139_10020\",\n            account: \"acc_5139_10163\",\n            payment_method: \"pm_5139_10123\",\n            contract: \"co_5139_10186\",\n            created: \"2019-10-01T16:25:02.000Z\",\n            processed: \"2019-10-01T16:25:04.000Z\"\n        },\n        status\": \"SUCCESS\"\n    }\n    ...\n}\n\n</code></pre><h3 id=\"payment_failure\">PAYMENT_FAILURE</h3>\n<p>A message <code>PAYMENT_FAILURE</code> will be raised each time a payment is attempted unsuccessfully - in practice this should only be when a card is declined by a payment processor - unless for example a saved payment method is selected that is concurrently archived in another window by the user. Please note, the user is advised of the failure and prompted to try again, there is no intended business case where you should need to catch this message. When receiving this message, keep in mind the dialogue has not yet been closed, and the user may subsequently successfully process payment prior to closing the dialogue. For example:</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>PAYMENT_FAILURE</code></td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>the transaction object containing the decline information</td>\n</tr>\n<tr>\n<td><code>error</code></td>\n<td>if an error was encountered, and no transaction created, the error message (eg loss of network connectivity).</td>\n</tr>\n</tbody>\n</table>\n</div><pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"PAYMENT_FAILURE\",\n        transaction: {\n            id: \"tr_1000_31745\",\n            action: \"PAYMENT\",\n            status: \"DECLINED\",\n            gateway_status: \"DECLINED_ERROR\",\n            gateway_message: \"INVALID: 4020 : Information received from an Invalid IP address.\",\n            reference: \"BOLT-00031745\",\n            amount: \"1\",\n            balance: \"0\",\n            currency: \"AUD\",\n            initiative: \"in_1000_1101\",\n            gateway: \"gw_1000_1340\",\n            account: \"acc_1000_4940\",\n            payment_method: \"pm_1000_22901\",\n            created: \"2019-01-10T10:47:58.000Z\",\n            processed: \"2019-01-10T10:47:58.000Z\"\n        }\n    }    \n}\n\n</code></pre>","event":[{"listen":"prerequest","script":{"id":"ba36c7bd-4df5-4cfe-9c8c-9b2cfd080e8f","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"9e625b08-d4ad-4988-a19b-8b954b159b4e","type":"text/javascript","exec":[""]}}],"_postman_id":"9dd09218-5f9c-4e04-a19f-105607a75c8a"},{"name":"Select Token","item":[],"id":"db3aef10-ab7e-4971-9b24-de533923b4e8","description":"<p>The select token popover allows you to tokenise a card for use on a later payment, and update the payment method of one or more recurring contracts. This process allows selection of an existing saved payment method, or tokenisation of a new payment method. </p>\n<p>To use, construct your options and signature then invoke the popup via Javascript or HTML DOM element (recommended). Note you can pass a <code>success_url</code> which will redirect the browser to a new URL on successful selection, or catch the javascript window message. </p>\n<p><strong>Try it now: <a href=\"https://jsfiddle.net/phil_peters/18urk7h2/9/\">JSFiddle</a></strong></p>\n<h2 id=\"options\">Options</h2>\n<p>A typical example set of options, to update the payment method on failing contract <code>co_1234_5678</code> would be:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>var options = {\n    instance_key: \"10000\",\n    account: \"1234_1023\",\n    contracts: [\"co_1234_5678\"],\n    title: \"Update Payment Details\"\n};\n</code></pre><p>Where <code>options</code> supports:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>instance_key</code></td>\n<td>(required) the unique instance_key identifying the merchant / client, in general this will be merchant_id or your_environment_name + merchant_id eg 1 or PROD_1</td>\n</tr>\n<tr>\n<td><code>account</code></td>\n<td>(required) an account_key, crm_key or embeded account object</td>\n</tr>\n<tr>\n<td><code>contracts</code></td>\n<td>(optional) an array of contract <code>id</code>s or <code>alt_key</code>s to apply the selected payment method to. All contracts must be the same currency</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>(optional) if a contract is not passed you must include the currency you will be taking payment in</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>(optional) ECOMMERCE (default) or MOTO, you must pass MOTO if it is a staff member keying in the card details and ECOMMERCE if it is the customer</td>\n</tr>\n<tr>\n<td><code>force_add</code></td>\n<td>(optional) (<code>true</code> / <code>false</code>) require a new payment method to be entered by the user (ie dont present any saved payment methods) - this wont prevent a user from re-entering a payment method they have previously enetered</td>\n</tr>\n<tr>\n<td><code>channnel</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>(enterprise)</td>\n</tr>\n</tbody>\n</table>\n</div><p>In addition, the following <code>options</code> are available that only affect the UX:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>title</code></td>\n<td>(optional) The label to use in the header of the checkout dialogue</td>\n</tr>\n<tr>\n<td><code>checkout_text</code></td>\n<td>(optional) Additional text to describe the reason for selecting a token to the user</td>\n</tr>\n<tr>\n<td><code>disable_receipt</code></td>\n<td>(default: false) if true the dialogue will be dismissed on successful token selection rather than receipt being displayed</td>\n</tr>\n<tr>\n<td><code>disable_redirect</code></td>\n<td>(default: false) disable redirecting to the select token process on mobile devices. Typically on mobile devices, rather than a popover, the user is redirected to a new page and on close, redirected back to the page they were on. This is to overcome the poor performance of mobile devices showing full-screen iframes over existing websites. This parameter will disable this behaviour.</td>\n</tr>\n<tr>\n<td><code>disable_new_window</code></td>\n<td>(default: false) disables opening a popover window if the user is in an iFrame</td>\n</tr>\n<tr>\n<td><code>success_url</code></td>\n<td>(optional) the URL to redirect the user to after successful card selection. The query parameter, <code>payment_method</code> will be added to the URL.</td>\n</tr>\n<tr>\n<td><code>cancel_url</code></td>\n<td>(optional) the URL to redirect the user to after failed / cancelled card selection. The query parameter, <code>cancelled=true&amp;error=message</code> will be added to the URL (<code>error</code> will only be added where appropriate).</td>\n</tr>\n<tr>\n<td><code>default_logo_url</code></td>\n<td>(optional) the logo to use at the top of the screen, you can set this to <code>false</code> to disable the logo, or a HTTPS url</td>\n</tr>\n<tr>\n<td><code>locale</code></td>\n<td>(optional) the 2 letter language code or full locale (eg en or en_US). If you pass this, this locale will be used for localisation, otherwise, it defaults to the browsers locale, or IP lookup where there is no browser locale. If the language is not available, the default language will be returned. Typically this is English, however, you can customise it.</td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>(optional) legal entity <code>id</code> or <code>code</code> that is tokenising the payment method (only for instances with multiple legal entities configured) - note, the token will not be restricted to only this legal entity's use, this is simply to determine which options to present on the form and which gateway to use.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"method\">Method</h2>\n<p>To use button DOM attributes, for accessibility its recommended you do this for a <code>&lt;a&gt;</code> or <code>&lt;button&gt;</code> tag, you will need to populate:</p>\n<ul>\n<li><code>data-shuttle-token</code>: With the serialised options</li>\n<li><code>data-shuttle-signature</code>: With the signature</li>\n</ul>\n<p>eg <code>&lt;button data-shuttle-token=\"options\" data-shuttle-signature=\"signature\"&gt;&lt;/button&gt;</code></p>\n<p>for Javascript, call:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>var options = {...};\nvar signature = generateSignature(options);\n// Note: signature generation must be done server side,\n// never pass your secret-key to the client browser \n\nShuttle.selectToken(options, signature);\n</code></pre><h2 id=\"events\">Events</h2>\n<p>You only need to use the <code>success_url</code> (for multi-page apps) or catch the <code>SELECT_TOKEN_CLOSE</code> window event (for single-page apps) to transition the user to the next state in your user flow. A number of additional messages are however available.</p>\n<h3 id=\"select_token_close\">SELECT_TOKEN_CLOSE</h3>\n<p>A message <code>SELECT_TOKEN_CLOSE</code> will be raised when the card selection is closed. Only one of <code>success</code>, <code>cancelled</code> will be returned, if <code>cancelled</code> you should check for <code>error</code>, which describes any reasons outside of the user's control why this could not be completed (eg an integration error). If <code>success</code> is returned, a <code>payment_method</code> will be returned also.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>SELECT_TOKEN_CLOSE</code></td>\n</tr>\n<tr>\n<td><code>success</code></td>\n<td>The user selected a token before closing the dialogue</td>\n</tr>\n<tr>\n<td><code>cancelled</code></td>\n<td>The user cancelled the process before successfully selecting a token</td>\n</tr>\n<tr>\n<td><code>error</code></td>\n<td>The dialogue has been closed but the user was not able to select a token due to an error (typically invalid input parameters - eg account, contract ids, or signature). This field describes the reason.</td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>if <code>success</code>, this message will include the payment method selected</td>\n</tr>\n<tr>\n<td><code>contracts</code></td>\n<td>if <code>success</code> and contracts are passed on the method, the updated objects will be returned. At this stage, any outstanding payments on those contracts are performed asynchronously, so they may still appear to be in arrears until payment is attempted (which will typically be completed within 5-120 seconds). This may change in future.</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"SELECT_TOKEN_CLOSE\",\n        cancelled: true,\n        error: \"Invalid account\"\n    }\n    ...\n}\n...\nevent = {\n    ...\n    data: {\n        message: \"SELECT_TOKEN_CLOSE\",\n        success: true,\n        payment_method: {\n            \"id\": \"pm_5139_10120\",\n            \"account\": \"acc_5139_10160\",\n            \"code\": \"00010120\",\n            \"created\": \"2019-10-01T16:12:17.000Z\",\n            \"gateway\": \"gw_5139_10020\",\n            \"last_used\": \"2019-10-01T16:12:17.000Z\",\n            \"name\": \"Visa ending 4242, exp 12/22\",\n            \"status\": \"ACTIVE\",\n            \"type\": \"VISA\",\n            \"last4\": \"4242\",\n            \"expiry\": \"12/2022\"\n        },\n        contracts: [{...}]\n    }\n    ...\n}\n</code></pre><h3 id=\"select_token_success\">SELECT_TOKEN_SUCCESS</h3>\n<p>A message <code>SELECT_TOKEN_SUCCESS</code> will be raised as soon as a token is successfully selected in ADVANCE of <code>SELECT_TOKEN_CLOSE</code>. This will be raised while the popover is still visible once the decision to progress to the receipt screen is made. As client-side messaging is inherently insecure (ie a user could fake a message in the browser \"inspector\"), it is advised you validate any important information via server request before performing any important business logic (like dispatching goods). As this message will arrive earlier than the <code>SELECT_TOKEN_CLOSE</code> message when the dialogue is closed it provides a way to start loading content so you can be more responsive when the popover is closed.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>SELECT_TOKEN_SUCCESS</code></td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>the payment method selected</td>\n</tr>\n<tr>\n<td><code>contracts</code></td>\n<td>if contracts are passed on the method, the updated objects will be returned. At this stage, any outstanding payments on those contracts are performed asynchronously, so they may still appear to be in arrears until payment is attempted (which will typically be completed within 5-120 seconds). This may change in future.</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"SELECT_TOKEN_SUCCESS\"\n        payment_method: {\n            \"id\": \"pm_5139_10120\",\n            \"account\": \"acc_5139_10160\",\n            \"code\": \"00010120\",\n            \"created\": \"2019-10-01T16:12:17.000Z\",\n            \"gateway\": \"gw_5139_10020\",\n            \"last_used\": \"2019-10-01T16:12:17.000Z\",\n            \"name\": \"Visa ending 4242, exp 12/22\",\n            \"status\": \"ACTIVE\",\n            \"type\": \"VISA\",\n            \"last4\": \"4242\",\n            \"expiry\": \"12/2022\"\n        },\n        contracts: [{...}]\n    }\n    ...\n}\n</code></pre><h3 id=\"select_token_failed\">SELECT_TOKEN_FAILED</h3>\n<p>A message <code>SELECT_TOKEN_FAILED</code> will be raised each time a card selection is attempted unsuccessfully - in practice this will only be when adding a new payment method that fails validation - unless for example a saved payment method is selected that is concurrently archived in another window by the user. Please note, the user is advised of the failure and prompted to try again, there is no intended business case where you should need to catch this message. When receiving this message, keep in mind the dialogue has not yet been closed, and the user may subsequently successfully select a token prior to closing the dialogue. For example:</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>SELECT_TOKEN_FAILED</code></td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>the payment method attempted to be selected</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"SELECT_TOKEN_FAILED\"\n        payment_method: {\n            \"id\": \"pm_5139_10120\",\n            \"account\": \"acc_5139_10160\",\n            \"code\": \"00010120\",\n            \"created\": \"2019-10-01T16:12:17.000Z\",\n            \"gateway\": \"gw_5139_10020\",\n            \"name\": \"Visa ending 4242, exp 12/22\",\n            \"status\": \"INACTIVE\",\n            \"gateway_message\": \"Invalid card number\"\n            \"type\": \"VISA\",\n            \"last4\": \"4242\",\n            \"expiry\": \"12/2022\"\n        }\n    }\n    ...\n}\n</code></pre>","event":[{"listen":"prerequest","script":{"id":"ba36c7bd-4df5-4cfe-9c8c-9b2cfd080e8f","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"9e625b08-d4ad-4988-a19b-8b954b159b4e","type":"text/javascript","exec":[""]}}],"_postman_id":"db3aef10-ab7e-4971-9b24-de533923b4e8"},{"name":"Authenticate","item":[{"name":"Use Cases","item":[],"id":"b9bbb2f3-e070-4616-b2d1-5620190eed7a","description":"<p>Authenticate has 3 main use cases:</p>\n<ol>\n<li><strong>Login + authorise specific amount for payment</strong>, ie you know the basket amount<br />payment_token: true, action: AUTHORISE, on_success: POST payment</li>\n<li><strong>Login + request payment method for immediate use</strong>, ie where you dont know the final basket amount (eg you need to add shipping / tax)<br />payment_token: true, action: TOKENISE, on_success: POST payment</li>\n<li><strong>Login + request payment method for later use</strong>, ie where there's no initial payment, and payment will be performed later.<br />payment_token: true, action: TOKENISE, on_success: POST payment_method</li>\n</ol>\n<p>There are a number of additional options available:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n    \"element\": \"shuttle-auth\", \n    \"on_start\": function (options) {},\n    \"on_success\": function (options) {},\n    \"on_error\": function (error) {},\n    \"options\":\n    {\n        \"capture_shipping\": false,\n        \"payment_token\": false,\n        \"action\": \"AUTHORISE\",\n        \"currency\": \"USD\",\n        \"amount\": \"10000\",\n        \"shipping\": {},\n        \"line_items\": []  \n    }\n}\n\n</code></pre><p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>element</code></td>\n<td>is the id of the div you want to inject authenticate into</td>\n</tr>\n<tr>\n<td><code>on_start</code></td>\n<td>is a function called when the user starts interacting with the widget</td>\n</tr>\n<tr>\n<td><code>on_success</code></td>\n<td>is a function called when a user FINISHED interacting with the widget</td>\n</tr>\n<tr>\n<td><code>on_error</code></td>\n<td>a function called when a user cancels interacting with the widget or receives an error</td>\n</tr>\n<tr>\n<td><code>options</code></td>\n<td>a number of parameters to determine the behaviour of the widget (see below</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>options</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>capture_shipping</code></td>\n<td><code>true</code> / <code>false</code>, if you want a shipping address</td>\n</tr>\n<tr>\n<td><code>payment_token</code></td>\n<td><code>true</code> / <code>false</code>, if you want to return \"gateway data\" for a payment or payment_method</td>\n</tr>\n<tr>\n<td><code>shipping</code></td>\n<td><code>{ line1 ... line6, country}</code> if you want to set the default shipping address</td>\n</tr>\n<tr>\n<td><code>line_items</code></td>\n<td>(optional) the basket items in the order. These will not be validated by Shuttle, but simply passed to the gateways that support them.</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td><code>AUTHORISE</code>, <code>TOKENISE:</code> \"authorise\" with ask for approval of a payment, \"tokenise\" will ask for a payment method</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>eg <code>USD</code> - populate this with the currency you want to operate in</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>eg <code>99.99</code> - populate with the amount to authorise if <code>action: AUTHORISE</code></td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>line_items</code> is an array of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>sku</code></td>\n<td>your identifier for the product, a SKU of <code>SHIPPING</code>, <code>HANDLING</code> or <code>INSURANCE</code> will be passed as such for gateways that support it.</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>your label for the item</td>\n</tr>\n<tr>\n<td><code>quantity</code></td>\n<td>the number of units as a string eg \"2\"</td>\n</tr>\n<tr>\n<td><code>unit_price</code></td>\n<td>the price per unit as a string <strong>INCLUSIVE</strong> of tax eg \"9.99\" in the currency of the payment</td>\n</tr>\n<tr>\n<td><code>total_amount</code></td>\n<td>the total value of all all the items <strong>INCLUSIVE</strong> of tax as a string eg \"19.98\", typically this would be quantity x unit_prices less any discount</td>\n</tr>\n<tr>\n<td><code>total_tax</code></td>\n<td>(optional) the amount of tax in the total_amount as a string</td>\n</tr>\n<tr>\n<td><code>item_url</code></td>\n<td>a URL to product information, this is mandatory for many gateways, so make sure you populate it with something, even if a dummy value</td>\n</tr>\n<tr>\n<td><code>image_url</code></td>\n<td>a URL to product image, this is mandatory for many gateways, so make sure you populate it with something, even if a dummy value</td>\n</tr>\n</tbody>\n</table>\n</div><p>Note: <code>SUM(line_items.total_amount)</code> should equal the payment amount. If it is less, a \"Miscellaneous\" line item will be added to make up the difference. If the sum exceeds the payment amount, the difference will be flagged as a \"Discount\".</p>\n","_postman_id":"b9bbb2f3-e070-4616-b2d1-5620190eed7a"},{"name":"Integration","item":[],"id":"233b4c0f-3088-4758-b0d7-cdf29d37050b","description":"<p><strong>PRE-VALIDATION</strong></p>\n<p>You can optionally check to see if \"authenticate\" is supported by the merchant, we'd recommend just doing this after the config is changed and storing the result, to avoid needing to do it for every basket.</p>\n<p>Use the \"gateways\" API (See API &gt; Setup &gt; Gateways) to fetch the connected gateways for the merchant and check the features. Shuttle supports 3 relevant features:</p>\n<ul>\n<li><p><code>AUTHENTICATE</code>: User can login via this gateway (account details will be returned)</p>\n</li>\n<li><p><code>AUTHENTICATE_CAPTURE_SHIPPING</code>: User can select / enter shipping details via this gateway (shipping address will be returned)</p>\n</li>\n<li><p><code>AUTHENTICATE_PAYMENT_TOKEN</code>: User can select or enter a payment method via this gateway (a single use payment token will be returned)</p>\n</li>\n</ul>\n<p>Note: PayPal supports all three features.</p>\n<p><strong>INSTRUCTIONS</strong></p>\n<p>To implement the authenticate widget:</p>\n<ol>\n<li><p>Ensure you are using Shuttle.js version 1.3 or later, and embedding <code>shared_key</code> / <code>instance_key</code> in the URL</p>\n</li>\n<li><p>Add the component in your page</p>\n</li>\n<li><p>Use the <code>on_success()</code> function to call the POST payment API, or POST payment_method API</p>\n</li>\n</ol>\n<h2 id=\"step-1---use-shuttlejs-version-13\">Step 1 - use Shuttle.js version 1.3+</h2>\n<p>You must load shuttle.js via a new URL scheme which allows us to pre-load config.</p>\n<p>If upgrading from shuttle-1.2 or earlier, Please replace:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>OLD:\n&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.2.X.js\" type=\"text/javascript\"&gt;&lt;/script&gt;\nNEW:\n&lt;script src=\"https://app.shuttleglobal.com/${shared_key}/${instance_key}/shuttle-1.4.X.js\" type=\"text/javascript\"&gt;&lt;/script&gt;\nEXAMPLE - do not use without correct \"shared_key\" / \"instance_key\": \n&lt;script src=\"https://app.shuttleglobal.com/1186_122806/SBSBKEY/shuttle-1.4.X.js\" type=\"text/javascript\"&gt;&lt;/script&gt;\n\n</code></pre><h2 id=\"step-2---add-to-page\">Step 2 - Add to Page</h2>\n<p>Injecting express is performed via either:</p>\n<ol>\n<li><p>Javascript variable - FASTEST</p>\n</li>\n<li><p>Javascript function</p>\n</li>\n</ol>\n<p><strong>Javascript variable</strong></p>\n<p>Include the options in the page before the shuttle.js as a global variable <code>shuttle_authenticate_options</code> as such:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script&gt;window.shuttle_authenticate_options=${options}&lt;/script&gt;`\n&lt;script src=\"https://app.shuttleglobal.com/${shared_key}/${instance_key}/shuttle-1.4.X.js\" type=\"text/javascript\"&gt;&lt;/script&gt;\nAlso include the element where you want to inject the checkout:\n&lt;div class=&amp;#x27;preserveHtml&amp;#x27; class=&amp;#x27;preserveHtml&amp;#x27; class=&amp;#x27;preserveHtml&amp;#x27; id=\"shuttle-auth\"&gt;&lt;/div&gt;\n\n</code></pre><p>Noting to replace:</p>\n<ul>\n<li><p>${options} with the JSON options</p>\n</li>\n<li><p>${shared_key} with your shared key eg \"1186_122806\"</p>\n</li>\n<li><p>${instance_key} with the instance key of the current merchant eg \"MERCHANT100\"</p>\n</li>\n</ul>\n<blockquote>\n<p>Tip! Add the <code>script</code> tags at the bottom of your page, so to not impact page load time. </p>\n</blockquote>\n<p><strong>Javascript function</strong></p>\n<p>If you are dynamically rendering the page, rather than setting the global variable when you want to render the buttons, call:</p>\n<p><code>Shuttle.authenticate(options)</code></p>\n<p>Setting the global variable will start loading dependancies ASAP, whereas the Javascript function dependancies will not be loaded until the function called.</p>\n<h2 id=\"step-3---handle-on_start-on_success-on_error\">Step 3 - Handle <code>on_start</code> <code>on_success</code> <code>on_error</code></h2>\n<h3 id=\"on_startoptions\">on_start(options)</h3>\n<p>Called when a user interacts with the widget. Paypal will block out your page with an overlay, however you may have additional UX changes you want to make.</p>\n<p>The data passed to <code>on_start</code> is:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n    modal: true\n}\n\n</code></pre><p>Where:</p>\n<ul>\n<li><code>modal</code>: if the screen should be blocked, if this is true you may want to block user inputs / disable timers etc.</li>\n</ul>\n<h3 id=\"on_success-options\">on_success (options)</h3>\n<p>Called on successful completion of the express checkout. At this stage no money will have been processed, nor any data in Shuttle changed, you need to POST the data returned in the options to a payment or payment_method API.</p>\n<p>The data passed to <code>on_success</code> is:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n    account: {\n        gateway_key: \"paypal's id\",\n        first_name: \"John\",\n        last_name: \"Smith\",\n        email: \"john@gmail.com\",\n        phone: \"(102)555-1232\"\n    },\n    gateway_data: {...},\n    shipping: {\n        line1: \"Street 1\",\n        line2: \"Street 2\",\n        line3: \"Street 3\",\n        line4: \"City\",\n        line5: \"Postcode / Zip\",\n        line6: \"State\",\n        country: \"US\"\n    }\n}\n\n</code></pre><p>Where:</p>\n<ul>\n<li><p><code>account</code>: Contains details about the authenticated user</p>\n<ul>\n<li><p><code>gateway_key</code>: The ID of the user by the gateway (eg Paypal) you can use this to identify a returning customer if you retain this data</p>\n</li>\n<li><p><code>first_name</code>: The customer's first name (where available)</p>\n</li>\n<li><p><code>last_name</code>: The customer's last name (where available)</p>\n</li>\n<li><p><code>email</code>: The customer's email (where available)</p>\n</li>\n<li><p><code>phone</code>: The customer's phone (where available) - you may want to sanitise the formatting as it will be as returned by Paypal etc</p>\n</li>\n</ul>\n</li>\n<li><p><code>gateway_data</code>: Contains some JSON that will be used by the gateway for payment / tokenisation. You should not use this or change this data, other than passing it into Shuttle's API.</p>\n</li>\n<li><p><code>shipping</code>: if you requested <code>capture_shipping</code> this is the shipping address returned by the gateway</p>\n</li>\n</ul>\n<p>Some examples of how to use this data (see payment and payment_method API for more options):</p>\n<p>Authorise $100:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>POST /c/api/instances/SBSBKEY/payments\n{\n  \"payment\": {\n    \"action\": \"AUTHORISE\",\n    \"amount\": \"100\",\n    \"currency\": \"USD\",\n    \"account\": {\n      \"first_name\": \"Jack\",\n      \"last_name\": \"Smith\",\n      \"phone\": \"(202)555-2448\",\n      \"email\": \"jack@email.com\"\n    },\n    \"gateway_data\": {\n      \"gateway\": \"20344_10002\",\n      \"card_token\": \"cd9bb44914583d696d03e5b6\",\n      \"card_type\": \"VISA\"\n    }\n  }\n}\n\n</code></pre><p>Payment of $100, with a shipping address, and save the card for future use:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>POST /c/api/instances/SBSBKEY/payments\n{\n  \"payment\": {\n    \"action\": \"AUTHORISE\",\n    \"amount\": \"100\",\n    \"currency\": \"USD\",\n    \"save_card\": true,\n    \"account\": {\n      \"first_name\": \"Jack\",\n      \"last_name\": \"Smith\",\n      \"phone\": \"(202)555-2448\",\n      \"email\": \"jack@email.com\"\n    },\n    \"gateway_data\": {\n      \"gateway\": \"20344_10002\",\n      \"card_token\": \"cd9bb44914583d696d03e5b6\",\n      \"card_type\": \"VISA\"\n    },\n    shipping: {\n      line1: \"Street 1\",\n      line2: \"Street 2\",\n      line3: \"Street 3\",\n      line4: \"City\",\n      line5: \"Postcode / Zip\",\n      line6: \"State\",\n      country: \"US\"\n    }\n  }\n}\n\n</code></pre><p>Save payment details for future use:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>POST /c/api/instances/SBSBKEY/payment_methods\n{\n  \"payment_method\": {\n    \"account\": {\n      \"crm_key\": \"928495\", // include your customer id! \n      \"first_name\": \"Jack\",\n      \"last_name\": \"Smith\",\n      \"phone\": \"(202)555-2448\",\n      \"email\": \"jack@email.com\"\n    },\n    \"gateway_data\": {\n      \"gateway\": \"20344_10002\",\n      \"card_token\": \"9f01f87d7d55d2b1e32e8c59\",\n      \"card_type\": \"VISA\"\n    }\n  }\n}\n\n</code></pre><h3 id=\"on_erroroptions\">on_error(options)</h3>\n<p>Called when the user cancels the process, or encounters an error. It is recommended you present errors to the user.</p>\n<p>The data passed to <code>on_error</code> is:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n    cancel: false,\n    error: \"An error occurred\"\n}\n\n</code></pre><p>Where:</p>\n<ul>\n<li><p>cancel: if this was cause by the user cancelling</p>\n</li>\n<li><p>error: if it was not caused by the user cancelled, an error message that caused this</p>\n</li>\n</ul>\n","_postman_id":"233b4c0f-3088-4758-b0d7-cdf29d37050b"}],"id":"d91856f8-7ee1-4e84-b551-e4d1c903bf36","description":"<p><strong>REQUIRES SHUTTLE-1.3.0.JS OR LATER</strong></p>\n<p>Some gateways, such as PayPal have the ability to perform an \"express checkout\", by authenticating the user and return a shipping address and payment method - this is intended as a quick way for GUESTS to checkout, and is not intended for logged in users. You can access this functionality via the \"authenticate\" component which will embed these checkout buttons into your page.</p>\n<p>The widget will loop through the merchants enabled gateways, and for those that support \"authenticate\" injected their \"checkout\" buttons onto the page. If no gateways support this feature, nothing will be rendered.</p>\n<p>Initially only the Sandbox and PayPal gateways support this feature.</p>\n","_postman_id":"d91856f8-7ee1-4e84-b551-e4d1c903bf36"},{"name":"Credit Message","item":[{"name":"Use Cases","item":[],"id":"237f44b5-4d93-4ce0-ac3b-13e21f91460d","description":"<p>Credit Message has 3 main use cases:</p>\n<ol>\n<li><strong>Product Page</strong>, ie pay for this product in 3 x $30 instalments</li>\n<li><strong>Basket Page</strong>, ie pay for this basket in 3 x $30 instalments</li>\n<li><strong>Home Page</strong>: ie display a general advertisement for the service - this currently <strong>not supported</strong></li>\n</ol>\n<p>There are a number of options available:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n    \"element\": \"shuttle-cm\", \n    \"currency\": \"GBP\",\n    \"amount\": \"100\"\n}\n\n</code></pre><p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>element</code></td>\n<td>is the id of the div you want to inject authenticate into, if you have many of these on the same page, make sure each id is unique.</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>The currency of the product - NOTE not all credit providers allow multi-currency, for example, Paypal IGNORES currency.</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>the amount as a text string</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"237f44b5-4d93-4ce0-ac3b-13e21f91460d"},{"name":"Integration","item":[],"id":"8c87902b-a4c6-4d46-81f1-60ac3e80b29c","description":"<p><strong>PRE-VALIDATION</strong></p>\n<p>You can optionally check to see if \"credit messages\" are supported by the merchant, we'd recommend just doing this after the config is changed and storing the result, to avoid needing to do it every use.</p>\n<p>Use the \"gateways\" API (See API &gt; Setup &gt; Gateways) to fetch the connected gateways for the merchant and check for the feature:</p>\n<ul>\n<li><code>CREDIT_MESSAGE</code>: This gateway supports credit messages. Note, it's possible for a gateway to support credit messages (ie return the feature), but for it not to be available, in this scenario you can include the component, but no message will be displayed.</li>\n</ul>\n<p><strong>INSTRUCTIONS</strong> </p>\n<p>To implement the credit message widget:</p>\n<ol>\n<li>Ensure you are using Shuttle.js version 1.3 or later, and embedding <code>shared_key</code> / <code>instance_key</code> in the URL</li>\n<li>Add the component in your page</li>\n</ol>\n<h2 id=\"step-1---use-shuttlejs-version-13\">Step 1 - use Shuttle.js version 1.3+</h2>\n<p>You must load shuttle.js via a new URL scheme which allows us to pre-load config.</p>\n<p>If upgrading from shuttle-1.2 or earlier, Please replace:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>OLD:\n&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.2.X.js\" type=\"text/javascript\"&gt;&lt;/script&gt;\n\nNEW:\n&lt;script src=\"https://app.shuttleglobal.com/${shared_key}/${instance_key}/shuttle-1.3.X.js\" type=\"text/javascript\"&gt;&lt;/script&gt;\n\nEXAMPLE - do not use without correct \"shared_key\" / \"instance_key\": \n&lt;script src=\"https://app.shuttleglobal.com/1186_122806/SBSBKEY/shuttle-1.3.X.js\" type=\"text/javascript\"&gt;&lt;/script&gt;\n</code></pre><h2 id=\"step-2---add-to-page\">Step 2 - Add to Page</h2>\n<p>Injecting express is performed via a Javascript function, when you want to render the buttons, call:</p>\n<p> <code>Shuttle.credit_message(options)</code></p>\n<p>for example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>Shuttle.credit_message({\n \"element\": \"product_1_messages\",\n \"currency\": \"USD\",\n \"amount\": \"100\"\n});\n\nShuttle.credit_message({\n \"element\": \"product_2_messages\",\n \"currency\": \"USD\",\n \"amount\": \"149.99\"\n});\n</code></pre>","_postman_id":"8c87902b-a4c6-4d46-81f1-60ac3e80b29c"}],"id":"90dd8a2a-ef5d-4d8f-bec7-dcb4161e2c75","description":"<p><strong>REQUIRES SHUTTLE-1.3.0.JS OR LATER</strong></p>\n<p>Buy-now pay-later providers, such as Klarna, Affirm and PayPal Credit have the ability to split payments over multiple instalments. Most of these providers allow you to inject marketing text on the product / checkout pages, to encourage customers to take up this option.</p>\n<p>Use this component on your product / checkout pages, and if the merchant has any connected providers that support this, their respective messages will be displayed in a vertical stack.</p>\n","_postman_id":"90dd8a2a-ef5d-4d8f-bec7-dcb4161e2c75"},{"name":"Checkout Monitor","item":[],"id":"1d90d6b7-23e4-4f3c-9bed-af7372387488","description":"<p><strong>REQUIRES SHUTTLE-1.3.3.JS OR LATER</strong></p>\n<p>For scenarios where a customer is filling in checkout, you can now monitor customer progress to aid them through checkout. Note, all checkout data is redacted and no personal information exposed.</p>\n<p>Examples where checkout monitor may be useful:</p>\n<ul>\n<li>Call center sends a customer a payment link, and the person on the call can follow the customer as they complete checkout.</li>\n<li>Online chat sends a customer a payment link, and the chat operator can follow the customer as they complete checkout</li>\n</ul>\n<p>To use the checkout monitor, you need to include a <code>nonce</code> GUID when opening checkout - a nonce is a long unique string, that is also used to prevent duplicate payments.</p>\n<p>To monitor a checkout, call the Shuttle.js function:</p>\n<p><code>Shuttle.checkout_monitor(nonce, callback_function)</code></p>\n<p>For example, to log all updates to console:</p>\n<p><code>Shuttle.checkout_monitor(nonce, (e) =&gt; console.log(JSON.stringify(e)))</code></p>\n<p>Example messages:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n    \"type\": \"connection\",\n    \"level\": \"MEDIUM\",\n    \"message\": \"Connected\",\n    \"state\":\n    {\n        \"id\": \"1f485fa61f163253c0976bce4d7331af\",\n        \"online\": true\n    }\n}\n\n</code></pre><pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n    \"type\": \"checkout\",\n    \"level\": \"LOW\",\n    \"message\": \"Payment entry\",\n    \"state\":\n    {\n        \"id\": \"1f485fa61f163253c0976bce4d7331af\",\n        \"created\": \"2022-09-06T11:55:56.206Z\",\n        \"ip_address\": \"212.161.80.4\",\n        \"ip_address_country\": \"GB\",\n        \"browser\": \"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36\",\n        \"browser_size\": \"509,704\",\n        \"source\": \"ECOMMERCE\",\n        \"action\": \"PAYMENT\",\n        \"channel\": \"24636_10002\",\n        \"initiative\": \"24636_10002\",\n        \"account\": \"24636_10345\",\n        \"currency\": \"USD\",\n        \"amount\": \"100.00\",\n        \"step\": \"PAYMENT\",\n        \"payment_methods\": [],\n        \"payment_method_types\": [\n            {\n                \"type\": \"UNIONPAY\",\n                \"gateway\": \"24636_10003\",\n                \"features\": [\n                    \"REQUIRE_AVS\",\n                    \"PAYMENT\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"AUTHORISE\",\n                    \"VOID\",\n                    \"CAPTURE\",\n                    \"MULTI_REFUND\",\n                    \"SAVE_CARD\"\n                ],\n                \"hosted_payment_card_type\": \"UNIONPAY\"\n            },\n            {\n                \"type\": \"AMEX\",\n                \"gateway\": \"24636_10003\",\n                \"features\": [\n                    \"REQUIRE_AVS\",\n                    \"PAYMENT\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"AUTHORISE\",\n                    \"VOID\",\n                    \"CAPTURE\",\n                    \"MULTI_REFUND\",\n                    \"SAVE_CARD\"\n                ],\n                \"hosted_payment_card_type\": \"AMEX\"\n            },\n            {\n                \"type\": \"ACH\",\n                \"gateway\": \"24636_10003\",\n                \"features\": [\n                    \"REQUIRE_AVS\",\n                    \"PAYMENT\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"SAVE_CARD\"\n                ],\n                \"hosted_payment_card_type\": \"ACH\",\n                \"ach_options\": [\n                    {\n                        \"name\": \"Checking\",\n                        \"key\": \"checking\"\n                    },\n                    {\n                        \"name\": \"Savings\",\n                        \"key\": \"savings\"\n                    },\n                    {\n                        \"name\": \"Business Checking\",\n                        \"key\": \"businessChecking\"\n                    }\n                ]\n            },\n            {\n                \"type\": \"MASTERCARD\",\n                \"gateway\": \"24636_10003\",\n                \"features\": [\n                    \"REQUIRE_AVS\",\n                    \"PAYMENT\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"AUTHORISE\",\n                    \"VOID\",\n                    \"CAPTURE\",\n                    \"MULTI_REFUND\",\n                    \"SAVE_CARD\"\n                ],\n                \"hosted_payment_card_type\": \"MASTERCARD\"\n            },\n            {\n                \"type\": \"DISCOVER\",\n                \"gateway\": \"24636_10003\",\n                \"features\": [\n                    \"REQUIRE_AVS\",\n                    \"PAYMENT\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"AUTHORISE\",\n                    \"VOID\",\n                    \"CAPTURE\",\n                    \"MULTI_REFUND\",\n                    \"SAVE_CARD\"\n                ],\n                \"hosted_payment_card_type\": \"DISCOVER\"\n            },\n            {\n                \"type\": \"JCB\",\n                \"gateway\": \"24636_10003\",\n                \"features\": [\n                    \"REQUIRE_AVS\",\n                    \"PAYMENT\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"AUTHORISE\",\n                    \"VOID\",\n                    \"CAPTURE\",\n                    \"MULTI_REFUND\",\n                    \"SAVE_CARD\"\n                ],\n                \"hosted_payment_card_type\": \"JCB\"\n            },\n            {\n                \"type\": \"VISA\",\n                \"gateway\": \"24636_10003\",\n                \"features\": [\n                    \"REQUIRE_AVS\",\n                    \"PAYMENT\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"AUTHORISE\",\n                    \"VOID\",\n                    \"CAPTURE\",\n                    \"MULTI_REFUND\",\n                    \"SAVE_CARD\"\n                ],\n                \"hosted_payment_card_type\": \"VISA\"\n            },\n            {\n                \"type\": \"DINERS\",\n                \"gateway\": \"24636_10003\",\n                \"features\": [\n                    \"REQUIRE_AVS\",\n                    \"PAYMENT\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"AUTHORISE\",\n                    \"VOID\",\n                    \"CAPTURE\",\n                    \"MULTI_REFUND\",\n                    \"SAVE_CARD\"\n                ],\n                \"hosted_payment_card_type\": \"DINERS\"\n            }\n        ],\n        \"payment_method_type_entry\": \"CARDS\",\n        \"card_brand\": \"VISA\",\n        \"card_number\": \"****\",\n        \"card_cvc\": \"***\",\n        \"card_expiry\": \"12/23\",\n        \"card_number_valid\": true,\n        \"card_expiry_valid\": true,\n        \"card_cvc_valid\": true,\n        \"card_billing_line1\": \"**\",\n        \"card_billing_line2\": \"***\",\n        \"card_billing_line4\": \"London\",\n        \"card_billing_line5\": \"****\",\n        \"card_billing_country\": \"GB\",\n        \"form_valid\": true,\n        \"updated\": \"2022-09-06T11:56:16.309Z\",\n        \"v\": 1662465376309\n    }\n}\n\n</code></pre><p>Each message consists of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>type</code></td>\n<td><code>connection</code> indicates is a data publisher is connected or not, <code>checkout</code> indicates an update from the web checkout, other types may be added in future</td>\n</tr>\n<tr>\n<td><code>level</code></td>\n<td><code>LOW</code> <code>MEDIUM</code> <code>HIGH</code> if this is a major event or not</td>\n</tr>\n<tr>\n<td><code>message</code></td>\n<td>A short summary of the state of checkout</td>\n</tr>\n<tr>\n<td><code>state</code></td>\n<td>A detailed view of the state of checkout</td>\n</tr>\n</tbody>\n</table>\n</div><p>\"checkout\" publishes a significant amount of data in state. While the state contains all kinds of information which can be useful, please only rely on the following data at this stage:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>The nonce</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>When checkout was opened</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>When this update was created</td>\n</tr>\n<tr>\n<td><code>ip_address</code></td>\n<td>The customer IP address</td>\n</tr>\n<tr>\n<td><code>ip_address_country</code></td>\n<td>The country of customer's IP</td>\n</tr>\n<tr>\n<td><code>browser</code></td>\n<td>The browser user agent</td>\n</tr>\n<tr>\n<td><code>browser_size</code></td>\n<td>The browser size as \"w,h\"</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>The <code>source</code> of payment eg MOTO / ECOMMERCE</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>The <code>action</code> of payment eg AUTH / PAYMENT</td>\n</tr>\n<tr>\n<td><code>channel</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>initiative</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>account</code></td>\n<td>The account id of the customer</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>The currency of the payment</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>The amount of the payment</td>\n</tr>\n<tr>\n<td><code>step</code></td>\n<td>The current stage of checkout AMOUNT_ENTRY, PAYMENT, HOSTED_PROCESS, CONFIMATION, PROCESSING, 3DS, RECEIPT</td>\n</tr>\n<tr>\n<td><code>payment_methods</code></td>\n<td>do not use this field</td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>If using a saved card, the ID of the saved card</td>\n</tr>\n<tr>\n<td><code>payment_method_types</code></td>\n<td>do not use this field</td>\n</tr>\n<tr>\n<td><code>payment_method_type_entry</code></td>\n<td>If adding a new payment method, the type of entry CARDS, ACH, SEPA, etc</td>\n</tr>\n<tr>\n<td><code>save_card</code></td>\n<td>If adding a new payment method, if the payment_method is to be saved</td>\n</tr>\n<tr>\n<td><code>form_valid</code></td>\n<td>If adding a new payment method, true if the form is valid</td>\n</tr>\n<tr>\n<td><code>card_brand</code></td>\n<td>For <code>CARDS</code>, the brand (eg VISA)</td>\n</tr>\n<tr>\n<td><code>card_number</code></td>\n<td>For <code>CARDS</code>, the redacted PAN</td>\n</tr>\n<tr>\n<td><code>card_cvc</code></td>\n<td>For <code>CARDS</code>, the redacted CVC</td>\n</tr>\n<tr>\n<td><code>card_expiry</code></td>\n<td>For <code>CARDS</code>, the non-redacted expiry</td>\n</tr>\n<tr>\n<td><code>card_number_valid</code></td>\n<td>For <code>CARDS</code>, true if PAN is valid</td>\n</tr>\n<tr>\n<td><code>card_expiry_valid</code></td>\n<td>For <code>CARDS</code>, true if EXPIRY is valid</td>\n</tr>\n<tr>\n<td><code>card_cvc_valid</code></td>\n<td>For <code>CARDS</code>, true if CVC is valid</td>\n</tr>\n<tr>\n<td><code>card_email</code></td>\n<td>For <code>CARDS</code>, which require email (redacted)</td>\n</tr>\n<tr>\n<td><code>card_phone</code></td>\n<td>For <code>CARDS</code>, which require phone (redacted)</td>\n</tr>\n<tr>\n<td><code>card_account_name</code></td>\n<td>For <code>CARDS</code>, which require account_name (redacted)</td>\n</tr>\n<tr>\n<td><code>card_billing_line1</code></td>\n<td>For <code>CARDS</code>, the redacted billing address line 1</td>\n</tr>\n<tr>\n<td><code>card_billing_line2</code></td>\n<td>For <code>CARDS</code>, the redacted billing address line 2</td>\n</tr>\n<tr>\n<td><code>card_billing_line3</code></td>\n<td>For <code>CARDS</code>, the redacted billing address line 3</td>\n</tr>\n<tr>\n<td><code>card_billing_line4</code></td>\n<td>For <code>CARDS</code>, the non-redacted billing address line 4 (city)</td>\n</tr>\n<tr>\n<td><code>card_billing_line5</code></td>\n<td>For <code>CARDS</code>, the redacted billing address line 5 (zip)</td>\n</tr>\n<tr>\n<td><code>card_billing_line5</code></td>\n<td>For <code>CARDS</code>, the non-redacted billing address line 6 (state)</td>\n</tr>\n<tr>\n<td><code>card_billing_country</code></td>\n<td>For <code>CARDS</code>, the non-redacted billing country</td>\n</tr>\n<tr>\n<td><code>sepa_iban</code></td>\n<td>For <code>SEPA</code>, the IBAN (redacted)</td>\n</tr>\n<tr>\n<td><code>sepa_iban_valid</code></td>\n<td>For <code>SEPA</code>, true if the IBAN valid</td>\n</tr>\n<tr>\n<td><code>sepa_email</code></td>\n<td>For <code>SEPA</code>, which require email (redacted)</td>\n</tr>\n<tr>\n<td><code>sepa_phone</code></td>\n<td>For <code>SEPA</code>, which require phone (redacted)</td>\n</tr>\n<tr>\n<td><code>sepa_account_name</code></td>\n<td>For <code>SEPA</code>, which require account_name (redacted)</td>\n</tr>\n<tr>\n<td><code>ach_account_type</code></td>\n<td>For <code>ACH</code>, the account_type</td>\n</tr>\n<tr>\n<td><code>ach_routing_number</code></td>\n<td>For <code>ACH</code>, the routing_number (redacted)</td>\n</tr>\n<tr>\n<td><code>ach_account_number</code></td>\n<td>For <code>ACH</code>, the account_number (redacted)</td>\n</tr>\n<tr>\n<td><code>ach_account_type_valid</code></td>\n<td>For <code>ACH</code>, true if the account_type valid</td>\n</tr>\n<tr>\n<td><code>ach_account_number_valid</code></td>\n<td>For <code>ACH</code>, true if the account_number valid</td>\n</tr>\n<tr>\n<td><code>ach_routing_number_valid</code></td>\n<td>For <code>ACH</code>, true if the routing_type valid</td>\n</tr>\n<tr>\n<td><code>ach_email</code></td>\n<td>For <code>ACH</code>, which require email (redacted)</td>\n</tr>\n<tr>\n<td><code>ach_phone</code></td>\n<td>For <code>ACH</code>, which require phone (redacted)</td>\n</tr>\n<tr>\n<td><code>ach_account_name</code></td>\n<td>For <code>ACH</code>, which require account_name (redacted)</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>Post submission, the most recent transaction.id</td>\n</tr>\n<tr>\n<td><code>transaction_status</code></td>\n<td>Post submission, the most recent transaction.status</td>\n</tr>\n<tr>\n<td><code>transaction_gateway_status</code></td>\n<td>Post submission, the most recent transaction.gateway_status</td>\n</tr>\n<tr>\n<td><code>transaction_gateway_message</code></td>\n<td>Post submission, the most recent transaction.gateway_message</td>\n</tr>\n<tr>\n<td><code>transaction_reference</code></td>\n<td>Post submission, the most recent transaction.reference</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"1d90d6b7-23e4-4f3c-9bed-af7372387488"},{"name":"Release Notes","item":[],"id":"232ac3f1-8d9f-4bcf-9dea-c37d812d5da7","description":"<p>This section lists the available versions of shuttle.js and notable changes. if you are not using Authenticate / Credit Message modules, you can reference shuttle.js without your public key / instance key, in which case we recommend you reference a specific version and include SRI integrity checksum. If you are using these modules, you will need to include public key / instance key in the URL and NOT use the integrity checksum.</p>\n<h3 id=\"14-apr-2026-146\">14 Apr 2026: 1.4.6</h3>\n<p><code>shuttle-1.4.6.js</code> alias <code>shuttle-1.4.X.js</code><br />SRI: <code>sha384-2Hp+tsbQtUOCC9ksHfP3jAoYjKqJlufMiYG8f1qMGMaCBqzA+FbfLfD2peWoDH9R</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.4.6.js\" integrity=\"sha384-2Hp+tsbQtUOCC9ksHfP3jAoYjKqJlufMiYG8f1qMGMaCBqzA+FbfLfD2peWoDH9R\" crossorigin=\"anonymous\"&gt;&lt;/script&gt;\n\n</code></pre><p><em>Bug Fixes</em></p>\n<ul>\n<li>Added support for Stripe Wallet Apple Pay payments</li>\n</ul>\n<h3 id=\"2-oct-2025-144\">2 Oct 2025: 1.4.4</h3>\n<p><code>shuttle-1.4.4.js</code><br />SRI: <code>sha384-i/xUsM9lYTA45zKVcp7VBKWiGj9H0i/DoZJP0EhVrfTAhRZnTxMTE701ueltm4JS</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.4.4.js\" integrity=\"sha384-i/xUsM9lYTA45zKVcp7VBKWiGj9H0i/DoZJP0EhVrfTAhRZnTxMTE701ueltm4JS\" crossorigin=\"anonymous\"&gt;&lt;/script&gt;\n\n</code></pre><p><em>Bug Fixes</em></p>\n<ul>\n<li>Calling Shuttle.bind() when checkout is displaying also dismissed the overlay in addition to checkout.</li>\n</ul>\n<h3 id=\"13-may-2025-143\">13 May 2025: 1.4.3</h3>\n<p><code>shuttle-1.4.3.js</code><br />SRI: <code>sha384-1sQj8veCQ/ii3HrET278lGljNlzfSEucMTnxLlU/S2/0dL+V7wsO+VLN0dDGPu/f</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.4.3.js\" integrity=\"sha384-1sQj8veCQ/ii3HrET278lGljNlzfSEucMTnxLlU/S2/0dL+V7wsO+VLN0dDGPu/f\" crossorigin=\"anonymous\"&gt;&lt;/script&gt;\n\n</code></pre><p><em>Improvements</em></p>\n<ul>\n<li><p>Deeplinks without an ID now dont inject an missing link</p>\n</li>\n<li><p>Cleaned up the render of multiple express checkout options</p>\n</li>\n<li><p>Cleaned up express checkout error handling</p>\n</li>\n</ul>\n<h3 id=\"12-dec-2024-141\">12 Dec 2024: 1.4.1</h3>\n<p><code>shuttle-1.4.1.js</code><br />SRI: <code>sha384-FE/L3JelbhG/+PaUmylbo2D7p86vcnIXWx5mEOOSINInLpy79ZucODPmAySiQqsf</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.4.1.js\" integrity=\"sha384-FE/L3JelbhG/+PaUmylbo2D7p86vcnIXWx5mEOOSINInLpy79ZucODPmAySiQqsf\" crossorigin=\"anonymous\"&gt;&lt;/script&gt;\n\n</code></pre><p><em>Security Update</em></p>\n<ul>\n<li>Added XSS protection around browser redirects</li>\n</ul>\n<h3 id=\"5-nov-2024-140\">5 Nov 2024: 1.4.0</h3>\n<p><code>shuttle-1.4.0.js</code><br />SRI: <code>sha384-1qGaKVAMjRQi7/fb6xuV4b0++Ifce1PAnlhQB0GpsDCH56CTmBBEFYPI0HOAnXya</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.4.0.js\" integrity=\"sha384-1qGaKVAMjRQi7/fb6xuV4b0++Ifce1PAnlhQB0GpsDCH56CTmBBEFYPI0HOAnXya\" crossorigin=\"anonymous\"&gt;&lt;/script&gt;\n\n</code></pre><p><em>Improvements</em></p>\n<ul>\n<li>Added support for large baskets, previously basket size was limited by URL length which for some users was around the 2kb length</li>\n</ul>\n<p><strong>1.3.X</strong> <strong>Please note, 1.3.X has been superceded with 1.4.X. It will receive minor patches until 30 June 2025, and security patches until 30 November 2026. Please upgrade before this date.</strong></p>\n<h3 id=\"13-may-2025-1317\">13 May 2025: 1.3.17</h3>\n<p><code>shuttle-1.3.17.js</code> alias <code>shuttle-1.3.X.js</code><br />SRI: <code>sha384-+Sh/mBBu6OfWF4j+e77c1zGwyXXgkkTz21DIf6vsLi9r13HH6RajphdInLDB3dE5</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.3.17.js\" integrity=\"sha384-+Sh/mBBu6OfWF4j+e77c1zGwyXXgkkTz21DIf6vsLi9r13HH6RajphdInLDB3dE5\" crossorigin=\"anonymous\"&gt;&lt;/script&gt;\n\n</code></pre><p><em>Improvements</em></p>\n<ul>\n<li><p>Deeplinks without an ID now dont inject an missing link</p>\n</li>\n<li><p>Cleaned up the render of multiple express checkout options</p>\n</li>\n<li><p>Cleaned up express checkout error handling</p>\n</li>\n</ul>\n<h3 id=\"09-sep-2024-1315\">09 Sep 2024: 1.3.15</h3>\n<p><code>shuttle-1.3.15.js</code></p>\n<p>SRI: <code>sha384-PHNi7doFSWSN8LkLGhRWURH7dt87RRpwT1lNyYj8jbFrcpTRd1AXIyW/2GNDrA3L</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script src=\"https://app.shuttleglobal.com/shuttle-1.3.15.js\" integrity=\"sha384-PHNi7doFSWSN8LkLGhRWURH7dt87RRpwT1lNyYj8jbFrcpTRd1AXIyW/2GNDrA3L\" crossorigin=\"anonymous\"&gt;&lt;/script&gt;\n\n</code></pre><p><em>New Features</em></p>\n<ul>\n<li>Added support for accessing beta builds (if requested by support)</li>\n</ul>\n<p><em>Improvements</em></p>\n<ul>\n<li>Improved websocket handling when websockets are blocked</li>\n</ul>\n<p><em>Bug Fixes</em></p>\n<ul>\n<li><p>Fixed an issue with PAYMENT_CLOSE someones returning cancel: true, even on successful payment</p>\n</li>\n<li><p>Removed the reference to socket.io map which displays an 404 not found when debugging</p>\n</li>\n<li><p>Fixed an issue with a display resize event arriving after the checkout iframe removed from the page.</p>\n</li>\n</ul>\n<p>09 Aug 2023: 1.3.11</p>\n<p><code>shuttle-1.3.11.js</code> alias <code>shuttle-1.3.X.js</code></p>\n<p><em>New Features</em></p>\n<ul>\n<li><p>Support for option \"height: fixed\" to disable Shuttle auto resizing iFrame</p>\n</li>\n<li><p>Express Checkout (Authenticate) now returns <code>is_available</code> if some options were rendered, so allow you alternate your UX flow if express checkout ifs available or not.</p>\n</li>\n<li><p>Added Shuttle.cancel(guid (default all)) to cancel a checkout</p>\n</li>\n</ul>\n<p><em>Improvements</em></p>\n<ul>\n<li><p>Better support for multiple / changing checkouts on a page</p>\n</li>\n<li><p>Updated inline style checkout to start with 0 height and then grow during rendering rather than an random initial height</p>\n</li>\n<li><p>Removed external dependancy on socket.io</p>\n</li>\n<li><p>Removed deprecated \"allowpaymentrequest\" iFrame attribute</p>\n</li>\n</ul>\n<h3 id=\"20-apr-2023-137\">20 Apr 2023: 1.3.7</h3>\n<blockquote>\n<p><strong>Please note, 1.3.X has been superceded with 1.4.X. It will receive minor patches until 30 June 2025, and critical security patches until 30 November 2026. Please upgrade before this date.</strong> </p>\n</blockquote>\n<p><code>shuttle-1.3.7.js</code></p>\n<p><em>New Features</em></p>\n<ul>\n<li>Credit message component now support multiple credit providers</li>\n</ul>\n<h3 id=\"10-feb-2023-136\">10 Feb 2023: 1.3.6</h3>\n<blockquote>\n<p><strong>Please note, 1.3.X has been superceded with 1.4.X. It will receive minor patches until 30 June 2025, and security patches until 30 November 2026. Please upgrade before this date.</strong> </p>\n</blockquote>\n<p><code>shuttle-1.3.6.js</code></p>\n<p><em>Bug Fixes and Improvements</em></p>\n<ul>\n<li><p>Removed console logging</p>\n</li>\n<li><p>Fixed an issue displaying Google Pay</p>\n</li>\n</ul>\n<h3 id=\"13-sep-2022-134\">13 Sep 2022: 1.3.4</h3>\n<blockquote>\n<p><strong>Please note, 1.3.X has been superceded with 1.4.X. It will receive minor patches until 30 June 2025, and security patches until 30 November 2026. Please upgrade before this date.</strong> </p>\n</blockquote>\n<p><code>shuttle-1.3.4.js</code></p>\n<p><em>New Features</em></p>\n<ul>\n<li><p>Instant render marketing messages (buy now pay later messaging)</p>\n</li>\n<li><p>Checkout monitor - real time updates for whats happening at checkout</p>\n</li>\n</ul>\n<p><em>Bug Fixes and Improvements</em></p>\n<ul>\n<li><p>Streamlined the render process to reduce element movement on page</p>\n</li>\n<li><p>Fixed an issue with an iFrame loading more often than it should</p>\n</li>\n</ul>\n<h3 id=\"27-apr-2022-130\">27 Apr 2022: 1.3.0</h3>\n<blockquote>\n<p><strong>Please note, 1.3.X has been superceded with 1.4.X. It will receive minor patches until 30 June 2025, and security patches until 30 November 2026. Please upgrade before this date.</strong> </p>\n</blockquote>\n<p><code>shuttle-1.3.0.js</code></p>\n<p><em>New Features</em></p>\n<ul>\n<li>Instant render express checkout (authenticate)</li>\n</ul>\n<p>UPGRADING NOTE - The URL structure has changed to include shared_key and instance_key in the URL:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script src=\"https://app.shuttleglobal.com/${shared_key}/${instance_key}/shuttle-1.3.X.js\" type=\"text/javascript\"&gt;&lt;/script&gt;\n\n</code></pre><h3 id=\"12x-and-earlier\">1.2.X and earlier</h3>\n<blockquote>\n<p><strong>Please note, 1.2.X and earlier are now deprecated and not recieving maintenance or security patches.</strong> </p>\n</blockquote>\n<p>Please note, prior to 1.3.0, shuttle.js uses the following URL structure:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>https://app.shuttleglobal.com/${version}\neg:\nhttps://app.shuttleglobal.com/shuttle-1.2.x.js\n\n</code></pre><h3 id=\"6-dec-2021-127\">6 Dec 2021: 1.2.7</h3>\n<p><code>shuttle-1.2.7.js</code> alias <code>shuttle-1.2.X.js</code></p>\n<p><em>New Features</em></p>\n<ul>\n<li><p>Express checkout flow (authenticate)</p>\n</li>\n<li><p>Merchant view auto height resizing</p>\n</li>\n<li><p>Private beta for INLINE checkout rendering</p>\n</li>\n<li><p>Private beta for Apple Pay</p>\n</li>\n</ul>\n<h3 id=\"3-mar-2021-120\">3 Mar 2021: 1.2.0</h3>\n<p><code>shuttle-1.2.0.js</code></p>\n<p><em>New Features</em></p>\n<ul>\n<li><p>Simplified URL structure and naming of <code>shuttle.js</code> (previously <code>payments.js</code>)</p>\n</li>\n<li><p>Support for the new onboarding flow</p>\n</li>\n<li><p>Embed the content of deep links in a</p>\n<p>  , by including <code>data-shuttle-embed</code> attribute</p>\n</li>\n</ul>\n<p><em>Deprecations</em><br />The following methods have been deprecated. They will continue to be supported in 1.2 but will be removed in version 1.3, as such, we recommend moving away from them.</p>\n<ul>\n<li><p><code>Shuttle.doSetup</code>: This UX blends the concepts of account creation / management and gateway configuration, which while faster to build around by a platform doesn't deliver a premium merchant experience. At the expense of an extra API call, the new onboarding flow provides a far more streamlined experience. As this split in functionality is not backward compatible, we decided to deprecate <code>doSetup</code>.</p>\n</li>\n<li><p><code>Shuttle.bindButtons()</code>: This has been replaced by <code>Shuttle.bind()</code> as it also supports inline embeds</p>\n</li>\n</ul>\n<h3 id=\"8-jan-2021-114\">8 Jan 2021: 1.1.4</h3>\n<p><code>payments-1.1.4.min.js</code> alias <code>payments-1.1.X.min.js</code>, <code>payments-1.X.min.js</code></p>\n<p><em>Bug fixes</em></p>\n<ul>\n<li>When a payment was launched in a popup window the \"Show me\" button to focus the popup was also redirecting the child window to \"#\" which broke some sites</li>\n</ul>\n<h3 id=\"23-oct-2020-113\">23 Oct 2020: 1.1.3</h3>\n<p><code>payments-1.1.3.min.js</code></p>\n<p><em>Bug fixes</em></p>\n<ul>\n<li>When passing <code>disable_new_window</code> in some scenarios the overlay text for a new window was still displaying over the payment dialogue</li>\n</ul>\n<h3 id=\"17-sept-2020-112\">17 Sept 2020: 1.1.2</h3>\n<p><code>payments-1.1.2.min.js</code></p>\n<p><em>Bug fixes</em></p>\n<ul>\n<li>Some browsers reporting an \"encoding issue\" when loading the payments-{version}.js file</li>\n</ul>\n<h3 id=\"13-may-2020-111\">13 May 2020: 1.1.1</h3>\n<p><code>payments-1.1.1.min.js</code></p>\n<p><em>Bug fixes</em></p>\n<ul>\n<li>doSetup was manipulating the <code>options</code> object passed into it, causing issues for repeated opening using the same Javascript variable.</li>\n</ul>\n<h3 id=\"27-mar-2020-110\">27 Mar 2020: 1.1.0</h3>\n<p><code>payments-1.1.0.min.js</code></p>\n<p><em>New Features</em></p>\n<ul>\n<li><p>Introduced selectToken, the ability to capture a card details without a transaction, or to update a payment method on an existing contract</p>\n</li>\n<li><p>Added <code>disable_new_window</code> to prevent the dialog launching as a separate browser window when inside an iFrame.</p>\n</li>\n<li><p>Added <code>force_new_window</code> to force the dialog to launch as a separate browser window.</p>\n</li>\n</ul>\n<p><em>Improvements / Updates</em></p>\n<ul>\n<li><p>Updated Javascript namespace to \"Shuttle\"</p>\n</li>\n<li><p>Updated html tags to \"data-shuttle-*\"</p>\n</li>\n<li><p>Renamed <code>skip_receipt</code> =&gt; <code>disable_receipt</code>, <code>no_redirect</code> to <code>disable_redirect</code></p>\n</li>\n<li><p>Improved Javascript messaging, please review all window messages.</p>\n</li>\n</ul>\n<h3 id=\"4-feb-2020-1011-see-api-documentation\">4 Feb 2020: 1.0.11 See: <a href=\"https://documenter.getpostman.com/view/6049226/SzfCU61V\">API documentation</a></h3>\n<p><code>payments-1.0.11.min.js</code> alias <code>payments-1.0.X.min.js</code></p>\n<p><em>New Features</em></p>\n<ul>\n<li>Added MOTO support for doPayment</li>\n</ul>\n","event":[{"listen":"prerequest","script":{"id":"9a6b6373-bbb1-47f8-96c6-1747e011d787","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"df97a4ca-ac8a-4ceb-863d-397ab2fc3ea1","type":"text/javascript","exec":[""]}}],"_postman_id":"232ac3f1-8d9f-4bcf-9dea-c37d812d5da7"}],"id":"b5f50016-d9ac-4765-960e-f73daceef096","description":"<p>This client-side library simplifies embedding onboarding, checkout, tokenisation and deep links into your site. By using our UX components, you are segmenting the card handling part of PCI DSS compliance responsibility away from your platform.</p>\n<p>To use these popovers:</p>\n<p><strong>1. Include the Javascript Library</strong></p>\n<p>Include the following file on all you need to use it:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt;script src=\"https://app.shuttleglobal.com/${shared_key}/${instance_key}/shuttle-1.4.X.js\" type=\"text/javascript\"&gt;&lt;/script&gt;\n\n</code></pre><p>Where:</p>\n<ul>\n<li><p><code>shared_key</code>: is your application's shared key</p>\n</li>\n<li><p><code>instance_key</code>: is the current instance_key</p>\n</li>\n</ul>\n<p>This will take the latest version of the file in the 1.4 branch, to use a specific version (so as not to make minor fixes), you should referencde a specific version eg 1.4.0. Please note, the configuration for the merchant will be embedded in the file, which will prevent you using SRI (resource integrity checksums).  </p>\n<p>If you need to use SRI (integrity checksums), you must reference a specific version of the file eg 1.4.0, and reference the js file without <code>/${shared_key}/${instance_key}</code> so as not to get dynamic content. Due to this, you will not be able to use \"Authenticate\" (express checkout) or \"Credit Messages\" components. You can see the direct links and integrity checksum under <code>UX Components / Shuttle.js / Release Notes</code>.</p>\n<p><strong>2a. Onboarding / Deep Links</strong></p>\n<p>Generate a \"deep link\" server side, with the parameters for what you want to embed. Add a</p>\n<p>to your page with the deep link id, for example. If</p>\n<p>is added to the page AFTER page load, you must then run <code>Shuttle.bind()</code>.</p>\n<p><strong>2b. Payment / Tokenisation: Decide if integrating via DOM Attributes or Javascript</strong></p>\n<p>Using button DOM attributes will bind the popup to the onClick event of the element, for example, the below button will trigger the popup when clicked, this is the recommended approach:</p>\n<p>Note: Button attributes are detected on page load, if you render the button on the page AFTER page load, call <code>Shuttle.bind();</code> after your render cycle.</p>\n<p>Using the Javascript method will launch the popup immediately, however as it is not pre-loaded, will take longer to open, for example, <code>Shuttle.doSetup(options, signature);</code></p>\n<p><strong>3. Payment / Tokenisation: Construct the</strong> <strong><code>options</code></strong> <strong>for the popup</strong></p>\n<p><code>options</code> is a Javascript object containing allowed parameters for the method.</p>\n<p>When using as button attributes, you will need to stringify <code>JSON.stringify(options);</code>. Take care to escape the string, or alternatively you can base64 encode it <code>btoa(JSON.stringify(options));</code>.</p>\n<p><strong>4. Payment / Tokenisation: \"Sign\" the request with a</strong> <strong><code>signature</code></strong></p>\n<p>To manually create a signature, follow the below:</p>\n<ol>\n<li><p>Create a timestamp in ms from 1970 eg <code>new Date().getTime()</code> (it will be a 13 digit number eg 1571677967213)</p>\n</li>\n<li><p>Stringify your <code>options</code>, omitting <code>host</code>, and <code>nonce</code> eg <code>var signatureBody = JSON.stringify(_.omit(options, \"host\", \"nonce\"));</code> ** see tip below</p>\n</li>\n<li><p>MD5 the concatenation of <code>timestamp + methodName + signatureBody + secret_key</code>, where methodName is <code>doSetup</code> or <code>doPayment</code>, and secret_key is your app's secret key from the developer portal</p>\n</li>\n<li><p>Your signature is: <code>shared_key + \"-\" + timestamp + \"-\" + md5</code>, where shared_key is your app's shared key from the developer portal</p>\n</li>\n</ol>\n<p>TIP: JSON does NOT require unicode characters to be escaped and the signature will NOT validate if you escape unicode. When you stringify your options, makes sure for example <code>ø</code> remains <code>ø</code>, and is not converted into <code>\\u00f8</code>. If you are having trouble with this, we also support you stripping out non-alphanumeric from the string when generating a signature, ie for step 2 <code>var signatureBody = JSON.stringify(_.omit(options, \"host\", \"nonce\").replace(/[^a-zA-Z0-9]/g, \"\"));</code></p>\n<p><strong>5. Handle success/cancellation</strong></p>\n<p>If you have a multipage application, use the <code>success_url</code> / <code>cancel_url</code> options when opening popovers and we will direct the browser accordingly, passing key variables in the query params. If you have a single page application or wish to take greater control of navigation, implement event listeners (see \"Window Events\").</p>\n<p>To note, in some cases, the popover may:</p>\n<ul>\n<li><p>Redirect the browser away from the current URL, we will return the user to either <code>success_url</code>, <code>cancel_url</code>, or, if these have not been provided with the current URL (and raise the appropriate dialogue close event). This is done to provide a better UX experience on mobile devices. You can disable this by passing the <code>disable_redirect</code> parameter.</p>\n</li>\n<li><p>Open the popup in a separate browser window rather than integrated into the current window, for example when you run shuttle.js in an iFrame. This is due to security and aesthetics. When your page is iFramed there is a security risk another party can intercept user input, and from UX perspective the popover will be centred in the iFrame rather than the entire browser window. You can disable this passing the <code>disable_new_window</code> parameter, however in doing so, you MUST implement an <code>x-frame-options</code> header of <code>deny</code> or <code>sameorigin</code> on your webpage (see <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options\">here</a>) to meet PCI DSS for your customers.</p>\n</li>\n<li><p>Open a further popup in a separate window, where the user is required to navigate to a third-party website that has a <code>x-frame-options</code> header on it preventing its iFraming if the popover is not the top window (for example some OAUTH processes during setup, or Paypal / GoCardless during payment). You cannot disable this at this stage.</p>\n</li>\n</ul>\n<p>If you are a single page app, the popovers will communicate back to you via client-side Javascript <code>window.postMessage</code> notifications, for instructions on how to catch these, see <a href=\"https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage\">here</a>.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>window.addEventListener(\"message\", function(e) {\n    console.log(\"Event Type: \" + (e.data || {}).message);\n    console.log(\"Event Payload: \" + JSON.stringify(e.data));\n});\n\n</code></pre><p>Each JSFiddle includes an example of catching events.</p>\n","event":[{"listen":"prerequest","script":{"id":"c53b81fd-c048-4828-8db9-7b6ce4dfc7f2","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"e116dada-e953-434c-8d01-5a26d6c81669","type":"text/javascript","exec":[""]}}],"_postman_id":"b5f50016-d9ac-4765-960e-f73daceef096"},{"name":"Apple Pay","item":[],"id":"7d642930-cef7-4865-9828-7fe19e968ea0","description":"<p>Apple Pay is available for Safari and IOS users on various payment processors.</p>\n<p>To use Apple Pay your implementation must be using shuttle-1.3.3.js or later.</p>\n<p>To use Apple Pay, Apple require the HTTP domain hosting the checkout to be verified, this process involves uploading a file to the location:</p>\n<p><code>https://yourdomain/.well-known/apple-developer-merchantid-domain-association</code></p>\n<p>Shuttle helps you manage this process, however you will need to implement the endpoint <code>/.well-known/apple-developer-merchantid-domain-association</code> and use it to return the contents of the following API call:</p>\n<p><code>https://app.shuttleglobal.com/c/api/instances/:instance_key/apple_pay_verification_file/:domain</code></p>\n<p>Please note, your endpoint must be publically accessible and return the content of this file in mimetype <code>plain/text</code>.</p>\n","_postman_id":"7d642930-cef7-4865-9828-7fe19e968ea0"}],"id":"4477a472-3fb3-46b8-a3f1-50f78827ad0b","_postman_id":"4477a472-3fb3-46b8-a3f1-50f78827ad0b","description":""},{"name":"API","item":[{"name":"Accounts","item":[{"name":"List accounts","id":"2c83d80f-ee88-4248-b115-9ea6fd74ee99","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/accounts","description":"<p>This request performs a simple search against <code>account</code> objects:</p>\n<ul>\n<li><p><code>criteria</code>: The search criteria (URL encoded).</p>\n</li>\n<li><p><code>order</code>: The sort you would like to apply</p>\n</li>\n<li><p><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object)</p>\n</li>\n<li><p><code>limit</code>: The maximum records to return</p>\n</li>\n<li><p><code>offset</code>: The offset from the first records to start returning records</p>\n</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>:</p>\n<ul>\n<li><p>id</p>\n</li>\n<li><p>channel</p>\n</li>\n<li><p>company</p>\n</li>\n<li><p>created</p>\n</li>\n<li><p>crm</p>\n</li>\n<li><p>crm_key</p>\n</li>\n<li><p>division</p>\n</li>\n<li><p>email</p>\n</li>\n<li><p>first_name</p>\n</li>\n<li><p>last_name</p>\n</li>\n<li><p>phone</p>\n</li>\n<li><p>tag</p>\n</li>\n<li><p>updated</p>\n</li>\n</ul>\n<p>Expand:</p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>accounts</code></td>\n<td>an array of <code>account</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","accounts"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"5f401184-2941-4441-acf8-5661d86ea9a8","name":"List accounts","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/accounts"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"1742","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 01 Nov 2019 15:40:06 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"hN1hXa1TPuVHQYB0D0fJXQ==-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 9d050fbf11362165fc47c03a14392c36.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"Op4LpUvtYJ3FjRaVuYaFTyqhu1i80FMVI8NZJe-VOz3VLT4ALrP2Ww==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"accounts\": [\n        {\n            \"id\": \"acc_5139_10205\",\n            \"name\": \"Jane Doe\",\n            \"code\": \"CRM-10205\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10205\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-10-21T13:49:09.000Z\",\n            \"first_name\": \"Jane\",\n            \"last_name\": \"Doe\",\n            \"email\": \"jane.doe@email.com\",\n            \"phone\": \"+77000000005\",\n            \"full_address\": \"123 Main st., Apartment 44, Downtown, New York, 70000, NY\",\n            \"address\": {\n                \"line1\": \"123 Main st.\",\n                \"line2\": \"Apartment 44\",\n                \"line3\": \"Downtown\",\n                \"line4\": \"New York\",\n                \"line5\": \"70000\",\n                \"line6\": \"NY\",\n                \"country\": \"US\"\n            },\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"country\": \"global:country\",\n                    \"firstName\": \"Jane\",\n                    \"lastName\": \"Doe\",\n                    \"firstname\": \"global:firstName\",\n                    \"address\": {\n                        \"country\": \"US\",\n                        \"line6\": \"NY\",\n                        \"line5\": \"70000\",\n                        \"line4\": \"New York\",\n                        \"line3\": \"Downtown\",\n                        \"line2\": \"Apartment 44\",\n                        \"line1\": \"123 Main st.\"\n                    },\n                    \"phone\": \"global:phone\",\n                    \"timeZone\": \"Europe/Dublin\",\n                    \"company\": \"Marbles\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"country\": \"US\",\n                    \"country.line1\": \"123 Main st.\",\n                    \"country.line2\": \"Apartment 44\",\n                    \"country.line3\": \"Downtown\",\n                    \"country.line4\": \"New York\",\n                    \"country.line5\": \"70000\",\n                    \"country.line6\": \"NY\",\n                    \"email\": \"jane.doe@email.com\",\n                    \"firstName\": \"Jane\",\n                    \"lastName\": \"Doe\",\n                    \"phone\": \"+77000000005\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"last_transacted\": \"2019-10-21T13:49:28.000Z\",\n            \"last_transaction\": \"tr_5139_10182\"\n        },\n        {\n            \"id\": \"acc_5139_10144\",\n            \"name\": \"David Blane\",\n            \"code\": \"CRM-10144\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10144\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-09-13T14:26:46.000Z\",\n            \"first_name\": \"David\",\n            \"last_name\": \"Blane\",\n            \"email\": \"email2@email.com\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"firstName\": \"David\",\n                    \"lastName\": \"Blane\",\n                    \"firstname\": \"global:firstName\",\n                    \"address\": {\n                        \"country\": \"GB\"\n                    },\n                    \"timeZone\": \"Europe/Dublin\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"email\": \"email2@email.com\",\n                    \"firstName\": \"David\",\n                    \"lastName\": \"Blane\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"last_transacted\": \"2019-09-13T14:26:58.000Z\",\n            \"last_transaction\": \"tr_5139_10122\"\n        },\n        {\n            \"id\": \"acc_5139_10145\",\n            \"name\": \"David Blane\",\n            \"code\": \"CRM-10145\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10145\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-09-13T14:27:09.000Z\",\n            \"first_name\": \"David\",\n            \"last_name\": \"Blane\",\n            \"email\": \"email2@email.com\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"firstName\": \"David\",\n                    \"lastName\": \"Blane\",\n                    \"firstname\": \"global:firstName\",\n                    \"address\": {\n                        \"country\": \"GB\"\n                    },\n                    \"timeZone\": \"Europe/Dublin\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"email\": \"email2@email.com\",\n                    \"firstName\": \"David\",\n                    \"lastName\": \"Blane\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            }\n        },\n        {\n            \"id\": \"acc_5139_10160\",\n            \"code\": \"CRM-ANON-10160\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"ANON-10160\",\n            \"status\": \"TEMP\",\n            \"disconnected_account\": true,\n            \"created\": \"2019-10-01T16:12:15.000Z\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"global\": {\n                    \"timeZone\": \"Europe/London\"\n                }\n            },\n            \"last_transacted\": \"2019-10-01T16:12:17.000Z\",\n            \"last_transaction\": \"tr_5139_10143\"\n        },\n        {\n            \"id\": \"acc_5139_10180\",\n            \"code\": \"CRM-ANON-10180\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"ANON-10180\",\n            \"status\": \"TEMP\",\n            \"disconnected_account\": true,\n            \"created\": \"2019-10-01T17:19:28.000Z\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"global\": {\n                    \"timeZone\": \"Europe/London\"\n                }\n            },\n            \"last_transacted\": \"2019-10-01T17:19:30.000Z\",\n            \"last_transaction\": \"tr_5139_10160\"\n        },\n        {\n            \"id\": \"acc_5139_10060\",\n            \"code\": \"CRM-ANON-10060\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"ANON-10060\",\n            \"status\": \"TEMP\",\n            \"disconnected_account\": true,\n            \"created\": \"2019-09-11T12:38:13.000Z\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [],\n            \"bolton_values\": {\n                \"global\": {\n                    \"timeZone\": \"Europe/London\"\n                }\n            }\n        },\n        {\n            \"id\": \"acc_5139_10200\",\n            \"code\": \"CRM-10200\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10200\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-10-21T13:42:46.000Z\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"timeZone\": \"Europe/Dublin\"\n                },\n                \"global\": {\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"last_transacted\": \"2019-10-21T13:43:44.000Z\",\n            \"last_transaction\": \"tr_5139_10180\"\n        },\n        {\n            \"id\": \"acc_5139_10000\",\n            \"name\": \"James Boer\",\n            \"code\": \"CRM-ID1\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"ID1\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-02-23T14:40:11.000Z\",\n            \"first_name\": \"James\",\n            \"last_name\": \"Boer\",\n            \"email\": \"james@jinkies.com\",\n            \"phone\": \"0712345678\",\n            \"full_address\": \"1 High St, London, W10 6RU\",\n            \"address\": {\n                \"line1\": \"1 High St\",\n                \"line4\": \"London\",\n                \"line5\": \"W10 6RU\",\n                \"country\": \"GB\"\n            },\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"country\": {\n                        \"country\": \"global:country\",\n                        \"line5\": \"global:country.line5\",\n                        \"line4\": \"global:country.line4\",\n                        \"line1\": \"global:country.line1\"\n                    },\n                    \"firstname\": \"global:firstName\",\n                    \"phone\": \"global:phone\",\n                    \"crmkey\": \"ID1\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"country\": \"GB\",\n                    \"country.line1\": \"1 High St\",\n                    \"country.line4\": \"London\",\n                    \"country.line5\": \"W10 6RU\",\n                    \"email\": \"james@jinkies.com\",\n                    \"firstName\": \"James\",\n                    \"lastName\": \"Boer\",\n                    \"phone\": \"0712345678\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            }\n        },\n        {\n            \"id\": \"acc_5139_10120\",\n            \"name\": \"David Blane\",\n            \"code\": \"CRM-xyz1\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"xyz1\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-09-12T14:47:26.000Z\",\n            \"first_name\": \"David\",\n            \"last_name\": \"Blane\",\n            \"email\": \"david@gmail.com\",\n            \"address\": {\n                \"country\": \"GB\"\n            },\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"country\": \"global:country\",\n                    \"firstname\": \"global:firstName\",\n                    \"address\": {\n                        \"country\": \"GB\"\n                    },\n                    \"crmkey\": \"xyz1\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"country\": \"GB\",\n                    \"email\": \"david@gmail.com\",\n                    \"firstName\": \"David\",\n                    \"lastName\": \"Blane\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"last_transacted\": \"2019-09-12T14:48:08.000Z\",\n            \"last_transaction\": \"tr_5139_10100\"\n        },\n        {\n            \"id\": \"acc_5139_10202\",\n            \"name\": \"jane.doe@email.com\",\n            \"code\": \"CRM-10202\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10202\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-10-21T13:47:24.000Z\",\n            \"email\": \"jane.doe@email.com\",\n            \"phone\": \"+77000000005\",\n            \"full_address\": \"123 Main st., Apartment 44, Downtown, New York, 70000, NY\",\n            \"address\": {\n                \"line1\": \"123 Main st.\",\n                \"line2\": \"Apartment 44\",\n                \"line3\": \"Downtown\",\n                \"line4\": \"New York\",\n                \"line5\": \"70000\",\n                \"line6\": \"NY\",\n                \"country\": \"US\"\n            },\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"country\": \"global:country\",\n                    \"address\": {\n                        \"country\": \"US\",\n                        \"line6\": \"NY\",\n                        \"line5\": \"70000\",\n                        \"line4\": \"New York\",\n                        \"line3\": \"Downtown\",\n                        \"line2\": \"Apartment 44\",\n                        \"line1\": \"123 Main st.\"\n                    },\n                    \"phone\": \"global:phone\",\n                    \"timeZone\": \"Europe/Dublin\",\n                    \"company\": \"Marbles\",\n                    \"email\": \"global:email\"\n                },\n                \"global\": {\n                    \"country\": \"US\",\n                    \"country.line1\": \"123 Main st.\",\n                    \"country.line2\": \"Apartment 44\",\n                    \"country.line3\": \"Downtown\",\n                    \"country.line4\": \"New York\",\n                    \"country.line5\": \"70000\",\n                    \"country.line6\": \"NY\",\n                    \"email\": \"jane.doe@email.com\",\n                    \"phone\": \"+77000000005\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"last_transacted\": \"2019-10-21T13:47:38.000Z\",\n            \"last_transaction\": \"tr_5139_10181\"\n        },\n        {\n            \"id\": \"acc_5139_10081\",\n            \"code\": \"CRM-10081\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10081\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-09-11T14:09:16.000Z\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"address\": {\n                        \"country\": \"GB\"\n                    },\n                    \"crmKey\": \"123\",\n                    \"timeZone\": \"Europe/Dublin\"\n                },\n                \"global\": {\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"last_transacted\": \"2019-09-11T14:09:30.000Z\",\n            \"last_transaction\": \"tr_5139_10061\"\n        },\n        {\n            \"id\": \"acc_5139_10121\",\n            \"name\": \"David Blane\",\n            \"code\": \"CRM-account_abc123\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"account_abc123\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-09-12T15:04:41.000Z\",\n            \"first_name\": \"David\",\n            \"last_name\": \"Blane\",\n            \"email\": \"david2@gmail.com\",\n            \"address\": {\n                \"country\": \"GB\"\n            },\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"country\": \"global:country\",\n                    \"firstname\": \"global:firstName\",\n                    \"address\": {\n                        \"country\": \"GB\"\n                    },\n                    \"crmkey\": \"account_abc123\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"country\": \"GB\",\n                    \"email\": \"david2@gmail.com\",\n                    \"firstName\": \"David\",\n                    \"lastName\": \"Blane\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"last_transacted\": \"2019-09-12T15:04:52.000Z\",\n            \"last_transaction\": \"tr_5139_10101\"\n        },\n        {\n            \"id\": \"acc_5139_10040\",\n            \"code\": \"CRM-ANON-10040\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"ANON-10040\",\n            \"status\": \"TEMP\",\n            \"disconnected_account\": true,\n            \"created\": \"2019-08-06T10:15:13.000Z\",\n            \"phone\": \"+447000000000\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"phone\": \"global:phone\"\n                },\n                \"global\": {\n                    \"phone\": \"+447000000000\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"last_transacted\": \"2019-09-11T13:47:15.000Z\",\n            \"last_transaction\": \"tr_5139_10042\"\n        },\n        {\n            \"id\": \"acc_5139_10163\",\n            \"name\": \"John Smith\",\n            \"code\": \"CRM-ANON-10163\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"ANON-10163\",\n            \"status\": \"TEMP\",\n            \"disconnected_account\": true,\n            \"created\": \"2019-10-01T16:25:00.000Z\",\n            \"first_name\": \"John\",\n            \"last_name\": \"Smith\",\n            \"phone\": \"+447985112233\",\n            \"full_address\": \"10 Linden Gardens, LONDON, W2 4ES\",\n            \"address\": {\n                \"line1\": \"10 Linden Gardens\",\n                \"line4\": \"LONDON\",\n                \"line5\": \"W2 4ES\",\n                \"country\": \"GB\"\n            },\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"country\": \"global:country\",\n                    \"firstname\": \"global:firstName\",\n                    \"phone\": \"global:phone\",\n                    \"timeZone\": \"Europe/London\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"country\": \"GB\",\n                    \"country.line1\": \"10 Linden Gardens\",\n                    \"country.line2\": \"\",\n                    \"country.line3\": \"\",\n                    \"country.line4\": \"LONDON\",\n                    \"country.line5\": \"W2 4ES\",\n                    \"firstName\": \"John\",\n                    \"lastName\": \"Smith\",\n                    \"phone\": \"+447985112233\"\n                }\n            },\n            \"tags\": \"ABC123,XYZ789\",\n            \"last_transacted\": \"2019-10-01T16:25:02.000Z\",\n            \"last_transaction\": \"tr_5139_10150\"\n        },\n        {\n            \"id\": \"acc_5139_10141\",\n            \"name\": \"David Blane\",\n            \"code\": \"CRM-ac2\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"ac2\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-09-13T14:25:42.000Z\",\n            \"first_name\": \"David\",\n            \"last_name\": \"Blane\",\n            \"email\": \"email@email.com\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"firstname\": \"global:firstName\",\n                    \"address\": {\n                        \"country\": \"GB\"\n                    },\n                    \"crmkey\": \"ac2\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"email\": \"email@email.com\",\n                    \"firstName\": \"David\",\n                    \"lastName\": \"Blane\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"last_transacted\": \"2019-09-13T14:26:24.000Z\",\n            \"last_transaction\": \"tr_5139_10121\"\n        },\n        {\n            \"id\": \"acc_5139_10203\",\n            \"name\": \"jane.doe@email.com\",\n            \"code\": \"CRM-10203\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10203\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-10-21T13:48:23.000Z\",\n            \"email\": \"jane.doe@email.com\",\n            \"phone\": \"+77000000005\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"address\": {\n                        \"country\": \"US\",\n                        \"line6\": \"NY\",\n                        \"line5\": \"70000\",\n                        \"line4\": \"New York\",\n                        \"line3\": \"Downtown\",\n                        \"line2\": \"Apartment 44\",\n                        \"line1\": \"123 Main st.\"\n                    },\n                    \"phone\": \"global:phone\",\n                    \"timeZone\": \"Europe/Dublin\",\n                    \"company\": \"Marbles\",\n                    \"email\": \"global:email\"\n                },\n                \"global\": {\n                    \"email\": \"jane.doe@email.com\",\n                    \"phone\": \"+77000000005\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            }\n        },\n        {\n            \"id\": \"acc_5139_10204\",\n            \"name\": \"Jane Doe\",\n            \"code\": \"CRM-10204\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10204\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-10-21T13:48:41.000Z\",\n            \"first_name\": \"Jane\",\n            \"last_name\": \"Doe\",\n            \"email\": \"jane.doe@email.com\",\n            \"phone\": \"+77000000005\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"firstName\": \"Jane\",\n                    \"lastName\": \"Doe\",\n                    \"firstname\": \"global:firstName\",\n                    \"address\": {\n                        \"country\": \"US\",\n                        \"line6\": \"NY\",\n                        \"line5\": \"70000\",\n                        \"line4\": \"New York\",\n                        \"line3\": \"Downtown\",\n                        \"line2\": \"Apartment 44\",\n                        \"line1\": \"123 Main st.\"\n                    },\n                    \"phone\": \"global:phone\",\n                    \"timeZone\": \"Europe/Dublin\",\n                    \"company\": \"Marbles\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"email\": \"jane.doe@email.com\",\n                    \"firstName\": \"Jane\",\n                    \"lastName\": \"Doe\",\n                    \"phone\": \"+77000000005\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            }\n        },\n        {\n            \"id\": \"acc_5139_10020\",\n            \"name\": \"James Boer\",\n            \"code\": \"CRM-10020\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10020\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-02-23T22:25:26.000Z\",\n            \"first_name\": \"James\",\n            \"last_name\": \"Boer\",\n            \"email\": \"james@jinkies.com\",\n            \"phone\": \"0712345678\",\n            \"full_address\": \"1 High St, London, W10 6RU\",\n            \"address\": {\n                \"line1\": \"1 High St\",\n                \"line4\": \"London\",\n                \"line5\": \"W10 6RU\",\n                \"country\": \"GB\"\n            },\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"country\": \"global:country\",\n                    \"firstName\": \"James\",\n                    \"lastName\": \"Boer\",\n                    \"firstname\": \"global:firstName\",\n                    \"address\": {\n                        \"country\": \"GB\",\n                        \"line5\": \"W10 6RU\",\n                        \"line4\": \"London\",\n                        \"line1\": \"1 High St\"\n                    },\n                    \"phone\": \"global:phone\",\n                    \"timeZone\": \"Europe/Dublin\",\n                    \"company\": \"Jinky's Lollie Shop\",\n                    \"tag\": \"ID1\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"country\": \"GB\",\n                    \"country.line1\": \"1 High St\",\n                    \"country.line4\": \"London\",\n                    \"country.line5\": \"W10 6RU\",\n                    \"email\": \"james@jinkies.com\",\n                    \"firstName\": \"James\",\n                    \"lastName\": \"Boer\",\n                    \"phone\": \"0712345678\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            }\n        },\n        {\n            \"id\": \"acc_5139_10101\",\n            \"code\": \"CRM-123456\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"123456\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-09-11T19:30:58.000Z\",\n            \"address\": {\n                \"country\": \"GB\"\n            },\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [\n                \"in_5139_10000\"\n            ],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"country\": \"global:country\",\n                    \"address\": {\n                        \"country\": \"GB\"\n                    },\n                    \"crmkey\": \"123456\",\n                    \"timeZone\": \"Europe/Dublin\",\n                    \"tag\": \"123456\"\n                },\n                \"global\": {\n                    \"country\": \"GB\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            },\n            \"tags\": \"Phil's App-SANDBOX-123456\",\n            \"last_transacted\": \"2019-09-11T19:31:57.000Z\",\n            \"last_transaction\": \"tr_5139_10082\"\n        },\n        {\n            \"id\": \"acc_5139_10142\",\n            \"name\": \"David Blane\",\n            \"code\": \"CRM-10142\",\n            \"crm\": \"bo_5139_10004\",\n            \"crm_key\": \"10142\",\n            \"status\": \"ACTIVE\",\n            \"disconnected_account\": false,\n            \"created\": \"2019-09-13T14:25:51.000Z\",\n            \"first_name\": \"David\",\n            \"last_name\": \"Blane\",\n            \"email\": \"email@email.com\",\n            \"address\": {},\n            \"divisions\": [\n                \"div_5139_1\"\n            ],\n            \"channels\": [\n                \"ch_5139_10000\"\n            ],\n            \"initiatives\": [],\n            \"bolton_values\": {\n                \"bo_5139_10004\": {\n                    \"firstName\": \"David\",\n                    \"lastName\": \"Blane\",\n                    \"firstname\": \"global:firstName\",\n                    \"address\": {\n                        \"country\": \"GB\"\n                    },\n                    \"timeZone\": \"Europe/Dublin\",\n                    \"email\": \"global:email\",\n                    \"lastname\": \"global:lastName\"\n                },\n                \"global\": {\n                    \"email\": \"email@email.com\",\n                    \"firstName\": \"David\",\n                    \"lastName\": \"Blane\",\n                    \"timeZone\": \"Europe/Dublin\"\n                }\n            }\n        }\n    ],\n    \"meta\": {\n        \"limit\": 20,\n        \"total\": 35\n    }\n}"}],"_postman_id":"2c83d80f-ee88-4248-b115-9ea6fd74ee99"},{"name":"Get an account","id":"9c6acb29-699a-4fbb-9287-98a05aa71e7d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/accounts/{{account_id}}","description":"<p>Request:</p>\n<p><code>account_id</code> can be one of:</p>\n<ul>\n<li><p><code>id</code>: the id assigned by us</p>\n</li>\n<li><p><code>crm_key</code>: the id assigned by you</p>\n</li>\n</ul>\n<p>Where you can <code>expand</code>:</p>\n<ul>\n<li><code>created_session</code>    </li>\n<li><code>last_transaction</code>    </li>\n<li><code>updated_session</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>the id of the account</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the display name of the account</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>the display id of the account (composed as {crm.code}-{crm-key}</td>\n</tr>\n<tr>\n<td><code>crm</code></td>\n<td>(enterprise) the crm (set of customers) to which the account is connected, in general an instance will only have a single set of customers, however some environement have multiple sets of customers eg ecommerce customers, and accounting platform customers</td>\n</tr>\n<tr>\n<td><code>crm_key</code></td>\n<td>the primary key of the user as defined by the crm (or you on the API)</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>(enterprise) the status of the account, ACTIVE or TEMP</td>\n</tr>\n<tr>\n<td><code>locale</code></td>\n<td>the locale of the user</td>\n</tr>\n<tr>\n<td><code>disconnected_account</code></td>\n<td>(enterprise) if the account is bi-directionally connected with the source CRM</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>the date / time the record was created</td>\n</tr>\n<tr>\n<td><code>created_session</code></td>\n<td>the session the object was created by</td>\n</tr>\n<tr>\n<td><code>first_name</code></td>\n<td>the first name of the account</td>\n</tr>\n<tr>\n<td><code>last_name</code></td>\n<td>the last name of the account</td>\n</tr>\n<tr>\n<td><code>company</code></td>\n<td>the company name</td>\n</tr>\n<tr>\n<td><code>email</code></td>\n<td>the email address of the account</td>\n</tr>\n<tr>\n<td><code>phone</code></td>\n<td>the phone number of the account, generally including a country code</td>\n</tr>\n<tr>\n<td><code>full_address</code></td>\n<td>the address in readable format</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>an address object containing the address</td>\n</tr>\n<tr>\n<td><code>divisions</code></td>\n<td>(enterprise) a list of division the account has interacted with, and is accessible to</td>\n</tr>\n<tr>\n<td><code>channels</code></td>\n<td>(enterprise) a list of channels/ touchpoints the account has been active over</td>\n</tr>\n<tr>\n<td><code>initiatives</code></td>\n<td>(enterprise) a list of initiative (purchase types) the account has transacted with</td>\n</tr>\n<tr>\n<td><code>bolton_values</code></td>\n<td>(enterprise) custom fields held by vaious modules and extensions on the user</td>\n</tr>\n<tr>\n<td><code>tags</code></td>\n<td>a CSV of tags / references on the user (for searching)</td>\n</tr>\n<tr>\n<td><code>timezone</code></td>\n<td>the timezone of the user in IANA format</td>\n</tr>\n<tr>\n<td><code>last_transacted</code></td>\n<td>the date / time of last transaction</td>\n</tr>\n<tr>\n<td><code>last_transaction</code></td>\n<td>the most recent transaction / transaction attempt</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>the date / time the record was updated</td>\n</tr>\n<tr>\n<td><code>updated_session</code></td>\n<td>the session the object was updated by</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the record</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>address</code> contains:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>line1</code></td>\n<td>the first line of the address</td>\n</tr>\n<tr>\n<td><code>line2</code></td>\n<td>the second line of the address</td>\n</tr>\n<tr>\n<td><code>line3</code></td>\n<td>the third line of the address</td>\n</tr>\n<tr>\n<td><code>line4</code></td>\n<td>the city / town</td>\n</tr>\n<tr>\n<td><code>line5</code></td>\n<td>the postcode / zip</td>\n</tr>\n<tr>\n<td><code>line6</code></td>\n<td>the state / region - generally this will contain an ISO identifier eg CA = California</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>the country in ISO format eg US = USA</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","accounts","{{account_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"333b8e26-1ebe-4e5f-8c0f-eaab1f2dbd48","name":"Get an account","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/accounts/{{account_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"453","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 01 Oct 2019 16:43:22 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"3d9-39fca724-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 c72aed82acf017b1476dc574b8d5da80.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C3","enabled":true},{"key":"X-Amz-Cf-Id","value":"jNCNXryLNLKJYa1wlhX4meCKKW_jz8VMM9Prk8IdJw2EQXUg21kxFQ==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"account\": {\n        \"id\": \"acc_5139_10163\",\n        \"name\": \"John Smith\",\n        \"code\": \"CRM-ANON-10163\",\n        \"crm\": \"bo_5139_10004\",\n        \"crm_key\": \"ANON-10163\",\n        \"status\": \"TEMP\",\n        \"disconnected_account\": true,\n        \"created\": \"2019-10-01T16:25:00.000Z\",\n        \"first_name\": \"John\",\n        \"last_name\": \"Smith\",\n        \"phone\": \"+447985112233\",\n        \"full_address\": \"10 Linden Gardens, LONDON, W2 4ES\",\n        \"address\": {\n            \"line1\": \"10 Linden Gardens\",\n            \"line4\": \"LONDON\",\n            \"line5\": \"W2 4ES\",\n            \"country\": \"GB\"\n        },\n        \"divisions\": [\n            \"div_5139_1\"\n        ],\n        \"channels\": [\n            \"ch_5139_10000\"\n        ],\n        \"initiatives\": [\n            \"in_5139_10000\"\n        ],\n        \"bolton_values\": {\n            \"bo_5139_10004\": {\n                \"country\": \"global:country\",\n                \"firstname\": \"global:firstName\",\n                \"phone\": \"global:phone\",\n                \"timeZone\": \"Europe/London\",\n                \"lastname\": \"global:lastName\"\n            },\n            \"global\": {\n                \"country\": \"GB\",\n                \"country.line1\": \"10 Linden Gardens\",\n                \"country.line2\": \"\",\n                \"country.line3\": \"\",\n                \"country.line4\": \"LONDON\",\n                \"country.line5\": \"W2 4ES\",\n                \"firstName\": \"John\",\n                \"lastName\": \"Smith\",\n                \"phone\": \"+447985112233\"\n            }\n        },\n        \"tags\": \"ABC123,XYZ789\",\n        \"last_transacted\": \"2019-10-01T16:25:02.000Z\",\n        \"last_transaction\": \"tr_5139_10150\"\n    }\n}"}],"_postman_id":"9c6acb29-699a-4fbb-9287-98a05aa71e7d"},{"name":"Update an account","id":"195fe590-1361-4a32-8cc7-d98654ee0a05","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"account\": {\n        \"first_name\": \"John\",\n        \"last_name\": \"Smith\",\n        \"email\": \"john.smith@gmail.com\",\n        \"phone\": \"447000000000\",\n        \"address\": {\n            \"line1\": \"1 High St\",\n            \"line5\": \"90000\",\n            \"line6\": \"CA\",\n            \"country\": \"US\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/accounts/{{account_id}}","description":"<p>Update an existing account.</p>\n<ul>\n<li><code>{{account_id}}</code> can be either ID, or crm_key (take care to escape appropriately if it contains non URL safe characters)</li>\n</ul>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>The changes to make to the account. In general not passing a value will leave it unchanged, where passing null, or empty string will blank a value</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>account</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>first_name</code></td>\n<td>the first name of the account</td>\n</tr>\n<tr>\n<td><code>last_name</code></td>\n<td>the last name of the account</td>\n</tr>\n<tr>\n<td><code>company</code></td>\n<td>the company name</td>\n</tr>\n<tr>\n<td><code>email</code></td>\n<td>the email address of the account</td>\n</tr>\n<tr>\n<td><code>phone</code></td>\n<td>the phone number of the account, generally including a country code</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>an address object containing the address</td>\n</tr>\n<tr>\n<td><code>tags</code></td>\n<td>a CSV of tags / references on the user (for searching)</td>\n</tr>\n<tr>\n<td><code>locale</code></td>\n<td>the locale of the user</td>\n</tr>\n<tr>\n<td><code>timezone</code></td>\n<td>the timezone of the user in IANA format</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>address</code> contains:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>line1</code></td>\n<td>the first line of the address</td>\n</tr>\n<tr>\n<td><code>line2</code></td>\n<td>the second line of the address</td>\n</tr>\n<tr>\n<td><code>line3</code></td>\n<td>the third line of the address</td>\n</tr>\n<tr>\n<td><code>line4</code></td>\n<td>the city / town</td>\n</tr>\n<tr>\n<td><code>line5</code></td>\n<td>the postcode / zip</td>\n</tr>\n<tr>\n<td><code>line6</code></td>\n<td>the state / region - generally this will contain an ISO identifier eg CA = California</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>the country in ISO format eg US = USA</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>the updated account object (see get <code>account</code>)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","accounts","{{account_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"d8313f34-a8fe-41d0-b34e-2ae2d3f95cc6","name":"Update an account","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"account\": {\n        \"first_name\": \"John\",\n        \"last_name\": \"Smith\",\n        \"email\": \"john.smith@gmail.com\",\n        \"phone\": \"447000000000\",\n        \"address\": {\n            \"line1\": \"1 High St\",\n            \"line5\": \"90000\",\n            \"line6\": \"CA\",\n            \"country\": \"US\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/accounts/{{account_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"891","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 14 Dec 2023 13:09:54 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"X-Powered-By","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 ccf34ecc11e5579d8083b17d9d39a622.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"m8VZJ-i3hBrUoEA0ZW42OeRHQTjYyqew-LXj8IWeeqItXmfZMAlhQQ==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"account\": {\n        \"id\": \"acc_11842_10041\",\n        \"name\": \"John Smith\",\n        \"code\": \"CRM-ANON-10041\",\n        \"crm\": \"bo_11842_9999\",\n        \"crm_key\": \"ANON-10041\",\n        \"status\": \"TEMP\",\n        \"disconnected_account\": true,\n        \"created\": \"2023-07-28T15:51:45.000Z\",\n        \"updated\": \"2023-12-14T13:09:54.000Z\",\n        \"first_name\": \"John\",\n        \"last_name\": \"Smith\",\n        \"email\": \"john.smith@gmail.com\",\n        \"phone\": \"447000000000\",\n        \"full_address\": \"1 High St, 90000, CA\",\n        \"address\": {\n            \"line1\": \"1 High St\",\n            \"line5\": \"90000\",\n            \"line6\": \"CA\",\n            \"country\": \"US\"\n        },\n        \"divisions\": [\n            \"div_11842_1\"\n        ],\n        \"channels\": [\n            \"ch_11842_9999\"\n        ],\n        \"initiatives\": [],\n        \"bolton_values\": {\n            \"global\": {\n                \"country\": \"US\",\n                \"country.line1\": \"1 High St\",\n                \"country.line5\": \"90000\",\n                \"country.line6\": \"CA\",\n                \"email\": \"john.smith@gmail.com\",\n                \"firstName\": \"John\",\n                \"lastName\": \"Smith\",\n                \"phone\": \"447000000000\"\n            },\n            \"bo_11842_9999\": {\n                \"country\": \"global:country\",\n                \"firstname\": \"global:firstName\",\n                \"phone\": \"global:phone\",\n                \"email\": \"global:email\",\n                \"lastname\": \"global:lastName\"\n            }\n        },\n        \"v\": 3\n    }\n}"}],"_postman_id":"195fe590-1361-4a32-8cc7-d98654ee0a05"},{"name":"Create an account","id":"2f87085b-67cc-44b0-94d1-b9ca4a49fac4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"account\": {\n        \"crm_key\": \"AC-102\",\n        \"first_name\": \"John\",\n        \"last_name\": \"Doe\",\n        \"email\": \"john.doe@gmail.com\",\n        \"phone\": \"447000000000\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/accounts","description":"<p>Create a new account.</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>The new account.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>account</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>crm_key</code></td>\n<td>your identifier for the account</td>\n</tr>\n<tr>\n<td><code>first_name</code></td>\n<td>the first name of the account</td>\n</tr>\n<tr>\n<td><code>last_name</code></td>\n<td>the last name of the account</td>\n</tr>\n<tr>\n<td><code>company</code></td>\n<td>the company name</td>\n</tr>\n<tr>\n<td><code>email</code></td>\n<td>the email address of the account</td>\n</tr>\n<tr>\n<td><code>phone</code></td>\n<td>the phone number of the account, generally including a country code</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>an address object containing the address</td>\n</tr>\n<tr>\n<td><code>tags</code></td>\n<td>a CSV of tags / references on the user (for searching)</td>\n</tr>\n<tr>\n<td><code>locale</code></td>\n<td>the locale of the user</td>\n</tr>\n<tr>\n<td><code>timezone</code></td>\n<td>the timezone of the user in IANA format</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>address</code> contains:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>line1</code></td>\n<td>the first line of the address</td>\n</tr>\n<tr>\n<td><code>line2</code></td>\n<td>the second line of the address</td>\n</tr>\n<tr>\n<td><code>line3</code></td>\n<td>the third line of the address</td>\n</tr>\n<tr>\n<td><code>line4</code></td>\n<td>the city / town</td>\n</tr>\n<tr>\n<td><code>line5</code></td>\n<td>the postcode / zip</td>\n</tr>\n<tr>\n<td><code>line6</code></td>\n<td>the state / region - generally this will contain an ISO identifier eg CA = California</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>the country in ISO format eg US = USA</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>the created account object (see get <code>account</code>)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","accounts"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"8394eb44-00c8-4c1d-8ba8-42c15b3a55ad","name":"Create an account","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"account\": {\n        \"crm_key\": \"AC-102\",\n        \"first_name\": \"John\",\n        \"last_name\": \"Doe\",\n        \"email\": \"john.doe@gmail.com\",\n        \"phone\": \"447000000000\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/accounts"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"679","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 14 Dec 2023 13:18:21 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"X-Powered-By","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 e3a3222dda94bf85391afafbb462043c.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"lUQvO4iWXcUhvvpiud6UsoU8396gJCWaKVJRUfVMEc7FxaqpmvpmRw==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"account\": {\n        \"id\": \"acc_11842_10042\",\n        \"name\": \"John Doe\",\n        \"code\": \"CRM-AC-102\",\n        \"crm\": \"bo_11842_9999\",\n        \"crm_key\": \"AC-102\",\n        \"status\": \"ACTIVE\",\n        \"disconnected_account\": false,\n        \"created\": \"2023-12-14T13:18:21.000Z\",\n        \"updated\": \"2023-12-14T13:18:21.000Z\",\n        \"first_name\": \"John\",\n        \"last_name\": \"Doe\",\n        \"email\": \"john.doe@gmail.com\",\n        \"phone\": \"447000000000\",\n        \"address\": {},\n        \"divisions\": [\n            \"div_11842_1\"\n        ],\n        \"channels\": [\n            \"ch_11842_10001\"\n        ],\n        \"initiatives\": [],\n        \"bolton_values\": {\n            \"global\": {\n                \"email\": \"john.doe@gmail.com\",\n                \"firstName\": \"John\",\n                \"lastName\": \"Doe\",\n                \"phone\": \"447000000000\"\n            },\n            \"bo_11842_9999\": {\n                \"crmkey\": \"AC-102\",\n                \"firstname\": \"global:firstName\",\n                \"phone\": \"global:phone\",\n                \"email\": \"global:email\",\n                \"lastname\": \"global:lastName\"\n            }\n        },\n        \"v\": 2\n    }\n}"}],"_postman_id":"2f87085b-67cc-44b0-94d1-b9ca4a49fac4"}],"id":"2de1956b-8e66-47ae-b318-505fa48bf822","_postman_id":"2de1956b-8e66-47ae-b318-505fa48bf822","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Charges","item":[{"name":"List charges","id":"bc4afe53-99d5-4026-ba1e-f2fc8f63873a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/charges?criteria=contract%3d{{contract_id}}","description":"<p>This request performs a simple search against <code>charge</code> objects:</p>\n<ul>\n<li><code>criteria</code>: The search criteria (URL encoded).</li>\n<li><code>order</code>: The sort you would like to apply</li>\n<li><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object) </li>\n<li><code>limit</code>: The maximum records to return </li>\n<li><code>offset</code>: The offset from the first records to start returning records</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>: </p>\n<ul>\n<li>id</li>\n<li>contract</li>\n<li>created</li>\n<li>due</li>\n<li>outstanding_amount</li>\n<li>recurring: \"Y\" (true) \"N\" (false)</li>\n<li>status</li>\n<li>updated</li>\n</ul>\n<p>Expand: </p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>charges</code></td>\n<td>an array of <code>charge</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","charges"],"host":["app","shuttleglobal","com"],"query":[{"key":"criteria","value":"contract%3d{{contract_id}}"}],"variable":[]}},"response":[{"id":"6134f5c1-e2ba-46d2-958e-c0bce58b35e2","name":"List charges","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/charges?criteria=contract%3d{{contract_id}}","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","charges"],"query":[{"key":"criteria","value":"contract%3d{{contract_id}}"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"579","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 03 Jan 2020 17:36:10 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"+uDsID8B/4V01YZwSY9qfA==-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 00a6901a148285ca8b56f0d0c1104a48.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"EWR52-C4","enabled":true},{"key":"X-Amz-Cf-Id","value":"VPDlP96ulKtVl6fnqQ-JRQVOCUFL4ThL8RZk-NNY9Q7M0eK4XFRYag==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"charges\": [\n        {\n            \"id\": \"cg_5139_10120\",\n            \"amount\": \"10\",\n            \"code\": \"00010120\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-08-27T12:12:14.000Z\",\n            \"due\": \"2019-08-27T12:12:14.000Z\",\n            \"initiated\": \"2019-08-27T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-08-27T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10300\",\n            \"amount\": \"10\",\n            \"code\": \"00010300\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-09-24T12:12:14.000Z\",\n            \"due\": \"2019-09-24T12:12:14.000Z\",\n            \"initiated\": \"2019-09-24T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-09-24T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10140\",\n            \"amount\": \"10\",\n            \"code\": \"00010140\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-09-03T12:12:14.000Z\",\n            \"due\": \"2019-09-03T12:12:14.000Z\",\n            \"initiated\": \"2019-09-03T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-09-03T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10280\",\n            \"amount\": \"10\",\n            \"code\": \"00010280\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-09-17T12:12:14.000Z\",\n            \"due\": \"2019-09-17T12:12:14.000Z\",\n            \"initiated\": \"2019-09-17T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-09-17T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10400\",\n            \"amount\": \"10\",\n            \"code\": \"00010400\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-10-15T12:12:14.000Z\",\n            \"due\": \"2019-10-15T12:12:14.000Z\",\n            \"initiated\": \"2019-10-15T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-10-15T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10500\",\n            \"amount\": \"10\",\n            \"code\": \"00010500\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-11-12T12:12:14.000Z\",\n            \"due\": \"2019-11-12T12:12:14.000Z\",\n            \"initiated\": \"2019-11-12T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-11-12T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10480\",\n            \"amount\": \"10\",\n            \"code\": \"00010480\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-11-05T12:12:14.000Z\",\n            \"due\": \"2019-11-05T12:12:14.000Z\",\n            \"initiated\": \"2019-11-05T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-11-05T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10080\",\n            \"amount\": \"10\",\n            \"code\": \"00010080\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-08-13T12:12:14.000Z\",\n            \"due\": \"2019-08-13T12:12:14.000Z\",\n            \"initiated\": \"2019-08-13T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-08-13T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10042\",\n            \"amount\": \"10\",\n            \"code\": \"00010042\",\n            \"completed\": \"2019-08-06T12:12:15.000Z\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-08-06T12:12:14.000Z\",\n            \"due\": \"2019-08-06T12:12:14.000Z\",\n            \"initiated\": \"2019-08-06T12:12:14.000Z\",\n            \"paid_amount\": \"10\",\n            \"status\": \"COMPLETED\",\n            \"updated\": \"2019-08-06T12:12:18.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10320\",\n            \"amount\": \"10\",\n            \"code\": \"00010320\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-10-01T12:12:14.000Z\",\n            \"due\": \"2019-10-01T12:12:14.000Z\",\n            \"initiated\": \"2019-10-01T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-10-01T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10460\",\n            \"amount\": \"10\",\n            \"code\": \"00010460\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-10-29T12:12:14.000Z\",\n            \"due\": \"2019-10-29T12:12:14.000Z\",\n            \"initiated\": \"2019-10-29T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-10-29T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10100\",\n            \"amount\": \"10\",\n            \"code\": \"00010100\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-08-20T12:12:14.000Z\",\n            \"due\": \"2019-08-20T12:12:14.000Z\",\n            \"initiated\": \"2019-08-20T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-08-20T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10380\",\n            \"amount\": \"10\",\n            \"code\": \"00010380\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-10-08T12:12:14.000Z\",\n            \"due\": \"2019-10-08T12:12:14.000Z\",\n            \"initiated\": \"2019-10-08T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-10-08T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10160\",\n            \"amount\": \"10\",\n            \"code\": \"00010160\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-09-10T12:12:14.000Z\",\n            \"due\": \"2019-09-10T12:12:14.000Z\",\n            \"initiated\": \"2019-09-10T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-09-10T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        },\n        {\n            \"id\": \"cg_5139_10440\",\n            \"amount\": \"10\",\n            \"code\": \"00010440\",\n            \"contract\": \"co_5139_10042\",\n            \"created\": \"2019-10-22T12:12:14.000Z\",\n            \"due\": \"2019-10-22T12:12:14.000Z\",\n            \"initiated\": \"2019-10-22T12:12:14.000Z\",\n            \"overdue_amount\": \"10\",\n            \"paid_amount\": \"0\",\n            \"status\": \"ACTIVE\",\n            \"updated\": \"2019-10-22T12:12:14.000Z\",\n            \"writtenoff_amount\": \"0\"\n        }\n    ],\n    \"meta\": {\n        \"limit\": 20,\n        \"total\": 15\n    }\n}"}],"_postman_id":"bc4afe53-99d5-4026-ba1e-f2fc8f63873a"},{"name":"Get a charge","id":"c06e6a05-9363-4e10-984e-b343bd03fee0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/charges/{{charge_id}}","description":"<p>Request:</p>\n<p>You can <code>expand</code> the following fields:</p>\n<ul>\n<li><code>contract</code></li>\n<li><code>created_session</code>    </li>\n<li><code>updated_session</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>the id of the contract</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>the amount of the charge as a string</td>\n</tr>\n<tr>\n<td><code>alt_key</code></td>\n<td>your supplied key for the charge (eg invoice id)</td>\n</tr>\n<tr>\n<td><code>charge_number</code></td>\n<td>which charge this is in a recurring contract eg <code>1</code> for the first , <code>2</code> for second</td>\n</tr>\n<tr>\n<td><code>extra_charge</code></td>\n<td>if this charge was manually created</td>\n</tr>\n<tr>\n<td><code>completed</code></td>\n<td>when the charge was completed</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this charge belongs to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the charge was created</td>\n</tr>\n<tr>\n<td><code>created_session</code></td>\n<td>the session the object was created by</td>\n</tr>\n<tr>\n<td><code>due</code></td>\n<td>when the charge is due to be paid</td>\n</tr>\n<tr>\n<td><code>initiated</code></td>\n<td>when the charge was instructed (generally the same as when created if created)</td>\n</tr>\n<tr>\n<td><code>outstanding_amount</code></td>\n<td>the amount that has been paid as a string</td>\n</tr>\n<tr>\n<td><code>overdue_amount</code></td>\n<td>DEPRECATED - do not use</td>\n</tr>\n<tr>\n<td><code>recurring</code></td>\n<td>if this charge is part of a recurring contract</td>\n</tr>\n<tr>\n<td><code>paid_amount</code></td>\n<td>the amount that has been paid as a string</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the charge</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>when the charge was last modified, this will generally be when the most recent payment was attempted rather than any user action</td>\n</tr>\n<tr>\n<td><code>updated_session</code></td>\n<td>the session the object was updated by</td>\n</tr>\n<tr>\n<td><code>writtenoff_amount</code></td>\n<td>the amount that has been written_off as a string</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the record</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ACTIVE</code></td>\n<td>The charge has been raised but not yet fully paid</td>\n</tr>\n<tr>\n<td><code>PENDING</code></td>\n<td>The charge has been paid, however the transaction is still pending confirmation, once the payment is confirmed it will transition to <code>COMPLETED</code> (if the charge is now fully paid) or (<code>ACTIVE</code> if the payment is declined or charge not fully paid)</td>\n</tr>\n<tr>\n<td><code>COMPLETED</code></td>\n<td>The charge has been fully paid.</td>\n</tr>\n<tr>\n<td><code>WRITTENOFF</code></td>\n<td>The charge has been fully or partially written off</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","charges","{{charge_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"d828c74e-9fc3-4156-b7c9-8ab5d33621f9","name":"Get a charge","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/charges/{{charge_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"178","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 03 Jan 2020 17:37:51 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"140-aa83a08f-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 00a6901a148285ca8b56f0d0c1104a48.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"EWR52-C4","enabled":true},{"key":"X-Amz-Cf-Id","value":"UqNaDZHR78mCgtfl28Vwrxz-9VswyGNdU3c-7Wy6pO02IGJP-JB7Hw==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"charge\": {\n        \"id\": \"cg_5139_10120\",\n        \"amount\": \"10\",\n        \"code\": \"00010120\",\n        \"contract\": \"co_5139_10042\",\n        \"created\": \"2019-08-27T12:12:14.000Z\",\n        \"due\": \"2019-08-27T12:12:14.000Z\",\n        \"initiated\": \"2019-08-27T12:12:14.000Z\",\n        \"overdue_amount\": \"10\",\n        \"paid_amount\": \"0\",\n        \"status\": \"ACTIVE\",\n        \"updated\": \"2019-08-27T12:12:14.000Z\",\n        \"writtenoff_amount\": \"0\"\n    }\n}"}],"_postman_id":"c06e6a05-9363-4e10-984e-b343bd03fee0"},{"name":"Update a charge","id":"c8452067-a11a-4a3d-b5b5-9c0250eb52f0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"charge\": {\n\t\t\"contract\": \"{{contract_id}}\",\n\t\t\"amount\": \"15\",\n\t\t\"due\": \"2020-01-27T12:00:00.000Z\"\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/charges/{{charge_id}}","description":"<p>When updating a charge, only several properties can be changed. They can be updated individually or altogether.</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>status</code></td>\n<td>You can toggle if the charge is written off by switching between <code>ACTIVE</code> or <code>WRITTENOFF</code></td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>the new amount due, this cannot be less than the amount already paid</td>\n</tr>\n<tr>\n<td><code>due</code></td>\n<td>when the charge is due, note, if this is in the past a payment may be taken immediately</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<p>Updated <code>charge</code> object</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","charges","{{charge_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[],"_postman_id":"c8452067-a11a-4a3d-b5b5-9c0250eb52f0"}],"id":"8ba4f586-3afd-462e-a2fe-dfd32539bd1a","description":"<p>A charge is an invoice on a contract. A monthly recurring contract for example would have a new charge each month. </p>\n","event":[{"listen":"prerequest","script":{"id":"00ab9ff3-5e4a-4ca4-874c-17a5e41d64ce","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"96aec599-7184-4c35-b4d2-e16c9b8fbee6","type":"text/javascript","exec":[""]}}],"_postman_id":"8ba4f586-3afd-462e-a2fe-dfd32539bd1a","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Checkouts","item":[{"name":"Create a checkout","id":"22769654-9feb-47cb-9dd4-2ffd744921e3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"checkout\": {\n        \"options\": {\n            \"title\": \"Invoice 1234\",\n            \"currency\": \"EUR\",\n            \"amount\": \"100\",\n            \"alt_key\": \"1234\",\n            \"description\": \"Invoice 1234\",\n            \"account\": {\n                \"crmkey\": \"A00001\",\n                \"first_name\": \"Jane\",\n                \"last_name\": \"Doe\",\n                \"company\": \"Marbles\",\n                \"email\": \"jane.doe@email.com\",\n                \"phone\": \"+77000000005\",\n                \"address\": {\n                    \"country\": \"US\",\n                    \"line1\": \"123 Main st.\",\n                    \"line2\": \"Apartment 44\",\n                    \"line3\": \"Downtown\",\n                    \"line4\": \"New York\",\n                    \"line5\": \"70000\",\n                    \"line6\": \"NY\"\n                }\n            }\n        }\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/checkouts","description":"<p>The \"checkout\" endpoint allows you to generate a hosted checkout that can be embedded via iFrame in a page via \"shuttle.js\", it accepts the same parameters as create a hosted URL.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>...IMPORTANT...</code></td>\n<td>all options from <a href=\"https://api.shuttleglobal.com/#fe184f65-c12c-41c0-84cc-34e6b611a13b\"><code>Create a Payment</code></a> API, other than <code>payment_method</code></td>\n</tr>\n<tr>\n<td><code>checkout_text</code></td>\n<td>(optional) Additional text to describe the payment to the user, this will be displayed below the amount to be paid</td>\n</tr>\n<tr>\n<td><code>default_currency</code></td>\n<td>(optional) if you dont pass a currency, currency will be selectable - this allows you to default the value</td>\n</tr>\n<tr>\n<td><code>default_amount</code></td>\n<td>(optional) if you dont pass an amount, amount will be enterable (eg if you want to allow part payment) - this allows you to default the value</td>\n</tr>\n<tr>\n<td><code>default_save_card</code></td>\n<td>(optional) boolean true / false - default \"save card\" as selected or deselected, note recurring payments do not allow deselecting save card</td>\n</tr>\n<tr>\n<td><code>disable_confirm</code></td>\n<td>(optional) set to <code>true</code> if you want to remove the confirmation step during checkout.</td>\n</tr>\n<tr>\n<td><code>disable_receipt</code></td>\n<td>(default: false) if <code>true</code> the payment dialogue will be dismissed on successful payment rather than receipt being displayed</td>\n</tr>\n<tr>\n<td><code>force_add</code></td>\n<td>(optional) disable the selecting of an existing payment method, and only allow the addition of a new payment method</td>\n</tr>\n<tr>\n<td><code>hide_save_card_toggle</code></td>\n<td>(optional) suppress displaying the checkbox displaying if a card is going to be saved</td>\n</tr>\n<tr>\n<td><code>locale</code></td>\n<td>(optional) the 2 letter language code or full locale (eg <code>en</code> or <code>en_US</code>). If you pass this, this locale will be used in the checkout process, otherwise it will use the browsers locale, or IP lookup where no browser locale. If the language is not available, the <code>default</code> language will be returned. Typically this is English, however you can customise it.</td>\n</tr>\n<tr>\n<td><code>logo_url</code></td>\n<td>(optional) the logo to use at the top of the screen, you can set this to <code>false</code> to disable the logo, or a HTTPS url</td>\n</tr>\n<tr>\n<td><code>logo_offset</code></td>\n<td>(optional) if set to <code>true</code> the logo to use at the top of the screen will be displayed slightly larger, vertically centered around the top of the popup. Please note it requires the use of an appropriate image.</td>\n</tr>\n<tr>\n<td><code>payment_method_type</code></td>\n<td>(optional) restrict the forms of payment available to the user eg [\"CARDS\"] or [\"ACH\",\"SEPA\"]</td>\n</tr>\n<tr>\n<td><code>save_card</code></td>\n<td>(optional) boolean true / false - force saving a card (true) or force NOT saving a card (false</td>\n</tr>\n<tr>\n<td><code>style</code></td>\n<td>(optional) <code>DEFAULT</code> or <code>INLINE</code> , <code>DEFAULT</code> will present a modal popup and <code>INLINE</code> will render the payment capture area within the div marked by attribute <code>parent</code></td>\n</tr>\n<tr>\n<td><code>success_url</code></td>\n<td>(optional) the URL to direct the user to on completion of a successful payment. This will be followed when the payment dialogue is closed (if using as a popover) or after the receipt screen if hosted process.</td>\n</tr>\n<tr>\n<td><code>timezone</code></td>\n<td>(optional) if you want to override the timezone when localising date/times, by default date/times will be adjusted for the browsers timezone. This should be passed as a TZ database name record (<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>) eg \"Africa/Abidjan\"</td>\n</tr>\n<tr>\n<td><code>title</code></td>\n<td>(optional) The label to use in the header of the checkout dialogue</td>\n</tr>\n</tbody>\n</table>\n</div><p>The following fields from the payment API are not available or have an altered meaning during a hosted process:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>payment_method</code></td>\n<td>you cannot pass the payment method into a hosted process</td>\n</tr>\n<tr>\n<td><code>success_url</code></td>\n<td>3d secure is managed by the hosted process, this field has been repurposed for redirecting the user after a payment (see above)</td>\n</tr>\n<tr>\n<td><code>cancel_url</code></td>\n<td>3d secure is managed by the hosted process, and as such this field has no affect</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","checkouts"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"ac5fa61c-2991-4c01-a910-055cb3d55c0b","name":"Create a hosted payment URL","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"payment\": {\n\t    \"title\": \"Invoice 1234\",\n\t    \"currency\": \"EUR\",\n\t    \"amount\": \"100\",\n\t    \"alt_key\": \"1234\",\n\t    \"description\": \"Invoice 1234\",\n\t    \"account\": {\n\t        \"crmkey\": \"A00001\",\n\t        \"first_name\": \"Jane\",\n\t        \"last_name\": \"Doe\",\n\t        \"company\": \"Marbles\",\n\t        \"email\": \"jane.doe@email.com\",\n\t        \"phone\": \"+77000000005\",\n\t        \"address\": {\n\t            \"country\": \"US\",\n\t            \"line1\": \"123 Main st.\",\n\t            \"line2\": \"Apartment 44\",\n\t            \"line3\": \"Downtown\",\n\t            \"line4\": \"New York\",\n\t            \"line5\": \"70000\",\n\t            \"line6\": \"NY\"\n\t        }\n\t    }\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_url"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"614","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Mon, 21 Oct 2019 13:53:50 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 e92192d46c302f80eb31c448bf9ad7d6.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"Z3rvvOGqpPNTEWVtJw2pM_zghpreQ6yrvGD94dU_OQGo9j7QaNAKAg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"url\": \"https://payments-1550852543.withbolt.com/c/web/#/api/payment/eyJob3N0IjoiaHR0cHM6Ly9wYXltZW50cy53aXRoYm9sdC5jb20iLCJub25jZSI6ImJjYjIxN2VmLWQ4MWItNGRkNS1hMDY2LTRiYmUzZmI4ZmE0NyIsImNoYW5uZWxLZXkiOiJ3ZWIiLCJjcm0iOnsiYWRkcmVzcyI6eyJjb3VudHJ5IjoiVVMiLCJsaW5lMSI6IjEyMyBNYWluIHN0LiIsImxpbmUyIjoiQXBhcnRtZW50IDQ0IiwibGluZTMiOiJEb3dudG93biIsImxpbmU0IjoiTmV3IFlvcmsiLCJsaW5lNSI6IjcwMDAwIiwibGluZTYiOiJOWSJ9LCJjcm1rZXkiOiJBMDAwMDEiLCJmaXJzdG5hbWUiOiJKYW5lIiwibGFzdG5hbWUiOiJEb2UiLCJjb21wYW55IjoiTWFyYmxlcyIsImVtYWlsIjoiamFuZS5kb2VAZW1haWwuY29tIiwicGhvbmUiOiIrNzcwMDAwMDAwMDUifSwiaW5zdGFuY2VLZXkiOiIyMjIyMiIsImFsdEtleSI6IjEyMzQiLCJjdXJyZW5jeSI6IkVVUiIsImFtb3VudCI6IjEwMCIsImNoYW5uZWxUaXRsZSI6Ikludm9pY2UgMTIzNCIsIm9yZGVyRGVzYyI6Ikludm9pY2UgMTIzNCIsImlzQ3VzdG9tZXJQcmVzZW50Ijp0cnVlLCJpc1N0YWZmUHJlc2VudCI6ZmFsc2UsImRpc2FibGVNeURldGFpbHMiOiJUUlVFIiwic2Vzc2lvbktleSI6ImY4YjI5ZDliNGE3ZmJiZmFmODYzYTVmYzQ2YTRlMjhlIn0%3D\"\n}"}],"_postman_id":"22769654-9feb-47cb-9dd4-2ffd744921e3"}],"id":"b1f47bf6-80c8-4ac9-8817-009ea3ac8858","description":"<p>A checkout is a payment experience you want to display to a user.</p>\n<p>You should:</p>\n<ol>\n<li><p>From your server call POST .../checkouts with your payment options (<a href=\"https://api.shuttleglobal.com/#22769654-9feb-47cb-9dd4-2ffd744921e3\">docs</a>)</p>\n</li>\n<li><p>On your checkout page, embed <code>shuttle-1-4.X.js</code> (<a href=\"https://api.shuttleglobal.com/#b5f50016-d9ac-4765-960e-f73daceef096\">docs</a>)</p>\n</li>\n<li><p>Add a DIV to your checkout page with the following</p>\n</li>\n</ol>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Attribute</th>\n<th>Note</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>data-shuttle-checkout</code></td>\n<td><code>checkout.id</code> from the checkout object you created</td>\n</tr>\n<tr>\n<td><code>data-shuttle-style</code></td>\n<td>(optional) set to <code>INLINE</code> if using an inline checkout</td>\n</tr>\n<tr>\n<td><code>data-shuttle-disable-new-window</code></td>\n<td>(optional) set to <code>true</code> to prevent Shuttle launching checkout in a popup in a potentially insecure environment (eg if you're in an iFrame)- don't set this unless you really need to and you know what you're doing</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>&lt; div data-shuttle-checkout=\"4fgjk4zrxgp6vt0s5xpy1h6eeg6g7r2g\" id=\"checkout\" data-shuttle-style=\"INLINE\" data-shuttle-disable-new-window=\"true\"&gt;&lt;/div&gt;\n&lt;script src=\"https://app.shuttleglobal.com/1186_144767/P_31.221.4.210-2024-12-17T13:28:43.104Z/shuttle-1.4.X.js\" type=\"text/javascript\"&gt;\n\n</code></pre><p><strong>Tip!</strong> If you are using dynamic rendering (eg React), call <code>Shuttle.bind()</code> after adding the</p>\n<p>to the screen to trigger checkout render.</p>\n","_postman_id":"b1f47bf6-80c8-4ac9-8817-009ea3ac8858","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Checkout Monitor","item":[{"name":"Create a checkout_monitor session","id":"88802fb0-6840-4384-ab20-97d4251aee9b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"nonce\": \"THE_NONCE_YOU_PASSED_TO_CHECKOUT\"\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/checkout_monitor","description":"<p>Request body: </p>\n<ul>\n<li><code>nonce</code> is the \"nonce\" you passed in the options for checkout.</li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>the checkout_monitor session id</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","checkout_monitor"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"09eebc20-1117-4fc0-ad43-efc356d248f2","name":"Create a checkout_monitor session","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"nonce\": \"THE_NONCE_YOU_PASSED_TO_CHECKOUT\"\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/checkout_monitor"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"169","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 10 Aug 2023 17:54:03 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"a9-/mgvD96gcDfq5fUftvSVgYy28nM\"","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 c727bed829773949471e191d64303112.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"dn4WqgTm0CY1MeWmLyPAdCr9bpRB8tQbuDoqBNetpBJYusIHggslAQ==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"eyJob3N0IjoiYXBwLnNodXR0bGVnbG9iYWwuY29tIiwic2Vzc2lvbiI6IjhiODU0YzY4MWQxNDBiYTEyNjNhMzU2NTQxMzkwYmFjIiwibm9uY2UiOiJUSEVfTk9OQ0VfWU9VX1BBU1NFRF9UT19DSEVDS09VVCJ9\"\n}"}],"_postman_id":"88802fb0-6840-4384-ab20-97d4251aee9b"}],"id":"ccc892a1-2f53-4202-a183-60df4ed39c1d","description":"<p>The checkout monitor allows you to receive real time updates for how checkout is being completed.</p>\n<p>Use cases include:</p>\n<ul>\n<li>A staff member sending the customer a payment link and watching the customer complete checkout (redacted of sensitive info)</li>\n<li>A customer scanning a QR code and completing payment on their phone, and keeping the system displaying the QR code up to date</li>\n</ul>\n<p>To use the checkout_monitor, you need to:</p>\n<ol>\n<li>Create a checkout_monitor session</li>\n<li>Use <code>Shuttle.checkout_monitor({sessionid})</code> (available in shuttle-1.3.3.js or later) See: <a href=\"https://api.shuttleglobal.com/#1d90d6b7-23e4-4f3c-9bed-af7372387488\">https://api.shuttleglobal.com/#1d90d6b7-23e4-4f3c-9bed-af7372387488</a></li>\n</ol>\n<p>Please note: You must have loaded shuttle-1-3.X.js using the /shared_key/instance_key/ structure, using the same instance you created the session for ie:</p>\n<p><a href=\"https://app.shuttleglobal.com/%7Bshared_key%7D/%7Binstance_key%7D/shuttle-1.3.X.js\">https://app.shuttleglobal.com/{shared_key}/{instance_key}/shuttle-1.3.X.js</a></p>\n","event":[{"listen":"prerequest","script":{"id":"6bba06f4-6ef1-40d7-8065-31d4e15e8515","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"46cc108b-628c-49b7-9e14-d099f15df3b0","type":"text/javascript","exec":[""]}}],"_postman_id":"ccc892a1-2f53-4202-a183-60df4ed39c1d","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Contracts","item":[{"name":"List contracts","id":"2b2bc991-3171-440b-a1aa-8c1f0d17f53c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts","description":"<p>This request performs a simple search against <code>contract</code> objects:</p>\n<ul>\n<li><code>criteria</code>: The search criteria (URL encoded).</li>\n<li><code>order</code>: The sort you would like to apply</li>\n<li><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object) </li>\n<li><code>limit</code>: The maximum records to return </li>\n<li><code>offset</code>: The offset from the first records to start returning records</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>: </p>\n<ul>\n<li>id</li>\n<li>account</li>\n<li>alt_key</li>\n<li>channel</li>\n<li>completed</li>\n<li>created</li>\n<li>designation</li>\n<li>division</li>\n<li>frequency</li>\n<li>gateway</li>\n<li>initiative</li>\n<li>legal_entity</li>\n<li>next_charge</li>\n<li>next_payment</li>\n<li>nonce</li>\n<li>occurrences</li>\n<li>outstanding_amount</li>\n<li>payment_method</li>\n<li>retry_complete</li>\n<li>retry_count</li>\n<li>scheduler</li>\n<li>status</li>\n<li>updated</li>\n</ul>\n<p>Expand: </p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>contracts</code></td>\n<td>an array of <code>contract</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","contracts"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"9a5f0d85-c986-412f-9a85-4593aad63f3a","name":"List contracts","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"1199","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 01 Nov 2019 16:12:56 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"apS8A66vtnfhD2rcaHKpxQ==-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 6b08baae6d8fdc124eeea9f6d807fa9b.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"21ImEFW1qEBSSs8G8Hxen0Gip_UlkxIKxVK-AMRiVouuUPAd1zYQjA==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"contracts\": [\n        {\n            \"id\": \"co_5139_10045\",\n            \"alt_key\": \"00010045\",\n            \"account\": \"acc_5139_10040\",\n            \"payment_method\": \"pm_5139_10000\",\n            \"currency\": \"GBP\",\n            \"amount\": \"50\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10000\",\n            \"created\": \"2019-08-06T12:22:21.000Z\",\n            \"updated\": \"2019-08-06T12:22:23.000Z\",\n            \"initiated\": \"2019-08-06T12:22:21.000Z\",\n            \"completed\": \"2019-08-06T12:22:23.000Z\",\n            \"last_transaction\": \"tr_5139_10005\"\n        },\n        {\n            \"id\": \"co_5139_10221\",\n            \"alt_key\": \"00010221\",\n            \"account\": \"acc_5139_10202\",\n            \"payment_method\": \"pm_5139_10161\",\n            \"currency\": \"EUR\",\n            \"amount\": \"100\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"created\": \"2019-10-21T13:47:38.000Z\",\n            \"updated\": \"2019-10-21T13:47:42.000Z\",\n            \"initiated\": \"2019-10-21T13:47:38.000Z\",\n            \"completed\": \"2019-10-21T13:47:42.000Z\",\n            \"last_transaction\": \"tr_5139_10181\"\n        },\n        {\n            \"id\": \"co_5139_10100\",\n            \"alt_key\": \"123\",\n            \"account\": \"acc_5139_10080\",\n            \"payment_method\": \"pm_5139_10040\",\n            \"currency\": \"GBP\",\n            \"amount\": \"1\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"created\": \"2019-09-11T14:06:43.000Z\",\n            \"updated\": \"2019-09-11T14:06:46.000Z\",\n            \"initiated\": \"2019-09-11T14:06:42.000Z\",\n            \"completed\": \"2019-09-11T14:06:46.000Z\",\n            \"last_transaction\": \"tr_5139_10060\"\n        },\n        {\n            \"id\": \"co_5139_10122\",\n            \"alt_key\": \"00010122\",\n            \"account\": \"acc_5139_10101\",\n            \"payment_method\": \"pm_5139_10061\",\n            \"currency\": \"GBP\",\n            \"amount\": \"1\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"created\": \"2019-09-11T19:31:57.000Z\",\n            \"updated\": \"2019-09-11T19:32:02.000Z\",\n            \"initiated\": \"2019-09-11T19:31:57.000Z\",\n            \"completed\": \"2019-09-11T19:32:02.000Z\",\n            \"last_transaction\": \"tr_5139_10082\"\n        },\n        {\n            \"id\": \"co_5139_10040\",\n            \"alt_key\": \"00010040\",\n            \"account\": \"acc_5139_10040\",\n            \"payment_method\": \"pm_5139_10000\",\n            \"currency\": \"GBP\",\n            \"amount\": \"1\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10000\",\n            \"created\": \"2019-08-06T10:15:30.000Z\",\n            \"updated\": \"2019-08-06T10:15:33.000Z\",\n            \"initiated\": \"2019-08-06T10:15:30.000Z\",\n            \"completed\": \"2019-08-06T10:15:33.000Z\",\n            \"last_transaction\": \"tr_5139_10000\"\n        },\n        {\n            \"id\": \"co_5139_10200\",\n            \"alt_key\": \"abc123\",\n            \"account\": \"acc_5139_10180\",\n            \"payment_method\": \"pm_5139_10140\",\n            \"currency\": \"USD\",\n            \"amount\": \"100\",\n            \"overdue_amount\": \"100\",\n            \"recurring\": false,\n            \"status\": \"ACTIVE\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"description\": \"Invoice 123\",\n            \"created\": \"2019-10-01T17:19:29.000Z\",\n            \"updated\": \"2019-10-01T17:19:35.000Z\",\n            \"initiated\": \"2019-10-01T17:19:29.000Z\",\n            \"last_transaction\": \"tr_5139_10160\"\n        },\n        {\n            \"id\": \"co_5139_10224\",\n            \"alt_key\": \"1234\",\n            \"account\": \"acc_5139_10207\",\n            \"payment_method\": \"pm_5139_10163\",\n            \"currency\": \"EUR\",\n            \"amount\": \"100\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"description\": \"Invoice 1234\",\n            \"created\": \"2019-10-21T14:11:51.000Z\",\n            \"updated\": \"2019-10-21T14:11:55.000Z\",\n            \"initiated\": \"2019-10-21T14:11:51.000Z\",\n            \"completed\": \"2019-10-21T14:11:55.000Z\",\n            \"last_transaction\": \"tr_5139_10184\"\n        },\n        {\n            \"id\": \"co_5139_10220\",\n            \"alt_key\": \"00010220\",\n            \"account\": \"acc_5139_10200\",\n            \"payment_method\": \"pm_5139_10160\",\n            \"currency\": \"EUR\",\n            \"amount\": \"100\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"created\": \"2019-10-21T13:43:44.000Z\",\n            \"updated\": \"2019-10-21T13:43:49.000Z\",\n            \"initiated\": \"2019-10-21T13:43:44.000Z\",\n            \"completed\": \"2019-10-21T13:43:49.000Z\",\n            \"last_transaction\": \"tr_5139_10180\"\n        },\n        {\n            \"id\": \"co_5139_10020\",\n            \"alt_key\": \"1234\",\n            \"account\": \"acc_5139_10000\",\n            \"currency\": \"GBP\",\n            \"amount\": \"10\",\n            \"overdue_amount\": \"10\",\n            \"recurring\": false,\n            \"status\": \"SETUP\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"description\": \"About the payment\",\n            \"created\": \"2019-02-26T13:59:10.000Z\",\n            \"updated\": \"2019-02-26T13:59:10.000Z\",\n            \"initiated\": \"2019-02-26T13:59:10.000Z\"\n        },\n        {\n            \"id\": \"co_5139_10042\",\n            \"alt_key\": \"00010042\",\n            \"account\": \"acc_5139_10040\",\n            \"payment_method\": \"pm_5139_10000\",\n            \"currency\": \"GBP\",\n            \"amount\": \"10\",\n            \"overdue_amount\": \"120\",\n            \"frequency\": \"WEEKLY\",\n            \"recurring\": true,\n            \"next_charge\": \"2019-11-05T12:12:14.000Z\",\n            \"status\": \"FAILING\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10000\",\n            \"created\": \"2019-08-06T12:12:14.000Z\",\n            \"updated\": \"2019-10-29T12:12:14.000Z\",\n            \"initiated\": \"2019-08-06T12:12:14.000Z\",\n            \"last_transaction\": \"tr_5139_10002\"\n        },\n        {\n            \"id\": \"co_5139_10120\",\n            \"alt_key\": \"00010120\",\n            \"account\": \"acc_5139_10100\",\n            \"payment_method\": \"pm_5139_10060\",\n            \"currency\": \"GBP\",\n            \"amount\": \"1\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"created\": \"2019-09-11T19:29:13.000Z\",\n            \"updated\": \"2019-09-11T19:29:19.000Z\",\n            \"initiated\": \"2019-09-11T19:29:13.000Z\",\n            \"completed\": \"2019-09-11T19:29:19.000Z\",\n            \"last_transaction\": \"tr_5139_10080\"\n        },\n        {\n            \"id\": \"co_5139_10141\",\n            \"alt_key\": \"00010141\",\n            \"account\": \"acc_5139_10121\",\n            \"payment_method\": \"pm_5139_10081\",\n            \"currency\": \"GBP\",\n            \"amount\": \"1\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"created\": \"2019-09-12T15:04:52.000Z\",\n            \"updated\": \"2019-09-12T15:04:58.000Z\",\n            \"initiated\": \"2019-09-12T15:04:52.000Z\",\n            \"completed\": \"2019-09-12T15:04:58.000Z\",\n            \"last_transaction\": \"tr_5139_10101\"\n        },\n        {\n            \"id\": \"co_5139_10081\",\n            \"alt_key\": \"001\",\n            \"account\": \"acc_5139_10061\",\n            \"currency\": \"GBP\",\n            \"amount\": \"100\",\n            \"overdue_amount\": \"100\",\n            \"recurring\": false,\n            \"status\": \"SETUP\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"description\": \"About the payment\",\n            \"created\": \"2019-09-11T12:38:31.000Z\",\n            \"updated\": \"2019-09-11T12:38:32.000Z\",\n            \"initiated\": \"2019-09-11T12:38:31.000Z\"\n        },\n        {\n            \"id\": \"co_5139_10182\",\n            \"alt_key\": \"1234\",\n            \"account\": \"acc_5139_10062\",\n            \"payment_method\": \"pm_5139_10021\",\n            \"currency\": \"GBP\",\n            \"amount\": \"100\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"description\": \"About the payment\",\n            \"created\": \"2019-10-01T16:10:49.000Z\",\n            \"updated\": \"2019-10-01T16:10:54.000Z\",\n            \"initiated\": \"2019-10-01T16:10:49.000Z\",\n            \"completed\": \"2019-10-01T16:10:54.000Z\",\n            \"last_transaction\": \"tr_5139_10142\"\n        },\n        {\n            \"id\": \"co_5139_10123\",\n            \"alt_key\": \"00010123\",\n            \"account\": \"acc_5139_10102\",\n            \"payment_method\": \"pm_5139_10062\",\n            \"currency\": \"GBP\",\n            \"amount\": \"1\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"created\": \"2019-09-11T20:38:52.000Z\",\n            \"updated\": \"2019-09-11T20:38:58.000Z\",\n            \"initiated\": \"2019-09-11T20:38:52.000Z\",\n            \"completed\": \"2019-09-11T20:38:58.000Z\",\n            \"last_transaction\": \"tr_5139_10083\"\n        },\n        {\n            \"id\": \"co_5139_10183\",\n            \"alt_key\": \"123\",\n            \"account\": \"acc_5139_10160\",\n            \"payment_method\": \"pm_5139_10120\",\n            \"currency\": \"USD\",\n            \"amount\": \"100\",\n            \"overdue_amount\": \"100\",\n            \"recurring\": false,\n            \"status\": \"ACTIVE\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"description\": \"Invoice 123\",\n            \"created\": \"2019-10-01T16:12:17.000Z\",\n            \"updated\": \"2019-10-01T16:20:54.000Z\",\n            \"initiated\": \"2019-10-01T16:12:17.000Z\",\n            \"last_transaction\": \"tr_5139_10143\"\n        },\n        {\n            \"id\": \"co_5139_10103\",\n            \"alt_key\": \"00010103\",\n            \"account\": \"acc_5139_10083\",\n            \"payment_method\": \"pm_5139_10043\",\n            \"currency\": \"GBP\",\n            \"amount\": \"1\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"created\": \"2019-09-11T14:17:05.000Z\",\n            \"updated\": \"2019-09-11T14:17:09.000Z\",\n            \"initiated\": \"2019-09-11T14:17:05.000Z\",\n            \"completed\": \"2019-09-11T14:17:09.000Z\",\n            \"last_transaction\": \"tr_5139_10063\"\n        },\n        {\n            \"id\": \"co_5139_10044\",\n            \"alt_key\": \"00010044\",\n            \"account\": \"acc_5139_10040\",\n            \"payment_method\": \"pm_5139_10000\",\n            \"currency\": \"GBP\",\n            \"amount\": \"30\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10000\",\n            \"created\": \"2019-08-06T12:17:28.000Z\",\n            \"updated\": \"2019-08-06T12:17:30.000Z\",\n            \"initiated\": \"2019-08-06T12:17:28.000Z\",\n            \"completed\": \"2019-08-06T12:17:30.000Z\",\n            \"last_transaction\": \"tr_5139_10004\"\n        },\n        {\n            \"id\": \"co_5139_10222\",\n            \"alt_key\": \"1234\",\n            \"account\": \"acc_5139_10205\",\n            \"payment_method\": \"pm_5139_10162\",\n            \"currency\": \"EUR\",\n            \"amount\": \"100\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10020\",\n            \"description\": \"Invoice 1234\",\n            \"created\": \"2019-10-21T13:49:27.000Z\",\n            \"updated\": \"2019-10-21T13:49:33.000Z\",\n            \"initiated\": \"2019-10-21T13:49:27.000Z\",\n            \"completed\": \"2019-10-21T13:49:33.000Z\",\n            \"last_transaction\": \"tr_5139_10182\"\n        },\n        {\n            \"id\": \"co_5139_10041\",\n            \"alt_key\": \"00010041\",\n            \"account\": \"acc_5139_10040\",\n            \"payment_method\": \"pm_5139_10000\",\n            \"currency\": \"GBP\",\n            \"amount\": \"1.01\",\n            \"recurring\": false,\n            \"status\": \"COMPLETED\",\n            \"channel\": \"ch_5139_10000\",\n            \"initiative\": \"in_5139_10000\",\n            \"designation\": \"des_5139_10000\",\n            \"legal_entity\": \"le_5139_10000\",\n            \"gateway\": \"gw_5139_10000\",\n            \"created\": \"2019-08-06T10:18:30.000Z\",\n            \"updated\": \"2019-08-06T10:18:32.000Z\",\n            \"initiated\": \"2019-08-06T10:18:30.000Z\",\n            \"completed\": \"2019-08-06T10:18:32.000Z\",\n            \"last_transaction\": \"tr_5139_10001\"\n        }\n    ],\n    \"meta\": {\n        \"limit\": 20,\n        \"total\": 44\n    }\n}"}],"_postman_id":"2b2bc991-3171-440b-a1aa-8c1f0d17f53c"},{"name":"Get a contract","id":"d8dbe432-048a-446d-b054-2150f050841b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}","description":"<p>Request:</p>\n<p><code>contract_id</code> can be one of:</p>\n<ul>\n<li><p><code>id</code>: the id assigned by us</p>\n</li>\n<li><p><code>alt_key</code>: the id assigned by you (eg order id), if not unique the most recently updated contract will be matched</p>\n</li>\n</ul>\n<p>You can <code>expand</code> the following fields:</p>\n<ul>\n<li><p><code>account</code></p>\n</li>\n<li><p><code>created_session</code></p>\n</li>\n<li><p><code>payment_method</code></p>\n</li>\n<li><p><code>last_transaction</code></p>\n</li>\n<li><p><code>last_charge</code></p>\n</li>\n<li><p><code>updated_session</code></p>\n</li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>the id of the <code>account</code> this related to</td>\n</tr>\n<tr>\n<td><code>alt_key</code></td>\n<td>your supplied key for the contract (eg order id)</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>the amount as a string</td>\n</tr>\n<tr>\n<td><code>channel</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>charge_count</code></td>\n<td>the number of charges created so far</td>\n</tr>\n<tr>\n<td><code>completed</code></td>\n<td>when the contract when into a completion status</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the contract was created</td>\n</tr>\n<tr>\n<td><code>created_session</code></td>\n<td>the session the object was created by</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>the currency in ISO format</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>the decription supplied for the contract</td>\n</tr>\n<tr>\n<td><code>designation</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>division</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>frequency</code></td>\n<td>the frequency WEEKLY, FORTNIGHTLY, BIMONTHLY, MONTHLY, QUARTERLY, BIANNUALLY, ANNUALLY, OTHER</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>the id of the contract</td>\n</tr>\n<tr>\n<td><code>initiated</code></td>\n<td>when the contract was instructed (generally the same as when created if created by a digital channel - however in some circumstance, a customer may have requested to pay on Monday and they payment only keyed in on tuesday)</td>\n</tr>\n<tr>\n<td><code>initiative</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>last_charge</code></td>\n<td>the most recent charge on the contract</td>\n</tr>\n<tr>\n<td><code>last_transaction</code></td>\n<td>the last transaction created on the contract</td>\n</tr>\n<tr>\n<td><code>legal_entities</code></td>\n<td>(enterprise) the recipients of a split payment</td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>next_charge</code></td>\n<td>the date of next charge for active contracts</td>\n</tr>\n<tr>\n<td><code>next_contract</code></td>\n<td>the contract derived from this contract, ie when the amount is updated on a recurring contract, the contract will be completed and a new contract created</td>\n</tr>\n<tr>\n<td><code>next_payment</code></td>\n<td>the next payment attempt on the contract (eg retry date if in arrears). This will be brought forward to the due date if a new charge is created</td>\n</tr>\n<tr>\n<td><code>metadata</code></td>\n<td>(optional) a map of key / value pairs stored on the contract. Gateways where possible (like Stripe and Adyen) will record  on the payment in the gateway.</td>\n</tr>\n<tr>\n<td><code>nonce</code></td>\n<td>the nonce used when creating the contract</td>\n</tr>\n<tr>\n<td><code>occurrences</code></td>\n<td>the total number of charges to create on this recurring contract (if set)</td>\n</tr>\n<tr>\n<td><code>outstanding_amount</code></td>\n<td>the amount charged but not yet paid</td>\n</tr>\n<tr>\n<td><code>overdue_amount</code></td>\n<td>DEPRECATED - do not use</td>\n</tr>\n<tr>\n<td><code>parent</code></td>\n<td>the contract this contract derived from, ie when the amount is updated on a recurring contract, the contract will be completed and a new contract created</td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>the id of the <code>payment_method</code> this relates to</td>\n</tr>\n<tr>\n<td><code>payment_note</code></td>\n<td>an internal note made against the contract</td>\n</tr>\n<tr>\n<td><code>recurring</code></td>\n<td>true / false if the contract is a recurring contract</td>\n</tr>\n<tr>\n<td><code>retry_complete</code></td>\n<td>if the contract is in arrears and the retry schedule has been exhausted</td>\n</tr>\n<tr>\n<td><code>retry_count</code></td>\n<td>if the contract is in arrears which payment attempt in the retry schedule it is up to. note, this increments with each failed payment and resets to 0 on an successful payment</td>\n</tr>\n<tr>\n<td><code>scheduled_date</code></td>\n<td>for one time schedule payments, the date/time the payment is scheduled</td>\n</tr>\n<tr>\n<td><code>scheduler</code></td>\n<td>true if this contract is automated via the Shuttle scheduler (eg scheduled recurring contracts)</td>\n</tr>\n<tr>\n<td><code>split</code></td>\n<td>(enterprise) true if this is a split payment</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the contract</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>when the contract was last modified, this will generally be when the most recent payment was attempted rather than any user action</td>\n</tr>\n<tr>\n<td><code>updated_session</code></td>\n<td>the session the object was updated by</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the record</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>SETUP</code></td>\n<td>The contract has not been started, typically this will be a contract where the initial payment was declined</td>\n</tr>\n<tr>\n<td><code>ACTIVE</code></td>\n<td>The contract is currently in progress</td>\n</tr>\n<tr>\n<td><code>FAILING</code></td>\n<td>The contract is currently in progress, however the last payment failed or next payment will fail due to an expired card</td>\n</tr>\n<tr>\n<td><code>PENDING</code></td>\n<td>The contract is currently in progress, however there is a payment still in a pending status on the contract. Further payments will not be attempted until the status of the PENDING payment resolved.</td>\n</tr>\n<tr>\n<td><code>SUSPENDED</code></td>\n<td>The contract is currently in progress, however has been temporarily suspended</td>\n</tr>\n<tr>\n<td><code>UNRESOLVED</code></td>\n<td>The contract is currently in progress, however there is a payment in unresolved status on the contract. Further payments will not be attempted until the status of the UNRESOLVED payment resolved.</td>\n</tr>\n<tr>\n<td><code>COMPLETED</code></td>\n<td>The contract completed by fulfilling the number of payments set out.</td>\n</tr>\n<tr>\n<td><code>CANCELLED</code></td>\n<td>The contract completed via user intervention cancelling the contract.</td>\n</tr>\n<tr>\n<td><code>CANCELLING</code></td>\n<td>The contract has been CANCELLED so no further charges will be created, but has an outstanding balance on it. Once the outstanding balance is paid it will change to CANCELLED.</td>\n</tr>\n<tr>\n<td><code>FAILED</code></td>\n<td>(deprecated)</td>\n</tr>\n<tr>\n<td><code>ERROR</code></td>\n<td>(deprecated)</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>legal_entities</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>the legal_entity recieving the split</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>the amount of the split</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"03245d2b-72c9-4fdb-a8e7-4d56f9f05b97","name":"Get a contract","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"{{_auth_header}}","type":"text"}],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"257","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Date","value":"Tue, 15 Jan 2019 15:59:09 GMT","enabled":true},{"key":"ETag","value":"W/\"178-4e260a8b\"","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 45c2785bdcf4e733638f5f384a1160b5.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Id","value":"Bv5bGQi_CVYqLDJEpo-HQsmYIx5bTJD1O4veo__evDT_n0qEGNo5AA==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"contract\": {\n        \"id\": \"co_1000_36612\",\n        \"alt_key\": \"00036612\",\n        \"account\": \"acc_1000_19104\",\n        \"payment_method\": \"pm_1000_22726\",\n        \"parent\": \"co_1000_1234\",\n        \"currency\": \"AUD\",\n        \"amount\": \"1\",\n        \"frequency\": \"WEEKLY\",\n        \"next_charge\": \"2019-01-18T10:15:09.000Z\",\n        \"status\": \"ACTIVE\",\n        \"description\": \"UK Compassion & more\",\n        \"created\": \"2018-10-10T10:22:17.000Z\",\n        \"updated\": \"2019-01-11T10:16:04.000Z\",\n        \"initiated\": \"2018-10-10T10:22:16.000Z\"\n    }\n}"}],"_postman_id":"d8dbe432-048a-446d-b054-2150f050841b"},{"name":"Get a contract's future_charges","id":"647cefaa-66e1-4f82-a8f2-766cac893801","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/future_charges","description":"<p>This API returns a list of charges that will be created for an in-progress recurring contract. For contracts with no completion date, the list will be restricted to the shorter of 3 years or 100 charges.</p>\n<p>Request:</p>\n<p><code>contract_id</code> can be one of:</p>\n<ul>\n<li><code>id</code>: the id assigned by us</li>\n<li><code>alt_key</code>: the id assigned by you (eg order id), if not unique the most recently updated contract will be matched</li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>future_charges</code></td>\n<td>the list of future charges that will be created for this contract. Please note, this is subject to change if the contract is updated.</td>\n</tr>\n<tr>\n<td><code>future_charges_continue</code></td>\n<td><code>true</code> if the list has been truncated</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>future_charges</code> is an array of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>the amount that the charge will be raised for (where known)</td>\n</tr>\n<tr>\n<td><code>charge_number</code></td>\n<td>the instalment number</td>\n</tr>\n<tr>\n<td><code>due</code></td>\n<td>when the charge will be due, generally this is also when it will be created</td>\n</tr>\n</tbody>\n</table>\n</div><p>Note, in the following scenarios a HTTP 400 will be returned, <code>code: INVALID_REQUEST</code>, <code>message</code> as  as follows:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>condition</th>\n<th>message</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>contract.status == \"COMPLETED\"</td>\n<td>\"contract completed\"</td>\n</tr>\n<tr>\n<td>contract.status == \"CANCELLING\"</td>\n<td>\"contract cancelling\"</td>\n</tr>\n<tr>\n<td>contract.status == \"CANCELLED\"</td>\n<td>\"contract cancelled\"</td>\n</tr>\n<tr>\n<td>contract.status == \"FAILED\"</td>\n<td>\"contract failed\"</td>\n</tr>\n<tr>\n<td>contract.status == \"SUSPENDED\"</td>\n<td>\"contract suspended\"</td>\n</tr>\n<tr>\n<td>!contract.recurring</td>\n<td>\"contract not recurring\"</td>\n</tr>\n<tr>\n<td>!contract.next_charge</td>\n<td>\"no next charge\"</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","future_charges"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"81c3fe3e-fd40-4baf-8b0b-2bffd3c9985d","name":"Get a contract's future_charges","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/future_charges"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"694","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 20 Feb 2024 17:26:40 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-powered-by","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"2b6-a8f8e6d7\"","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 f9dabb7450b8978c710eac50c8933748.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"OpT0BjxX7qiimOfYgKENGUy3K0bDXzWToZmUx1zvF6S63AhITk_X8Q==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"future_charges\": [\n        {\n            \"amount\": 100,\n            \"charge_number\": 2,\n            \"due\": \"2024-03-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 3,\n            \"due\": \"2024-04-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 4,\n            \"due\": \"2024-05-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 5,\n            \"due\": \"2024-06-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 6,\n            \"due\": \"2024-07-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 7,\n            \"due\": \"2024-08-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 8,\n            \"due\": \"2024-09-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 9,\n            \"due\": \"2024-10-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 10,\n            \"due\": \"2024-11-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 11,\n            \"due\": \"2024-12-20T17:13:48\"\n        },\n        {\n            \"amount\": 100,\n            \"charge_number\": 12,\n            \"due\": \"2025-01-20T17:13:48\"\n        }\n    ]\n}"}],"_postman_id":"647cefaa-66e1-4f82-a8f2-766cac893801"},{"name":"Update a contract","id":"dbb6925d-f5d3-414b-9d52-6e101fa08eca","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"contract\": {\n\t\t\"next_charge\": \"now\"\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}","description":"<p>When updating a contract, only several properties can be changed. They can be updated individually or altogether.</p>\n<p>Note: Updating the <code>amount</code> of the contract will cancel the contract and create a NEW contract, with a <code>parent</code> reference to the now cancelled contract. You cannot update the amount of a contract while a payment is processing (including when its processing asynchronously ie in a PENDING / UNRESOLVED status).</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>next_charge</code></td>\n<td>(optional) only available for recurring payments, when the next charge should be created, or <code>now</code> to schedule immediately. Note charge creation is asynchronous, and may take 1-2 minutes.</td>\n</tr>\n<tr>\n<td><code>occurrences</code></td>\n<td>(optional) only available for recurring payments, you can change the number of occurrences, however only to a number you have not yet passed (eg if you've already have 4 charges, you can only set occurrences to 5 or greater, any less than this you can CANCEL the contract).</td>\n</tr>\n<tr>\n<td><code>next_payment</code></td>\n<td>(optional) when the next payment should be attempted, or <code>now</code> to schedule immediately. This must be before the next_charge, if in the past it will be scheduled immediately. If no payment is due (ie nothing outstanding) the payment will be scheduled however no payment will be attempted. Note the payment attempt is asynchronous, and may take 1-2 minutes.</td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>(optional) the id of the payment method</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>(optional) the new amount to take each occurrence</td>\n</tr>\n<tr>\n<td><code>resume</code></td>\n<td>(boolean - optional) only available for recurring payments, if passed a <code>CANCELLED</code> or <code>CANCELLING</code> contract will return to in progress. You must pass a <code>next_charge</code> for when the next charge should take place.</td>\n</tr>\n<tr>\n<td><code>scheduled_date</code></td>\n<td>(optional) only available for scheduled payments, the new scheduled date. This must be in the future,.</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>(string - optional) you can pass <code>SUSPENDED</code> or <code>ACTIVE</code> to suspend / resume the contract. When suspending a contract, <code>next_charge</code> will be blanked, so you will need to reset this on resume.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<p>Updated <code>contract</code> object. In some cases a new <code>contract</code> will be created, with a <code>parent</code> of the contract edited.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"bb39672a-4177-431d-8e4a-c1c7aab1fc78","name":"Update a contract","originalRequest":{"method":"PUT","header":[{"key":"Authorization","value":"{{_auth_header}}","type":"text"},{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"contract\": {\n\t\t\"next_charge\": \"2019-04-10T10:00:00\",\n\t\t\"payment_method\": \"{{payment_method_id}}\",\n\t\t\"amount\": 200\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"258","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Date","value":"Fri, 18 Jan 2019 10:44:34 GMT","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 02fe6e236b00f4dcbdb1bf5c172062d9.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Id","value":"2F3J6VUvnLhDMqE7ROsVPsHVU2EPk94Naym61HA_SfdUBf8y2cRevg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"contract\": {\n        \"id\": \"co_1000_36914\",\n        \"alt_key\": \"00036913\",\n        \"account\": \"acc_1000_19104\",\n        \"payment_method\": \"pm_1000_22726\",\n        \"currency\": \"GBP\",\n        \"amount\": \"200\",\n        \"frequency\": \"MONTHLY\",\n        \"next_charge\": \"2019-04-10T10:00:00.000Z\",\n        \"status\": \"ACTIVE\",\n        \"description\": \"UK Compassion & more\",\n        \"created\": \"2019-01-16T09:57:48.000Z\",\n        \"updated\": \"2019-01-18T10:44:33.000Z\",\n        \"initiated\": \"2019-01-16T09:57:48.000Z\"\n    }\n}"},{"id":"70bf21ef-e162-41f9-a717-96831cd452cb","name":"Update a contract to run immediately","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"contract\": {\n\t\t\"next_charge\": \"now\"\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"304","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 28 Nov 2019 16:30:13 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 c5e8408e2914e204df7d18fc961818b5.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR3-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"WDzWy3M_OkOx0VZQFijE1JWAb_3eleJ-p6ZkrWoMwgA_D-p2LsPO3A==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"contract\": {\n        \"id\": \"co_5139_10042\",\n        \"alt_key\": \"00010042\",\n        \"account\": \"acc_5139_10040\",\n        \"payment_method\": \"pm_5139_10000\",\n        \"currency\": \"GBP\",\n        \"amount\": \"10\",\n        \"overdue_amount\": \"140\",\n        \"frequency\": \"WEEKLY\",\n        \"recurring\": true,\n        \"status\": \"CANCELLED\",\n        \"channel\": \"ch_5139_10000\",\n        \"initiative\": \"in_5139_10000\",\n        \"designation\": \"des_5139_10000\",\n        \"legal_entity\": \"le_5139_10000\",\n        \"gateway\": \"gw_5139_10000\",\n        \"created\": \"2019-08-06T12:12:14.000Z\",\n        \"updated\": \"2019-11-18T17:22:55.000Z\",\n        \"initiated\": \"2019-08-06T12:12:14.000Z\",\n        \"completed\": \"2019-11-18T17:22:55.000Z\",\n        \"last_transaction\": \"tr_5139_10002\"\n    }\n}"}],"_postman_id":"dbb6925d-f5d3-414b-9d52-6e101fa08eca"},{"name":"Cancel a contract","id":"b254f068-b79f-4d19-be42-7cec5bd181e3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/cancel","description":"<p>Cancelling a contract will prevent future charges being created on a contract and stop all automated payments. A contract may still have an outstanding balance at time of cancellation.</p>\n<p>Request:</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>write_off</code></td>\n<td>(optional) if any outstanding amount should be written off, if not and there's an outstanding amount the contract will transition to a <code>CANCELLING</code> status</td>\n</tr>\n<tr>\n<td><code>cancel_retries</code></td>\n<td>(optional) if automatic retries should be stopped for any outstanding amount. This will set <code>next_payment</code> to blank</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<p>Updated <code>contract</code> object</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","cancel"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"0e0ace45-2f91-4df4-a1cf-64704ad698d8","name":"Cancel a contract","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/cancel"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"304","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Mon, 18 Nov 2019 17:22:56 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 c975be6c710711d2ced7184eca05c993.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"ggAemzKyavuSLdmfriKj9n3slJbzq6fyGnkMFe0n_U9JauOI5G0TQw==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"contract\": {\n        \"id\": \"co_5139_10042\",\n        \"alt_key\": \"00010042\",\n        \"account\": \"acc_5139_10040\",\n        \"payment_method\": \"pm_5139_10000\",\n        \"currency\": \"GBP\",\n        \"amount\": \"10\",\n        \"overdue_amount\": \"140\",\n        \"frequency\": \"WEEKLY\",\n        \"recurring\": true,\n        \"status\": \"CANCELLED\",\n        \"channel\": \"ch_5139_10000\",\n        \"initiative\": \"in_5139_10000\",\n        \"designation\": \"des_5139_10000\",\n        \"legal_entity\": \"le_5139_10000\",\n        \"gateway\": \"gw_5139_10000\",\n        \"created\": \"2019-08-06T12:12:14.000Z\",\n        \"updated\": \"2019-11-18T17:22:55.000Z\",\n        \"initiated\": \"2019-08-06T12:12:14.000Z\",\n        \"completed\": \"2019-11-18T17:22:55.000Z\",\n        \"last_transaction\": \"tr_5139_10002\"\n    }\n}"}],"_postman_id":"b254f068-b79f-4d19-be42-7cec5bd181e3"},{"name":"Create a payment","id":"471e5878-f5e3-4c99-b191-dc5b29f41441","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"amount\": 200,\n\t\"payment_method\": \"{{payment_method_id}}\"\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/payment","description":"<p>For recurring payments which have an amount overdue you can instruct us to attempt payment of the outstanding balance on either the default payment method or an alternative one.</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>(optional) the amount to process, by default the amount will be the total outstanding on the contract, you cannot pass an amount greater than the amount outstanding on the contract (not available for split payments (enterprise), you must always process the outstanding amount)</td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>(optional) the payment method to use for the payment, by default the contract's payment method will be used</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>transaction</code></td>\n<td>The transaction created</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","payment"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"3d1e3af5-6828-4642-ad3d-a4a64a07f7a9","name":"Existing payment method","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"{{_auth_header}}","type":"text"},{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"amount\": 200,\n\t\"payment_method\": \"{{payment_method_id}}\"\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/payment"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"247","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Date","value":"Wed, 23 Jan 2019 11:55:34 GMT","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 95a00ccc6b75cd59a2a5a49a0dc4806a.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Id","value":"dhotDgaCOTNdO7detL4Rg2I34yPocVw4uNY2dvqR4ZL-W83SjC8tmQ==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"transaction\": {\n        \"id\": \"tr_1000_31794\",\n        \"action\": \"PAYMENT\",\n        \"status\": \"SUCCESS\",\n        \"gateway_status\": \"APPROVED\",\n        \"reference\": \"BOLT-00031794\",\n        \"amount\": \"200\",\n        \"balance\": \"200\",\n        \"currency\": \"GBP\",\n        \"initiative\": \"in_1000_1101\",\n        \"gateway\": \"gw_1000_1200\",\n        \"account\": \"acc_1000_19104\",\n        \"payment_method\": \"pm_1000_22941\",\n        \"created\": \"2019-01-23T11:55:35.000Z\",\n        \"processed\": \"2019-01-23T11:55:35.000Z\"\n    }\n}"}],"_postman_id":"471e5878-f5e3-4c99-b191-dc5b29f41441"},{"name":"Create URL to update a contract's payment method","id":"f0756180-9ef7-4eb6-8acb-273cb7f07a4e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/payment_method_url","description":"<p>The \"Update Payment Method URL\" endpoint allows you to generate an encoded URL to direct a browser to, to allow a user to modify their method of payment on a recurring contract. It does not accept any parameters.</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>locale</code></td>\n<td>(optional) the 2 letter language code or full locale (eg <code>en</code> or <code>en_US</code>). If you pass this, this locale will be used in the UX, otherwise it will use the browsers locale, or IP lookup where no browser locale. If the language is not available, the <code>default</code> language will be returned. Typically this is English, however you can customise it.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>url</code></td>\n<td>the URL to redirect the user to</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","payment_method_url"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"e282ff61-d495-432a-9e0e-bb23e9b66054","name":"Create a payment method URL","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"{{_auth_header}}","type":"text"}],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/payment_method_url"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"292","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Date","value":"Wed, 16 Jan 2019 11:09:25 GMT","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 0f850e31038aee6c89c819ab24d8d466.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Id","value":"zVUOZ5Jvlemq0srVLEQ3kww_2JhQPSC7ipgwcn405E12Hx0QAUCqpA==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"url\": \"https://payments-12344.withbolt.com/c/web/#/api/portal/eyJpc0N1c3RvbWVyUHJlc2VudCI6dHJ1ZSwiY2hhbm5lbEtleSI6IndlYiIsInNlc3Npb25LZXkiOiI0NDA5NmNmNzc3M2I2NmRlNDgxMmRjYTMxYjMzNmU3YiIsImFjY291bnRLZXkiOiIxMDAwXzE5MTA0IiwiaXNTdGFmZlByZXNlbnQiOmZhbHNlLCJyb3V0ZSI6InBvcnRhbC5jb250cmFjdC5wYXltZW50bWV0aG9kIiwibW9kZWwiOiIxMDAwXzM2OTE0In0%3D\"\n}"}],"_postman_id":"f0756180-9ef7-4eb6-8acb-273cb7f07a4e"}],"id":"30b56173-e29d-444b-8a63-bf37490c50eb","description":"<p>A contract represents an action by the user to perform a one time or recurring payment, its essentially the agreement between the user and the entity to perform one or a series of transactions. </p>\n<p>If a recurring payment has a significant change made (eg amount, frequency or initiative), a new contract will be created with a reference back to the previous contract as <code>parent</code>. Changing the paymnent method or next payment date will however not create a new contract.</p>\n<h2 id=\"automatic-retries\">Automatic Retries</h2>\n<p>Automated payments (ie payments from a scheduled payment or recurring contracts) will be automatically retried if they encountered an ERROR or a DECLINE. The schedule for retries are as follows:</p>\n<p>When an error encountered (eg gateway offline):</p>\n<ul>\n<li>After 5 minutes</li>\n<li>After a further 60 minutes</li>\n<li>After a further 3 hours</li>\n<li>After a further 6 hours</li>\n<li>After a further 1 day</li>\n</ul>\n<p>When a decline encountered (eg insufficient funds):</p>\n<ul>\n<li>After 1 day</li>\n<li>After a further 3 days</li>\n<li>After a further 7 days</li>\n<li>After a further 14 days</li>\n<li>After a further 21 days</li>\n</ul>\n<p>The retry date be scheduled in the <code>next_payment</code> field (which you can modify with a <code>PUT</code>). After a unsuccessful retry the <code>retry_count</code> will be incremented and <code>next_payment</code> recalculated,  <code>retry_count</code> determines which delay amount to use.</p>\n<p>If the retry falls AFTER the next instalment is due, it wont be scheduled as the next instalment will occur first. If the next instalment fails it will INCREASE the <code>retry_count</code>.  </p>\n<p>Once the retry attempts count exceeds the times scheduled, the <code>retry_complete</code> flag will be set and no further automated retries will be tried. New installments WILL however still have a payment attempt. </p>\n<p>A successful payment will reset <code>retry_count</code> to 0 and <code>retry_complete</code> to false.</p>\n","event":[{"listen":"prerequest","script":{"id":"00ab9ff3-5e4a-4ca4-874c-17a5e41d64ce","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"96aec599-7184-4c35-b4d2-e16c9b8fbee6","type":"text/javascript","exec":[""]}}],"_postman_id":"30b56173-e29d-444b-8a63-bf37490c50eb","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Deep Links","item":[{"name":"Deep Link Types","item":[{"name":"Onboarding","item":[],"id":"b6dbcf52-08ef-4edf-9b13-1f84381cdca2","description":"<p>To create an onboarding deep link, set:</p>\n<ul>\n<li><code>type</code>: <code>gateway-setup</code></li>\n<li><code>context</code>: Is a map that allows you to pass various options to the widget</li>\n</ul>\n<p>Where <code>context</code> supports:</p>\n<ul>\n<li><code>processor</code>: Use the onboarding component in the context of a single processor only. This is designed to be used when processor selection has already been performed outside of Shuttle. You are able to connect the gateway, customise checkout (but only with options from the one gateway). You can disconnect and reconnect the gateway, but can not maintain multiple connections to the same gateway in the same instance. You currently cannot also connect a fraud tool in this mode. For example <code>\"processor\": \"STRIPE\"</code>.</li>\n<li><code>processor_filter</code>: (coming soon) allows you only offer the merchant a sub-selection of the processors your application supports for a new connection. This wont affect any already connected processors. For example <code>\"processor_filter\": [\"STRIPE\", \"SQUARE\"]</code>. Unlike the <code>processor</code> field, <code>processor_filter</code> does not affect the behaviour of the onboarding component other than displaying a filtered list of service providers when \"Add\" selected.</li>\n<li><code>theme</code>: allows you to customise some elements of the CSS to make the UX feel more natural within your app. See below.</li>\n</ul>\n<p><strong>Theme</strong>\nThe elements you can customise are listed below. For colors, you can either set <code>color{Name}Base</code>, and we will calculate Active / Hover / Disabled etc states or you can override each individually via the respective variable.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>\"baseFontSize\": \"16px\",\n\"baseFontFamily\": \"Arial\",\n\"backgroundColor\": \"#FFF\",\n\"headerBackground\": \"#FFF\",\n\"headerBorderBottom\": \"none\",\n\"baseBorderRadius\": \"0.4rem\",\n\"rowHeight\": \"3.0rem\",\n\"modalOverlay\": \"#000\",\n\"textColor\": \"#000\",\n\"textColorInverse\": \"#FFF\",\n\"linkColor\": \"blue\",\n\"borderColor\": \"#000\",\n\"colorPrimaryBase\": \"#007bff\",\n\"colorPrimaryText\": \"#000\", // default calculated from Base\n\"colorPrimaryActive\": \"#0062cc\", // default calculated from Base\n\"colorPrimaryHover\": \"#0062cc\", // default calculated from Base\n\"colorPrimaryDisabled\": \"#007bff\", // default calculated from Base\n\"colorPrimaryForeground\": \"#004085\", // default calculated from Base\n\"colorPrimaryBackground\": \"#cce5ff\", // default calculated from Base\n\"colorPrimaryBorder\": \"#b8daff\", // default calculated from Base\n\"colorPrimaryLink\": \"#002752\", // default calculated from Base\n\"colorSecondaryBase\": \"#6c757d\",\n\"colorSecondaryText\": \"#000\", // default calculated from Base\n\"colorSecondaryActive\": \"#545b62\", // default calculated from Base\n\"colorSecondaryHover\": \"#545b62\", // default calculated from Base\n\"colorSecondaryDisabled\": \"#6c757d\", // default calculated from Base\n\"colorSecondaryForeground\": \"#383d41\", // default calculated from Base\n\"colorSecondaryBackground\": \"#e2e3e5\", // default calculated from Base\n\"colorSecondaryBorder\": \"#d6d8db\", // default calculated from Base\n\"colorSecondaryLink\": \"#202326\", // default calculated from Base\n\"colorSuccessBase\": \"#28a745\",\n\"colorSuccessText\": \"#000\", // default calculated from Base\n\"colorSuccessActive\": \"#1e7e34\", // default calculated from Base\n\"colorSuccessHover\": \"#1e7e34\", // default calculated from Base\n\"colorSuccessDisabled\": \"#28a745\", // default calculated from Base\n\"colorSuccessForeground\": \"#155724\", // default calculated from Base\n\"colorSuccessBackground\": \"#d4edda\", // default calculated from Base\n\"colorSuccessBorder\": \"#c3e6cb\", // default calculated from Base\n\"colorSuccessLink\": \"#0b2e13\", // default calculated from Base\n\"colorDangerBase\": \"#dc3545\",\n\"colorDangerText\": \"#000\", // default calculated from Base\n\"colorDangerActive\": \"#bd2130\", // default calculated from Base\n\"colorDangerHover\": \"#bd2130\", // default calculated from Base\n\"colorDangerDisabled\": \"#dc3545\", // default calculated from Base\n\"colorDangerForeground\": \"#721c24\", // default calculated from Base\n\"colorDangerBackground\": \"#f8d7da\", // default calculated from Base\n\"colorDangerBorder\": \"#f5c6cb\", // default calculated from Base\n\"colorDangerLink\": \"#491217\", // default calculated from Base\n\"colorWarningBase\": \"#ffc107\",\n\"colorWarningText\": \"var(-Text-color)\", // default calculated from Base\n\"colorWarningActive\": \"#d39e00\", // default calculated from Base\n\"colorWarningHover\": \"#d39e00\", // default calculated from Base\n\"colorWarningDisabled\": \"#ffc107\", // default calculated from Base\n\"colorWarningForeground\": \"#856404\", // default calculated from Base\n\"colorWarningBackground\": \"#fff3cd\", // default calculated from Base\n\"colorWarningBorder\": \"#ffeeba\", // default calculated from Base\n\"colorWarningLink\": \"#533f03\", // default calculated from Base\n\"colorInfoBase\": \"#17a2b8\",\n\"colorInfoText\": \"#000\", // default calculated from Base\n\"colorInfoActive\": \"#117a8b\", // default calculated from Base\n\"colorInfoHover\": \"#117a8b\", // default calculated from Base\n\"colorInfoDisabled\": \"#17a2b8\", // default calculated from Base\n\"colorInfoForeground\": \"#0c5460\", // default calculated from Base\n\"colorInfoBackground\": \"#d1ecf1\", // default calculated from Base\n\"colorInfoBorder\": \"#bee5eb\", // default calculated from Base\n\"colorInfoLink\": \"#062c33\", // default calculated from Base\n\"colorLightBase\": \"#f8f9fa\",\n\"colorLightText\": \"#000\", // default calculated from Base\n\"colorLightActive\": \"#dae0e5\", // default calculated from Base\n\"colorLightHover\": \"#dae0e5\", // default calculated from Base\n\"colorLightDisabled\": \"#f8f9fa\", // default calculated from Base\n\"colorLightForeground\": \"#818182\", // default calculated from Base\n\"colorLightBackground\": \"#fefefe\", // default calculated from Base\n\"colorLightBorder\": \"#fdfdfe\", // default calculated from Base\n\"colorLightLink\": \"#686868\", // default calculated from Base\n\"colorDarkBase\": \"#343a40\",\n\"colorDarkText\": \"#000\", // default calculated from Base\n\"colorDarkActive\": \"#1d2124\", // default calculated from Base\n\"colorDarkHover\": \"#1d2124\", // default calculated from Base\n\"colorDarkDisabled\": \"#343a40\", // default calculated from Base\n\"colorDarkForeground\": \"#1b1e21\", // default calculated from Base\n\"colorDarkBackground\": \"#d6d8d9\", // default calculated from Base\n\"colorDarkBorder\": \"#c6c8ca\", // default calculated from Base\n\"colorDarkLink\": \"#040505\" // default calculated from Base\n</code></pre><p>For example, if \"John Doe\" (user 1234) was logged in to instance \"9999\", and you wanted to drop in an onboarding UX with a customised header bar, create the following deep link:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>POST /instances/9999/deep_links\n{\n  \"deep_link\": {\n    \"type\": \"gateway-setup\",\n    \"context\": {\n      \"theme\": {\n          \"headerBackground\": \"transparent\",\n          \"headerBorderBottom\": \"none\"\n      }\n    },\n    \"user\": {\n      \"alt_key\": \"1234\",\n      \"name\": \"John Doe\"\n    }\n  }\n}\n</code></pre>","_postman_id":"b6dbcf52-08ef-4edf-9b13-1f84381cdca2","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Merchant View","item":[{"name":"Browser Events","item":[],"id":"82f331b5-427d-468b-befa-18d011cab55e","description":"<h3 id=\"extend_session\">EXTEND_SESSION</h3>\n<p>A message <code>EXTEND_SESSION</code> will be raised when a server request is made, so that you can extend the session of the user in your app (if you so wish). The intent is to prevent your session expiring if they are configuring payment processors for some time. This will generally only be raised at most once per minute.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>EXTEND_SESSION</code></td>\n</tr>\n</tbody>\n</table>\n</div><p>Example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"EXTEND_SESSION\"\n    }\n    ...\n}\n</code></pre><h3 id=\"dashboard_display\">DASHBOARD_DISPLAY</h3>\n<p>A message <code>DASHBOARD_DISPLAY</code> will indicate the frame height has changed, eg after a re-render. Shuttle.js will use this to resize the frame. This message also contains a boolean indicating if we are displaying a modal dialog if you decide to dim / block any other controls on the page.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>DASHBOARD_DISPLAY</code></td>\n</tr>\n<tr>\n<td><code>height</code></td>\n<td>eg <code>137</code> the height of the frame box in pixels</td>\n</tr>\n<tr>\n<td><code>modal</code></td>\n<td>eg <code>false</code> if a modal dialog is being displayed</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"DASHBOARD_DISPLAY\",\n        height: 137,\n        modal: false\n    }\n    ...\n}\n</code></pre><h3 id=\"dashboard_error\">DASHBOARD_ERROR</h3>\n<p>A message <code>DASHBOARD_ERROR</code> will indicate an error has occurred in the dashboard component. The typical use case is the session has expired however errors may occur for other reasons.</p>\n<p>Where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>the string <code>DASHBOARD_ERROR</code></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>eg <code>SESSION_EXPIRED</code> the type of error (currently only <code>SESSION_EXPIRED</code> is expired)</td>\n</tr>\n<tr>\n<td><code>error</code></td>\n<td>A user friendly message about the error.</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>event = {\n    ...\n    data: {\n        message: \"DASHBOARD_ERROR\",\n        type: \"SESSION_EXPIRED\",\n        error: \"Session expired\"\n    }\n    ...\n}\n</code></pre>","_postman_id":"82f331b5-427d-468b-befa-18d011cab55e","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}}],"id":"de8fca61-9058-4107-ac52-be246092f468","description":"<p>The merchant view allows you to search and view people, transactions and recurring schedules. You can embed it allowing the user to search through data - for example in the developer portal, or link directly to a person, transaction or recurring schedule.</p>\n<p>To create a merchant view deep link, set:</p>\n<ul>\n<li><code>type</code>: <code>merchant</code></li>\n<li><code>context</code>: (optional) see below</li>\n</ul>\n<p>Where <code>context</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>module</code></td>\n<td>the module this refers to see below</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the action this refers to see below</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>the id of the object referred to see below (only pass this OR <code>alt_key</code>)</td>\n</tr>\n<tr>\n<td><code>alt_key</code></td>\n<td>the id of the object referred to see below (only pass this OR <code>id</code>)</td>\n</tr>\n<tr>\n<td><code>menu</code></td>\n<td>the type of menu to use <code>normal</code>, <code>banner</code> or <code>hidden</code></td>\n</tr>\n<tr>\n<td><code>favicon</code></td>\n<td>a url to a png favicon to use if the page is opened in a window</td>\n</tr>\n<tr>\n<td><code>menu_logo</code></td>\n<td>available for menu = <code>banner</code>, a url to a png logo to use on the menu (note: this will be styled with max-height 20px, max-width 120px) for high resolution displays its recommended at least double this resolution is used. Passing <code>false</code> will remove the logo.</td>\n</tr>\n<tr>\n<td><code>return_url</code></td>\n<td>available for menu = <code>banner</code>, the url to return the user to if the logo is clicked</td>\n</tr>\n</tbody>\n</table>\n</div><div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>module</th>\n<th>action</th>\n<th>id OR ...</th>\n<th>... OR alt_key</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>enquiry</code></td>\n<td><code>view_account</code></td>\n<td>account.id</td>\n<td>your account ID</td>\n</tr>\n<tr>\n<td><code>enquiry</code></td>\n<td><code>view_contract</code></td>\n<td>contract.id</td>\n<td>your basket id</td>\n</tr>\n<tr>\n<td><code>enquiry</code></td>\n<td><code>view_transaction</code></td>\n<td>transaction.id</td>\n<td>n/a</td>\n</tr>\n</tbody>\n</table>\n</div><p>For example, if \"John Doe\" (user 1234) was logged in to instance \"9999\", and you wanted to drop in a UX for the payment activity on subscription \"ABC123\", create the following deep link:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>POST /instances/9999/deep_links\n{\n  \"deep_link\": {\n    \"type\": \"merchant\",\n    \"context\": {\n      \"module\": \"enquiry\",\n      \"action\": \"view_contract\",\n      \"alt_key\": \"ABC123\"\n    },\n    \"user\": {\n      \"alt_key\": \"1234\",\n      \"name\": \"John Doe\"\n    }\n  }\n}\n</code></pre>","_postman_id":"de8fca61-9058-4107-ac52-be246092f468","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}}],"id":"f6acd9d4-a13e-4c50-bdd3-bb706b2bbdf4","description":"<p>This sections lists the types of deep links you can create and the parameters they accept.</p>\n","_postman_id":"f6acd9d4-a13e-4c50-bdd3-bb706b2bbdf4","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Create a deep link","id":"97eeba26-8895-49c8-a179-c763283115ce","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"deep_link\": {\n\t\t\"type\": \"merchant\",\n\t\t\"context\": {\n\t\t\t\"module\": \"enquiry\",\n\t\t\t\"action\": \"view_contract\",\n\t\t\t\"id\": \"12344\",\n\t\t\t\"menu\": \"banner\",\n\t\t\t\"menu_logo\": \"https://myserver.com/wp-content/uploads/2018/03/logo-tm-RGB-hq-transp.png\",\n\t\t\t\"favicon\": \"https://myserver.com/wp-content/themes/favicon.ico\",\n\t\t\t\"return_url\": \"https://myserver.com/\"\t\t\n\t\t},\n\t\t\"user\": {\n\t\t\t\"alt_key\": \"1234\",\n\t\t\t\"name\": \"John Doe\"\n\t\t},\n\t\t\"session\": {\n\t\t\t\"teams\": [\"ADMIN\"]\n\t\t},\n\t\t\"ip_address\": \"212.200.142.22\",\n\t\t\"expiry_seconds\": 900\t\t\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/deep_links","description":"<p>When creating a deeplink, all fields are nested under the <code>deep_link</code> field. See the <a href=\"https://api.shuttleglobal.com/#f6acd9d4-a13e-4c50-bdd3-bb706b2bbdf4\">deep links section</a> for a list of available deep links.</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>type</code></td>\n<td>the type of deep link</td>\n</tr>\n<tr>\n<td><code>context</code></td>\n<td>type specific parameters (see deep link documentation)</td>\n</tr>\n<tr>\n<td><code>user</code></td>\n<td>details of the current user for type=<code>merchant</code> (see below)</td>\n</tr>\n<tr>\n<td><code>ip_address</code></td>\n<td>the ip address of the merchant</td>\n</tr>\n<tr>\n<td><code>expiry_seconds</code></td>\n<td>the time in seconds this deep link is active. Its recommended you only generate the link as you are redirecting the user and use a value less than 60 seconds</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>user</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>alt_key</code></td>\n<td>your primary key for the logged in user - all activity will be grouped under this primary key</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the name of the logged in user - this will be linked to the <code>alt_key</code> overriding any previous value</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","deep_links"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"d9f99d5f-7a09-4331-ac1d-d7dd2f51a981","name":"Create a deep link","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"deep_link\": {\n\t\t\"type\": \"merchant\",\n\t\t\"context\": {\n\t\t\t\"module\": \"enquiry\",\n\t\t\t\"action\": \"view_contract\",\n\t\t\t\"id\": \"12344\",\n\t\t\t\"menu\": \"banner\",\n\t\t\t\"menu_logo\": \"https://myserver.com/wp-content/uploads/2018/03/logo-tm-RGB-hq-transp.png\",\n\t\t\t\"favicon\": \"https://myserver.com/wp-content/themes/favicon.ico\",\n\t\t\t\"return_url\": \"https://myserver.com/\"\t\t\n\t\t},\n\t\t\"user\": {\n\t\t\t\"alt_key\": \"1234\",\n\t\t\t\"name\": \"John Doe\"\n\t\t},\n\t\t\"session\": {\n\t\t\t\"teams\": [\"ADMIN\"]\n\t\t},\n\t\t\"expiry_seconds\": 900\t\t\n\t}\n}"},"url":"https://app.shuttleglobal.com/instances/{{instance_id}}/deep_links"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"300","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 18 Jun 2019 14:47:08 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 b9a91b9002d4fb924a73a6172edb4dc8.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"CDG3-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"75gdlUEMoDY1hv07kt0L_EVG6SrKY4dy0tL7CkXqiGFcXSPhJ23p-w==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"deep_link\": {\n        \"id\": \"fbj30rphiop3fefi2d8lmwh5oithcfys\",\n        \"type\": \"merchant\",\n        \"context\": {\n            \"module\": \"enquiry\",\n            \"action\": \"view_contract\",\n            \"id\": \"12344\",\n            \"menu\": \"banner\",\n            \"menu_logo\": \"https://myserver.com/wp-content/uploads/2018/03/logo-tm-RGB-hq-transp.png\",\n            \"favicon\": \"https://myserver.com/wp-content/themes/favicon.ico\",\n            \"return_url\": \"https://myserver.com/\"\n        },\n        \"user\": {\n            \"alt_key\": \"1234\",\n            \"name\": \"John Doe\"\n        },\n        \"session\": {\n            \"teams\": [\n                \"ADMIN\"\n            ]\n        },\n        \"expiry_seconds\": 900\n    }\n}"},{"id":"75695048-590e-489a-aff4-e4405297b7eb","name":"Create a deep link","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"deep_link\": {\n\t\t\"type\": \"merchant\",\n\t\t\"context\": {\n\t\t\t\"module\": \"enquiry\",\n\t\t\t\"action\": \"view_contract\",\n\t\t\t\"id\": \"12344\",\n\t\t\t\"menu\": \"banner\",\n\t\t\t\"menu_logo\": \"https://myserver.com/wp-content/uploads/2018/03/logo-tm-RGB-hq-transp.png\",\n\t\t\t\"favicon\": \"https://myserver.com/wp-content/themes/favicon.ico\",\n\t\t\t\"return_url\": \"https://myserver.com/\"\t\t\n\t\t},\n\t\t\"user\": {\n\t\t\t\"alt_key\": \"1234\",\n\t\t\t\"name\": \"John Doe\"\n\t\t},\n\t\t\"session\": {\n\t\t\t\"teams\": [\"ADMIN\"]\n\t\t},\n\t\t\"expiry_seconds\": 900\t\t\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/deep_links"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":null}],"_postman_id":"97eeba26-8895-49c8-a179-c763283115ce"},{"name":"Get a deep link","id":"b55d3830-3435-4e6f-9f33-53918651cda5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/deep_links/{{deep_link_id}}","description":"<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>the guid of the deeplink</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>the application the deeplink belongs to</td>\n</tr>\n<tr>\n<td><code>...</code></td>\n<td>the fields passed into the deeplink</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","deep_links","{{deep_link_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"35d2fa10-4c31-4df1-bb60-4b37301cf8b0","name":"Get an deep link","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/instances/{{instance_id}}/deep_links/{{deep_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"302","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 18 Jun 2019 15:26:17 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"ETag","value":"W/\"1be-92e4aa1d-gzip\"","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 4525da3d8d20d0d4f5cb16c88f0eeb5f.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"CDG54","enabled":true},{"key":"X-Amz-Cf-Id","value":"e2zbqjSq1m09qUZtKqpfuei-919itbdfD2YA73vD7Pq5nqLmB6MyHw==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"deep_link\": {\n        \"id\": \"kdl22cqhg0mzl2r0f4wiaodqcbgznbh0\",\n        \"type\": \"merchant\",\n        \"context\": {\n            \"module\": \"enquiry\",\n            \"action\": \"view_contract\",\n            \"id\": \"12344\",\n            \"menu\": \"banner\",\n            \"menu_logo\": \"https://myserver.com/wp-content/uploads/2018/03/logo-tm-RGB-hq-transp.png\",\n            \"favicon\": \"https://myserver.com/wp-content/themes/favicon.ico\",\n            \"return_url\": \"https://myserver.com/\"\n        },\n        \"user\": {\n            \"alt_key\": \"1234\",\n            \"name\": \"John Doe\"\n        },\n        \"session\": {\n            \"teams\": [\n                \"ADMIN\"\n            ]\n        },\n        \"expiry_seconds\": 90000000\n    }\n}"}],"_postman_id":"b55d3830-3435-4e6f-9f33-53918651cda5"},{"name":"Update a deep link","id":"a45c2466-8470-4066-b03d-b30ea3fe6a9d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"deep_link\": {\n        \"id\": \"kdl22cqhg0mzl2r0f4wiaodqcbgznbh0\",\n        \"type\": \"merchant\",\n        \"context\": {\n            \"module\": \"enquiry\",\n            \"action\": \"view_contract\",\n            \"id\": \"12344\",\n            \"menu\": \"banner\",\n            \"menu_logo\": \"https://myserver.com/wp-content/uploads/2018/03/logo-tm-RGB-hq-transp.png\",\n            \"favicon\": \"https://myserver.com/wp-content/themes/favicon.ico\",\n            \"return_url\": \"https://myserver.com/\"\n        },\n        \"user\": {\n            \"alt_key\": \"1234\",\n            \"name\": \"John Doe\"\n        },\n        \"session\": {\n            \"teams\": [\n                \"ADMIN\"\n            ]\n        },\n        \"expiry_seconds\": 90000000\n    }\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/deep_links/{{deep_link_id}}","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","deep_links","{{deep_link_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"1a359f6a-d6d6-4b21-8700-8c4609bc3175","name":"Update a deep link","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"deep_link\": {\n        \"id\": \"kdl22cqhg0mzl2r0f4wiaodqcbgznbh0\",\n        \"type\": \"merchant\",\n        \"context\": {\n            \"module\": \"enquiry\",\n            \"action\": \"view_contract\",\n            \"id\": \"12344\",\n            \"menu\": \"banner\",\n            \"menu_logo\": \"https://myserver.com/wp-content/uploads/2018/03/logo-tm-RGB-hq-transp.png\",\n            \"favicon\": \"https://myserver.com/wp-content/themes/favicon.ico\",\n            \"return_url\": \"https://myserver.com/\"\n        },\n        \"user\": {\n            \"alt_key\": \"1234\",\n            \"name\": \"John Doe\"\n        },\n        \"session\": {\n            \"teams\": [\n                \"ADMIN\"\n            ]\n        },\n        \"expiry_seconds\": 90000000\n    }\n}"},"url":"https://app.shuttleglobal.com/instances/{{instance_id}}/deep_links/{{deep_link_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"302","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 18 Jun 2019 15:26:54 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 4525da3d8d20d0d4f5cb16c88f0eeb5f.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"CDG54","enabled":true},{"key":"X-Amz-Cf-Id","value":"dGfgKyNHKsPXZJQDASkJh-VhUVACjDKDqGb_bkvrpQDGYPCONOmaTQ==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"deep_link\": {\n        \"id\": \"kdl22cqhg0mzl2r0f4wiaodqcbgznbh0\",\n        \"type\": \"merchant\",\n        \"context\": {\n            \"module\": \"enquiry\",\n            \"action\": \"view_contract\",\n            \"id\": \"12344\",\n            \"menu\": \"banner\",\n            \"menu_logo\": \"https://myserver.com/wp-content/uploads/2018/03/logo-tm-RGB-hq-transp.png\",\n            \"favicon\": \"https://myserver.com/wp-content/themes/favicon.ico\",\n            \"return_url\": \"https://myserver.com/\"\n        },\n        \"user\": {\n            \"alt_key\": \"1234\",\n            \"name\": \"John Doe\"\n        },\n        \"session\": {\n            \"teams\": [\n                \"ADMIN\"\n            ]\n        },\n        \"expiry_seconds\": 90000000\n    }\n}"}],"_postman_id":"a45c2466-8470-4066-b03d-b30ea3fe6a9d"},{"name":"Delete a deep link","id":"17cd26e4-0ed2-4136-9532-9902f4fe7b49","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":""},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/deep_links/{{deeplink_id}}","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","deep_links","{{deeplink_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"c86eb328-0109-478e-ad92-214fdc85b95d","name":"Delete a deep link","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":""},"url":"https://app.shuttleglobal.com/instances/{{instance_id}}/deep_links/{{deep_link_id}}"},"status":"No Content","code":204,"_postman_previewlanguage":"plain","header":[{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 18 Jun 2019 15:27:44 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 4525da3d8d20d0d4f5cb16c88f0eeb5f.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"CDG54","enabled":true},{"key":"X-Amz-Cf-Id","value":"SucWS5hnv6C05YdNcrJjacgsj8m3nlhBOh6H1dtzK3t2xmL0IbuQyQ==","enabled":true}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"17cd26e4-0ed2-4136-9532-9902f4fe7b49"},{"name":"Follow a deep link","id":"3d4d3a08-aeeb-4ceb-9749-a12eecf2017e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://link.shuttleglobal.com/{{deeplink_id}}","description":"<p>This will return a HTTP 302 to the desired page.</p>\n<p>During the redirection process, Shuttle will execute the deep link, creating a Shuttle <code>user</code> and <code>session</code>. Sessions typically expire after 15 minutes of inactivity.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["{{deeplink_id}}"],"host":["link","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"5675c11b-4c47-4b9c-b1d5-149cfea19f10","name":"Follow a deep link","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/instances/{{instance_id}}/deep_links/{{deep_link_id}}/redirect"},"status":"OK","code":200,"_postman_previewlanguage":"html","header":[{"key":"Content-Type","value":"text/html;charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 18 Jun 2019 15:29:09 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 4525da3d8d20d0d4f5cb16c88f0eeb5f.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"CDG54","enabled":true},{"key":"X-Amz-Cf-Id","value":"6y8JD_U627RAdj4Jfa_iJRDtd4xkI3D_dOWmTWV4g3pX7WEpb4ewDQ==","enabled":true}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html>\n    <head>\n        <meta charset=\"utf-8\">\n        <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n        <title>Shuttle - Admin Console</title>\n        <meta name=\"description\" content=\"\">\n        <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n        <meta name=\"be-admin-standalone/config/environment\" content=\"%7B%22modulePrefix%22%3A%22be-admin-standalone%22%2C%22environment%22%3A%22staging%22%2C%22rootURL%22%3A%22/b/giftaid/%22%2C%22locationType%22%3A%22hash%22%2C%22EmberENV%22%3A%7B%22FEATURES%22%3A%7B%7D%2C%22EXTEND_PROTOTYPES%22%3A%7B%22Date%22%3Afalse%7D%7D%2C%22APP%22%3A%7B%22LOG_TRANSITIONS%22%3Atrue%2C%22name%22%3A%22be-admin-standalone%22%2C%22version%22%3A%220.1.3+c178c18b%22%7D%2C%22credentialEmail%22%3A%22gabriel@paywithbolt.com%22%2C%%%22%2C%22apiBaseURL%22%3A%22/c/api%22%2C%22exportApplicationGlobal%22%3Atrue%2C%22ember-modal-dialog%22%3A%7B%7D%7D\" />\n        <meta name=\"be-enquiry-engine/config/environment\" content=\"%7B%22modulePrefix%22%3A%22be-enquiry-engine%22%2C%22environment%22%3A%22staging%22%2C%22APP%22%3A%7B%22version%22%3A%220.1.1-beta.2+c178c18b%22%7D%2C%22ember-modal-dialog%22%3A%7B%7D%7D\" />\n        <meta name=\"be-authentication-engine/config/environment\" content=\"%7B%22modulePrefix%22%3A%22be-authentication-engine%22%2C%22environment%22%3A%22staging%22%2C%22APP%22%3A%7B%22version%22%3A%221.4.4-beta.8+c178c18b%22%7D%7D\" />\n        <meta name=\"be-admin-tasks-giftaid/config/environment\" content=\"%7B%22modulePrefix%22%3A%22be-admin-tasks-giftaid%22%2C%22environment%22%3A%22staging%22%2C%22APP%22%3A%7B%22version%22%3A%220.3.1-beta.2+c178c18b%22%7D%2C%22ember-modal-dialog%22%3A%7B%7D%7D\" />\n        <link rel=\"icon\" href=\"/b/giftaid/assets/favicon.png\">\n        <link integrity=\"\" rel=\"stylesheet\" href=\"/b/giftaid/assets/vendor.css\">\n        <link integrity=\"\" rel=\"stylesheet\" href=\"/b/giftaid/assets/be-admin-standalone.css\">\n        <meta name=\"be-admin-standalone/config/asset-manifest\" content=\"%7B%22bundles%22%3A%7B%22be-admin-tasks-giftaid%22%3A%7B%22assets%22%3A%5B%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-admin-tasks-giftaid/assets/engine-vendor.css%22%2C%22type%22%3A%22css%22%7D%2C%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-admin-tasks-giftaid/assets/engine-vendor.js%22%2C%22type%22%3A%22js%22%7D%2C%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-admin-tasks-giftaid/assets/engine.css%22%2C%22type%22%3A%22css%22%7D%2C%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-admin-tasks-giftaid/assets/engine.js%22%2C%22type%22%3A%22js%22%7D%5D%7D%2C%22be-authentication-engine%22%3A%7B%22assets%22%3A%5B%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-authentication-engine/assets/engine-vendor.css%22%2C%22type%22%3A%22css%22%7D%2C%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-authentication-engine/assets/engine-vendor.js%22%2C%22type%22%3A%22js%22%7D%2C%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-authentication-engine/assets/engine.js%22%2C%22type%22%3A%22js%22%7D%5D%7D%2C%22be-enquiry-engine%22%3A%7B%22assets%22%3A%5B%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-enquiry-engine/assets/engine-vendor.css%22%2C%22type%22%3A%22css%22%7D%2C%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-enquiry-engine/assets/engine-vendor.js%22%2C%22type%22%3A%22js%22%7D%2C%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-enquiry-engine/assets/engine.css%22%2C%22type%22%3A%22css%22%7D%2C%7B%22uri%22%3A%22/b/giftaid/assets/engines-dist/be-enquiry-engine/assets/engine.js%22%2C%22type%22%3A%22js%22%7D%5D%7D%7D%7D\" />\n    </head>\n    <body>\n        <script src=\"/b/giftaid/assets/vendor.js\"></script>\n        <script src=\"/b/giftaid/assets/be-admin-standalone.js\"></script>\n        <input type=\"hidden\" value=\"bo_1357_1502\" id=\"bolton-id\"/>\n    </body>\n</html>"}],"_postman_id":"3d4d3a08-aeeb-4ceb-9749-a12eecf2017e"}],"id":"cca63a85-6910-40fa-887c-23aad07d309e","description":"<p>A deep-link allows you to create a URL that links to various pages in the system. </p>\n<p>When creating a deeplink you pass a:</p>\n<ul>\n<li><code>type</code>: the UX you want to embed (eg <code>gateway-setup</code> for onboarding)</li>\n<li><code>user</code>: details of the user currently logged into your app</li>\n<li><code>expiry_seconds</code>: (optional, default 900) how long the deeplink is valid for</li>\n<li><code>context</code>: <code>type</code> specific options, for example, you can set a <code>theme</code> for <code>gateway-setup</code></li>\n</ul>\n<p>Creating a deep link returns a GUID, which you can use <code>shuttle.js</code> to embed in your page, or use to load a browser window or iFrame.</p>\n<p>Example: </p>\n<ul>\n<li>To embed a UX component on your page, create the deeplink and then use <code>shuttle.js</code> to <a href=\"https://api.shuttleglobal.com/#d95bf841-c0b5-4fa3-bbff-0c5dd7dcd1be\">render on your page</a></li>\n<li>To redirect your user to a deep link, create a URL on your server that returns a HTTP 302 redirect to the <a href=\"https://api.shuttleglobal.com/#3d4d3a08-aeeb-4ceb-9749-a12eecf2017e\">deep_link url</a>.</li>\n</ul>\n","event":[{"listen":"prerequest","script":{"id":"47bc1052-3826-464c-9c08-715d9a22cb69","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"3487d17d-c5f1-400c-92a7-5bfc0544755b","type":"text/javascript","exec":[""]}}],"_postman_id":"cca63a85-6910-40fa-887c-23aad07d309e","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Gateways","item":[{"name":"List gateways","id":"878dcfb1-8d04-4720-ae51-2dbf9e89fd0f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways","description":"<p>This request performs a simple search against <code>gateway</code> objects:</p>\n<ul>\n<li><code>criteria</code>: The search criteria (URL encoded).</li>\n<li><code>order</code>: The sort you would like to apply</li>\n<li><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object) </li>\n<li><code>limit</code>: The maximum records to return </li>\n<li><code>offset</code>: The offset from the first records to start returning records</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>: </p>\n<ul>\n<li>id</li>\n<li>code</li>\n<li>created</li>\n<li>division</li>\n<li>processor</li>\n<li>status</li>\n<li>updated</li>\n</ul>\n<p>Expand: </p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>gateways</code></td>\n<td>an array of <code>gateway</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","gateways"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"916e799a-6cf1-4b7a-bca6-4c61691a3b4d","name":"List gateways","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 20 Oct 2020 14:50:11 GMT","enabled":true},{"key":"Server","value":"nginx/1.18.0","enabled":true},{"key":"x-powered-by","value":"Express","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"q+3/b0DtyE9poE1YHOCWYQ==\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 716fd417a527ecd4f9d6cef2c9258583.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"IfwBCMdn3y07M8p166Aufwc7wJOrCtAqWkQdWpE-v4bf86Ag0fmcAg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"gateways\": [\n        {\n            \"id\": \"gw_11842_10000\",\n            \"name\": \"STRIPE\",\n            \"code\": \"P010000\",\n            \"division\": \"div_11842_1\",\n            \"status\": \"ACTIVE\",\n            \"processor\": \"STRIPE\",\n            \"processor_name\": \"Stripe\",\n            \"processor_account_name\": \"Taters Ltd\",\n            \"gateway_group\": \"gw_11842_10000\",\n            \"created\": \"2020-04-08T09:28:14.000Z\",\n            \"updated\": \"2020-04-08T09:29:49.000Z\",\n            \"currencies\": [\n                \"AED\",\n                \"AFN\",\n                \"ALL\",\n                \"AMD\",\n                \"ANG\",\n                \"AOA\",\n                \"ARS\",\n                \"AUD\",\n                \"AWG\",\n                \"AZN\",\n                \"BAM\",\n                \"BBD\",\n                \"BDT\",\n                \"BGN\",\n                \"BIF\",\n                \"BMD\",\n                \"BND\",\n                \"BOB\",\n                \"BRL\",\n                \"BSD\",\n                \"BWP\",\n                \"BZD\",\n                \"CAD\",\n                \"CDF\",\n                \"CHF\",\n                \"CLP\",\n                \"CNY\",\n                \"COP\",\n                \"CRC\",\n                \"CVE\",\n                \"CZK\",\n                \"DJF\",\n                \"DKK\",\n                \"DOP\",\n                \"DZD\",\n                \"EGP\",\n                \"ETB\",\n                \"EUR\",\n                \"FJD\",\n                \"FKP\",\n                \"GBP\",\n                \"GEL\",\n                \"GIP\",\n                \"GMD\",\n                \"GNF\",\n                \"GTQ\",\n                \"GYD\",\n                \"HKD\",\n                \"HNL\",\n                \"HRK\",\n                \"HTG\",\n                \"HUF\",\n                \"IDR\",\n                \"ILS\",\n                \"INR\",\n                \"ISK\",\n                \"JMD\",\n                \"JPY\",\n                \"KES\",\n                \"KGS\",\n                \"KHR\",\n                \"KMF\",\n                \"KRW\",\n                \"KYD\",\n                \"KZT\",\n                \"LAK\",\n                \"LBP\",\n                \"LKR\",\n                \"LRD\",\n                \"LSL\",\n                \"MAD\",\n                \"MDL\",\n                \"MGA\",\n                \"MKD\",\n                \"MNT\",\n                \"MOP\",\n                \"MRO\",\n                \"MUR\",\n                \"MVR\",\n                \"MWK\",\n                \"MXN\",\n                \"MYR\",\n                \"MZN\",\n                \"NAD\",\n                \"NGN\",\n                \"NIO\",\n                \"NOK\",\n                \"NPR\",\n                \"NZD\",\n                \"PAB\",\n                \"PEN\",\n                \"PGK\",\n                \"PHP\",\n                \"PKR\",\n                \"PLN\",\n                \"PYG\",\n                \"QAR\",\n                \"RON\",\n                \"RSD\",\n                \"RUB\",\n                \"RWF\",\n                \"SAR\",\n                \"SBD\",\n                \"SCR\",\n                \"SEK\",\n                \"SGD\",\n                \"SHP\",\n                \"SLL\",\n                \"SOS\",\n                \"SRD\",\n                \"STD\",\n                \"SVC\",\n                \"SZL\",\n                \"THB\",\n                \"TJS\",\n                \"TOP\",\n                \"TRY\",\n                \"TTD\",\n                \"TWD\",\n                \"TZS\",\n                \"UAH\",\n                \"UGX\",\n                \"USD\",\n                \"UYU\",\n                \"UZS\",\n                \"VND\",\n                \"VUV\",\n                \"WST\",\n                \"XAF\",\n                \"XCD\",\n                \"XOF\",\n                \"XPF\",\n                \"YER\",\n                \"ZAR\",\n                \"ZMW\"\n            ],\n            \"payment_method_types\": {\n                \"VISA\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"MASTERCARD\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"AMEX\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"JCB\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"DISCOVER\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"DINERS\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                }\n            },\n            \"payment_method_types_moto\": {\n                \"VISA\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"MASTERCARD\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"AMEX\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"JCB\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"DISCOVER\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"DINERS\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                }\n            }\n        }\n    ],\n    \"meta\": {\n        \"total\": 1\n    }\n}"}],"_postman_id":"878dcfb1-8d04-4720-ae51-2dbf9e89fd0f"},{"name":"Get a gateway","id":"736178ba-b75c-40d2-b2cb-4403c1ae3bcd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}","description":"<p>Request:</p>\n<ul>\n<li><code>gateway_id</code> is our ID or your ID for the gateway (<code>id</code> or <code>code</code>)</li>\n</ul>\n<p>You can <code>expand</code> the following fields:</p>\n<ul>\n<li><code>authenticate_js</code></li>\n<li><code>checkout_js</code>    </li>\n<li><code>created_session</code>        </li>\n<li><code>credit_message_js</code>    </li>\n<li><code>processor</code></li>\n<li><code>updated_session</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>authenticate_js</code></td>\n<td>(included via <code>expand</code>) javascript required for express checkout (where supported) - in base64</td>\n</tr>\n<tr>\n<td><code>checkout_js</code></td>\n<td>(included via <code>expand</code>) javascript required for normal checkout (where supported) - in base64</td>\n</tr>\n<tr>\n<td><code>credit_message_js</code></td>\n<td>(included via <code>expand</code>) javascript required for credit messages (generally buy no pay later messaging - eg \"Pay in 3 x $30 instalments\") checkout (where supported) - in base64</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>your ID for the gateway (or autogenerated), this is the id displayed on the merchant portal</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>the date / time the gateway was created</td>\n</tr>\n<tr>\n<td><code>created_session</code></td>\n<td>the session the object was created by</td>\n</tr>\n<tr>\n<td><code>currencies</code></td>\n<td>the currencies supported for payment (this does not represent settlement currencies)</td>\n</tr>\n<tr>\n<td><code>division</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>gateway_group</code></td>\n<td>an ID that payment method tokens can be shared between. A token can be used on any gateway in the same gateway group.</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>our ID for the gateway</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the name of the gateway, typically this starts as the gateway name eg PAYPAL, however can be changed</td>\n</tr>\n<tr>\n<td><code>payment_method_types_moto</code></td>\n<td>the list of payment methods supported by the integration with the gateway for <code>moto</code> payments, each method lists the capabilites supported by that method - see below</td>\n</tr>\n<tr>\n<td><code>payment_method_types</code></td>\n<td>the list of payment methods supported by the integration with the gateway for <code>ecommerce</code> payments, each method lists the capabilites supported by that method - see below</td>\n</tr>\n<tr>\n<td><code>processor_account_name</code></td>\n<td>the name of the merchant account connected to on the payment processor</td>\n</tr>\n<tr>\n<td><code>processor_name</code></td>\n<td>the name of the payment processor, this is a display field and may change</td>\n</tr>\n<tr>\n<td><code>processor</code></td>\n<td>the enum <code>id</code> of the processor</td>\n</tr>\n<tr>\n<td><code>status_reason</code></td>\n<td>further information as to why the gateway is in this status. This is rarely used however sometime set if a gateway disconnected due to an event (eg access revoked by the gateway)</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the gateway - see below</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>the date / time the gateway was last updated</td>\n</tr>\n<tr>\n<td><code>updated_session</code></td>\n<td>the session the object was updated by</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the record</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code> is one of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>CREATED</code></td>\n<td>the gateway is active, but has never had any payment methods enabled</td>\n</tr>\n<tr>\n<td><code>LINKED</code></td>\n<td>the gateway is active, has payment methods enabled but not yet been used</td>\n</tr>\n<tr>\n<td><code>ACTIVE</code></td>\n<td>the gateway is active and in use</td>\n</tr>\n<tr>\n<td><code>ARCHIVE</code></td>\n<td>the gateway has been \"disconnected\" and archived - no payments will be processed through it whilst ARCHIVED</td>\n</tr>\n<tr>\n<td><code>SETUP</code></td>\n<td>the gateway is in the process of being connected - in general ignore records in this status</td>\n</tr>\n<tr>\n<td><code>INACTIVE</code></td>\n<td>DEPRECATED (enterprise)</td>\n</tr>\n<tr>\n<td><code>RUNDOWN</code></td>\n<td>(enterprise)</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>payment_method_types</code> and <code>payment_method_types_moto</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>AMEX</code></td>\n<td>Amex</td>\n</tr>\n<tr>\n<td><code>VISA</code></td>\n<td>Visa</td>\n</tr>\n<tr>\n<td><code>MASTERCARD</code></td>\n<td>Mastercard</td>\n</tr>\n<tr>\n<td><code>MAESTRO</code></td>\n<td>Maestro</td>\n</tr>\n<tr>\n<td><code>UKE</code></td>\n<td>Uke</td>\n</tr>\n<tr>\n<td><code>DINERS</code></td>\n<td>Diners Club</td>\n</tr>\n<tr>\n<td><code>JCB</code></td>\n<td>Jcb</td>\n</tr>\n<tr>\n<td><code>LASER</code></td>\n<td>Laser</td>\n</tr>\n<tr>\n<td><code>ELV</code></td>\n<td>ELV</td>\n</tr>\n<tr>\n<td><code>PAYPAL</code></td>\n<td>Paypal</td>\n</tr>\n<tr>\n<td><code>APPLEPAY</code></td>\n<td>Applepay</td>\n</tr>\n<tr>\n<td><code>BANCONTACT</code></td>\n<td>Bancontact</td>\n</tr>\n<tr>\n<td><code>BANKTRANSFER</code></td>\n<td>Banktransfer</td>\n</tr>\n<tr>\n<td><code>BELFIUS</code></td>\n<td>Belfius</td>\n</tr>\n<tr>\n<td><code>CREDITCARD</code></td>\n<td>Creditcard</td>\n</tr>\n<tr>\n<td><code>DIRECTDEBIT</code></td>\n<td>Directdebit</td>\n</tr>\n<tr>\n<td><code>EPS</code></td>\n<td>EPA</td>\n</tr>\n<tr>\n<td><code>GIFTCARD</code></td>\n<td>Giftcard</td>\n</tr>\n<tr>\n<td><code>GIROPAY</code></td>\n<td>Giropay</td>\n</tr>\n<tr>\n<td><code>IDEAL</code></td>\n<td>Ideal</td>\n</tr>\n<tr>\n<td><code>INGHOMEPAY</code></td>\n<td>Inghomepay</td>\n</tr>\n<tr>\n<td><code>KBC</code></td>\n<td>Kbc</td>\n</tr>\n<tr>\n<td><code>MYBANK</code></td>\n<td>Mybank</td>\n</tr>\n<tr>\n<td><code>PAYSAFECARD</code></td>\n<td>Paysafecard</td>\n</tr>\n<tr>\n<td><code>PRZELEWY24</code></td>\n<td>Przelewy24</td>\n</tr>\n<tr>\n<td><code>SOFORT</code></td>\n<td>Sofort</td>\n</tr>\n<tr>\n<td><code>ACH</code></td>\n<td>Ach</td>\n</tr>\n<tr>\n<td><code>BACS</code></td>\n<td>Bacs</td>\n</tr>\n<tr>\n<td><code>BECS</code></td>\n<td>Becs</td>\n</tr>\n<tr>\n<td><code>SEPA</code></td>\n<td>Sepa</td>\n</tr>\n<tr>\n<td><code>AUTOGIRO</code></td>\n<td>Autogiro</td>\n</tr>\n<tr>\n<td><code>SEPA_CORE</code></td>\n<td>Sepa_core</td>\n</tr>\n<tr>\n<td><code>CASH_OFFLINE</code></td>\n<td>Cash (offline)</td>\n</tr>\n<tr>\n<td><code>CHEQUE_OFFLINE</code></td>\n<td>Cheque (offline)</td>\n</tr>\n<tr>\n<td><code>CARD_OFFLINE</code></td>\n<td>Card (offline)</td>\n</tr>\n<tr>\n<td><code>DIRECT_DEBIT_OFFLINE</code></td>\n<td>Direct debit (offline)</td>\n</tr>\n<tr>\n<td><code>STANDING_ORDER_OFF</code></td>\n<td>Standing order (offline)</td>\n</tr>\n<tr>\n<td><code>BANK_TRANSFER_OFF</code></td>\n<td>Bank transfer (offline)</td>\n</tr>\n<tr>\n<td><code>PED</code></td>\n<td>PED / PDQ (ie card present)</td>\n</tr>\n<tr>\n<td><code>...</code></td>\n<td>Payment methods are added on a regular basic</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where each <code>payment_method</code> contains a list of features that are available. Please note, we do our best to automatically reflect what is supported by the gateway, but in some circumstances, we :</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>AUTHORISE</code></td>\n<td>Authorise (block money from a card) a payment</td>\n</tr>\n<tr>\n<td><code>AUTHORISE_AND_SAVE_TOKEN</code></td>\n<td>Tokenise a card whilst doing an authorisation</td>\n</tr>\n<tr>\n<td><code>AUTHORISE_ON_SAVED_TOKEN</code></td>\n<td>Authorise a payment using a saved token</td>\n</tr>\n<tr>\n<td><code>PAYMENT</code></td>\n<td>Perform a payment (ie authorise &amp; capture)</td>\n</tr>\n<tr>\n<td><code>PAYMENT_AND_SAVE_TOKEN</code></td>\n<td>Tokenise a card whist performing a payment</td>\n</tr>\n<tr>\n<td><code>PAYMENT_ON_SAVED_TOKEN</code></td>\n<td>Perform a payment using a saved token</td>\n</tr>\n<tr>\n<td><code>COMPLETE_AUTHORISATION</code></td>\n<td>Complete a security challenge</td>\n</tr>\n<tr>\n<td><code>CREATE_TOKEN</code></td>\n<td>Tokenise a card without a payment / authorisation</td>\n</tr>\n<tr>\n<td><code>UPDATE_TOKEN</code></td>\n<td>Update a card token (eg expiry date / billing address) without a payment / authorisation</td>\n</tr>\n<tr>\n<td><code>FULL_REFUND</code></td>\n<td>Fully refund a transaction</td>\n</tr>\n<tr>\n<td><code>PARTIAL_REFUND</code></td>\n<td>Refund part of a transaction, eg refund $5 of a $10 payment</td>\n</tr>\n<tr>\n<td><code>MULTI_REFUND</code></td>\n<td>Refund a transaction in multiple parts, eg refund $6 of a $10 payment, and then refund the remaining $4</td>\n</tr>\n<tr>\n<td><code>CAPTURE</code></td>\n<td>Capture part or all of an authorisation, note: you can only capture up to the authorised amount</td>\n</tr>\n<tr>\n<td><code>MULTI_CAPTURE</code></td>\n<td>Capture an authorisation in multiple parts, eg capture $6 of a $10 payment, and then capture another $2</td>\n</tr>\n<tr>\n<td><code>VOID</code></td>\n<td>Void (release) an authorisation</td>\n</tr>\n<tr>\n<td><code>REQUIRE_AVS</code></td>\n<td>All payments / authorisations using card details (not a token) require a billing address</td>\n</tr>\n<tr>\n<td><code>REQUIRE_CVC</code></td>\n<td>All payments / authorisations using card details (not a token) require a CVC</td>\n</tr>\n<tr>\n<td><code>REQUIRE_AVS_FOR_TOKEN</code></td>\n<td>All payments / authorisations using a token also require a billing address</td>\n</tr>\n<tr>\n<td><code>REQUIRE_CVC_FOR_TOKEN</code></td>\n<td>All payments / authorisations using a token also require a CVC</td>\n</tr>\n<tr>\n<td><code>REQUIRE_PAYMENT_PENDING</code></td>\n<td>Payment / authorise might return PENDING status, so your integration must support this status (eg via webhooks)</td>\n</tr>\n<tr>\n<td><code>REQUIRE_CAPTURE_PENDING</code></td>\n<td>Capture might return PENDING status, so your integration must support this status (eg via webhooks)</td>\n</tr>\n<tr>\n<td><code>REQUIRE_REFUND_PENDING</code></td>\n<td>Refunds might return PENDING status, so your integration must support this status (eg via webhooks)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","gateways","{{gateway_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"36f0ef9b-c546-4d79-89df-dcd785260b84","name":"Get a gateway","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 20 Oct 2020 14:49:20 GMT","enabled":true},{"key":"Server","value":"nginx/1.18.0","enabled":true},{"key":"x-powered-by","value":"Express","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"kcjqxjWq+PzKpqJhxoUeGg==\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 716fd417a527ecd4f9d6cef2c9258583.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"En2ZGNTMtOt_N5S32bdllytzZl-p8GYO48BQXBK2qPDXi_EH34vZ4w==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"gateway\": {\n        \"id\": \"gw_11842_10000\",\n        \"name\": \"STRIPE\",\n        \"code\": \"P010000\",\n        \"division\": \"div_11842_1\",\n        \"status\": \"ACTIVE\",\n        \"processor\": \"STRIPE\",\n        \"processor_name\": \"Stripe\",\n        \"processor_account_name\": \"Taters Ltd\",\n        \"gateway_group\": \"gw_11842_10000\",\n        \"created\": \"2020-04-08T09:28:14.000Z\",\n        \"updated\": \"2020-04-08T09:29:49.000Z\",\n        \"currencies\": [\n            \"AED\",\n            \"AFN\",\n            \"ALL\",\n            \"AMD\",\n            \"ANG\",\n            \"AOA\",\n            \"ARS\",\n            \"AUD\",\n            \"AWG\",\n            \"AZN\",\n            \"BAM\",\n            \"BBD\",\n            \"BDT\",\n            \"BGN\",\n            \"BIF\",\n            \"BMD\",\n            \"BND\",\n            \"BOB\",\n            \"BRL\",\n            \"BSD\",\n            \"BWP\",\n            \"BZD\",\n            \"CAD\",\n            \"CDF\",\n            \"CHF\",\n            \"CLP\",\n            \"CNY\",\n            \"COP\",\n            \"CRC\",\n            \"CVE\",\n            \"CZK\",\n            \"DJF\",\n            \"DKK\",\n            \"DOP\",\n            \"DZD\",\n            \"EGP\",\n            \"ETB\",\n            \"EUR\",\n            \"FJD\",\n            \"FKP\",\n            \"GBP\",\n            \"GEL\",\n            \"GIP\",\n            \"GMD\",\n            \"GNF\",\n            \"GTQ\",\n            \"GYD\",\n            \"HKD\",\n            \"HNL\",\n            \"HRK\",\n            \"HTG\",\n            \"HUF\",\n            \"IDR\",\n            \"ILS\",\n            \"INR\",\n            \"ISK\",\n            \"JMD\",\n            \"JPY\",\n            \"KES\",\n            \"KGS\",\n            \"KHR\",\n            \"KMF\",\n            \"KRW\",\n            \"KYD\",\n            \"KZT\",\n            \"LAK\",\n            \"LBP\",\n            \"LKR\",\n            \"LRD\",\n            \"LSL\",\n            \"MAD\",\n            \"MDL\",\n            \"MGA\",\n            \"MKD\",\n            \"MNT\",\n            \"MOP\",\n            \"MRO\",\n            \"MUR\",\n            \"MVR\",\n            \"MWK\",\n            \"MXN\",\n            \"MYR\",\n            \"MZN\",\n            \"NAD\",\n            \"NGN\",\n            \"NIO\",\n            \"NOK\",\n            \"NPR\",\n            \"NZD\",\n            \"PAB\",\n            \"PEN\",\n            \"PGK\",\n            \"PHP\",\n            \"PKR\",\n            \"PLN\",\n            \"PYG\",\n            \"QAR\",\n            \"RON\",\n            \"RSD\",\n            \"RUB\",\n            \"RWF\",\n            \"SAR\",\n            \"SBD\",\n            \"SCR\",\n            \"SEK\",\n            \"SGD\",\n            \"SHP\",\n            \"SLL\",\n            \"SOS\",\n            \"SRD\",\n            \"STD\",\n            \"SVC\",\n            \"SZL\",\n            \"THB\",\n            \"TJS\",\n            \"TOP\",\n            \"TRY\",\n            \"TTD\",\n            \"TWD\",\n            \"TZS\",\n            \"UAH\",\n            \"UGX\",\n            \"USD\",\n            \"UYU\",\n            \"UZS\",\n            \"VND\",\n            \"VUV\",\n            \"WST\",\n            \"XAF\",\n            \"XCD\",\n            \"XOF\",\n            \"XPF\",\n            \"YER\",\n            \"ZAR\",\n            \"ZMW\"\n        ],\n        \"payment_method_types\": {\n            \"VISA\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"MASTERCARD\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"AMEX\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"JCB\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DISCOVER\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DINERS\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            }\n        },\n        \"payment_method_types_moto\": {\n            \"VISA\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"MASTERCARD\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"AMEX\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"JCB\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DISCOVER\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DINERS\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            }\n        }\n    }\n}"}],"_postman_id":"736178ba-b75c-40d2-b2cb-4403c1ae3bcd"},{"name":"Create a gateway","id":"b8722eda-6508-442f-ae1c-10442d5b1304","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"gateway\": {\n        \"processor\": \"SANDBOX\",\n        \"values\": {}\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways","description":"<p>Creating a gateway will establish a new connection to a payment processor. In general this API can be used for:</p>\n<ul>\n<li><p>Duplicating a gateway (eg moving it to another instance)</p>\n</li>\n<li><p>A bespoke onboarding process / UX</p>\n</li>\n<li><p>Client migration to Shuttle</p>\n</li>\n</ul>\n<p>Processors and valid values change regularly, as such, other than using it to duplicate a gateway connection, this API is intended to be used in conjunction with Shuttle support.</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>processor</code></td>\n<td>The processor ID, for valid options contact support.</td>\n</tr>\n<tr>\n<td><code>values</code></td>\n<td>A map of parameters, specific to the gateway, for valid options contact support.</td>\n</tr>\n<tr>\n<td><code>oauth_data</code></td>\n<td>The results of an OAUTH process for gateways that require OAUTH, for valid options contact support.</td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>(optional) The <code>id</code> or <code>code</code> of the legal_entity you want all payment methods available on this processor to be enabled and routed to this gateway. Take care as this will override any existing configuration you have if a gateway is already connected. If you are using a single <code>legal_entity</code> setup, the default <code>legal_entity</code> is <code>ORG</code>.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>gateway</code></td>\n<td>The gateway created</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","gateways"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"076bc147-7945-4e69-9401-930c61027c59","name":"Create a gateway","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"gateway\": {\n        \"processor\": \"SANDBOX\",\n        \"values\": {}\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 14 Dec 2023 11:27:26 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"X-Powered-By","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"content-encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 efca49fcadff9ca70aeb28e1a7858992.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"xKsIlaqpUUXH2B46OPq8366Au10NVOH0pXS8MebxV7kPpOkq8hyT7A==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"gateway\": {\n        \"id\": \"gw_11842_10021\",\n        \"name\": \"Sandbox\",\n        \"code\": \"P010021\",\n        \"division\": \"div_11842_1\",\n        \"status\": \"SETUP\",\n        \"processor\": \"SANDBOX\",\n        \"processor_name\": \"Sandbox\",\n        \"processor_account_name\": \"Sandbox #e696\",\n        \"gateway_group\": \"gw_11842_10021\",\n        \"created\": \"2023-12-14T11:27:24.000Z\",\n        \"updated\": \"2023-12-14T11:27:24.000Z\",\n        \"currencies\": [\n            \"AED\",\n            \"AFN\",\n            \"ALL\",\n            \"AMD\",\n            \"ANG\",\n            \"AOA\",\n            \"ARS\",\n            \"AUD\",\n            \"AWG\",\n            \"AZN\",\n            \"BAM\",\n            \"BBD\",\n            \"BDT\",\n            \"BGN\",\n            \"BHD\",\n            \"BIF\",\n            \"BMD\",\n            \"BND\",\n            \"BOB\",\n            \"BOV\",\n            \"BRL\",\n            \"BSD\",\n            \"BTN\",\n            \"BWP\",\n            \"BYR\",\n            \"BZD\",\n            \"CAD\",\n            \"CDF\",\n            \"CHE\",\n            \"CHF\",\n            \"CHW\",\n            \"CLF\",\n            \"CLP\",\n            \"CNY\",\n            \"COP\",\n            \"COU\",\n            \"CRC\",\n            \"CUC\",\n            \"CUP\",\n            \"CVE\",\n            \"CZK\",\n            \"DJF\",\n            \"DKK\",\n            \"DOP\",\n            \"DZD\",\n            \"EGP\",\n            \"ERN\",\n            \"ETB\",\n            \"EUR\",\n            \"FJD\",\n            \"FKP\",\n            \"GBP\",\n            \"GEL\",\n            \"GHS\",\n            \"GIP\",\n            \"GMD\",\n            \"GNF\",\n            \"GTQ\",\n            \"GYD\",\n            \"HKD\",\n            \"HNL\",\n            \"HRK\",\n            \"HTG\",\n            \"HUF\",\n            \"IDR\",\n            \"ILS\",\n            \"INR\",\n            \"IQD\",\n            \"IRR\",\n            \"ISK\",\n            \"JMD\",\n            \"JOD\",\n            \"JPY\",\n            \"KES\",\n            \"KGS\",\n            \"KHR\",\n            \"KMF\",\n            \"KPW\",\n            \"KRW\",\n            \"KWD\",\n            \"KYD\",\n            \"KZT\",\n            \"LAK\",\n            \"LBP\",\n            \"LKR\",\n            \"LRD\",\n            \"LSL\",\n            \"LTL\",\n            \"LVL\",\n            \"LYD\",\n            \"MAD\",\n            \"MDL\",\n            \"MGA\",\n            \"MKD\",\n            \"MMK\",\n            \"MNT\",\n            \"MOP\",\n            \"MRO\",\n            \"MUR\",\n            \"MVR\",\n            \"MWK\",\n            \"MXN\",\n            \"MXV\",\n            \"MYR\",\n            \"MZN\",\n            \"NAD\",\n            \"NGN\",\n            \"NIO\",\n            \"NOK\",\n            \"NPR\",\n            \"NZD\",\n            \"OMR\",\n            \"PAB\",\n            \"PEN\",\n            \"PGK\",\n            \"PHP\",\n            \"PKR\",\n            \"PLN\",\n            \"PYG\",\n            \"QAR\",\n            \"RON\",\n            \"RSD\",\n            \"RUB\",\n            \"RWF\",\n            \"SAR\",\n            \"SBD\",\n            \"SCR\",\n            \"SDG\",\n            \"SEK\",\n            \"SGD\",\n            \"SHP\",\n            \"SLL\",\n            \"SOS\",\n            \"SRD\",\n            \"SSP\",\n            \"STD\",\n            \"SVC\",\n            \"SYP\",\n            \"SZL\",\n            \"THB\",\n            \"TJS\",\n            \"TMT\",\n            \"TND\",\n            \"TOP\",\n            \"TRY\",\n            \"TTD\",\n            \"TWD\",\n            \"TZS\",\n            \"UAH\",\n            \"UGX\",\n            \"USD\",\n            \"USN\",\n            \"USS\",\n            \"UYI\",\n            \"UYU\",\n            \"UZS\",\n            \"VEF\",\n            \"VND\",\n            \"VUV\",\n            \"WST\",\n            \"XAF\",\n            \"XAG\",\n            \"XAU\",\n            \"XBA\",\n            \"XBB\",\n            \"XBC\",\n            \"XBD\",\n            \"XCD\",\n            \"XDR\",\n            \"XOF\",\n            \"XPD\",\n            \"XPF\",\n            \"XPT\",\n            \"XTS\",\n            \"XXX\",\n            \"YER\",\n            \"ZAR\",\n            \"ZMK\",\n            \"ZMW\",\n            \"BTC\"\n        ],\n        \"payment_method_types\": {},\n        \"payment_method_types_moto\": {},\n        \"features\": [\n            \"AUTHENTICATE\",\n            \"CREDIT_MESSAGE\",\n            \"AUTHENTICATE_CAPTURE_SHIPPING\",\n            \"AUTHENTICATE_PAYMENT_TOKEN\",\n            \"CONNECTIVITY\",\n            \"DYNAMIC_PAYMENTMETHOD_DETAILS\"\n        ],\n        \"v\": 104210\n    }\n}"}],"_postman_id":"b8722eda-6508-442f-ae1c-10442d5b1304"},{"name":"Update a gateway","id":"8336368c-b3e6-48d5-ae5d-eb7dc6b3c1a2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"gateway\": {\n        \"values\": {},\n        \"status\": \"ACTIVE\",\n        \"tags\": [\"VIP\"],\n        \"metadata\": {\"key\": \"value\"}\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}","description":"<p>Updating a gateway is intended to be used in conjunction with Shuttle support. </p>\n<ul>\n<li><code>{{gateway_id}}</code> can be either ID, or code</li>\n</ul>\n<p>Request: </p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>status</code></td>\n<td>(optional) you can update the status to one of <code>ACTIVE</code>, <code>RUNDOWN</code>, <code>ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>values</code></td>\n<td>A map of parameters, specific to the gateway, for valid options contact support.</td>\n</tr>\n<tr>\n<td><code>tags</code></td>\n<td>An array of strings to store on this objects, you can search objects by tag</td>\n</tr>\n<tr>\n<td><code>metadata</code></td>\n<td>A list of key values pairs to store on a object</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>gateway</code></td>\n<td>The gateway updated</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code>: </p>\n<ul>\n<li><code>ACTIVE</code>: Supports new payments and new payment methods</li>\n<li><code>RUNDOWN</code>: Only support payments on existing payment_methods</li>\n<li><code>ARCHIVE</code>: Does not support new payments or payment_methods, nor will any API requests be made to the gateway in this status</li>\n</ul>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","gateways","{{gateway_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"a67de144-5f24-4bee-8d94-d62b501fceb9","name":"Update a gateway","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"gateway\": {\n        \"values\": {},\n        \"status\": \"ACTIVE\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 14 Dec 2023 12:05:06 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"X-Powered-By","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"content-encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 efca49fcadff9ca70aeb28e1a7858992.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"9-XcrwFzdPlJnpXKMPYAkxS40lfecqzxIgFWUvKlCxKvRNDATMlCEA==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"gateway\": {\n        \"id\": \"gw_11842_10000\",\n        \"name\": \"STRIPE\",\n        \"code\": \"P010000\",\n        \"division\": \"div_11842_1\",\n        \"status\": \"ACTIVE\",\n        \"processor\": \"STRIPE\",\n        \"processor_name\": \"Stripe\",\n        \"processor_account_name\": \"Taters Ltd\",\n        \"gateway_group\": \"gw_11842_10000\",\n        \"created\": \"2020-04-08T09:28:14.000Z\",\n        \"updated\": \"2023-12-14T12:05:03.000Z\",\n        \"currencies\": [\n            \"AED\",\n            \"AFN\",\n            \"ALL\",\n            \"AMD\",\n            \"ANG\",\n            \"AOA\",\n            \"ARS\",\n            \"AUD\",\n            \"AWG\",\n            \"AZN\",\n            \"BAM\",\n            \"BBD\",\n            \"BDT\",\n            \"BGN\",\n            \"BIF\",\n            \"BMD\",\n            \"BND\",\n            \"BOB\",\n            \"BRL\",\n            \"BSD\",\n            \"BWP\",\n            \"BZD\",\n            \"CAD\",\n            \"CDF\",\n            \"CHF\",\n            \"CLP\",\n            \"CNY\",\n            \"COP\",\n            \"CRC\",\n            \"CVE\",\n            \"CZK\",\n            \"DJF\",\n            \"DKK\",\n            \"DOP\",\n            \"DZD\",\n            \"EGP\",\n            \"ETB\",\n            \"EUR\",\n            \"FJD\",\n            \"FKP\",\n            \"GBP\",\n            \"GEL\",\n            \"GIP\",\n            \"GMD\",\n            \"GNF\",\n            \"GTQ\",\n            \"GYD\",\n            \"HKD\",\n            \"HNL\",\n            \"HRK\",\n            \"HTG\",\n            \"HUF\",\n            \"IDR\",\n            \"ILS\",\n            \"INR\",\n            \"ISK\",\n            \"JMD\",\n            \"JPY\",\n            \"KES\",\n            \"KGS\",\n            \"KHR\",\n            \"KMF\",\n            \"KRW\",\n            \"KYD\",\n            \"KZT\",\n            \"LAK\",\n            \"LBP\",\n            \"LKR\",\n            \"LRD\",\n            \"LSL\",\n            \"MAD\",\n            \"MDL\",\n            \"MGA\",\n            \"MKD\",\n            \"MNT\",\n            \"MOP\",\n            \"MRO\",\n            \"MUR\",\n            \"MVR\",\n            \"MWK\",\n            \"MXN\",\n            \"MYR\",\n            \"MZN\",\n            \"NAD\",\n            \"NGN\",\n            \"NIO\",\n            \"NOK\",\n            \"NPR\",\n            \"NZD\",\n            \"PAB\",\n            \"PEN\",\n            \"PGK\",\n            \"PHP\",\n            \"PKR\",\n            \"PLN\",\n            \"PYG\",\n            \"QAR\",\n            \"RON\",\n            \"RSD\",\n            \"RUB\",\n            \"RWF\",\n            \"SAR\",\n            \"SBD\",\n            \"SCR\",\n            \"SEK\",\n            \"SGD\",\n            \"SHP\",\n            \"SLL\",\n            \"SOS\",\n            \"SRD\",\n            \"STD\",\n            \"SVC\",\n            \"SZL\",\n            \"THB\",\n            \"TJS\",\n            \"TOP\",\n            \"TRY\",\n            \"TTD\",\n            \"TWD\",\n            \"TZS\",\n            \"UAH\",\n            \"UGX\",\n            \"USD\",\n            \"UYU\",\n            \"UZS\",\n            \"VND\",\n            \"VUV\",\n            \"WST\",\n            \"XAF\",\n            \"XCD\",\n            \"XOF\",\n            \"XPF\",\n            \"YER\",\n            \"ZAR\",\n            \"ZMW\"\n        ],\n        \"payment_method_types\": {\n            \"AMEX\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"MASTERCARD\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"DISCOVER\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"JCB\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"VISA\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"UNKNOWN\": {\n                \"features\": [\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DINERS\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            }\n        },\n        \"payment_method_types_moto\": {\n            \"AMEX\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"MASTERCARD\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"DISCOVER\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"JCB\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"VISA\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            },\n            \"UNKNOWN\": {\n                \"features\": [\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DINERS\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\",\n                    \"RAW_PAN\"\n                ]\n            }\n        },\n        \"features\": [\n            \"PAYMENT\",\n            \"COMPLETE_AUTHORISATION\",\n            \"REQUIRE_REFUND_PENDING\",\n            \"RAW_PAN\",\n            \"FULL_REFUND\",\n            \"PARTIAL_REFUND\",\n            \"AUTHORISE_AND_SAVE_TOKEN\",\n            \"AUTHORISE_ON_SAVED_TOKEN\",\n            \"CONFIGURATION_SETTINGS\",\n            \"PAYMENT_STATUS\",\n            \"CONNECTIVITY\",\n            \"PAYMENT_AND_SAVE_TOKEN\",\n            \"PAYMENT_ON_SAVED_TOKEN\",\n            \"AUTHORISE\",\n            \"VOID\",\n            \"CAPTURE\",\n            \"VALIDATE_TOKEN\",\n            \"SAVE_CARD\",\n            \"MULTI_REFUND\"\n        ],\n        \"v\": 104212\n    }\n}"}],"_postman_id":"8336368c-b3e6-48d5-ae5d-eb7dc6b3c1a2"},{"name":"Get a gateway connection status","id":"6b575809-2674-43da-9074-249487ec68a3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}/connection","description":"<p>This endpoint will attempt to reach the gateway using the credentials configured on the gateway.</p>\n<p>Request: </p>\n<ul>\n<li><code>gateway_id</code> is our ID or your ID for the gateway (<code>id</code> or <code>code</code>)</li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>our ID for the gateway</td>\n</tr>\n<tr>\n<td><code>connection_status</code></td>\n<td>the status of the connection attempt, see below</td>\n</tr>\n<tr>\n<td><code>connection_status_date</code></td>\n<td>the date/time the connection was made, this should be \"now\" however in some circumstances may returned a  cached value - in which case this is the time the connection was made.</td>\n</tr>\n<tr>\n<td><code>connection_message</code></td>\n<td>if a connection could not be established, an error message</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>connection_status</code> is one of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>OK</code></td>\n<td>a connection could be made to the gateway using the configured credentials</td>\n</tr>\n<tr>\n<td><code>WARNING</code></td>\n<td>a connection could be made, however theres a warning about this account (see connection_message)</td>\n</tr>\n<tr>\n<td><code>FAILED</code></td>\n<td>a connection could NOT be made to the gateway using the configured credentials</td>\n</tr>\n<tr>\n<td><code>UNKNOWN</code></td>\n<td>the connection could not be tested</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","gateways","{{gateway_id}}","connection"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"2ccbfd16-bb7a-4da6-89c5-6222b256011b","name":"Get a gateway connection status","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}/connection"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"104","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 03 Jul 2020 15:56:22 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"73-ec2ade48-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 af82af67460d4533dad2305c32467799.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"WBQdN_qeP7vZP865m9QBYQ7MWXQqkwoFrbfevnVk0IVG-a1FvtWeag==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"connection\": {\n        \"id\": \"gw_11842_10000\",\n        \"connection_status\": \"OK\",\n        \"connection_status_date\": \"2020-07-03T15:56:22.154Z\"\n    }\n}"}],"_postman_id":"6b575809-2674-43da-9074-249487ec68a3"},{"name":"Get a gateway settings","id":"d2eeb043-a11b-4309-b3e4-85285be44f01","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}/settings","description":"<p>COMING SOON</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","gateways","{{gateway_id}}","settings"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[],"_postman_id":"d2eeb043-a11b-4309-b3e4-85285be44f01"},{"name":"Get a gateway's saved payment methods","id":"7ed820ae-109c-4834-80ba-e02b348cd01f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}/payment_method_count","description":"<p>Request: </p>\n<ul>\n<li><code>gateway_id</code> is our ID or your ID for the gateway (<code>id</code> or <code>code</code>)</li>\n</ul>\n<p>This method will return the approximate number of saved payment methods on a gateway. Please note, the number is accurate as of the \"updated\" date, however a cached value will be returned if more than 100 in total. The duration of the cache scales with the number of saved payment methods, values over 10k will only be updated monthly</p>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>gateway</code></td>\n<td>the id of the gateway</td>\n</tr>\n<tr>\n<td><code>total</code></td>\n<td>the total number of saved payment methods</td>\n</tr>\n<tr>\n<td><code>by_status</code></td>\n<td>a breakdown by status of the payment method</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>the date the data is accurate as of</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>by_status</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ACTIVE</code></td>\n<td>the last time the payment method was used was successful</td>\n</tr>\n<tr>\n<td><code>FAILING</code></td>\n<td>the last time the payment method was used was declined</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","gateways","{{gateway_id}}","payment_method_count"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"86366fd2-d617-4fa7-a50c-c3288b010495","name":"Get a gateway Copy","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}/payment_method_count"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"112","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 05 Dec 2023 13:35:26 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"X-Powered-By","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"70-2ad58c79\"","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 e8e3e4a0596538784f828169a2baf0c2.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"Cf08i4x7WcS4WWvI134j6yfuK2dICbMMCNTRzIJy6WrpdyO3bQ2t5w==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"gateway\": \"gw_11842_10000\",\n    \"total\": 0,\n    \"by_status\": {\n        \"ACTIVE\": 0,\n        \"FAILING\": 0\n    },\n    \"updated\": \"2023-12-05T13:35:26.273Z\"\n}"}],"_postman_id":"7ed820ae-109c-4834-80ba-e02b348cd01f"}],"id":"f2cac25c-faec-42f0-a54e-5eb8d01c6817","_postman_id":"f2cac25c-faec-42f0-a54e-5eb8d01c6817","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Instances","item":[{"name":"List instances","id":"053924c2-304a-4301-a5f5-12b19490fc2c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances","description":"<p>This request performs a simple search against <code>instance</code> objects:</p>\n<ul>\n<li><code>criteria</code>: The search criteria (URL encoded).</li>\n<li><code>order</code>: The sort you would like to apply</li>\n<li><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object) </li>\n<li><code>limit</code>: The maximum records to return </li>\n<li><code>offset</code>: The offset from the first records to start returning records</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>: </p>\n<ul>\n<li>application</li>\n<li>client</li>\n<li>contact_email</li>\n<li>contact_name</li>\n<li>contact_phone</li>\n<li>created</li>\n<li>domain</li>\n<li>id</li>\n<li>last_contract</li>\n<li>last_transaction</li>\n<li>name</li>\n<li>status</li>\n<li>updated</li>\n</ul>\n<p>Expand: </p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>instances</code></td>\n<td>an array of <code>instance</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"e073b04e-613b-498f-94ce-5da60ba408fb","name":"List instances","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.shuttleglobal.com/c/api/instances?criteria=status%3dACTIVE","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances"],"query":[{"key":"criteria","value":"status%3dACTIVE"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"372","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Mon, 13 Jul 2020 16:36:01 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"3e6-d6554352-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 516095c9a3b728e41fe89e2984dbeaa3.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"ueVnoZu2nBedR7Pfl6Wcu9-cqvkFiAYF3ek3JO0DbX4-oCTEVKNKMQ==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"instances\": [\n        {\n            \"id\": \"cl_11842\",\n            \"name\": \"API Documentation\",\n            \"contact_name\": \"Phil Peters\",\n            \"contact_phone\": \"+447123456789\",\n            \"contact_email\": \"phil@shuttleglobal.com\",\n            \"domains\": [\n                \"payments-1586338058.withbolt.com\"\n            ],\n            \"application\": \"app_1186_6134\",\n            \"instance_key\": \"B73A-20E5\",\n            \"parent\": \"cl_1186\",\n            \"status\": \"ACTIVE\",\n            \"created\": \"2020-04-08T09:27:45.000Z\"\n        },\n        {\n            \"id\": \"cl_8902\",\n            \"name\": \"Dave's Bakery\",\n            \"contact_name\": \"David Smith\",\n            \"contact_phone\": \"447123456789\",\n            \"contact_email\": \"david@davesbakery.com\",\n            \"domains\": [\n                \"payments-1572001679.withbolt.com\"\n            ],\n            \"application\": \"app_1186_6134\",\n            \"instance_key\": \"10000\",\n            \"parent\": \"cl_1186\",\n            \"status\": \"ACTIVE\",\n            \"created\": \"2019-10-25T11:08:06.000Z\"\n        },\n        {\n            \"id\": \"cl_8790\",\n            \"name\": \"Dave's Bakery\",\n            \"contact_name\": \"Dave's Bakery\",\n            \"contact_phone\": \"447123456789\",\n            \"contact_email\": \"david@davesbakery.com\",\n            \"domains\": [\n                \"payments-1572001705.withbolt.com\"\n            ],\n            \"application\": \"app_1186_6134\",\n            \"instance_key\": \"10001\",\n            \"parent\": \"cl_1186\",\n            \"status\": \"ACTIVE\",\n            \"created\": \"2019-10-25T11:08:29.000Z\"\n        }\n    ],\n    \"meta\": {\n        \"limit\": 20,\n        \"total\": 3\n    }\n}"}],"_postman_id":"053924c2-304a-4301-a5f5-12b19490fc2c"},{"name":"Get instance","id":"04a49059-4489-45f2-be37-403b945193a0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}","description":"<p>Request:</p>\n<ul>\n<li><code>instance_id</code> is our ID or your ID for the instance (<code>id</code> or <code>instance_key</code>)</li>\n</ul>\n<p>You can <code>expand</code> the following fields:</p>\n<ul>\n<li><code>application</code></li>\n<li><code>secret_key</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>application</code></td>\n<td>the application the instance was created in</td>\n</tr>\n<tr>\n<td><code>checkout_urls</code></td>\n<td>an array of URLs that checkout may appear on, used for Apple Pay and Paypal registration.</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>the internal Shuttle ID for this instance</td>\n</tr>\n<tr>\n<td><code>contact_email</code></td>\n<td>the contact email provided for the instance, this is used when providing support</td>\n</tr>\n<tr>\n<td><code>contact_name</code></td>\n<td>the contact name provided for the instance, this is used when providing support</td>\n</tr>\n<tr>\n<td><code>contact_phone</code></td>\n<td>the contact phone provided for the instance, this is used when providing support</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>the country provided for the instance</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>the date the instance was created</td>\n</tr>\n<tr>\n<td><code>domains</code></td>\n<td>a list of domains this instance is available under</td>\n</tr>\n<tr>\n<td><code>environment</code></td>\n<td>either <code>SANDBOX</code> or <code>LIVE</code></td>\n</tr>\n<tr>\n<td><code>features</code></td>\n<td>(enterprise only)</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>our ID for the instance (globally unique)</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>your ID for the instance (unique to the application)</td>\n</tr>\n<tr>\n<td><code>last_contract</code></td>\n<td>the date of last contract creation</td>\n</tr>\n<tr>\n<td><code>last_transaction</code></td>\n<td>the date of last transaction creation</td>\n</tr>\n<tr>\n<td><code>metadata</code></td>\n<td>a map of user defined key value pairs</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the name of the instance, typically company name</td>\n</tr>\n<tr>\n<td><code>private_integrations</code></td>\n<td>any private processors that have been made available to this instance (some integrations are not general availability)</td>\n</tr>\n<tr>\n<td><code>processors</code></td>\n<td>a list of connected processors eg <code>[\"STRIPE\",\"PAYPAL\"]</code></td>\n</tr>\n<tr>\n<td><code>secret_key</code></td>\n<td>(only with <code>expand</code>) the API key for this instance</td>\n</tr>\n<tr>\n<td><code>receipt_format</code></td>\n<td>the format used when generating transaction references, it must include <code>#TRANSACTIONKEY#</code> which will be replaced with an eight digit number</td>\n</tr>\n<tr>\n<td><code>report_users</code></td>\n<td>(enterprise only)</td>\n</tr>\n<tr>\n<td><code>receipt_users</code></td>\n<td>(enterprise only)</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the instanced, typically <code>ACTIVE</code> or <code>INACTIVE</code></td>\n</tr>\n<tr>\n<td><code>tcs_accepted_user</code></td>\n<td>the user_id of the user that accepted the terms and conditions</td>\n</tr>\n<tr>\n<td><code>tcs_accepted</code></td>\n<td>if the user manually accepted the T&amp;Cs, the date they were accepted</td>\n</tr>\n<tr>\n<td><code>tcs_outstanding</code></td>\n<td><code>true</code> if the user is required to accept the terms and conditions. A merchant MUST accept Shuttles T&amp;Cs to use the platform, however the recommended way of doing this is to bundled our T&amp;Cs into the SaaS platform's T&amp;Cs, and indicate this on the application. If this has not been performed the user will be required to accept the T&amp;Cs during processor connection.</td>\n</tr>\n<tr>\n<td><code>terminated</code></td>\n<td>the date the instance was terminated (status <code>INACTIVE</code> only)</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>the date the instance was last updated</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the record</td>\n</tr>\n<tr>\n<td><code>webhook_target</code></td>\n<td>the URL for webhooks related to this instance (see webhook documentation for format )</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code> is one of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ACTIVATING</code></td>\n<td>When an instance is first created it is in status <code>ACTIVATING</code> for 10-30 seconds, do not use until ACTIVE</td>\n</tr>\n<tr>\n<td><code>ACTIVE</code></td>\n<td>This instance is currently enabled</td>\n</tr>\n<tr>\n<td><code>INACTIVE</code></td>\n<td>This instance has been archived. Please note, an instance may appear as INACTIVE for up to 1 year, after which it will disappear.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"64537641-e54d-4ff3-b27c-17d1794efb00","name":"Get instance","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"315","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 31 Jul 2020 09:08:21 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"1bf-89485878-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 e3572bc2867545c7e2bf0953e1795991.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"NlCEswZCmRjMdcDZjK0gIdOhuXeJepVm6s42gZBE4qEjXXN5knvKCg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"instance\": {\n        \"id\": \"B73A-20E5\",\n        \"name\": \"API Documentation\",\n        \"client\": \"cl_11842\",\n        \"contact_name\": \"Phil Peters\",\n        \"contact_phone\": \"+447123456789\",\n        \"contact_email\": \"phil@shuttleglobal.com\",\n        \"country\": \"GB\",\n        \"domains\": [\n            \"payments-1586338058.withbolt.com\"\n        ],\n        \"receipt_format\": \"REF-#TRANSACTIONKEY#\",\n        \"application\": \"app_1186_6134\",\n        \"environment\": \"LIVE\",\n        \"tcs_outstanding\": true,\n        \"status\": \"ACTIVE\",\n        \"created\": \"2020-04-08T09:27:45.000Z\",\n        \"updated\": \"2020-04-08T09:27:45.000Z\"\n    }\n}"}],"_postman_id":"04a49059-4489-45f2-be37-403b945193a0"},{"name":"Create an instance","id":"cf558889-cb20-4375-819e-def485b6d58a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"instance\": {\n        \"instance_key\": \"I10000\",\n        \"name\": \"Test Instance\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances","description":"<p>You can create an instance via API or payments.js.</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>instance</code></td>\n<td>the instance to be created</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>instance</code> contains:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>instance_key</code></td>\n<td>your ID for the instance (unique to the application)</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the name of the instance, typically company name</td>\n</tr>\n<tr>\n<td><code>contact_name</code></td>\n<td>the contact name provided for the instance, this is used when providing support</td>\n</tr>\n<tr>\n<td><code>contact_phone</code></td>\n<td>the contact phone provided for the instance, this is used when providing support</td>\n</tr>\n<tr>\n<td><code>contact_email</code></td>\n<td>the contact email provided for the instance, this is used when providing support</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>the country provided for the instance</td>\n</tr>\n<tr>\n<td><code>tcs_accepted</code></td>\n<td><code>true</code> if the user manually accepted the T&amp;Cs - do not populate this unless you have collected proof of this</td>\n</tr>\n<tr>\n<td><code>receipt_format</code></td>\n<td>the format used when generating transaction references, it must include <code>#TRANSACTIONKEY#</code> which will be replaced with an eight digit number</td>\n</tr>\n<tr>\n<td><code>secret_key</code></td>\n<td>a security key that allows an instance to authenticate without the application's secret key, intended for on-prem installs. Its recommend you use a GUID if using this feature.</td>\n</tr>\n<tr>\n<td><code>checkout_urls</code></td>\n<td>an array of URLs that checkout may appear on, used for Apple Pay and Paypal registration.</td>\n</tr>\n<tr>\n<td><code>legal_entities</code></td>\n<td>(enterprise only) an array of legal entities that can receive payment.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>legal_entities</code> is (enterprise only):</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>code</code></td>\n<td>You ID for the entity (alphanumeric _ -, no spaces).</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>The name of the entity</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>(optional) the 2 digit ISO code of the country in which it is incorporated</td>\n</tr>\n</tbody>\n</table>\n</div><p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>instance</code></td>\n<td>the created instance - see \"Get Instance\"</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[],"_postman_id":"cf558889-cb20-4375-819e-def485b6d58a"},{"name":"Update an Instance","id":"9f22503b-d132-437f-8d26-4af5ee648014","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"instance\": {\n        \"instance_key\": \"I10000-NEW\",\n        \"name\": \"Test Instance - Updated\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}","description":"<p>You can update several fields on an instance. Only the passed fields will be updated, fields not passed will not be updated. To blank a field, pass the field with an empty string.</p>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>instance</code></td>\n<td>the instance to be created</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>instance</code> contains:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>instance_key</code></td>\n<td>if you want to UPDATE the instance key from that in the URL, the desired instance_key must be available.</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>if you want to change the application this instance belongs to. <strong>WARNING</strong> moving an instance to a new application will mean it is no longer available on this application, or using the current security credentials. You can only move to other applications within the same organisation , and the <code>instance_key</code> must be unused on the new organisation.</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the name of the instance, typically company name</td>\n</tr>\n<tr>\n<td><code>contact_name</code></td>\n<td>the contact name provided for the instance, this is used when providing support</td>\n</tr>\n<tr>\n<td><code>contact_phone</code></td>\n<td>the contact phone provided for the instance, this is used when providing support</td>\n</tr>\n<tr>\n<td><code>contact_email</code></td>\n<td>the contact email provided for the instance, this is used when providing support</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>the country provided for the instance</td>\n</tr>\n<tr>\n<td><code>tcs_accepted</code></td>\n<td><code>true</code> if the user manually accepted the T&amp;Cs - you can only modify this to true and not back again</td>\n</tr>\n<tr>\n<td><code>receipt_format</code></td>\n<td>the format used when generating transaction references, it must end with <code>#TRANSACTIONKEY#</code> which will be replaced with an eight digit number (RECOMMENDED) (or <code>#TRANSACTIONID#</code> which is a globally unique ID eg <code>tr_1234_5678</code>). It should not contain any special characters other than \"-\" and \"_\".</td>\n</tr>\n<tr>\n<td><code>checkout_urls</code></td>\n<td>an array of URLs that checkout may appear on, used for Apple Pay and Paypal registration.</td>\n</tr>\n<tr>\n<td><code>legal_entities</code></td>\n<td>(enterprise only) an array of legal entities that can receive payment.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>legal_entities</code> is (enterprise only):</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>code</code></td>\n<td>You ID for the entity (alphanumeric _ -, no spaces).</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>The name of the entity</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>(optional) The 2 digit ISO code of the country in which it is incorporated</td>\n</tr>\n</tbody>\n</table>\n</div><p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>instance</code></td>\n<td>the updated instance - see \"Get Instance\"</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[],"_postman_id":"9f22503b-d132-437f-8d26-4af5ee648014"},{"name":"Delete instance","id":"cbba376d-d752-419c-8720-dd4bb6b05e5a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/10002","description":"<p>Request: </p>\n<ul>\n<li><code>instance_id</code> is our ID or your ID for the instance (<code>id</code> or <code>instance_key</code>)</li>\n</ul>\n<p>Response:</p>\n<p><code>HTTP 204</code> - no body</p>\n<p><em>This endpoint will, with immediate affect mark an instance as INACTIVE. While the instance may exist in the instance list as INACTIVE for up to one year, it will be inaccesssible. No further instructions will be issued by the instance (including any instructions to cancel previously issued instructions, or invalidate previously generated third party credentials). Any instructions mid way through completion will lapse (eg an authorised payment not yet captured).</em></p>\n<p><strong>PLEASE USE WITH EXTREME CAUTION - THIS CANNOT BE REVERSED</strong></p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","10002"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"e98401e4-2b27-4501-8dd1-db90f2345c7b","name":"Delete instance","originalRequest":{"method":"DELETE","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}"},"status":"No Content","code":204,"_postman_previewlanguage":"plain","header":[{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Mon, 13 Jul 2020 16:32:12 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 516095c9a3b728e41fe89e2984dbeaa3.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"hbnJd5GutlW5oSDOX8ZeTd5V2ASlEAttjuxoYzm8b-r-dMJhRUwl0g==","enabled":true}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"cbba376d-d752-419c-8720-dd4bb6b05e5a"},{"name":"Get instance capabilities","id":"be31d7d7-01ed-4f0f-8959-0e25de2f2ed4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/capabilities?currency=USD","description":"<p>The capabilities API allows you to determine the payment capabilities of the instance, and determine if the instance is able to process a specific type of payment. Behind the scenes the merchant may have configured multiple payment processors to achieve this set of capabilities.. </p>\n<blockquote>\n<p><em>TIP!</em> This API does a good job at indicating if the merchant is ready to process a specific payment, however its designed as a <strong>simple</strong> representation of the <code>gateways</code> API and it is possible that at checkout no payment options are available. For example, if you are performing an \"AUTH\" in a currency that doesn't have the ability to do \"AUTH\"s (eg if the merchant has configured to only support ACH for USD payments).</p>\n</blockquote>\n<p>Query Parameters: </p>\n<ul>\n<li><code>currency</code> (optional): The ISO code of the currency of the transaction</li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>capabilities</code></td>\n<td>the capabilities object</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where a <code>capability</code>: </p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>the id of the set of capabilities</td>\n</tr>\n<tr>\n<td><code>payments_ready</code></td>\n<td>a boolean indicating if the instance is ready to process a form of payment</td>\n</tr>\n<tr>\n<td><code>currencies</code></td>\n<td>the list of currencies supported by the merchant, its possible some currencies may only support certain payment methods, for this level of breakdown look at the <code>gateways</code> API</td>\n</tr>\n<tr>\n<td><code>payment_method_types</code></td>\n<td>a list of payment method types for \"ECOMMERCE\" transactions (where the customer is paying)</td>\n</tr>\n<tr>\n<td><code>payment_method_types_moto</code></td>\n<td>a list of payment method types for \"MOTO\" transactions (where a staff member is entering the transaction on behalf of the customer)</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where a <code>payment_method_type</code>: </p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>key</td>\n<td>the is of the payment method</td>\n</tr>\n<tr>\n<td><code>features</code></td>\n<td>an array of features for that payment method</td>\n</tr>\n</tbody>\n</table>\n</div><p>NOTE: If the instance has not been created it will return a <code>HTTP 404</code> with a body <code>{\"code\":\"NOT_FOUND\",\"message\":\"Instance not found\"}</code>.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","capabilities"],"host":["app","shuttleglobal","com"],"query":[{"key":"currency","value":"USD"}],"variable":[]}},"response":[{"id":"a9c75c97-3663-4a0d-96cb-86ab7055219f","name":"Get Capabilities","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/capabilities"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 17 Aug 2021 13:32:21 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"X-Powered-By","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"agQDIK/b6hImlaXpk9kLfA==\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 20e9ac2e933b363bb35ea6c61802dc9a.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR3-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"MbT8qHcJlflucCTwcfpBJIxF4nO5RrWniKbVdFxMp_vHt9KAT9QhpQ==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"capabilities\": {\n        \"id\": \"11842_10001\",\n        \"payments_ready\": true,\n        \"currencies\": [\n            \"FJD\",\n            \"MXN\",\n            \"STD\",\n            \"SCR\",\n            \"CDF\",\n            \"BBD\",\n            \"GTQ\",\n            \"CLP\",\n            \"HNL\",\n            \"UGX\",\n            \"ZAR\",\n            \"BSD\",\n            \"SLL\",\n            \"GMD\",\n            \"TWD\",\n            \"RSD\",\n            \"DOP\",\n            \"KMF\",\n            \"MYR\",\n            \"FKP\",\n            \"XOF\",\n            \"GEL\",\n            \"UYU\",\n            \"MAD\",\n            \"CVE\",\n            \"TOP\",\n            \"AZN\",\n            \"PGK\",\n            \"KES\",\n            \"SEK\",\n            \"UAH\",\n            \"GNF\",\n            \"MZN\",\n            \"SVC\",\n            \"ARS\",\n            \"QAR\",\n            \"MRO\",\n            \"CNY\",\n            \"THB\",\n            \"UZS\",\n            \"XPF\",\n            \"BDT\",\n            \"BMD\",\n            \"PHP\",\n            \"RUB\",\n            \"PYG\",\n            \"ISK\",\n            \"JMD\",\n            \"COP\",\n            \"MKD\",\n            \"USD\",\n            \"DZD\",\n            \"PAB\",\n            \"SGD\",\n            \"ETB\",\n            \"KGS\",\n            \"SOS\",\n            \"VUV\",\n            \"LAK\",\n            \"BND\",\n            \"XAF\",\n            \"LRD\",\n            \"CHF\",\n            \"HRK\",\n            \"ALL\",\n            \"DJF\",\n            \"ZMW\",\n            \"TZS\",\n            \"VND\",\n            \"AUD\",\n            \"ILS\",\n            \"GYD\",\n            \"BOB\",\n            \"KHR\",\n            \"MDL\",\n            \"IDR\",\n            \"KYD\",\n            \"AMD\",\n            \"BWP\",\n            \"SHP\",\n            \"TRY\",\n            \"LBP\",\n            \"TJS\",\n            \"AED\",\n            \"HKD\",\n            \"RWF\",\n            \"EUR\",\n            \"LSL\",\n            \"DKK\",\n            \"CAD\",\n            \"BGN\",\n            \"MUR\",\n            \"NOK\",\n            \"GIP\",\n            \"RON\",\n            \"LKR\",\n            \"NGN\",\n            \"CRC\",\n            \"CZK\",\n            \"PKR\",\n            \"XCD\",\n            \"ANG\",\n            \"HTG\",\n            \"KZT\",\n            \"SRD\",\n            \"SZL\",\n            \"SAR\",\n            \"TTD\",\n            \"YER\",\n            \"MVR\",\n            \"AFN\",\n            \"INR\",\n            \"AWG\",\n            \"KRW\",\n            \"NPR\",\n            \"JPY\",\n            \"MNT\",\n            \"AOA\",\n            \"PLN\",\n            \"GBP\",\n            \"SBD\",\n            \"HUF\",\n            \"BIF\",\n            \"MWK\",\n            \"MGA\",\n            \"BZD\",\n            \"BAM\",\n            \"EGP\",\n            \"MOP\",\n            \"NAD\",\n            \"NIO\",\n            \"PEN\",\n            \"NZD\",\n            \"WST\",\n            \"BRL\"\n        ],\n        \"token_gateways\": [\n            \"11842_10000\"\n        ],\n        \"payment_method_types\": {\n            \"VISA\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"MASTERCARD\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"AMEX\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"JCB\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DISCOVER\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DINERS\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"UNKNOWN\": {\n                \"features\": [\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            }\n        },\n        \"payment_method_types_moto\": {\n            \"VISA\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"MASTERCARD\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"AMEX\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"JCB\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DISCOVER\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DINERS\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"REQUIRE_REFUND_PENDING\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"UNKNOWN\": {\n                \"features\": [\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            }\n        }\n    }\n}"}],"_postman_id":"be31d7d7-01ed-4f0f-8959-0e25de2f2ed4"}],"id":"28be67c6-fbf7-4459-b41c-0fdd58947589","_postman_id":"28be67c6-fbf7-4459-b41c-0fdd58947589","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Legal Entities","item":[{"name":"List legal entities","id":"ba08766b-6008-41ce-b8b5-ce69e9a82126","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/legal_entities","description":"<p>This request performs a simple search against <code>legal_entity</code> objects:</p>\n<ul>\n<li><code>criteria</code>: The search criteria (URL encoded).</li>\n<li><code>order</code> The sort you would like to apply</li>\n<li><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object) </li>\n<li><code>limit</code>: The maximum records to return </li>\n<li><code>offset</code>: The offset from the first records to start returning records</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>: </p>\n<ul>\n<li>id</li>\n<li>code</li>\n<li>created</li>\n<li>company_type</li>\n<li>division</li>\n<li>status</li>\n<li>updated</li>\n</ul>\n<p>Expand: </p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>legal_entities</code></td>\n<td>an array of <code>legal_entity</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","legal_entities"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"9cd8c28d-0e56-42d3-98ab-a4b71247166e","name":"List legal entities","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/legal_entities"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"208","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 24 Oct 2019 11:10:36 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"ff-aa6e453-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 089ee28df029aa2f4878a528c124aaf9.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR50-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"kebm8kFIZQxsUsZ2jXEANEKnXigATq6mI9OYqvZzpshc3hk7IvIxzg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"legal_entities\": [\n        {\n            \"id\": \"le_5139_10000\",\n            \"name\": \"PP2\",\n            \"code\": \"ORG\",\n            \"division\": \"div_5139_1\",\n            \"country\": \"GB\",\n            \"company_type\": \"GB_LIMITED_COMPANY\",\n            \"status\": \"ACTIVE\",\n            \"created\": \"2019-02-22T16:22:19.000Z\",\n            \"updated\": \"2019-08-06T10:15:31.000Z\"\n        }\n    ],\n    \"meta\": {\n        \"total\": 1\n    }\n}"}],"_postman_id":"ba08766b-6008-41ce-b8b5-ce69e9a82126"},{"name":"Get a legal_entity","id":"d8a59720-e1b2-49e3-a4a0-4e9c8eb79b44","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/legal_entities/{{legal_entity_id}}","description":"<p>Request:</p>\n<ul>\n<li><code>legal_entity_id</code> is our ID or your ID for the legal_entity (<code>id</code> or <code>code</code>)</li>\n</ul>\n<p>Expand:</p>\n<ul>\n<li><code>created_session</code>    </li>\n<li><code>updated_session</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>legal_entity</code></td>\n<td>the legal_entity being returned</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>legal_entity</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>our ID for the legal_entity</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the name of the legal_entity, this defaults as \"ORG\", however can be changed</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>your ID for the legal_entity (or autogenerated), this is the id displayed on the merchant portal</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the object was created</td>\n</tr>\n<tr>\n<td><code>created_session</code></td>\n<td>the session the object was created by</td>\n</tr>\n<tr>\n<td><code>division</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>company_type</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>company_type_name</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>company_number</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>charity_number</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>vat_number</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>phone</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>email</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>website</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>support_url</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>privacy_policy</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>tcs</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the legal_entity - see below</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>the date / time the legal_entity was created</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>the date / time the legal_entity was last updated</td>\n</tr>\n<tr>\n<td><code>updated_session</code></td>\n<td>the session the object was updated by</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the record version</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code> is one of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>LINKED</code></td>\n<td>the legal_entity is active but not yet had any payments taken</td>\n</tr>\n<tr>\n<td><code>ACTIVE</code></td>\n<td>the legal_entity is active and in use</td>\n</tr>\n<tr>\n<td><code>ARCHIVE</code></td>\n<td>the gateway has been \"disconnected\" and archived - no payments will be processed through it whilst ARCHIVED</td>\n</tr>\n<tr>\n<td><code>SETUP</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>CREATED</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>INACTIVE</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>RUNDOWN</code></td>\n<td>(enterprise)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","legal_entities","{{legal_entity_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"3d84201b-aac3-49e7-a2b7-b664de4a7c73","name":"Get a legal_entity","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/legal_entities/{{legal_entity_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"193","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 24 Oct 2019 11:16:00 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"e8-2cfe4a3b-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 089ee28df029aa2f4878a528c124aaf9.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR50-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"rL3cE5B6a9RKmy10AGhr2yoC_siPKN1Fg-iEoLKIvMvkyFiygiMd_g==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"legal_entity\": {\n        \"id\": \"le_5139_10000\",\n        \"name\": \"PP2\",\n        \"code\": \"ORG\",\n        \"division\": \"div_5139_1\",\n        \"country\": \"GB\",\n        \"company_type\": \"GB_LIMITED_COMPANY\",\n        \"status\": \"ACTIVE\",\n        \"created\": \"2019-02-22T16:22:19.000Z\",\n        \"updated\": \"2019-08-06T10:15:31.000Z\"\n    }\n}"}],"_postman_id":"d8a59720-e1b2-49e3-a4a0-4e9c8eb79b44"}],"id":"0cad966e-4c8e-4995-9026-bba79c8d5476","description":"<p>This is an <strong>enterprise feature</strong>.</p>\n<p>A <code>legal_entity</code> represents a real world company, which is incorporated in a country with a registered name, company type and company number. Additional information such as registered address, and contact details may be included for reference, or if you need to include these in receipting.</p>\n<p>In a typical environment you will only have a single legal_entity per instance (by default, this is named ORG), it is however possible to set up multiple entities with different gateways that sit behind each entity. Unless you configure multiple entities, the legal_entity for a payment will not be displayed in the merchant portal.</p>\n<p>You can then control how payments are routed to each entity:</p>\n<ul>\n<li>Via routing rules</li>\n<li>Manually as part of the payment request</li>\n<li>Split payments, with part of a payment going to entity 1 and part to entity 2</li>\n</ul>\n","event":[{"listen":"prerequest","script":{"id":"6bba06f4-6ef1-40d7-8065-31d4e15e8515","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"46cc108b-628c-49b7-9e14-d099f15df3b0","type":"text/javascript","exec":[""]}}],"_postman_id":"0cad966e-4c8e-4995-9026-bba79c8d5476","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Legal Entity Routes","item":[{"name":"List legal entity routes","id":"fb4bd2ac-5720-459b-8860-4387b1e22071","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/legal_entity_routes","description":"<p>This request performs a simple search against <code>legal_entity_route</code> objects:</p>\n<ul>\n<li><code>criteria</code>: The search criteria (URL encoded).</li>\n<li><code>order</code> The sort you would like to apply</li>\n<li><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object) </li>\n<li><code>limit</code>: The maximum records to return </li>\n<li><code>offset</code>: The offset from the first records to start returning records</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>: </p>\n<ul>\n<li>id</li>\n<li>created</li>\n<li>gateway</li>\n<li>legal_entity</li>\n<li>legal_entity_code</li>\n<li>status</li>\n<li>updated</li>\n</ul>\n<p>Expand: </p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>legal_entity_routes</code></td>\n<td>an array of <code>legal_entity_route</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","legal_entity_routes"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"a2f81e7d-f4ce-41f9-b993-8a0c705ebcec","name":"List legal entity routes","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/legal_entity_routes"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"641","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Mon, 28 Oct 2019 17:20:43 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"ETag","value":"W/\"ig1fukWx8rPokGfY2fNZ9A==-gzip\"","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 d5bf5eae21ab3c661f2c71654c0881f9.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR52-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"UnhY0zW7cT8L-LwGtTT0BhhlZAc00JERNQ245U9hahzxEVjUMroaiA==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"legal_entity_routes\": [\n        {\n            \"id\": \"lr_2356_1003\",\n            \"legal_entity\": \"le_2356_1003\",\n            \"gateway\": \"gw_2356_1003\",\n            \"status\": \"ACTIVE\",\n            \"currencies\": [\n                \"AFN\",\n                \"DZD\",\n                \"ARS\",\n                \"AMD\",\n                \"AWG\",\n                \"AUD\",\n                \"AZN\",\n                \"BSD\",\n                \"BHD\",\n                \"THB\",\n                \"PAB\",\n                \"BBD\",\n                \"BYN\",\n                \"BZD\",\n                \"BMD\",\n                \"VEF\",\n                \"BOB\",\n                \"BRL\",\n                \"BND\",\n                \"BGN\",\n                \"BIF\",\n                \"CVE\",\n                \"CAD\",\n                \"CLP\",\n                \"COP\",\n                \"KMF\",\n                \"CDF\",\n                \"NIO\",\n                \"CRC\",\n                \"CUP\",\n                \"CZK\",\n                \"GMD\",\n                \"DKK\",\n                \"MKD\",\n                \"DJF\",\n                \"STD\",\n                \"DOP\",\n                \"VND\",\n                \"XCD\",\n                \"EGP\",\n                \"SVC\",\n                \"ETB\",\n                \"EUR\",\n                \"FKP\",\n                \"FJD\",\n                \"HUF\",\n                \"GHS\",\n                \"GIP\",\n                \"HTG\",\n                \"PYG\",\n                \"GNF\",\n                \"GYD\",\n                \"HKD\",\n                \"UAH\",\n                \"ISK\",\n                \"INR\",\n                \"IRR\",\n                \"IQD\",\n                \"JMD\",\n                \"JOD\",\n                \"KES\",\n                \"PGK\",\n                \"HRK\",\n                \"KWD\",\n                \"AOA\",\n                \"MMK\",\n                \"LAK\",\n                \"GEL\",\n                \"LBP\",\n                \"ALL\",\n                \"HNL\",\n                \"SLL\",\n                \"LRD\",\n                \"LYD\",\n                \"SZL\",\n                \"LSL\",\n                \"MGA\",\n                \"MWK\",\n                \"MYR\",\n                \"MUR\",\n                \"MXN\",\n                \"MDL\",\n                \"MAD\",\n                \"MZN\",\n                \"BOV\",\n                \"NGN\",\n                \"ERN\",\n                \"NAD\",\n                \"NPR\",\n                \"ANG\",\n                \"ILS\",\n                \"TWD\",\n                \"NZD\",\n                \"BTN\",\n                \"KPW\",\n                \"NOK\",\n                \"MRO\",\n                \"TOP\",\n                \"PKR\",\n                \"MOP\",\n                \"CUC\",\n                \"UYU\",\n                \"PHP\",\n                \"GBP\",\n                \"BWP\",\n                \"QAR\",\n                \"GTQ\",\n                \"ZAR\",\n                \"OMR\",\n                \"KHR\",\n                \"RON\",\n                \"MVR\",\n                \"IDR\",\n                \"RUB\",\n                \"RWF\",\n                \"SHP\",\n                \"SAR\",\n                \"RSD\",\n                \"SCR\",\n                \"SGD\",\n                \"PEN\",\n                \"SBD\",\n                \"KGS\",\n                \"SOS\",\n                \"TJS\",\n                \"SSP\",\n                \"LKR\",\n                \"XSU\",\n                \"SDG\",\n                \"SRD\",\n                \"SEK\",\n                \"CHF\",\n                \"SYP\",\n                \"BDT\",\n                \"WST\",\n                \"TZS\",\n                \"KZT\",\n                \"TTD\",\n                \"MNT\",\n                \"TND\",\n                \"TRY\",\n                \"TMT\",\n                \"AED\",\n                \"UGX\",\n                \"CLF\",\n                \"COU\",\n                \"USD\",\n                \"UZS\",\n                \"VUV\",\n                \"KRW\",\n                \"YER\",\n                \"JPY\",\n                \"CNY\",\n                \"ZMW\",\n                \"ZWL\",\n                \"PLN\"\n            ],\n            \"card_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"DISCOVER\",\n                \"JCB\"\n            ],\n            \"created\": \"2019-10-21T16:55:55.000Z\",\n            \"updated\": \"2019-10-21T17:29:22.000Z\"\n        }\n    ],\n    \"meta\": {\n        \"total\": 1\n    }\n}"}],"_postman_id":"fb4bd2ac-5720-459b-8860-4387b1e22071"},{"name":"Get legal entity route","id":"b4faba78-1d5e-4e83-acb1-bba665ab2f82","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/legal_entity_routes/{{legal_entity_route_id}}","description":"<p>Available to expand:</p>\n<ul>\n<li><code>created_session</code>    </li>\n<li><code>gateway</code>    </li>\n<li><code>legal_entity</code></li>\n<li><code>updated_session</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>the id for the route</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the route was created</td>\n</tr>\n<tr>\n<td><code>created_session</code></td>\n<td>the session the object was created by</td>\n</tr>\n<tr>\n<td><code>currencies</code></td>\n<td>an array of currency codes this route supports</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>our ID of the gateway</td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>our ID of the legal entity</td>\n</tr>\n<tr>\n<td><code>payment_method_types</code></td>\n<td>an array of card types this route supports</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the route (<code>ACTIVE</code> or <code>INACTIVE</code>)</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>when the route was last updated</td>\n</tr>\n<tr>\n<td><code>updated_session</code></td>\n<td>the session the object was updated by</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the record</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where status is one of the below:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>LINKED</code></td>\n<td>the route is active but has not yet been used</td>\n</tr>\n<tr>\n<td><code>ACTIVE</code></td>\n<td>the route is in use</td>\n</tr>\n<tr>\n<td><code>INACTIVE</code></td>\n<td>the route is no longer in use, no payments may utilise this connection</td>\n</tr>\n<tr>\n<td><code>RUNDOWN</code></td>\n<td>the route is no longer in use for new card details, saved cards from the gateway on this route may continue to be use</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","legal_entity_routes","{{legal_entity_route_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[],"_postman_id":"b4faba78-1d5e-4e83-acb1-bba665ab2f82"}],"id":"7265202e-b1a3-4018-8e03-49c696558829","description":"<p>This is an <strong>enterprise feature</strong>.</p>\n<p>A <code>legal_entity_route</code> is a mapping between <code>legal_entity</code> and <code>gateway</code>. A contract is drawn up between an account (payer) and legal entity (payee), the legal entity routes are use to determine which gateway will be used to process the transaction. </p>\n","event":[{"listen":"prerequest","script":{"id":"70844f23-a446-4586-9349-ad276a4c749f","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"78bc5f66-d3e3-4e1c-b11c-fbcebe7ef996","type":"text/javascript","exec":[""]}}],"_postman_id":"7265202e-b1a3-4018-8e03-49c696558829","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Payments","item":[{"name":"Get a payment","id":"f90d1766-b96c-46da-a2ca-434cb8ba99cd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments/{{payment_id}}","description":"<p>Where you can <code>expand</code>:</p>\n<ul>\n<li><code>contract</code> </li>\n<li><code>transaction</code></li>\n<li><code>parts</code></li>\n<li><code>payment_method</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>the id of the payment</td>\n</tr>\n<tr>\n<td><code>account</code></td>\n<td>the person the transaction was for</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>either <code>PAYMENT</code>, <code>REFUND</code>, <code>AUTH</code>, <code>CAPTURE</code>, <code>VOID</code></td>\n</tr>\n<tr>\n<td><code>alt_key</code></td>\n<td>your supplied key for the payment</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>the amount of the transaction</td>\n</tr>\n<tr>\n<td><code>authorisation_code</code></td>\n<td>the authorisation code returned from the gateway for the transaction</td>\n</tr>\n<tr>\n<td><code>authorised</code></td>\n<td>the amount authorised (and uncaptured) if an AUTH</td>\n</tr>\n<tr>\n<td><code>balance</code></td>\n<td>if the payment amount less any refunds</td>\n</tr>\n<tr>\n<td><code>browser_ip_address</code></td>\n<td>the browser's IP address</td>\n</tr>\n<tr>\n<td><code>browser_accept_header</code></td>\n<td>the browser's accept header</td>\n</tr>\n<tr>\n<td><code>browser_javascript</code></td>\n<td>if the browser has javascript enabled</td>\n</tr>\n<tr>\n<td><code>browser_locale</code></td>\n<td>the browser's locale</td>\n</tr>\n<tr>\n<td><code>browser_user_agent</code></td>\n<td>the browser's user agent</td>\n</tr>\n<tr>\n<td><code>browser_size</code></td>\n<td>the browser's screen dimention</td>\n</tr>\n<tr>\n<td><code>browser_java_enabled</code></td>\n<td>if the browser has java enabled</td>\n</tr>\n<tr>\n<td><code>browser_color_depth</code></td>\n<td>the browser's color depth</td>\n</tr>\n<tr>\n<td><code>browser_timezone</code></td>\n<td>the browser's timezone</td>\n</tr>\n<tr>\n<td><code>captured</code></td>\n<td>the amount of the authorisation that has been captured if an AUTH</td>\n</tr>\n<tr>\n<td><code>channel</code></td>\n<td>(enterprise) the channel the transaction was processed via</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this transaciton belongs to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the transaction was created / entered</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>the currency in ISO format</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>the order description</td>\n</tr>\n<tr>\n<td><code>designation</code></td>\n<td>(enterprise) the designation the transaction was processed via</td>\n</tr>\n<tr>\n<td><code>division</code></td>\n<td>(enterprise) the division from which the payment was instructed</td>\n</tr>\n<tr>\n<td><code>expires</code></td>\n<td>if action = <code>AUTH</code> the date the authorisation expires (where known)</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>the gateway the transaction was processed via</td>\n</tr>\n<tr>\n<td><code>gateway_message</code></td>\n<td>the status message returned by the gateway</td>\n</tr>\n<tr>\n<td><code>gateway_metadata</code></td>\n<td>any metadata returned by the gateway</td>\n</tr>\n<tr>\n<td><code>gateway_reference</code></td>\n<td>the gateway identifier for the transaction</td>\n</tr>\n<tr>\n<td><code>gateway_status</code></td>\n<td>the category or error message received from the gateway. Most gateways have hundreds of error messages, so we have categorised every one of these into the eight categories below, so you can build a sensible business process around them.</td>\n</tr>\n<tr>\n<td><code>gateway_view_transaction</code></td>\n<td>for gateways that support it a link to the the processor's dashboard for this transaction</td>\n</tr>\n<tr>\n<td><code>initiated</code></td>\n<td>(enterprise) when the transaction was instructed by the user (this may be days, weeks or years before entered to the system), this will only be populated when passed into the initial payment instruction and more than 2 minutes prior to <code>processed</code></td>\n</tr>\n<tr>\n<td><code>initiative</code></td>\n<td>(enterprise) the initiative the transaction was for</td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>(enterprise) the legal entity the transaction was processed via</td>\n</tr>\n<tr>\n<td><code>next_attempt</code></td>\n<td>the next payment attempt if a decline payment that was retried (vs abandoned)</td>\n</tr>\n<tr>\n<td><code>parts</code></td>\n<td>an array of parts objects for which charge(s) the transaction was applied to. To access the parts you must \"expand\" this field</td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>the payment_method / card used</td>\n</tr>\n<tr>\n<td><code>payment_method_used</code></td>\n<td>if a saved card used</td>\n</tr>\n<tr>\n<td><code>processed</code></td>\n<td>when the transaction was processed</td>\n</tr>\n<tr>\n<td><code>redirect_url</code></td>\n<td>The URL if 3DS is required</td>\n</tr>\n<tr>\n<td><code>reference</code></td>\n<td>The transaction customer facing reference typically of the format BOLT-123445</td>\n</tr>\n<tr>\n<td><code>refund</code></td>\n<td>if action == <code>REFUND</code> a link to the refund object</td>\n</tr>\n<tr>\n<td><code>refunded</code></td>\n<td>the amount of the transaction that has been refunded</td>\n</tr>\n<tr>\n<td><code>settle_currency</code></td>\n<td>the currency the transaction was settled in if different than the transacted currency (supported by some gateways only)</td>\n</tr>\n<tr>\n<td><code>settle_fee_amount</code></td>\n<td>the amount of fees deducted for processing the transaction (supported by some gateways only)</td>\n</tr>\n<tr>\n<td><code>settle_gross_amount</code></td>\n<td>the amount paid in the settlement currency (supported by some gateways only)</td>\n</tr>\n<tr>\n<td><code>settle_net_amount</code></td>\n<td>the amount that was settled in the settlement currency less fees (supported by some gateways only)</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>the source for the transaction eg <code>ECOMMERCE</code>, <code>MOTO</code>, <code>RECURRING</code>, <code>POS</code></td>\n</tr>\n<tr>\n<td><code>source_transaction</code></td>\n<td>populated if a refund this will reference the transaction being refunded</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the transaction (see below)</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>the id of the transaction</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>when the transaction was last updated</td>\n</tr>\n<tr>\n<td><code>voided</code></td>\n<td>the amount of the authorisation that has been voided if an AUTH</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the object</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>SUCCESS</code></td>\n<td>The transaction was approved</td>\n</tr>\n<tr>\n<td><code>PENDING</code></td>\n<td>The transaction is still in progress, you will be sent a webhook when this payment is copmlete. Optionally you can poll the transaction (no more than once per second). Some gateways like Adyen (card) do this as defaulty behaviour and the approval will take seconds (you may wish to poll for updates), other gateways like GoCardless (non card) take days to fully authorise a payment. If you enable any such gateways, ensure you support the webhook payment confirmation (PAYMENT.SUCCESS).</td>\n</tr>\n<tr>\n<td><code>DECLINED</code></td>\n<td>The transaction was declined, please see the <code>gateway_status</code> for further detail why</td>\n</tr>\n<tr>\n<td><code>REQAUTH</code></td>\n<td>The payment has started with the gateway however requires an authorisation step that has not completed (eg 3d secure). Our merchant portal will treat any transaction in this status for over an hour as a decline (abandoned), its advised you do the same.</td>\n</tr>\n<tr>\n<td><code>INVALID_PAYMENT_METHOD</code></td>\n<td>The payment was attempted with an invalid payment method. This is typically a recurring payment set up on gateway 1, and you have since disconnected gateway 1. In this scenario the transaction was not even attempted, however a transaction with this status created for audit purposes.</td>\n</tr>\n<tr>\n<td><code>UNRESOLVED</code></td>\n<td>The transaction was sent to the gateway but we did not recieve a conclusive approval or declines due (eg generally this is reflecting a gateway status meaning the same thing, or the gateway took longer than 45 seconds to authorise a payment), your call-to-action should be to contact support and NOT reattempt the transaction to prevent double processing. If you have any of these, you should advise the merchant to review their gateway account for the status of the payment. Please escalate with our support if you see several of these coming through.</td>\n</tr>\n<tr>\n<td><code>UNATTRIBUTED</code></td>\n<td>The transaction was successful but there was an internal issue recording the transaction. Generally these will update to <code>SUCCESS</code> within a few hours.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>gateway_status</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>APPROVED</code></td>\n<td>The transaction was approved.</td>\n</tr>\n<tr>\n<td><code>PENDING</code></td>\n<td>The transaction is still in progress, you will be sent a webhook when this payment is copmlete. Optionally you can poll the transaction (no more than once per second). Some gateways like Adyen (card) do this as defaulty behaviour and the approval will take seconds (you may wish to poll for updates), other gateways like GoCardless (non card) take days to fully authorise a payment. If you enable any such gateways, ensure you support the webhook payment confirmation (PAYMENT.SUCCESS).</td>\n</tr>\n<tr>\n<td><code>DECLINED</code></td>\n<td>The transaction was declined for a reason to do with user input, your call-to-action should be to check details and try again (our popover will do this for you)</td>\n</tr>\n<tr>\n<td><code>DECLINED_CALL_BANK</code></td>\n<td>The transaction was declined due to an issue with the account (eg insufficient funds, do not honour), your call-to-action should be to contact your bank</td>\n</tr>\n<tr>\n<td><code>DECLINED_BLOCKED</code></td>\n<td>The transaction was declined due to you card being stopped / blocked (eg stolen, reissued), your call-to-action should be to try a different card</td>\n</tr>\n<tr>\n<td><code>DECLINED_ERROR</code></td>\n<td>The transaction was declined due to a technical reason (eg invalid merchant credentials / integration issue), your call-to-action should be to contact support or try a different card. In this scenario the end user is not told the technical reason for the issue and you can access this by the developer/merchant portal. Generally this will be the merchant's credentials have changed, but very rarely we see input data the gateway does not like by throwing an error rather than validation reason.</td>\n</tr>\n<tr>\n<td><code>DECLINED_RETRY</code></td>\n<td>The transaction was declined due to a temporary reason (eg rate limit, connection issue), your call-to-action should be to retry with the same card after a few seconds.</td>\n</tr>\n<tr>\n<td><code>CANCELLED</code></td>\n<td>The transaction was PENDING, however has since been cancelled ie payment instruction withdrawn rather than declined.</td>\n</tr>\n<tr>\n<td><code>UNRESOLVED</code></td>\n<td>The transaction was sent to the gateway but we did not recieve a conclusive approval or declines due (eg generally this is reflecting a gateway status meaning the same thing, or the gateway took longer than 45 seconds to authorise a payment), your call-to-action should be to contact support and NOT reattempt the transaction to prevent double processing. If you have any of these, you should advise the merchant to review their gateway account for the status of the payment. Please escalate with our support if you see several of these coming through.</td>\n</tr>\n<tr>\n<td><code>MANUAL</code></td>\n<td>This status means the transaction was not processed by the gateway but entered manually.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payments","{{payment_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"00a1018f-9c02-42e7-88c0-cb2f67878173","name":"Get a payment","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments/{{payment_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 01 May 2024 09:24:54 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-powered-by","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"nAAKmarIBn3iW8b1aurcyw==\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 0fecf9be0bd0b4c1e5dedc1c0b50f3be.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"I2pIPtCxJnlzLU5Og-rRV1vlzcnkekBsSWmwRzIett3AJEJplChU3Q==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"payment\": {\n        \"account\": \"acc_11842_10000\",\n        \"action\": \"PAYMENT\",\n        \"alt_key\": \"1234\",\n        \"amount\": \"100\",\n        \"authorisation_code\": \"pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y (TEST)\",\n        \"balance\": \"98\",\n        \"channel\": \"ch_11842_10001\",\n        \"contract\": \"co_11842_10103\",\n        \"created\": \"2020-11-12T14:42:07.000Z\",\n        \"currency\": \"GBP\",\n        \"description\": \"Invoice 1234\",\n        \"designation\": \"des_11842_10000\",\n        \"division\": \"div_11842_1\",\n        \"gateway\": \"gw_11842_10000\",\n        \"gateway_metadata\": {\n            \"balance_transaction\": {\n                \"amount\": 10000,\n                \"available_on\": 1605744000,\n                \"created\": 1605192129,\n                \"fee\": 310,\n                \"reporting_category\": \"charge\",\n                \"fee_details\": [\n                    {\n                        \"amount\": 310,\n                        \"description\": \"Stripe processing fees\",\n                        \"currency\": \"gbp\",\n                        \"type\": \"stripe_fee\"\n                    }\n                ],\n                \"description\": \"Invoice 1234\",\n                \"source\": \"ch_1Hmh01Fi2CnH4uN34DxzIxrY\",\n                \"type\": \"charge\",\n                \"currency\": \"gbp\",\n                \"id\": \"txn_1Hmh01Fi2CnH4uN3Xz6RTNgv\",\n                \"net\": 9690,\n                \"object\": \"balance_transaction\",\n                \"status\": \"pending\"\n            },\n            \"payment_intent\": {\n                \"metadata\": {\n                    \"paymentMethodCode\": \"00010040\",\n                    \"accountCode\": \"CRM-1\",\n                    \"accountEmail\": \"jane.doe@email.com\",\n                    \"gatewayKey\": \"11842_10000\",\n                    \"accountName\": \"Jane Doe\",\n                    \"transactionReference\": \"BOLT-00011059\",\n                    \"staffPresent\": \"true\",\n                    \"ipAddress\": \"212.161.80.4\",\n                    \"client\": \"11842\",\n                    \"altKey\": \"1234\",\n                    \"customerPresent\": \"false\",\n                    \"orderDescription\": \"Invoice 1234\"\n                },\n                \"livemode\": false,\n                \"amount_capturable\": 0,\n                \"description\": \"Invoice 1234\",\n                \"currency\": \"gbp\",\n                \"id\": \"pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y\",\n                \"client_secret\": \"pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y_secret_2AmVjvTDw3hh1SEnDaCPI7s8X\",\n                \"payment_method_options\": {\n                    \"card\": {\n                        \"request_three_d_secure\": \"automatic\"\n                    }\n                },\n                \"payment_method\": \"pm_1Hmh00Fi2CnH4uN3TB6yaX6l\",\n                \"capture_method\": \"automatic\",\n                \"amount\": 10000,\n                \"created\": 1605192129,\n                \"payment_method_types\": [\n                    \"card\"\n                ],\n                \"amount_received\": 10000,\n                \"setup_future_usage\": \"off_session\",\n                \"confirmation_method\": \"manual\",\n                \"charges\": {\n                    \"data\": [\n                        {\n                            \"balance_transaction\": \"txn_1Hmh01Fi2CnH4uN3Xz6RTNgv\",\n                            \"billing_details\": {\n                                \"address\": {\n                                    \"country\": \"AU\",\n                                    \"city\": \"Downtown\",\n                                    \"state\": \"Sydney\",\n                                    \"postal_code\": \"70000\",\n                                    \"line1\": \"123 Main Street\"\n                                },\n                                \"phone\": \"012391231234\",\n                                \"name\": \"Jane Doe\",\n                                \"email\": \"jane.doe@email.com\"\n                            },\n                            \"metadata\": {\n                                \"paymentMethodCode\": \"00010040\",\n                                \"accountCode\": \"CRM-1\",\n                                \"accountEmail\": \"jane.doe@email.com\",\n                                \"gatewayKey\": \"11842_10000\",\n                                \"accountName\": \"Jane Doe\",\n                                \"transactionReference\": \"BOLT-00011059\",\n                                \"staffPresent\": \"true\",\n                                \"ipAddress\": \"212.161.80.4\",\n                                \"client\": \"11842\",\n                                \"altKey\": \"1234\",\n                                \"customerPresent\": \"false\",\n                                \"orderDescription\": \"Invoice 1234\"\n                            },\n                            \"livemode\": false,\n                            \"description\": \"Invoice 1234\",\n                            \"fraud_details\": {},\n                            \"amount_refunded\": 0,\n                            \"refunds\": {\n                                \"data\": [],\n                                \"total_count\": 0,\n                                \"has_more\": false,\n                                \"url\": \"/v1/charges/ch_1Hmh01Fi2CnH4uN34DxzIxrY/refunds\",\n                                \"object\": \"list\"\n                            },\n                            \"receipt_url\": \"https://pay.stripe.com/receipts/acct_1DO9jQFi2CnH4uN3/ch_1Hmh01Fi2CnH4uN34DxzIxrY/rcpt_INRtfhHi5QhcpaRS8VPDj0mx6OSDv8c\",\n                            \"captured\": true,\n                            \"calculated_statement_descriptor\": \"TATERS LTD\",\n                            \"currency\": \"gbp\",\n                            \"refunded\": false,\n                            \"id\": \"ch_1Hmh01Fi2CnH4uN34DxzIxrY\",\n                            \"outcome\": {\n                                \"risk_level\": \"normal\",\n                                \"risk_score\": 26,\n                                \"seller_message\": \"Payment complete.\",\n                                \"network_status\": \"approved_by_network\",\n                                \"type\": \"authorized\"\n                            },\n                            \"payment_method\": \"pm_1Hmh00Fi2CnH4uN3TB6yaX6l\",\n                            \"amount\": 10000,\n                            \"disputed\": false,\n                            \"created\": 1605192129,\n                            \"payment_method_details\": {\n                                \"type\": \"card\",\n                                \"card\": {\n                                    \"country\": \"US\",\n                                    \"last4\": \"4242\",\n                                    \"funding\": \"credit\",\n                                    \"exp_month\": 12,\n                                    \"exp_year\": 2022,\n                                    \"moto\": true,\n                                    \"network\": \"visa\",\n                                    \"checks\": {\n                                        \"cvc_check\": \"pass\",\n                                        \"address_line1_check\": \"pass\",\n                                        \"address_postal_code_check\": \"pass\"\n                                    },\n                                    \"fingerprint\": \"ZDVftG8YX6erKyIj\",\n                                    \"brand\": \"visa\"\n                                }\n                            },\n                            \"amount_captured\": 10000,\n                            \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                            \"paid\": true,\n                            \"payment_intent\": \"pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y\",\n                            \"object\": \"charge\",\n                            \"customer\": \"cus_FnW1i69iOuxWBO\",\n                            \"status\": \"succeeded\"\n                        }\n                    ],\n                    \"total_count\": 1,\n                    \"has_more\": false,\n                    \"url\": \"/v1/charges?payment_intent=pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y\",\n                    \"object\": \"list\"\n                },\n                \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                \"object\": \"payment_intent\",\n                \"customer\": \"cus_FnW1i69iOuxWBO\",\n                \"status\": \"succeeded\"\n            }\n        },\n        \"gateway_reference\": \"ch_1Hmh01Fi2CnH4uN34DxzIxrY\",\n        \"gateway_status\": \"APPROVED\",\n        \"id\": \"pay_11842_11059\",\n        \"initiated\": \"2020-11-12T14:42:07.000Z\",\n        \"initiative\": \"in_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"parts\": [\n            \"tp_11842_11059\"\n        ],\n        \"payment_method\": \"pm_11842_10040\",\n        \"payment_method_used_token\": false,\n        \"processed\": \"2020-11-12T14:42:10.000Z\",\n        \"reference\": \"BOLT-00011059\",\n        \"refunded\": \"2\",\n        \"refunds\": [\n            \"ref_11842_11061\",\n            \"ref_11842_11060\"\n        ],\n        \"settle_currency\": \"GBP\",\n        \"settle_fee_amount\": \"3.1\",\n        \"settle_gross_amount\": \"100\",\n        \"settle_net_amount\": \"96.9\",\n        \"source\": \"MOTO\",\n        \"status\": \"SUCCESS\",\n        \"transaction\": \"tr_11842_11059\",\n        \"updated\": \"2021-10-07T20:10:11.000Z\",\n        \"v\": 14\n    }\n}"}],"_postman_id":"f90d1766-b96c-46da-a2ca-434cb8ba99cd"},{"name":"Create a hosted payment URL","id":"2ede352b-e4e8-494b-9d24-f8d8f1fd2b83","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"payment\": {\n\t    \"title\": \"Invoice 1234\",\n\t    \"currency\": \"EUR\",\n\t    \"amount\": \"100\",\n\t    \"alt_key\": \"1234\",\n\t    \"description\": \"Invoice 1234\",\n\t    \"account\": {\n\t        \"crmkey\": \"A00001\",\n\t        \"first_name\": \"Jane\",\n\t        \"last_name\": \"Doe\",\n\t        \"company\": \"Marbles\",\n\t        \"email\": \"jane.doe@email.com\",\n\t        \"phone\": \"+77000000005\",\n\t        \"address\": {\n\t            \"country\": \"US\",\n\t            \"line1\": \"123 Main st.\",\n\t            \"line2\": \"Apartment 44\",\n\t            \"line3\": \"Downtown\",\n\t            \"line4\": \"New York\",\n\t            \"line5\": \"70000\",\n\t            \"line6\": \"NY\"\n\t        }\n\t    }\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_url","description":"<p>The \"Create Payment URL\" endpoint allows you to generate a URL to a hosted payment process.The options for the URL are the same as payment API, with the following additional fields:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>...</code></td>\n<td>all options from <a href=\"https://api.shuttleglobal.com/#fe184f65-c12c-41c0-84cc-34e6b611a13b\"><code>Create a Payment</code></a> API,  other than <code>payment_method</code></td>\n</tr>\n<tr>\n<td><code>success_url</code></td>\n<td>(optional) the URL to direct the user to on completion of a successful payment. This will be followed when the payment dialogue is closed (if using as a popover) or after the receipt screeen if hosted process.</td>\n</tr>\n<tr>\n<td><code>title</code></td>\n<td>(optional) The label to use in the header of the checkout dialogue</td>\n</tr>\n<tr>\n<td><code>checkout_text</code></td>\n<td>(optional) Additional text to describe the payment to the user, this will be displayed below the amount to be paid</td>\n</tr>\n<tr>\n<td><code>skip_receipt</code></td>\n<td>(default: false) if <code>true</code> the payment dialogue will be dismissed on successful payment rather than receipt being displayed</td>\n</tr>\n<tr>\n<td><code>default_currency</code></td>\n<td>(optional) if you dont pass a currency, currency will be selectable - this allows you to default the value</td>\n</tr>\n<tr>\n<td><code>default_amount</code></td>\n<td>(optional) if you dont pass an amount, amount will be enterable (eg if you want to allow part payment) - this allows you to default the value</td>\n</tr>\n<tr>\n<td><code>default_save_card</code></td>\n<td>(optional) boolean true / false - default \"save card\" as selected or deselected, note recurring payments do not allow deselecting save card</td>\n</tr>\n<tr>\n<td><code>disable_confirm</code></td>\n<td>(optional) set to <code>true</code> if you want to remove the confirmation step during checkout.</td>\n</tr>\n<tr>\n<td><code>save_card</code></td>\n<td>(optional) boolean true / false - force saving a card (true) or force NOT saving a card (false</td>\n</tr>\n<tr>\n<td><code>logo_url</code></td>\n<td>(optional) the logo to use at the top of the screen, you can set this to <code>false</code> to disable the logo, or a HTTPS url</td>\n</tr>\n<tr>\n<td><code>logo_offset</code></td>\n<td>(optional) if set to <code>true</code> the logo to use at the top of the screen will be displayed slightly larger, vertically centered around the top of the popup. Please note it requires the use of an appropriate image.</td>\n</tr>\n<tr>\n<td><code>locale</code></td>\n<td>(optional) the 2 letter language code or full locale (eg <code>en</code> or <code>en_US</code>). If you pass this, this locale will be used in the checkout process, otherwise it will use the browsers locale, or IP lookup where no browser locale. If the language is not available, the <code>default</code> language will be returned. Typically this is English, however you can customise it.</td>\n</tr>\n</tbody>\n</table>\n</div><p>The following fields from the payment API are not available or have an altered meaning during a hosted process:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>payment_method</code></td>\n<td>you cannot pass the payment method into a hosted process</td>\n</tr>\n<tr>\n<td><code>success_url</code></td>\n<td>3d secure is managed by the hosted process, this field has been repurposed for redirecting the user after a payment (see above)</td>\n</tr>\n<tr>\n<td><code>cancel_url</code></td>\n<td>3d secure is managed by the hosted process, and as such this field has no affect</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payment_url"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"96cde309-6ed1-42d9-996c-b5025b519f33","name":"Create a hosted payment URL","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"payment\": {\n\t    \"title\": \"Invoice 1234\",\n\t    \"currency\": \"EUR\",\n\t    \"amount\": \"100\",\n\t    \"alt_key\": \"1234\",\n\t    \"description\": \"Invoice 1234\",\n\t    \"account\": {\n\t        \"crmkey\": \"A00001\",\n\t        \"first_name\": \"Jane\",\n\t        \"last_name\": \"Doe\",\n\t        \"company\": \"Marbles\",\n\t        \"email\": \"jane.doe@email.com\",\n\t        \"phone\": \"+77000000005\",\n\t        \"address\": {\n\t            \"country\": \"US\",\n\t            \"line1\": \"123 Main st.\",\n\t            \"line2\": \"Apartment 44\",\n\t            \"line3\": \"Downtown\",\n\t            \"line4\": \"New York\",\n\t            \"line5\": \"70000\",\n\t            \"line6\": \"NY\"\n\t        }\n\t    }\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_url"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"614","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Mon, 21 Oct 2019 13:53:50 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 e92192d46c302f80eb31c448bf9ad7d6.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"Z3rvvOGqpPNTEWVtJw2pM_zghpreQ6yrvGD94dU_OQGo9j7QaNAKAg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"url\": \"https://payments-1550852543.withbolt.com/c/web/#/api/payment/eyJob3N0IjoiaHR0cHM6Ly9wYXltZW50cy53aXRoYm9sdC5jb20iLCJub25jZSI6ImJjYjIxN2VmLWQ4MWItNGRkNS1hMDY2LTRiYmUzZmI4ZmE0NyIsImNoYW5uZWxLZXkiOiJ3ZWIiLCJjcm0iOnsiYWRkcmVzcyI6eyJjb3VudHJ5IjoiVVMiLCJsaW5lMSI6IjEyMyBNYWluIHN0LiIsImxpbmUyIjoiQXBhcnRtZW50IDQ0IiwibGluZTMiOiJEb3dudG93biIsImxpbmU0IjoiTmV3IFlvcmsiLCJsaW5lNSI6IjcwMDAwIiwibGluZTYiOiJOWSJ9LCJjcm1rZXkiOiJBMDAwMDEiLCJmaXJzdG5hbWUiOiJKYW5lIiwibGFzdG5hbWUiOiJEb2UiLCJjb21wYW55IjoiTWFyYmxlcyIsImVtYWlsIjoiamFuZS5kb2VAZW1haWwuY29tIiwicGhvbmUiOiIrNzcwMDAwMDAwMDUifSwiaW5zdGFuY2VLZXkiOiIyMjIyMiIsImFsdEtleSI6IjEyMzQiLCJjdXJyZW5jeSI6IkVVUiIsImFtb3VudCI6IjEwMCIsImNoYW5uZWxUaXRsZSI6Ikludm9pY2UgMTIzNCIsIm9yZGVyRGVzYyI6Ikludm9pY2UgMTIzNCIsImlzQ3VzdG9tZXJQcmVzZW50Ijp0cnVlLCJpc1N0YWZmUHJlc2VudCI6ZmFsc2UsImRpc2FibGVNeURldGFpbHMiOiJUUlVFIiwic2Vzc2lvbktleSI6ImY4YjI5ZDliNGE3ZmJiZmFmODYzYTVmYzQ2YTRlMjhlIn0%3D\"\n}"}],"_postman_id":"2ede352b-e4e8-494b-9d24-f8d8f1fd2b83"},{"name":"Create a payment","id":"fe184f65-c12c-41c0-84cc-34e6b611a13b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"payment\": {\n\t\t\"currency\": \"GBP\",\n\t\t\"amount\": 100,\n\n\t\t\"alt_key\": \"1234\",\n\t\t\"description\": \"Invoice 1234\",\n\t\t\"source\": \"MOTO\",\n\t\t\"action\": \"PAYMENT\",\n\n\t\t\"success_url\": \"https://www.myhost.com/success\",\n\t\t\"cancel_url\": \"https://www.myhost.com/cancel\",\n\n\t\t\"payment_method\": {\n\t\t\t\"card_number\": \"4242424242424242\",\n\t\t\t\"card_cvc\": \"123\",\n\t\t\t\"card_expiry\": \"1222\",\n\t\t\t\"save_card\": true,\n\t\t\t\"description\": \"Main Card\",\n\n\t\t\t\"billing\": {\n\t\t\t\t\"line1\": \"123 Main Street\",\n\t\t\t\t\"line2\": \"\",\n\t\t\t\t\"line3\": \"\",\n\t\t\t\t\"line4\": \"Downtown\",\n\t\t\t\t\"line5\": \"70000\",\n\t\t\t\t\"line6\": \"Sydney\",\n\t\t\t\t\"country\": \"AU\"\n\t\t\t}\n\t\t},\n\n\t\t\"account\": {\n\t\t\t\"crm_key\": \"1\",\n            \"tags\": \"ABC,123\",\n\t\t\t\"first_name\": \"Jane\",\n\t\t\t\"last_name\": \"Doe\",\n\t\t\t\"company\": \"Marbles\",\n\t\t\t\"email\": \"jane.doe@email.com\",\n\t\t\t\"phone\": \"012391231234\",\n\t\t\t\"address\": {\n\t\t\t\t\"line1\": \"123 Main Street\",\n\t\t\t\t\"line2\": \"\",\n\t\t\t\t\"line3\": \"\",\n\t\t\t\t\"line4\": \"Downtown\",\n\t\t\t\t\"line5\": \"70000\",\n\t\t\t\t\"line6\": \"Sydney\",\n\t\t\t\t\"country\": \"AU\"\n\n\t\t\t}\n\t\t}\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments","description":"<p>If you POST a payment, a new payment will be attempted. Unless the payment is rejected prior to processing the API request will succeed and return a payment object in a SUCCESS or DECLINE status. If however the payment is rejected due to a validation rule (eg no card data), no payment will be created.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>currency</code></td>\n<td>The currency in in ISO format eg USD</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>The amount of the payment as a string eg \"10\", the amount should not have commas and use a <code>.</code> as a decimal separator</td>\n</tr>\n<tr>\n<td><code>alt_key</code></td>\n<td>(optional) Your unique reference for the payment (eg order id). You should use a URL friendly string, ideally less than 64 char (a-z0-9_-). PLEASE NOTE: If you use a \":\" in your alt_key, only the value AFTER the last \":\" will be passed through to the payment gateway</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>(optional) Your descriptive text for the payment</td>\n</tr>\n<tr>\n<td><code>nonce</code></td>\n<td>(optional) A unique string that will be used by us to ensure the same transactions is not submitted twice. A nonce can only be used once in a 24 hours period.</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>(optional) can be either \"PAYMENT\" (default) or \"AUTH\" for auth/capture (note spelling)</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>(optional) can be any of \"MOTO\", \"ECOMMERCE\", \"RECURRING\" - default \"ECOMMERCE\". Use \"MOTO\" for staff entered transactions (mail order telephone order), or ECOMMERCE is a customer is entering the transaction. User journeys can differ for each source type (eg MOTO are not required to complete 3d secure, but can attract higher processing fees). RECURRING should ONLY be used if an automated process is triggering the API request, and not that you want to set up a recurring schedule. It means a customer NOR a staff member is available to complete any security steps.</td>\n</tr>\n<tr>\n<td><code>success_url</code></td>\n<td>a valid URL to redirect the user to on successful 3D secure (when a requires_auth is returned on a transaction)</td>\n</tr>\n<tr>\n<td><code>cancel_url</code></td>\n<td>a valid URL to redirect the user to when a user cancels 3D secure (when a requires_auth is returned on a transaction)</td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>can be an <code>id</code> referencing an existing payment_method or a fully formed payment_method object which will be created or amended. If an existing payment_method is to be used with a cvc, pass an object containing an <code>id</code> and <code>card_cvc</code></td>\n</tr>\n<tr>\n<td><code>account</code></td>\n<td>(optional) can be an <code>id</code> referencing an existing account or a fully formed account object which will be created or amended</td>\n</tr>\n<tr>\n<td><code>frequency</code></td>\n<td>(optional) one of ONEOFF (default), WEEKLY, FORTNIGHTLY (every 2 weeks), BIMONTHLY (the 1st and 15th of a month), MONTHLY, QUARTERLY, BIANNUALLY, ANNUALLY</td>\n</tr>\n<tr>\n<td><code>occurrences</code></td>\n<td>(optional) the number of payments to take for recurring payments, blank = forever (default), 6, 12, 52 etc</td>\n</tr>\n<tr>\n<td><code>start_date</code></td>\n<td>(optional) when to take the first payment for recurring payments, ISO format eg \"2019-12-31T00:00:00Z\" (default now), this can be up to 365 days in the future.</td>\n</tr>\n<tr>\n<td><code>start_days</code></td>\n<td>(optional) when to take the first payment in days from now for recurring payments, eg 1 = tomorrow, 30 = 30 days (default 0), this can be up to 31 days in the future.</td>\n</tr>\n<tr>\n<td><code>scheduled_date</code></td>\n<td>(optional) when to process the payment for one-time payments, ISO format eg \"2019-12-31T00:00:00Z\" (default now), this can be up to 365 days in the future.</td>\n</tr>\n<tr>\n<td><code>scheduled_days</code></td>\n<td>(optional) when to process payment in days from now for one-time payments, eg 1 = tomorrow, 30 = 30 days (default 0), this can be up to 31 days in the future.</td>\n</tr>\n<tr>\n<td><code>save_card</code></td>\n<td>(optional) boolean true / false - force saving a card or not saving a card</td>\n</tr>\n<tr>\n<td><code>shipping</code></td>\n<td>(optional) the shipping address for the order - this is different from the billing address. Shipping address will be passed to the gateway where supported and will only be used if the gateway has advanced fraud checks, its not editable during checkout</td>\n</tr>\n<tr>\n<td><code>line_items</code></td>\n<td>(optional) the basket items in the order. These will not be validated by Shuttle, but simply passed to the gateways that support them.</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>(optional) contract id if you want to make a one time payment on an existing contract, you should also pass the \"account\" of the current user if you want saved cards to present</td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>(optional) legal entity <code>id</code> or <code>code</code> that is processing the payment (only for instances with multiple legal entities configured)</td>\n</tr>\n<tr>\n<td><code>metadata</code></td>\n<td>(optional) a map of key / value pairs to store on the contract. Gateways where possible (like Stripe and Adyen) will record  on the payment also</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>payment_method</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>The id of the payment method, if referencing an existing payment method.</td>\n</tr>\n<tr>\n<td><code>card_number</code></td>\n<td>(card) The full card PAN (typically 16 digits) without formatting</td>\n</tr>\n<tr>\n<td><code>card_cvc</code></td>\n<td>(card) the last 3-4 characters of the cards security text</td>\n</tr>\n<tr>\n<td><code>card_expiry</code></td>\n<td>(card) The expiry of the card in YYYY-MM format eg 2020-12</td>\n</tr>\n<tr>\n<td><code>sepa_iban</code></td>\n<td>(SEPA) the customer's full IBAN with all formatting removed</td>\n</tr>\n<tr>\n<td><code>sepa_account_holder_name</code></td>\n<td>(SEPA / ACH) the customer's account holder name - required by some payment processors</td>\n</tr>\n<tr>\n<td><code>ach_account_holder_name</code></td>\n<td>(SEPA / ACH) the customer's account holder name - required by some payment processors</td>\n</tr>\n<tr>\n<td><code>ach_account_type</code></td>\n<td>(ACH) the account type - <code>CHECKING</code>, <code>SAVING</code>, <code>BUSINESS_CHECKING</code></td>\n</tr>\n<tr>\n<td><code>ach_routing_number</code></td>\n<td>(ACH) the customer's routing number with all formatting removed</td>\n</tr>\n<tr>\n<td><code>ach_account_number</code></td>\n<td>(ACH) the customer's account number with all formatting removed</td>\n</tr>\n<tr>\n<td><code>save</code></td>\n<td>A boolean <code>true</code> if you wish to save the payment method details for use in the future</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>When saving the payment_method how you would like the card to be labelled, the card will be assigned an automatic label if ommited</td>\n</tr>\n<tr>\n<td><code>billing</code></td>\n<td>The billing address for the card as 6 lines and country</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>(optional) the ID of the gateway to force the payment through (overriding default routing rules)</td>\n</tr>\n<tr>\n<td><code>token</code></td>\n<td>(optional) if the payment method is already tokenised with the gateway, the <code>token</code> in the format used by the gateway's. When passing token, you MUST also pass <code>gateway</code></td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>account</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>The id of the account if referencing an existing account</td>\n</tr>\n<tr>\n<td><code>crm_key</code></td>\n<td>Your reference for this person</td>\n</tr>\n<tr>\n<td><code>tag</code></td>\n<td>A CSV of tags for the person</td>\n</tr>\n<tr>\n<td><code>first_name</code></td>\n<td>The person's first name / giving name</td>\n</tr>\n<tr>\n<td><code>last_name</code></td>\n<td>The person's last name / surname</td>\n</tr>\n<tr>\n<td><code>company</code></td>\n<td>The person's company</td>\n</tr>\n<tr>\n<td><code>email</code></td>\n<td>The person's email (must be a valid email if passed)</td>\n</tr>\n<tr>\n<td><code>phone</code></td>\n<td>The person's phone (must be a valid phone if passed)</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>The residential address for the card as 6 lines and country</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>account.address</code>, <code>payment_method.billing</code> and <code>shipping</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>line1</code></td>\n<td>the first line of the address</td>\n</tr>\n<tr>\n<td><code>line2</code></td>\n<td>the second line of the address</td>\n</tr>\n<tr>\n<td><code>line3</code></td>\n<td>the third line of the address</td>\n</tr>\n<tr>\n<td><code>line4</code></td>\n<td>the city / town</td>\n</tr>\n<tr>\n<td><code>line5</code></td>\n<td>the zip / postcode</td>\n</tr>\n<tr>\n<td><code>line6</code></td>\n<td>the state /territory</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>the country (2 digit ISO format) eg UK, GB</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>line_items</code> is an array of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>sku</code></td>\n<td>your identifier for the product, a SKU of <code>SHIPPING</code>, <code>HANDLING</code> or <code>INSURANCE</code> will be passed as such for gateways that support it.</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>your label for the item</td>\n</tr>\n<tr>\n<td><code>quantity</code></td>\n<td>the number of units as a string eg \"2\"</td>\n</tr>\n<tr>\n<td><code>unit_price</code></td>\n<td>the price per unit as a string <strong>INCLUSIVE</strong> of tax eg \"9.99\" in the currency of the payment</td>\n</tr>\n<tr>\n<td><code>total_amount</code></td>\n<td>the total value of all all the items <strong>INCLUSIVE</strong> of tax as a string eg \"19.98\", typically this would be quantity x unit_prices less any discount</td>\n</tr>\n<tr>\n<td><code>total_tax</code></td>\n<td>(optional) the amount of tax in the total_amount as a string</td>\n</tr>\n<tr>\n<td><code>item_url</code></td>\n<td>a URL to product information, this is mandatory for many gateways, so make sure you populate it with something, even if a dummy value</td>\n</tr>\n<tr>\n<td><code>image_url</code></td>\n<td>a URL to product image, this is mandatory for many gateways, so make sure you populate it with something, even if a dummy value</td>\n</tr>\n</tbody>\n</table>\n</div><p>Note: <code>SUM(line_items.total_amount)</code> should equal the payment amount. If it is less, a \"Miscellaneous\" line item will be added to make up the difference. If the sum exceeds the payment amount, the difference will be flagged as a \"Discount\".</p>\n<h3 id=\"3d-secure\">3D Secure</h3>\n<p>If 3D secure (3DS) is required for a transaction, the transaction will be returned in a status of <code>REQAUTH</code>, with a <code>redirect_url</code> field. You will need to iFrame this URL (or redirect to it) for the user to complete the 3D secure process. If the gateway has the feature <code>REQUIRES_3DS_WINDOW</code> the gateway does not support an iFramed process and the <code>redirect_url</code> must be launched in a new window (or redirect the browser to it).</p>\n<p>There are two possible outcomes of a 3DS process:</p>\n<p>* <strong>Approved</strong>: The user passed 3D secure, and the transaction has been process successfully. They will be redirected to the <code>success_url</code> included in the original payment instruction. The success url will have the following query parameters added <code>?payment=pay_123_123&amp;contract=co_123_123&amp;transaction=tr_123_123&amp;payment_method=pm_123_123&amp;status=SUCCESS</code> (note status could be any <code>transaction.status</code>, its recommended <code>SUCCESS</code> and <code>UNATTRIBUTED</code> present a receipt, <code>PENDING</code> and <code>UNRESOLVED</code> present an “In progress” message, see transaction statuses for further info). The transaction has been processed by the time the user reaches this URL, you can fetch the transaction via API for full details. Transaction and status may be missing if the contract has a start date in the future.<br />* <strong>Declined</strong> / <strong>Cancelled</strong>: 3D secure or the subsequent payment instruction is declined. The user will be redirected to the <code>cancel_url</code> included in the original payment instruction. The <code>cancel_url</code> will have the following query parameters added <code>?payment=pay_123_123&amp;contract=co_123_123&amp;transaction=tr_123_123&amp;payment_method=pm_123_123&amp;status=DECLINED&amp;error=Gateway+message</code> (note status could be any <code>transaction.status</code>, see transaction statuses for further info). The transaction will have been processed (unsuccessfully) by the time the user reaches this URL, so you can fetch the transaction via API for full details.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payments"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"a5b207c8-cd6f-4d02-a3f5-c7c91e1d2f05","name":"Create an authorisation","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"payment\": {\n\t\t\"currency\": \"GBP\",\n\t\t\"amount\": 100,\n\n\t\t\"alt_key\": \"1234\",\n\t\t\"description\": \"Invoice 1234\",\n\t\t\"source\": \"MOTO\",\n\t\t\"action\": \"AUTHORISE\",\n\n\t\t\"success_url\": \"https://www.myhost.com/success\",\n\t\t\"cancel_url\": \"https://www.myhost.com/cancel\",\n\n\t\t\"payment_method\": {\n\t\t\t\"card_number\": \"4242424242424242\",\n\t\t\t\"card_cvc\": \"123\",\n\t\t\t\"card_expiry\": \"1222\",\n\t\t\t\"save_card\": true,\n\t\t\t\"description\": \"Main Card\",\n\n\t\t\t\"billing\": {\n\t\t\t\t\"line1\": \"123 Main Street\",\n\t\t\t\t\"line2\": \"\",\n\t\t\t\t\"line3\": \"\",\n\t\t\t\t\"line4\": \"Downtown\",\n\t\t\t\t\"line5\": \"70000\",\n\t\t\t\t\"line6\": \"Sydney\",\n\t\t\t\t\"country\": \"AU\"\n\t\t\t}\n\t\t},\n\n\t\t\"account\": {\n\t\t\t\"crm_key\": \"1\",\n\t\t\t\"first_name\": \"Jane\",\n\t\t\t\"last_name\": \"Doe\",\n\t\t\t\"company\": \"Marbles\",\n\t\t\t\"email\": \"jane.doe@email.com\",\n\t\t\t\"phone\": \"012391231234\",\n\t\t\t\"address\": {\n\t\t\t\t\"line1\": \"123 Main Street\",\n\t\t\t\t\"line2\": \"\",\n\t\t\t\t\"line3\": \"\",\n\t\t\t\t\"line4\": \"Downtown\",\n\t\t\t\t\"line5\": \"70000\",\n\t\t\t\t\"line6\": \"Sydney\",\n\t\t\t\t\"country\": \"AU\"\n\n\t\t\t}\n\t\t}\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"494","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 08 Apr 2020 09:31:26 GMT","enabled":true},{"key":"Server","value":"Apache-Coyote/1.1","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"X-Powered-By","value":"Express","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 a4b14ec1411057263166d6facf9b30b8.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR52-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"xjvx46da6H_ZAxC0Q4TujJfzVdVvP_aeTORTjdXr9vxwqnkTt2S_Ig==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"payment\": {\n        \"id\": \"pay_11842_10001\",\n        \"alt_key\": \"1234\",\n        \"description\": \"Invoice 1234\",\n        \"source\": \"MOTO\",\n        \"action\": \"AUTH\",\n        \"status\": \"SUCCESS\",\n        \"gateway_status\": \"APPROVED\",\n        \"gateway_reference\": \"ch_1GVaFlFi2CnH4uN3LHQui1Tl\",\n        \"authorisation_code\": \"pi_1GVaFlFi2CnH4uN3RKR7O20h (TEST)\",\n        \"reference\": \"REF-00010001\",\n        \"amount\": \"100\",\n        \"balance\": \"0\",\n        \"currency\": \"GBP\",\n        \"channel\": \"ch_11842_10001\",\n        \"initiative\": \"in_11842_10000\",\n        \"designation\": \"des_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"gateway\": \"gw_11842_10000\",\n        \"account\": \"acc_11842_10000\",\n        \"payment_method\": \"pm_11842_10000\",\n        \"contract\": \"co_11842_10001\",\n        \"created\": \"2020-04-08T09:31:23.000Z\",\n        \"updated\": \"2020-04-08T09:31:25.000Z\",\n        \"processed\": \"2020-04-08T09:31:25.000Z\"\n    },\n    \"contract\": {\n        \"account\": \"acc_11842_10000\",\n        \"alt_key\": \"1234\",\n        \"amount\": \"100\",\n        \"channel\": \"ch_11842_10001\",\n        \"created\": \"2020-04-08T09:31:22.000Z\",\n        \"currency\": \"GBP\",\n        \"description\": \"Invoice 1234\",\n        \"designation\": \"des_11842_10000\",\n        \"gateway\": \"gw_11842_10000\",\n        \"id\": \"co_11842_10001\",\n        \"initiated\": \"2020-04-08T09:31:22.000Z\",\n        \"initiative\": \"in_11842_10000\",\n        \"last_transaction\": \"tr_11842_10001\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"overdue_amount\": \"100\",\n        \"payment_method\": \"pm_11842_10000\",\n        \"recurring\": false,\n        \"split\": false,\n        \"status\": \"ACTIVE\",\n        \"updated\": \"2020-04-08T09:31:25.000Z\"\n    },\n    \"transaction\": {\n        \"id\": \"tr_11842_10001\",\n        \"action\": \"AUTH\",\n        \"source\": \"MOTO\",\n        \"status\": \"SUCCESS\",\n        \"gateway_status\": \"APPROVED\",\n        \"gateway_reference\": \"ch_1GVaFlFi2CnH4uN3LHQui1Tl\",\n        \"authorisation_code\": \"pi_1GVaFlFi2CnH4uN3RKR7O20h (TEST)\",\n        \"reference\": \"REF-00010001\",\n        \"amount\": \"100\",\n        \"balance\": \"0\",\n        \"currency\": \"GBP\",\n        \"channel\": \"ch_11842_10001\",\n        \"initiative\": \"in_11842_10000\",\n        \"designation\": \"des_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"gateway\": \"gw_11842_10000\",\n        \"account\": \"acc_11842_10000\",\n        \"payment_method\": \"pm_11842_10000\",\n        \"contract\": \"co_11842_10001\",\n        \"created\": \"2020-04-08T09:31:23.000Z\",\n        \"updated\": \"2020-04-08T09:31:25.000Z\",\n        \"processed\": \"2020-04-08T09:31:25.000Z\"\n    }\n}"},{"id":"c24b8bae-f2a5-4a60-b9fe-d8b4d5080b6b","name":"Create a payment","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"payment\": {\n\t\t\"currency\": \"GBP\",\n\t\t\"amount\": 100,\n\n\t\t\"alt_key\": \"1234\",\n\t\t\"description\": \"Invoice 1234\",\n\t\t\"source\": \"MOTO\",\n\n\t\t\"success_url\": \"https://www.myhost.com/success\",\n\t\t\"cancel_url\": \"https://www.myhost.com/cancel\",\n\n\t\t\"payment_method\": {\n\t\t\t\"card_number\": \"4242424242424242\",\n\t\t\t\"card_cvc\": \"123\",\n\t\t\t\"card_expiry\": \"1222\",\n\t\t\t\"save_card\": true,\n\t\t\t\"description\": \"Main Card\",\n\n\t\t\t\"billing\": {\n\t\t\t\t\"line1\": \"123 Main Street\",\n\t\t\t\t\"line2\": \"\",\n\t\t\t\t\"line3\": \"\",\n\t\t\t\t\"line4\": \"Downtown\",\n\t\t\t\t\"line5\": \"70000\",\n\t\t\t\t\"line6\": \"Sydney\",\n\t\t\t\t\"country\": \"AU\"\n\t\t\t}\n\t\t},\n\n\t\t\"account\": {\n\t\t\t\"crm_key\": \"1\",\n\t\t\t\"first_name\": \"Jane\",\n\t\t\t\"last_name\": \"Doe\",\n\t\t\t\"company\": \"Marbles\",\n\t\t\t\"email\": \"jane.doe@email.com\",\n\t\t\t\"phone\": \"012391231234\",\n\t\t\t\"address\": {\n\t\t\t\t\"line1\": \"123 Main Street\",\n\t\t\t\t\"line2\": \"\",\n\t\t\t\t\"line3\": \"\",\n\t\t\t\t\"line4\": \"Downtown\",\n\t\t\t\t\"line5\": \"70000\",\n\t\t\t\t\"line6\": \"Sydney\",\n\t\t\t\t\"country\": \"AU\"\n\n\t\t\t}\n\t\t}\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"534","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 08 Apr 2020 09:29:52 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 a4b14ec1411057263166d6facf9b30b8.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR52-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"VUW27mJENypzjdAvnKRNAPeI2Gp4jmO-f8N99lsxSB0e33PMNdM9iA==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"payment\": {\n        \"id\": \"pay_11842_10000\",\n        \"alt_key\": \"1234\",\n        \"description\": \"Invoice 1234\",\n        \"source\": \"MOTO\",\n        \"action\": \"PAYMENT\",\n        \"status\": \"SUCCESS\",\n        \"gateway_status\": \"APPROVED\",\n        \"gateway_reference\": \"ch_1GVaEEFi2CnH4uN3ouw69fw3\",\n        \"authorisation_code\": \"pi_1GVaEEFi2CnH4uN355ZdZvk5 (TEST)\",\n        \"reference\": \"REF-00010000\",\n        \"amount\": \"100\",\n        \"balance\": \"100\",\n        \"settle_currency\": \"GBP\",\n        \"settle_gross_amount\": \"100\",\n        \"settle_net_amount\": \"96.9\",\n        \"settle_fee_amount\": \"3.1\",\n        \"currency\": \"GBP\",\n        \"channel\": \"ch_11842_10001\",\n        \"initiative\": \"in_11842_10000\",\n        \"designation\": \"des_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"gateway\": \"gw_11842_10000\",\n        \"account\": \"acc_11842_10000\",\n        \"payment_method\": \"pm_11842_10000\",\n        \"contract\": \"co_11842_10000\",\n        \"created\": \"2020-04-08T09:29:48.000Z\",\n        \"updated\": \"2020-04-08T09:29:52.000Z\",\n        \"processed\": \"2020-04-08T09:29:51.000Z\"\n    },\n    \"contract\": {\n        \"account\": \"acc_11842_10000\",\n        \"alt_key\": \"1234\",\n        \"amount\": \"100\",\n        \"channel\": \"ch_11842_10001\",\n        \"completed\": \"2020-04-08T09:29:52.000Z\",\n        \"created\": \"2020-04-08T09:29:48.000Z\",\n        \"currency\": \"GBP\",\n        \"description\": \"Invoice 1234\",\n        \"designation\": \"des_11842_10000\",\n        \"gateway\": \"gw_11842_10000\",\n        \"id\": \"co_11842_10000\",\n        \"initiated\": \"2020-04-08T09:29:48.000Z\",\n        \"initiative\": \"in_11842_10000\",\n        \"last_transaction\": \"tr_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"payment_method\": \"pm_11842_10000\",\n        \"recurring\": false,\n        \"split\": false,\n        \"status\": \"COMPLETED\",\n        \"updated\": \"2020-04-08T09:29:52.000Z\"\n    },\n    \"transaction\": {\n        \"id\": \"tr_11842_10000\",\n        \"action\": \"PAYMENT\",\n        \"source\": \"MOTO\",\n        \"status\": \"SUCCESS\",\n        \"gateway_status\": \"APPROVED\",\n        \"gateway_reference\": \"ch_1GVaEEFi2CnH4uN3ouw69fw3\",\n        \"authorisation_code\": \"pi_1GVaEEFi2CnH4uN355ZdZvk5 (TEST)\",\n        \"reference\": \"REF-00010000\",\n        \"amount\": \"100\",\n        \"balance\": \"100\",\n        \"settle_currency\": \"GBP\",\n        \"settle_gross_amount\": \"100\",\n        \"settle_net_amount\": \"96.9\",\n        \"settle_fee_amount\": \"3.1\",\n        \"currency\": \"GBP\",\n        \"channel\": \"ch_11842_10001\",\n        \"initiative\": \"in_11842_10000\",\n        \"designation\": \"des_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"gateway\": \"gw_11842_10000\",\n        \"account\": \"acc_11842_10000\",\n        \"payment_method\": \"pm_11842_10000\",\n        \"contract\": \"co_11842_10000\",\n        \"created\": \"2020-04-08T09:29:48.000Z\",\n        \"updated\": \"2020-04-08T09:29:52.000Z\",\n        \"processed\": \"2020-04-08T09:29:51.000Z\"\n    }\n}"},{"id":"adb6aef7-878a-4c70-b661-a5de9e5eb0af","name":"Create a recurring payment","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"payment\": {\n\t\t\"currency\": \"GBP\",\n\t\t\"amount\": 100,\n\n\t\t\"alt_key\": \"1234\",\n\t\t\"description\": \"Invoice 1234\",\n\t\t\"source\": \"ECOMMERCE\",\n\t\t\"action\": \"PAYMENT\",\n        \"frequency\": \"MONTHLY\",\n        \"occurrences\": 12,\n\n\t\t\"success_url\": \"https://www.myhost.com/success\",\n\t\t\"cancel_url\": \"https://www.myhost.com/cancel\",\n\n\t\t\"payment_method\": {\n\t\t\t\"card_number\": \"4242424242424242\",\n\t\t\t\"card_cvc\": \"123\",\n\t\t\t\"card_expiry\": \"1224\",\n\t\t\t\"save_card\": true,\n\t\t\t\"description\": \"Main Card\",\n\n\t\t\t\"billing\": {\n\t\t\t\t\"line1\": \"123 Main Street\",\n\t\t\t\t\"line2\": \"\",\n\t\t\t\t\"line3\": \"\",\n\t\t\t\t\"line4\": \"Downtown\",\n\t\t\t\t\"line5\": \"70000\",\n\t\t\t\t\"line6\": \"Sydney\",\n\t\t\t\t\"country\": \"AU\"\n\t\t\t}\n\t\t},\n\n\t\t\"account\": {\n\t\t\t\"crm_key\": \"1\",\n            \"tags\": \"ABC,123\",\n\t\t\t\"first_name\": \"Jane\",\n\t\t\t\"last_name\": \"Doe\",\n\t\t\t\"company\": \"Marbles\",\n\t\t\t\"email\": \"jane.doe@email.com\",\n\t\t\t\"phone\": \"012391231234\",\n\t\t\t\"address\": {\n\t\t\t\t\"line1\": \"123 Main Street\",\n\t\t\t\t\"line2\": \"\",\n\t\t\t\t\"line3\": \"\",\n\t\t\t\t\"line4\": \"Downtown\",\n\t\t\t\t\"line5\": \"70000\",\n\t\t\t\t\"line6\": \"Sydney\",\n\t\t\t\t\"country\": \"AU\"\n\n\t\t\t}\n\t\t}\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 20 Feb 2024 17:13:58 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-powered-by","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"content-encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 ca1303affdca7d63f1f154f36f5c79b4.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"hJXRBCV8yUX_6tg4C9LyI30xHau3JTjg7COIEo6L4x243THN3VHDXw==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"payment\": {\n        \"account\": \"acc_11842_10000\",\n        \"action\": \"PAYMENT\",\n        \"alt_key\": \"1234\",\n        \"amount\": \"100\",\n        \"authorisation_code\": \"pi_3OlwtDFi2CnH4uN31BslSKqT (TEST)\",\n        \"balance\": \"100\",\n        \"browser_accept_header\": \"application/json\",\n        \"browser_ip_address\": \"212.161.80.4\",\n        \"browser_java_enabled\": false,\n        \"browser_javascript\": false,\n        \"browser_locale\": \"en_US\",\n        \"channel\": \"ch_11842_10001\",\n        \"contract\": \"co_11842_10115\",\n        \"created\": \"2024-02-20T17:13:52.000Z\",\n        \"currency\": \"GBP\",\n        \"description\": \"Invoice 1234\",\n        \"designation\": \"des_11842_10000\",\n        \"division\": \"div_11842_1\",\n        \"gateway\": \"gw_11842_10000\",\n        \"gateway_metadata\": {\n            \"balance_transaction\": {\n                \"amount\": 10000,\n                \"available_on\": 1708992000,\n                \"created\": 1708449235,\n                \"fee\": 345,\n                \"reporting_category\": \"charge\",\n                \"fee_details\": [\n                    {\n                        \"amount\": 345,\n                        \"description\": \"Stripe processing fees\",\n                        \"currency\": \"gbp\",\n                        \"type\": \"stripe_fee\"\n                    }\n                ],\n                \"description\": \"Invoice 1234\",\n                \"source\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n                \"type\": \"charge\",\n                \"currency\": \"gbp\",\n                \"id\": \"txn_3OlwtDFi2CnH4uN31IKD341h\",\n                \"net\": 9655,\n                \"object\": \"balance_transaction\",\n                \"status\": \"pending\"\n            },\n            \"charge\": {\n                \"balance_transaction\": \"txn_3OlwtDFi2CnH4uN31IKD341h\",\n                \"billing_details\": {\n                    \"address\": {\n                        \"country\": \"AU\",\n                        \"city\": \"Downtown\",\n                        \"state\": \"Sydney\",\n                        \"postal_code\": \"70000\",\n                        \"line1\": \"123 Main Street\"\n                    },\n                    \"phone\": \"012391231234\",\n                    \"name\": \"Jane Doe\",\n                    \"email\": \"jane.doe@email.com\"\n                },\n                \"metadata\": {\n                    \"paymentMethodCode\": \"00010065\",\n                    \"accountCode\": \"CRM-1\",\n                    \"accountEmail\": \"jane.doe@email.com\",\n                    \"gatewayKey\": \"11842_10000\",\n                    \"accountName\": \"Jane Doe\",\n                    \"staffPresent\": \"false\",\n                    \"transactionReference\": \"BOLT-00011556\",\n                    \"ipAddress\": \"212.161.80.4\",\n                    \"client\": \"11842\",\n                    \"altKey\": \"1234\",\n                    \"customerPresent\": \"true\",\n                    \"orderDescription\": \"Invoice 1234\"\n                },\n                \"livemode\": false,\n                \"radar_options\": {},\n                \"description\": \"Invoice 1234\",\n                \"fraud_details\": {},\n                \"amount_refunded\": 0,\n                \"refunds\": {\n                    \"data\": [],\n                    \"total_count\": 0,\n                    \"has_more\": false,\n                    \"url\": \"/v1/charges/ch_3OlwtDFi2CnH4uN31eLW7vrZ/refunds\",\n                    \"object\": \"list\"\n                },\n                \"receipt_url\": \"https://pay.stripe.com/receipts/payment/CAcaFwoVYWNjdF8xRE85alFGaTJDbkg0dU4zKNS7064GMgbubJymINY6LBaNituBta6lEi_on7Ew7qpaeUyjJ2GyaGHvKjWKImSj5qvR6_37eaD9fq-v\",\n                \"captured\": true,\n                \"calculated_statement_descriptor\": \"TATERS LTD\",\n                \"currency\": \"gbp\",\n                \"refunded\": false,\n                \"id\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n                \"outcome\": {\n                    \"risk_level\": \"normal\",\n                    \"risk_score\": 52,\n                    \"seller_message\": \"Payment complete.\",\n                    \"network_status\": \"approved_by_network\",\n                    \"type\": \"authorized\"\n                },\n                \"payment_method\": \"pm_1OlwtCFi2CnH4uN3HbkkzAVY\",\n                \"amount\": 10000,\n                \"disputed\": false,\n                \"created\": 1708449235,\n                \"payment_method_details\": {\n                    \"type\": \"card\",\n                    \"card\": {\n                        \"country\": \"US\",\n                        \"last4\": \"4242\",\n                        \"funding\": \"credit\",\n                        \"exp_month\": 12,\n                        \"exp_year\": 2024,\n                        \"overcapture\": {\n                            \"maximum_amount_capturable\": 10000,\n                            \"status\": \"unavailable\"\n                        },\n                        \"amount_authorized\": 10000,\n                        \"network\": \"visa\",\n                        \"network_token\": {\n                            \"used\": false\n                        },\n                        \"incremental_authorization\": {\n                            \"status\": \"unavailable\"\n                        },\n                        \"checks\": {\n                            \"cvc_check\": \"pass\",\n                            \"address_line1_check\": \"pass\",\n                            \"address_postal_code_check\": \"pass\"\n                        },\n                        \"extended_authorization\": {\n                            \"status\": \"disabled\"\n                        },\n                        \"fingerprint\": \"ZDVftG8YX6erKyIj\",\n                        \"brand\": \"visa\",\n                        \"multicapture\": {\n                            \"status\": \"unavailable\"\n                        }\n                    }\n                },\n                \"amount_captured\": 10000,\n                \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                \"paid\": true,\n                \"payment_intent\": \"pi_3OlwtDFi2CnH4uN31BslSKqT\",\n                \"object\": \"charge\",\n                \"customer\": \"cus_FnW1i69iOuxWBO\",\n                \"status\": \"succeeded\"\n            },\n            \"payment_intent\": {\n                \"amount_details\": {\n                    \"tip\": {}\n                },\n                \"metadata\": {\n                    \"paymentMethodCode\": \"00010065\",\n                    \"accountCode\": \"CRM-1\",\n                    \"accountEmail\": \"jane.doe@email.com\",\n                    \"gatewayKey\": \"11842_10000\",\n                    \"accountName\": \"Jane Doe\",\n                    \"staffPresent\": \"false\",\n                    \"transactionReference\": \"BOLT-00011556\",\n                    \"ipAddress\": \"212.161.80.4\",\n                    \"client\": \"11842\",\n                    \"altKey\": \"1234\",\n                    \"customerPresent\": \"true\",\n                    \"orderDescription\": \"Invoice 1234\"\n                },\n                \"livemode\": false,\n                \"amount_capturable\": 0,\n                \"description\": \"Invoice 1234\",\n                \"latest_charge\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n                \"currency\": \"gbp\",\n                \"id\": \"pi_3OlwtDFi2CnH4uN31BslSKqT\",\n                \"client_secret\": \"pi_3OlwtDFi2CnH4uN31BslSKqT_secret_BkIafT7G4uL2FGL6mRcDpkc0R\",\n                \"payment_method_options\": {\n                    \"card\": {\n                        \"request_three_d_secure\": \"automatic\"\n                    }\n                },\n                \"payment_method\": \"pm_1OlwtCFi2CnH4uN3HbkkzAVY\",\n                \"capture_method\": \"automatic\",\n                \"amount\": 10000,\n                \"created\": 1708449235,\n                \"payment_method_types\": [\n                    \"card\"\n                ],\n                \"amount_received\": 10000,\n                \"setup_future_usage\": \"off_session\",\n                \"confirmation_method\": \"manual\",\n                \"charges\": {\n                    \"data\": [\n                        {\n                            \"balance_transaction\": \"txn_3OlwtDFi2CnH4uN31IKD341h\",\n                            \"billing_details\": {\n                                \"address\": {\n                                    \"country\": \"AU\",\n                                    \"city\": \"Downtown\",\n                                    \"state\": \"Sydney\",\n                                    \"postal_code\": \"70000\",\n                                    \"line1\": \"123 Main Street\"\n                                },\n                                \"phone\": \"012391231234\",\n                                \"name\": \"Jane Doe\",\n                                \"email\": \"jane.doe@email.com\"\n                            },\n                            \"metadata\": {\n                                \"paymentMethodCode\": \"00010065\",\n                                \"accountCode\": \"CRM-1\",\n                                \"accountEmail\": \"jane.doe@email.com\",\n                                \"gatewayKey\": \"11842_10000\",\n                                \"accountName\": \"Jane Doe\",\n                                \"staffPresent\": \"false\",\n                                \"transactionReference\": \"BOLT-00011556\",\n                                \"ipAddress\": \"212.161.80.4\",\n                                \"client\": \"11842\",\n                                \"altKey\": \"1234\",\n                                \"customerPresent\": \"true\",\n                                \"orderDescription\": \"Invoice 1234\"\n                            },\n                            \"livemode\": false,\n                            \"radar_options\": {},\n                            \"description\": \"Invoice 1234\",\n                            \"fraud_details\": {},\n                            \"amount_refunded\": 0,\n                            \"refunds\": {\n                                \"data\": [],\n                                \"total_count\": 0,\n                                \"has_more\": false,\n                                \"url\": \"/v1/charges/ch_3OlwtDFi2CnH4uN31eLW7vrZ/refunds\",\n                                \"object\": \"list\"\n                            },\n                            \"receipt_url\": \"https://pay.stripe.com/receipts/payment/CAcaFwoVYWNjdF8xRE85alFGaTJDbkg0dU4zKNS7064GMgbubJymINY6LBaNituBta6lEi_on7Ew7qpaeUyjJ2GyaGHvKjWKImSj5qvR6_37eaD9fq-v\",\n                            \"captured\": true,\n                            \"calculated_statement_descriptor\": \"TATERS LTD\",\n                            \"currency\": \"gbp\",\n                            \"refunded\": false,\n                            \"id\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n                            \"outcome\": {\n                                \"risk_level\": \"normal\",\n                                \"risk_score\": 52,\n                                \"seller_message\": \"Payment complete.\",\n                                \"network_status\": \"approved_by_network\",\n                                \"type\": \"authorized\"\n                            },\n                            \"payment_method\": \"pm_1OlwtCFi2CnH4uN3HbkkzAVY\",\n                            \"amount\": 10000,\n                            \"disputed\": false,\n                            \"created\": 1708449235,\n                            \"payment_method_details\": {\n                                \"type\": \"card\",\n                                \"card\": {\n                                    \"country\": \"US\",\n                                    \"last4\": \"4242\",\n                                    \"funding\": \"credit\",\n                                    \"exp_month\": 12,\n                                    \"exp_year\": 2024,\n                                    \"overcapture\": {\n                                        \"maximum_amount_capturable\": 10000,\n                                        \"status\": \"unavailable\"\n                                    },\n                                    \"amount_authorized\": 10000,\n                                    \"network\": \"visa\",\n                                    \"network_token\": {\n                                        \"used\": false\n                                    },\n                                    \"incremental_authorization\": {\n                                        \"status\": \"unavailable\"\n                                    },\n                                    \"checks\": {\n                                        \"cvc_check\": \"pass\",\n                                        \"address_line1_check\": \"pass\",\n                                        \"address_postal_code_check\": \"pass\"\n                                    },\n                                    \"extended_authorization\": {\n                                        \"status\": \"disabled\"\n                                    },\n                                    \"fingerprint\": \"ZDVftG8YX6erKyIj\",\n                                    \"brand\": \"visa\",\n                                    \"multicapture\": {\n                                        \"status\": \"unavailable\"\n                                    }\n                                }\n                            },\n                            \"amount_captured\": 10000,\n                            \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                            \"paid\": true,\n                            \"payment_intent\": \"pi_3OlwtDFi2CnH4uN31BslSKqT\",\n                            \"object\": \"charge\",\n                            \"customer\": \"cus_FnW1i69iOuxWBO\",\n                            \"status\": \"succeeded\"\n                        }\n                    ],\n                    \"total_count\": 1,\n                    \"has_more\": false,\n                    \"url\": \"/v1/charges?payment_intent=pi_3OlwtDFi2CnH4uN31BslSKqT\",\n                    \"object\": \"list\"\n                },\n                \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                \"object\": \"payment_intent\",\n                \"customer\": \"cus_FnW1i69iOuxWBO\",\n                \"status\": \"succeeded\"\n            }\n        },\n        \"gateway_reference\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n        \"gateway_status\": \"APPROVED\",\n        \"id\": \"pay_11842_11556\",\n        \"initiated\": \"2024-02-20T17:13:52.000Z\",\n        \"initiative\": \"in_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"payment_method\": \"pm_11842_10065\",\n        \"payment_method_used_token\": false,\n        \"processed\": \"2024-02-20T17:13:56.000Z\",\n        \"reference\": \"BOLT-00011556\",\n        \"settle_currency\": \"GBP\",\n        \"settle_fee_amount\": \"3.45\",\n        \"settle_gross_amount\": \"100\",\n        \"settle_net_amount\": \"96.55\",\n        \"source\": \"ECOMMERCE\",\n        \"status\": \"SUCCESS\",\n        \"transaction\": \"tr_11842_11556\",\n        \"updated\": \"2024-02-20T17:13:57.000Z\",\n        \"v\": 4\n    },\n    \"contract\": {\n        \"account\": \"acc_11842_10000\",\n        \"alt_key\": \"1234\",\n        \"amount\": \"100\",\n        \"channel\": \"ch_11842_10001\",\n        \"charge_count\": 1,\n        \"created\": \"2024-02-20T17:13:49.000Z\",\n        \"currency\": \"GBP\",\n        \"description\": \"Invoice 1234\",\n        \"designation\": \"des_11842_10000\",\n        \"division\": \"div_11842_1\",\n        \"frequency\": \"MONTHLY\",\n        \"gateway\": \"gw_11842_10000\",\n        \"id\": \"co_11842_10115\",\n        \"initiated\": \"2024-02-20T17:13:48.000Z\",\n        \"initiative\": \"in_11842_10000\",\n        \"last_charge\": \"cg_11842_11548\",\n        \"last_transaction\": \"tr_11842_11556\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"next_charge\": \"2024-03-20T17:13:48.000Z\",\n        \"occurrences\": 12,\n        \"payment_method\": \"pm_11842_10065\",\n        \"recurring\": true,\n        \"scheduler\": true,\n        \"status\": \"ACTIVE\",\n        \"updated\": \"2024-02-20T17:13:57.000Z\",\n        \"v\": 4\n    },\n    \"transaction\": {\n        \"account\": \"acc_11842_10000\",\n        \"action\": \"PAYMENT\",\n        \"amount\": \"100\",\n        \"authorisation_code\": \"pi_3OlwtDFi2CnH4uN31BslSKqT (TEST)\",\n        \"balance\": \"100\",\n        \"browser_ip_address\": \"212.161.80.4\",\n        \"browser_accept_header\": \"application/json\",\n        \"browser_javascript\": false,\n        \"browser_locale\": \"en_US\",\n        \"browser_java_enabled\": false,\n        \"channel\": \"ch_11842_10001\",\n        \"contract\": \"co_11842_10115\",\n        \"created\": \"2024-02-20T17:13:52.000Z\",\n        \"currency\": \"GBP\",\n        \"designation\": \"des_11842_10000\",\n        \"division\": \"div_11842_1\",\n        \"gateway\": \"gw_11842_10000\",\n        \"gateway_metadata\": {\n            \"balance_transaction\": {\n                \"amount\": 10000,\n                \"available_on\": 1708992000,\n                \"created\": 1708449235,\n                \"fee\": 345,\n                \"reporting_category\": \"charge\",\n                \"fee_details\": [\n                    {\n                        \"amount\": 345,\n                        \"description\": \"Stripe processing fees\",\n                        \"currency\": \"gbp\",\n                        \"type\": \"stripe_fee\"\n                    }\n                ],\n                \"description\": \"Invoice 1234\",\n                \"source\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n                \"type\": \"charge\",\n                \"currency\": \"gbp\",\n                \"id\": \"txn_3OlwtDFi2CnH4uN31IKD341h\",\n                \"net\": 9655,\n                \"object\": \"balance_transaction\",\n                \"status\": \"pending\"\n            },\n            \"charge\": {\n                \"balance_transaction\": \"txn_3OlwtDFi2CnH4uN31IKD341h\",\n                \"billing_details\": {\n                    \"address\": {\n                        \"country\": \"AU\",\n                        \"city\": \"Downtown\",\n                        \"state\": \"Sydney\",\n                        \"postal_code\": \"70000\",\n                        \"line1\": \"123 Main Street\"\n                    },\n                    \"phone\": \"012391231234\",\n                    \"name\": \"Jane Doe\",\n                    \"email\": \"jane.doe@email.com\"\n                },\n                \"metadata\": {\n                    \"paymentMethodCode\": \"00010065\",\n                    \"accountCode\": \"CRM-1\",\n                    \"accountEmail\": \"jane.doe@email.com\",\n                    \"gatewayKey\": \"11842_10000\",\n                    \"accountName\": \"Jane Doe\",\n                    \"staffPresent\": \"false\",\n                    \"transactionReference\": \"BOLT-00011556\",\n                    \"ipAddress\": \"212.161.80.4\",\n                    \"client\": \"11842\",\n                    \"altKey\": \"1234\",\n                    \"customerPresent\": \"true\",\n                    \"orderDescription\": \"Invoice 1234\"\n                },\n                \"livemode\": false,\n                \"radar_options\": {},\n                \"description\": \"Invoice 1234\",\n                \"fraud_details\": {},\n                \"amount_refunded\": 0,\n                \"refunds\": {\n                    \"data\": [],\n                    \"total_count\": 0,\n                    \"has_more\": false,\n                    \"url\": \"/v1/charges/ch_3OlwtDFi2CnH4uN31eLW7vrZ/refunds\",\n                    \"object\": \"list\"\n                },\n                \"receipt_url\": \"https://pay.stripe.com/receipts/payment/CAcaFwoVYWNjdF8xRE85alFGaTJDbkg0dU4zKNS7064GMgbubJymINY6LBaNituBta6lEi_on7Ew7qpaeUyjJ2GyaGHvKjWKImSj5qvR6_37eaD9fq-v\",\n                \"captured\": true,\n                \"calculated_statement_descriptor\": \"TATERS LTD\",\n                \"currency\": \"gbp\",\n                \"refunded\": false,\n                \"id\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n                \"outcome\": {\n                    \"risk_level\": \"normal\",\n                    \"risk_score\": 52,\n                    \"seller_message\": \"Payment complete.\",\n                    \"network_status\": \"approved_by_network\",\n                    \"type\": \"authorized\"\n                },\n                \"payment_method\": \"pm_1OlwtCFi2CnH4uN3HbkkzAVY\",\n                \"amount\": 10000,\n                \"disputed\": false,\n                \"created\": 1708449235,\n                \"payment_method_details\": {\n                    \"type\": \"card\",\n                    \"card\": {\n                        \"country\": \"US\",\n                        \"last4\": \"4242\",\n                        \"funding\": \"credit\",\n                        \"exp_month\": 12,\n                        \"exp_year\": 2024,\n                        \"overcapture\": {\n                            \"maximum_amount_capturable\": 10000,\n                            \"status\": \"unavailable\"\n                        },\n                        \"amount_authorized\": 10000,\n                        \"network\": \"visa\",\n                        \"network_token\": {\n                            \"used\": false\n                        },\n                        \"incremental_authorization\": {\n                            \"status\": \"unavailable\"\n                        },\n                        \"checks\": {\n                            \"cvc_check\": \"pass\",\n                            \"address_line1_check\": \"pass\",\n                            \"address_postal_code_check\": \"pass\"\n                        },\n                        \"extended_authorization\": {\n                            \"status\": \"disabled\"\n                        },\n                        \"fingerprint\": \"ZDVftG8YX6erKyIj\",\n                        \"brand\": \"visa\",\n                        \"multicapture\": {\n                            \"status\": \"unavailable\"\n                        }\n                    }\n                },\n                \"amount_captured\": 10000,\n                \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                \"paid\": true,\n                \"payment_intent\": \"pi_3OlwtDFi2CnH4uN31BslSKqT\",\n                \"object\": \"charge\",\n                \"customer\": \"cus_FnW1i69iOuxWBO\",\n                \"status\": \"succeeded\"\n            },\n            \"payment_intent\": {\n                \"amount_details\": {\n                    \"tip\": {}\n                },\n                \"metadata\": {\n                    \"paymentMethodCode\": \"00010065\",\n                    \"accountCode\": \"CRM-1\",\n                    \"accountEmail\": \"jane.doe@email.com\",\n                    \"gatewayKey\": \"11842_10000\",\n                    \"accountName\": \"Jane Doe\",\n                    \"staffPresent\": \"false\",\n                    \"transactionReference\": \"BOLT-00011556\",\n                    \"ipAddress\": \"212.161.80.4\",\n                    \"client\": \"11842\",\n                    \"altKey\": \"1234\",\n                    \"customerPresent\": \"true\",\n                    \"orderDescription\": \"Invoice 1234\"\n                },\n                \"livemode\": false,\n                \"amount_capturable\": 0,\n                \"description\": \"Invoice 1234\",\n                \"latest_charge\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n                \"currency\": \"gbp\",\n                \"id\": \"pi_3OlwtDFi2CnH4uN31BslSKqT\",\n                \"client_secret\": \"pi_3OlwtDFi2CnH4uN31BslSKqT_secret_BkIafT7G4uL2FGL6mRcDpkc0R\",\n                \"payment_method_options\": {\n                    \"card\": {\n                        \"request_three_d_secure\": \"automatic\"\n                    }\n                },\n                \"payment_method\": \"pm_1OlwtCFi2CnH4uN3HbkkzAVY\",\n                \"capture_method\": \"automatic\",\n                \"amount\": 10000,\n                \"created\": 1708449235,\n                \"payment_method_types\": [\n                    \"card\"\n                ],\n                \"amount_received\": 10000,\n                \"setup_future_usage\": \"off_session\",\n                \"confirmation_method\": \"manual\",\n                \"charges\": {\n                    \"data\": [\n                        {\n                            \"balance_transaction\": \"txn_3OlwtDFi2CnH4uN31IKD341h\",\n                            \"billing_details\": {\n                                \"address\": {\n                                    \"country\": \"AU\",\n                                    \"city\": \"Downtown\",\n                                    \"state\": \"Sydney\",\n                                    \"postal_code\": \"70000\",\n                                    \"line1\": \"123 Main Street\"\n                                },\n                                \"phone\": \"012391231234\",\n                                \"name\": \"Jane Doe\",\n                                \"email\": \"jane.doe@email.com\"\n                            },\n                            \"metadata\": {\n                                \"paymentMethodCode\": \"00010065\",\n                                \"accountCode\": \"CRM-1\",\n                                \"accountEmail\": \"jane.doe@email.com\",\n                                \"gatewayKey\": \"11842_10000\",\n                                \"accountName\": \"Jane Doe\",\n                                \"staffPresent\": \"false\",\n                                \"transactionReference\": \"BOLT-00011556\",\n                                \"ipAddress\": \"212.161.80.4\",\n                                \"client\": \"11842\",\n                                \"altKey\": \"1234\",\n                                \"customerPresent\": \"true\",\n                                \"orderDescription\": \"Invoice 1234\"\n                            },\n                            \"livemode\": false,\n                            \"radar_options\": {},\n                            \"description\": \"Invoice 1234\",\n                            \"fraud_details\": {},\n                            \"amount_refunded\": 0,\n                            \"refunds\": {\n                                \"data\": [],\n                                \"total_count\": 0,\n                                \"has_more\": false,\n                                \"url\": \"/v1/charges/ch_3OlwtDFi2CnH4uN31eLW7vrZ/refunds\",\n                                \"object\": \"list\"\n                            },\n                            \"receipt_url\": \"https://pay.stripe.com/receipts/payment/CAcaFwoVYWNjdF8xRE85alFGaTJDbkg0dU4zKNS7064GMgbubJymINY6LBaNituBta6lEi_on7Ew7qpaeUyjJ2GyaGHvKjWKImSj5qvR6_37eaD9fq-v\",\n                            \"captured\": true,\n                            \"calculated_statement_descriptor\": \"TATERS LTD\",\n                            \"currency\": \"gbp\",\n                            \"refunded\": false,\n                            \"id\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n                            \"outcome\": {\n                                \"risk_level\": \"normal\",\n                                \"risk_score\": 52,\n                                \"seller_message\": \"Payment complete.\",\n                                \"network_status\": \"approved_by_network\",\n                                \"type\": \"authorized\"\n                            },\n                            \"payment_method\": \"pm_1OlwtCFi2CnH4uN3HbkkzAVY\",\n                            \"amount\": 10000,\n                            \"disputed\": false,\n                            \"created\": 1708449235,\n                            \"payment_method_details\": {\n                                \"type\": \"card\",\n                                \"card\": {\n                                    \"country\": \"US\",\n                                    \"last4\": \"4242\",\n                                    \"funding\": \"credit\",\n                                    \"exp_month\": 12,\n                                    \"exp_year\": 2024,\n                                    \"overcapture\": {\n                                        \"maximum_amount_capturable\": 10000,\n                                        \"status\": \"unavailable\"\n                                    },\n                                    \"amount_authorized\": 10000,\n                                    \"network\": \"visa\",\n                                    \"network_token\": {\n                                        \"used\": false\n                                    },\n                                    \"incremental_authorization\": {\n                                        \"status\": \"unavailable\"\n                                    },\n                                    \"checks\": {\n                                        \"cvc_check\": \"pass\",\n                                        \"address_line1_check\": \"pass\",\n                                        \"address_postal_code_check\": \"pass\"\n                                    },\n                                    \"extended_authorization\": {\n                                        \"status\": \"disabled\"\n                                    },\n                                    \"fingerprint\": \"ZDVftG8YX6erKyIj\",\n                                    \"brand\": \"visa\",\n                                    \"multicapture\": {\n                                        \"status\": \"unavailable\"\n                                    }\n                                }\n                            },\n                            \"amount_captured\": 10000,\n                            \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                            \"paid\": true,\n                            \"payment_intent\": \"pi_3OlwtDFi2CnH4uN31BslSKqT\",\n                            \"object\": \"charge\",\n                            \"customer\": \"cus_FnW1i69iOuxWBO\",\n                            \"status\": \"succeeded\"\n                        }\n                    ],\n                    \"total_count\": 1,\n                    \"has_more\": false,\n                    \"url\": \"/v1/charges?payment_intent=pi_3OlwtDFi2CnH4uN31BslSKqT\",\n                    \"object\": \"list\"\n                },\n                \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                \"object\": \"payment_intent\",\n                \"customer\": \"cus_FnW1i69iOuxWBO\",\n                \"status\": \"succeeded\"\n            }\n        },\n        \"gateway_reference\": \"ch_3OlwtDFi2CnH4uN31eLW7vrZ\",\n        \"gateway_status\": \"APPROVED\",\n        \"id\": \"tr_11842_11556\",\n        \"initiated\": \"2024-02-20T17:13:52.000Z\",\n        \"initiative\": \"in_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"payment_method\": \"pm_11842_10065\",\n        \"payment_method_used_token\": false,\n        \"processed\": \"2024-02-20T17:13:56.000Z\",\n        \"reference\": \"BOLT-00011556\",\n        \"settle_currency\": \"GBP\",\n        \"settle_fee_amount\": \"3.45\",\n        \"settle_gross_amount\": \"100\",\n        \"settle_net_amount\": \"96.55\",\n        \"source\": \"ECOMMERCE\",\n        \"status\": \"SUCCESS\",\n        \"updated\": \"2024-02-20T17:13:57.000Z\",\n        \"v\": 4\n    }\n}"}],"_postman_id":"fe184f65-c12c-41c0-84cc-34e6b611a13b"},{"name":"Capture a payment","id":"3dfa2a64-7825-434d-8d78-3ada6ce08104","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments/{{payment_id}}/capture","description":"<p>You can capture an authorisation in part of full.  </p>\n<p>Note, support for multi-refund (eg I authorise $100 and capture $20 followed by a second capture of $80) is not available on all gateways.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>(optional) The amount to capture as a string eg \"10\", the amount should not have commas and use a <code>.</code> as a decimal seperator. If you leave this out the entire  uncaptured amount of the transaction will be captured.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payments","{{payment_id}}","capture"],"host":["app","shuttleglobal","com"],"query":[{"disabled":true,"key":"","value":""}],"variable":[]}},"response":[{"id":"08a3e1fc-b4d3-4296-8071-282168a506f7","name":"Capture a payment (full)","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments/{{payment_id}}/capture","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","payments","{{payment_id}}","capture"],"query":[{"key":"","value":"","type":"text","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"223","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 08 Apr 2020 09:34:45 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 a4b14ec1411057263166d6facf9b30b8.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR52-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"C6FYe4z6iA84f3f2xAELb6539okFWHUJKUHoPuYsfM6hNRAQ51D-gg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"capture\": {\n        \"amount\": \"100\",\n        \"created\": \"2020-04-08T09:34:43.000Z\",\n        \"gateway_reference\": \"ch_1GVaHsFi2CnH4uN3tiXQ0r4b\",\n        \"gateway_status\": \"APPROVED\",\n        \"id\": \"ca_11842_10004\",\n        \"payment\": \"pay_11842_10003\",\n        \"processed\": \"2020-04-08T09:34:44.000Z\",\n        \"reference\": \"REF-00010004\",\n        \"source_transaction\": \"tr_11842_10003\",\n        \"status\": \"SUCCESS\"\n    }\n}"},{"id":"e3a1fa2d-680d-4b83-a4f1-177ca94ec337","name":"Capture a payment (partial)","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"amount\": 20\n}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments/{{payment_id}}/capture","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","payments","{{payment_id}}","capture"],"query":[{"key":"","value":"","type":"text","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"225","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 08 Apr 2020 09:36:20 GMT","enabled":true},{"key":"Server","value":"Apache-Coyote/1.1","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"X-Powered-By","value":"Express","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 a4b14ec1411057263166d6facf9b30b8.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR52-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"iEHGAbiV65GoU9imKwlNnPWluvlcLGAT1mRUm8qv3Yo5F-BeW-lP9w==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"capture\": {\n        \"amount\": \"20\",\n        \"created\": \"2020-04-08T09:36:19.000Z\",\n        \"gateway_reference\": \"ch_1GVaKJFi2CnH4uN3AmXTKHwB\",\n        \"gateway_status\": \"APPROVED\",\n        \"id\": \"ca_11842_10006\",\n        \"payment\": \"pay_11842_10005\",\n        \"processed\": \"2020-04-08T09:36:20.000Z\",\n        \"reference\": \"REF-00010006\",\n        \"source_transaction\": \"tr_11842_10005\",\n        \"status\": \"SUCCESS\"\n    }\n}"}],"_postman_id":"3dfa2a64-7825-434d-8d78-3ada6ce08104"},{"name":"Void a payment","id":"2ac91ea5-4798-458d-8a71-c3010851699b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments/{{payment_id}}/void","description":"<p>You can void an authorisation, which will unblocked the authorised amount.  </p>\n<p>There are no parameters to void.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payments","{{payment_id}}","void"],"host":["app","shuttleglobal","com"],"query":[{"disabled":true,"key":"","value":""}],"variable":[]}},"response":[{"id":"a47b806b-e750-4446-aee5-22d9477895c5","name":"Void a payment","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments/{{payment_id}}/void","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","payments","{{payment_id}}","void"],"query":[{"key":"","type":"text","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"156","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 01 Oct 2019 16:25:27 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 6005ade476005cae71525d1ec56100f8.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR3-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"v3Dm5kRt1LZZZG0uAcf-IBf_8oDqc16XwtuqgtAVJ8fOGwiT47Gkcg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"void\": {\n        \"id\": \"vo_5139_10151\",\n        \"payment\": \"pay_5139_10150\",\n        \"amount\": \"100\",\n        \"status\": \"SUCCESS\",\n        \"reference\": \"REF-00010151\",\n        \"created\": \"2019-10-01T16:25:24.000Z\",\n        \"processed\": \"2019-10-01T16:25:27.000Z\"\n    }\n}"}],"_postman_id":"2ac91ea5-4798-458d-8a71-c3010851699b"}],"id":"faebf5e6-c780-436f-b97b-6bc46a89e16a","description":"<p>The <code>payments</code> end point allows you to create and retrieve once off payments. If you attempt to fetch a scheduled or recurring payment you will receive an error advising: \"Payments API is not available for scheduled or recurring payments, please use the contract and transaction API\"</p>\n<p><em>Note: When a payment is performed behind the scenes a contract and transaction is created, a payment is a simplified view of these 2 objects.</em></p>\n<p><em>You can not search payments, please search transactions instead</em></p>\n","event":[{"listen":"prerequest","script":{"id":"d13f189d-b079-47bc-9d10-c7eec5c36ac5","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"2c900731-51f9-45cf-ad8c-477f333d2b36","type":"text/javascript","exec":[""]}}],"_postman_id":"faebf5e6-c780-436f-b97b-6bc46a89e16a","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Payment Methods","item":[{"name":"List payment methods","id":"457ba89b-3f04-460e-82b7-6202c1c7b685","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods?criteria=account%3d{{account_id}}","description":"<p>This request performs a simple search against <code>payment_method</code> objects:</p>\n<ul>\n<li><code>criteria</code>: The search criteria (URL encoded).</li>\n<li><code>order</code>: The sort you would like to apply</li>\n<li><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object) </li>\n<li><code>limit</code>: The maximum records to return </li>\n<li><code>offset</code>: The offset from the first records to start returning records</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>: </p>\n<ul>\n<li>account</li>\n<li>code</li>\n<li>created</li>\n<li>expiry</li>\n<li>failing_since</li>\n<li>id    </li>\n<li>last4</li>\n<li>mandate_reference</li>\n<li>source</li>\n<li>status</li>\n<li>sub_status</li>\n<li>token</li>\n<li>type</li>\n<li>updated</li>\n</ul>\n<p>Expand: </p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>payment_methods</code></td>\n<td>an array of <code>payment_method</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payment_methods"],"host":["app","shuttleglobal","com"],"query":[{"key":"criteria","value":"account%3d{{account_id}}"}],"variable":[]}},"response":[{"id":"1a7d8c77-7266-4eed-94b9-3ef77fdb21ef","name":"List payment methods","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods?criteria=account%3d{{account_id}}","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","payment_methods"],"query":[{"key":"criteria","value":"account%3d{{account_id}}"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"238","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 02 Oct 2019 13:24:03 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"146-5e1e42c9-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 299d6cdcc49a194864ae1dbfa6512d01.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C3","enabled":true},{"key":"X-Amz-Cf-Id","value":"cWW0-3Ff1thQ6wgTMmHvoi22M2u8ww3H3uFiNeUqbtxD0x9n9X7yGg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"payment_methods\": [\n        {\n            \"id\": \"pm_5139_10123\",\n            \"account\": \"acc_5139_10163\",\n            \"code\": \"00010123\",\n            \"created\": \"2019-10-01T16:25:01.000Z\",\n            \"gateway\": \"gw_5139_10020\",\n            \"last_used\": \"2019-10-01T16:25:02.000Z\",\n            \"name\": \"Visa ending 4242, exp 12/22\",\n            \"status\": \"INACTIVE\",\n            \"type\": \"VISA\",\n            \"last4\": \"4242\",\n            \"expiry\": \"12/2022\"\n        }\n    ],\n    \"meta\": {\n        \"limit\": 20,\n        \"total\": 1\n    }\n}"}],"_postman_id":"457ba89b-3f04-460e-82b7-6202c1c7b685"},{"name":"Get a payment method","id":"ab6460f9-e5c1-427f-b32b-52031adc0d0e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods/{{payment_method_id}}","description":"<p>Request:</p>\n<p>Available fields to <code>expand</code>:</p>\n<ul>\n<li><p><code>account</code></p>\n</li>\n<li><p><code>created_session</code></p>\n</li>\n<li><p><code>gateway</code></p>\n</li>\n<li><p><code>updated_session</code></p>\n</li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>the account the payment_method belongs to</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>the billing address, where provided</td>\n</tr>\n<tr>\n<td><code>advanced_notice_hours</code></td>\n<td>DEPRECATED do not use</td>\n</tr>\n<tr>\n<td><code>archived</code></td>\n<td>the date the payment_method was archived (deleted)</td>\n</tr>\n<tr>\n<td><code>authorisation_url</code></td>\n<td>during creation, the link for 3DS (or equivalent process)</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>the display id of the payment method</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>the date / time the payment method was created</td>\n</tr>\n<tr>\n<td><code>created_session</code></td>\n<td>the session the object was created by</td>\n</tr>\n<tr>\n<td><code>expiry</code></td>\n<td>the expiry date of the payment method in MM/YYYY</td>\n</tr>\n<tr>\n<td><code>failing_reason</code></td>\n<td>the reason this payment_method is not working</td>\n</tr>\n<tr>\n<td><code>failing_since</code></td>\n<td>the date the this payment_method stopped working, note its date of first decline, and unset on a successful payment</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>the gateway the payment_method is linked to</td>\n</tr>\n<tr>\n<td><code>gateway_group</code></td>\n<td>the gateway group the payment_method is linked to, if interchangable between multiple gateways</td>\n</tr>\n<tr>\n<td><code>gateway_status</code></td>\n<td>the gateway's \"status\" (free text) of the payment method</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>the id of the payment method</td>\n</tr>\n<tr>\n<td><code>last4</code></td>\n<td>the last 4 digits of the payment method identifier (note this may be longer than 4 characters)</td>\n</tr>\n<tr>\n<td><code>last_used</code></td>\n<td>the date / time this payment method was last used</td>\n</tr>\n<tr>\n<td><code>mandate_id</code></td>\n<td>the ID of the legal mandate where applicable</td>\n</tr>\n<tr>\n<td><code>mandate_link</code></td>\n<td>the link to the legal mandate where applicable</td>\n</tr>\n<tr>\n<td><code>mandate_reference</code></td>\n<td>the customer facing reference number of the legal mandate where applicable</td>\n</tr>\n<tr>\n<td><code>mandate_text</code></td>\n<td>the legal text of the legal mandate where applicable</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the display name of the payment method</td>\n</tr>\n<tr>\n<td><code>requires_cvc</code></td>\n<td>true if this payment method requires CVC capture for ecommerce / MOTO type payments</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>where the payment_method was captured: <code>MOTO</code>, <code>ECOMMERCE</code>, <code>POS</code></td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the payment method: ACTIVE (saved), INACTIVE (not saved), FAILING (saved but was most recently declined), EXPIRED</td>\n</tr>\n<tr>\n<td><code>sub_status</code></td>\n<td>A free text substatus (for example GOCARDLESS uses this to annotate the status of the mandate)</td>\n</tr>\n<tr>\n<td><code>sub_status_reason</code></td>\n<td>A free text label describing the substatus</td>\n</tr>\n<tr>\n<td><code>token</code></td>\n<td>the token for the payment_method held on the gateway (only available for ACTIVE and FAILING methods). Note: for some gateways this is a composite value of multiple keys.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>the card type (or other eg SEPA, ACH) of the payment method</td>\n</tr>\n<tr>\n<td><code>updated_session</code></td>\n<td>the session the object was updated by</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the record</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>address</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>country</code></td>\n<td>the ISO code of the country</td>\n</tr>\n<tr>\n<td><code>line1</code></td>\n<td>Street line 1</td>\n</tr>\n<tr>\n<td><code>line2</code></td>\n<td>Street line 2</td>\n</tr>\n<tr>\n<td><code>line3</code></td>\n<td>Street line 3</td>\n</tr>\n<tr>\n<td><code>line4</code></td>\n<td>City / Town</td>\n</tr>\n<tr>\n<td><code>line5</code></td>\n<td>ZIP / Postcode</td>\n</tr>\n<tr>\n<td><code>line6</code></td>\n<td>State</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ACTIVE</code></td>\n<td>The payment_method is tokenised, available for use and the last known state was working</td>\n</tr>\n<tr>\n<td><code>FAILING</code></td>\n<td>The payment_method is tokenised, available for use and the last known state was NOT working</td>\n</tr>\n<tr>\n<td><code>FAILED</code></td>\n<td>(enterprise) The payment_method has automatically been archived due to repeat failure</td>\n</tr>\n<tr>\n<td><code>ARCHIVE</code></td>\n<td>The payment_method has manually been archived</td>\n</tr>\n<tr>\n<td><code>EXPIRED</code></td>\n<td>The payment_method has passed its expiry date</td>\n</tr>\n<tr>\n<td><code>INACTIVE</code></td>\n<td>DEPRECATED replaced with the more granular FAILED, ARCHIVE, EXPIRED, SINGLE_USE</td>\n</tr>\n<tr>\n<td><code>SINGLEUSE</code></td>\n<td>The payment_method was a single use token part of a one time payment</td>\n</tr>\n<tr>\n<td><code>REQAUTH</code></td>\n<td>The payment_method is not yet ready for use as it requires 3DS to be completed. In general, this will be a payment_method that was abandoned during creation, and is not usable.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payment_methods","{{payment_method_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"13c63b12-4a1b-408f-ad96-2a17e4c2d45f","name":"Get a payment method (saved)","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods/{{payment_method_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"256","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 01 Oct 2019 17:19:56 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"15c-e927d5ac-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 6b8db06427c7e39e9e30be778e233838.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C3","enabled":true},{"key":"X-Amz-Cf-Id","value":"6OmCJ2fnwHwTUfwjSO8gzyWn8RV_ksnn12Diatv9U7N8JyiPNsITFA==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"payment_method\": {\n        \"id\": \"pm_5139_10140\",\n        \"account\": \"acc_5139_10180\",\n        \"code\": \"00010140\",\n        \"created\": \"2019-10-01T17:19:30.000Z\",\n        \"gateway\": \"gw_5139_10020\",\n        \"last_used\": \"2019-10-01T17:19:30.000Z\",\n        \"name\": \"Visa ending 4242, exp 12/22\",\n        \"status\": \"ACTIVE\",\n        \"token\": \"cus_FueJdjSuHAP0Lj;pm_1FOp0a28aBTFOTZXJICVtway\",\n        \"type\": \"VISA\",\n        \"last4\": \"4242\",\n        \"expiry\": \"12/2022\",\n        \"address\": {\n                \"country\": \"AU\",\n                \"line1\": \"123 Main Street\",\n                \"line2\": \"\",\n                \"line3\": \"\",\n                \"line4\": \"Downtown\",\n                \"line5\": \"70000\",\n                \"line6\": \"Sydney\"\n            }\n    }\n}"}],"_postman_id":"ab6460f9-e5c1-427f-b32b-52031adc0d0e"},{"name":"Update a payment method","id":"cb1998b0-9dd2-4fa8-83e7-0fffa08b9032","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"payment_method\": {\n        \"manual\": true,\n        \"name\": \"My saved Visa\",\n        \"token\": \"cus_FueJdjSuHAP0Lj;pm_1FOp0a28aBTFOTZXJICVtway\",\n        \"last4\": \"4242\",\n        \"expiry\": \"12/2022\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods/{{payment_method_id}}","description":"<p>Update an existing payment_method.</p>\n<ul>\n<li><code>{{payment_method_id}}</code> can be either ID, or code</li>\n</ul>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>payment_method</code></td>\n<td>The changes to make to the account. In general not passing a value will leave it unchanged, where passing null, or empty string will blank a value</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>payment_method</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>address</code></td>\n<td>the card's billing address</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>your ID for this payment method</td>\n</tr>\n<tr>\n<td><code>expiry</code></td>\n<td>the expiry date of the payment method in MM/YYYY</td>\n</tr>\n<tr>\n<td><code>last4</code></td>\n<td>the last 4 digits of the payment method identifier (note this may be longer than 4 characters)</td>\n</tr>\n<tr>\n<td><code>manual</code></td>\n<td>(BOOL) true if we should just change the data model, false, if we should update the payment gateway. Only <code>true</code> is currently available.</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the display name of the payment method</td>\n</tr>\n<tr>\n<td><code>requires_cvc</code></td>\n<td>true if this payment method requires CVC capture for ecommerce / MOTO type payments</td>\n</tr>\n<tr>\n<td><code>token</code></td>\n<td>the token for the payment_method held on the gateway Note: for some gateways this is a composite value of multiple keys - please contact support for formatting support if you are populating this field.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>address</code>:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>country</code></td>\n<td>the ISO code of the country</td>\n</tr>\n<tr>\n<td><code>line1</code></td>\n<td>Street line 1</td>\n</tr>\n<tr>\n<td><code>line2</code></td>\n<td>Street line 2</td>\n</tr>\n<tr>\n<td><code>line3</code></td>\n<td>Street line 3</td>\n</tr>\n<tr>\n<td><code>line4</code></td>\n<td>City / Town</td>\n</tr>\n<tr>\n<td><code>line5</code></td>\n<td>ZIP / Postcode</td>\n</tr>\n<tr>\n<td><code>line6</code></td>\n<td>State</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>payment_method</code></td>\n<td>The updated payment_method</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payment_methods","{{payment_method_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"f3ca6dd1-5e0f-46f0-9bd6-7798ad91ac71","name":"Update a payment method","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"payment_method\": {\n        \"manual\": true,\n        \"name\": \"My saved Visa\",\n        \"token\": \"cus_FueJdjSuHAP0Lj;pm_1FOp0a28aBTFOTZXJICVtway\",\n        \"last4\": \"4242\",\n        \"expiry\": \"12/2022\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods/{{payment_method_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"502","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 14 Dec 2023 14:08:37 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"X-Powered-By","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 8539a9444fdb758c7be5c4643e65a12e.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"bIy5rRvTHb_gW-lNBJ44w-CwXUqFghWIP7u3RhaRKc_jEV3wqU0LFA==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"payment_method\": {\n        \"account\": \"acc_11842_10000\",\n        \"address\": {\n            \"country\": \"AU\",\n            \"line1\": \"123 Main Street\",\n            \"line2\": \"\",\n            \"line3\": \"\",\n            \"line4\": \"Downtown\",\n            \"line5\": \"70000\",\n            \"line6\": \"Sydney\"\n        },\n        \"bin\": \"424242\",\n        \"code\": \"00010020\",\n        \"created\": \"2020-04-08T13:29:56.000Z\",\n        \"gateway\": \"gw_11842_10000\",\n        \"gateway_group\": \"gw_11842_10000\",\n        \"id\": \"pm_11842_10020\",\n        \"last_used\": \"2023-12-14T14:08:37.000Z\",\n        \"last4\": \"4242\",\n        \"name\": \"Visa ending 4242\",\n        \"status\": \"ACTIVE\",\n        \"token\": \"cus_FueJdjSuHAP0Lj;pm_1FOp0a28aBTFOTZXJICVtway\",\n        \"type\": \"VISA\",\n        \"v\": 6\n    }\n}"}],"_postman_id":"cb1998b0-9dd2-4fa8-83e7-0fffa08b9032"},{"name":"Create a payment method","id":"b1e15211-a069-476c-9a9d-8bcea47a26c9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"payment_method\": {\n        \"account\": {\n            \"crm_key\": \"AC-01\",\n            \"first_name\": \"John\",\n            \"last_name\": \"Smith\",\n            \"email\": \"john.smith@shuttleglobal.com\"\n        },\n        \"gateway\": \"gw_11842_10000\",\n        \"manual\": true,\n        \"name\": \"My saved Visa\",\n        \"type\": \"VISA\",\n        \"token\": \"cus_FueJdjSuHAP0Lj;pm_1FOp0a28aBTFOTZXJICVtway\",\n        \"last4\": \"4242\",\n        \"expiry\": \"12/2022\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods","description":"<p>This API is for advanced use cases and designed to be used in hand </p>\n<p>Create a new payment_method. In general this API can be used for:</p>\n<ul>\n<li>Duplicating a payment_method (eg moving it to another instance).</li>\n<li>Client migration to Shuttle</li>\n<li>Saving a payment method thats been keyed into a third party UX</li>\n</ul>\n<p>Unless you're duplicating a payment_method between environments, this API is intended to be used in conjunction with Shuttle support as:</p>\n<ul>\n<li>Tokenisation format varies gateway to gateway depending on a gateway's requirements</li>\n<li>Saving a payment method keyed into a third party UX may have additional data requirements, eg generated by a processor's client side SDK or 3DS</li>\n</ul>\n<p>Request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>payment_method</code></td>\n<td>The payment_method to create</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>payment_method</code> is (data import / data copy - ie token import) :</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>(mandatory) the <code>id</code> or <code>crm_key</code> of the customer, you can also nest an account object here, which will also be created (or updated if the crm_key matches an existing account)</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>the card's billing address</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>your ID for this payment method</td>\n</tr>\n<tr>\n<td><code>expiry</code></td>\n<td>the expiry date of the payment method in MM/YYYY</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>the gateway this payment_method is linked to</td>\n</tr>\n<tr>\n<td><code>last4</code></td>\n<td>the last 4 digits of the payment method identifier (note this may be longer than 4 characters)</td>\n</tr>\n<tr>\n<td><code>manual</code></td>\n<td>hard coded to <code>true</code></td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the display name of the payment method</td>\n</tr>\n<tr>\n<td><code>requires_cvc</code></td>\n<td>true if this payment method requires CVC capture for ecommerce / MOTO type payments</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td><code>ACTIVE</code>,  <code>FAILING</code></td>\n</tr>\n<tr>\n<td><code>token</code></td>\n<td>the token for the payment_method held on the gateway Note: for some gateways this is a composite value of multiple keys - please contact support for formatting support if you are populating this field (contact support for further detail)</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>the card type (or other eg SEPA, ACH) of the payment method</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>If the card was entered by the customer (ECOMMERCE), staff (MOTO) or physical device (POS)</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>payment_method</code> (for third party UX - ie payment details capture and pass to gateway for tokenisation) :</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>(mandatory) the <code>id</code> or <code>crm_key</code> of the customer, you can also nest an account object here, which will also be created (or updated if the crm_key matches an existing account)</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>the gateway this payment_method is linked to</td>\n</tr>\n<tr>\n<td><code>contracts</code></td>\n<td>list of contract IDs you want to use this payment method once saved 9must all belong to the same <code>account</code></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>the <code>payment_method_type</code> (or other eg SEPA, ACH) of the payment method</td>\n</tr>\n<tr>\n<td><code>card_number</code></td>\n<td>For cards, the 13-19 digit full card PAN</td>\n</tr>\n<tr>\n<td><code>card_ending</code></td>\n<td>For cards, the last 4 digits of the card number (when full PAN not available)</td>\n</tr>\n<tr>\n<td><code>card_expiry</code></td>\n<td>For cards, the card expiry in format DD-YYYY</td>\n</tr>\n<tr>\n<td><code>card_cvc</code></td>\n<td>For cards, the 3-4 digit CVC</td>\n</tr>\n<tr>\n<td><code>card_holder_name</code></td>\n<td>For cards, the cardholder's name</td>\n</tr>\n<tr>\n<td><code>card_cryptogram</code></td>\n<td>For network tokens, the  cryptogram</td>\n</tr>\n<tr>\n<td><code>card_eci</code></td>\n<td>For network tokens, the eci</td>\n</tr>\n<tr>\n<td><code>card_token_requestor_id</code></td>\n<td>For network tokens, the <code>token_requestor_id</code></td>\n</tr>\n<tr>\n<td><code>sepa_iban</code></td>\n<td>For SEPA, the IBAN</td>\n</tr>\n<tr>\n<td><code>sepa_account_holder_name</code></td>\n<td>For SEPA, the account holder's name</td>\n</tr>\n<tr>\n<td><code>ach_account_holder_name</code></td>\n<td>For ACH, the cardholder's name</td>\n</tr>\n<tr>\n<td><code>ach_account_type</code></td>\n<td>For ACH, the account type</td>\n</tr>\n<tr>\n<td><code>ach_routing_number</code></td>\n<td>For ACH, the routing number</td>\n</tr>\n<tr>\n<td><code>ach_account_number</code></td>\n<td>For ACH, the account number</td>\n</tr>\n<tr>\n<td><code>gateway_data</code></td>\n<td>For gateways using JSWrapper (contact support for further detail)</td>\n</tr>\n<tr>\n<td><code>manual</code></td>\n<td>(optional) false - false means the payment details will be passed to the gateway for processing</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>The name to store on the payment_method</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>If the card was entered by the customer (ECOMMERCE), staff (MOTO) or physical device (POS)</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>the billing address (see below)</td>\n</tr>\n<tr>\n<td><code>success_url</code></td>\n<td>the success URL to redirect to after a 3DS challenge if one returned</td>\n</tr>\n<tr>\n<td><code>cancel_url</code></td>\n<td>the cancel URL to redirect to after a 3DS challenge if one returned</td>\n</tr>\n<tr>\n<td><code>ip_address</code></td>\n<td>the ip address of the customer</td>\n</tr>\n<tr>\n<td><code>user_agent</code></td>\n<td>the browser user agent of the customer</td>\n</tr>\n<tr>\n<td><code>accept_header</code></td>\n<td>the browser accept header of the customer</td>\n</tr>\n<tr>\n<td><code>javascript</code></td>\n<td>(bool) if javascript is enabled by the customer</td>\n</tr>\n<tr>\n<td><code>locale</code></td>\n<td>the locale of the customer</td>\n</tr>\n<tr>\n<td><code>browser_size</code></td>\n<td>the browser size of the customer</td>\n</tr>\n<tr>\n<td><code>browser_java_enabled</code></td>\n<td>(bool) if javascript is enabled by the customer</td>\n</tr>\n<tr>\n<td><code>browser_color_depth</code></td>\n<td>the browser color depth</td>\n</tr>\n<tr>\n<td><code>browser_timezone</code></td>\n<td>the browser timezone</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>address</code>: </p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>country</code></td>\n<td>the ISO code of the country</td>\n</tr>\n<tr>\n<td><code>line1</code></td>\n<td>Street line 1</td>\n</tr>\n<tr>\n<td><code>line2</code></td>\n<td>Street line 2</td>\n</tr>\n<tr>\n<td><code>line3</code></td>\n<td>Street line 3</td>\n</tr>\n<tr>\n<td><code>line4</code></td>\n<td>City / Town</td>\n</tr>\n<tr>\n<td><code>line5</code></td>\n<td>ZIP / Postcode</td>\n</tr>\n<tr>\n<td><code>line6</code></td>\n<td>State</td>\n</tr>\n</tbody>\n</table>\n</div><p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>payment_method</code></td>\n<td>The updated payment_method</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payment_methods"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"1de6be06-b91b-447c-8fae-22a768c0804c","name":"Create a payment method","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"payment_method\": {\n        \"account\": {\n            \"crm_key\": \"AC-01\",\n            \"first_name\": \"John\",\n            \"last_name\": \"Smith\",\n            \"email\": \"john.smith@shuttleglobal.com\"\n        },\n        \"gateway\": \"gw_11842_10000\",\n        \"manual\": true,\n        \"name\": \"My saved Visa\",\n        \"type\": \"VISA\",\n        \"token\": \"cus_FueJdjSuHAP0Lj;pm_1FOp0a28aBTFOTZXJICVtway\",\n        \"last4\": \"4242\",\n        \"expiry\": \"12/2022\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"427","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 14 Dec 2023 14:51:31 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"X-Powered-By","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 efca49fcadff9ca70aeb28e1a7858992.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"DVkiEKObaXRrwwdxcaoJ_5LgAC95j07cZ1TmzgR06SgxwwpwQ51hxQ==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"payment_method\": {\n        \"account\": \"acc_11842_10043\",\n        \"code\": \"00010062\",\n        \"created\": \"2023-12-14T14:51:29.000Z\",\n        \"gateway\": \"gw_11842_10000\",\n        \"gateway_group\": \"gw_11842_10000\",\n        \"gateway_status\": \"No such source: 'pm_1FOp0a28aBTFOTZXJICVtway'\",\n        \"id\": \"pm_11842_10062\",\n        \"last_used\": \"2023-12-14T14:51:29.000Z\",\n        \"last4\": \"4242\",\n        \"name\": \"Visa ending 4242\",\n        \"status\": \"INACTIVE\",\n        \"token\": \"cus_FueJdjSuHAP0Lj;pm_1FOp0a28aBTFOTZXJICVtway\",\n        \"type\": \"VISA\",\n        \"v\": 2\n    }\n}"}],"_postman_id":"b1e15211-a069-476c-9a9d-8bcea47a26c9"},{"name":"Delete a payment method","id":"73de0ff7-ada4-4527-b722-7b7d49c83880","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods/{{payment_method_id}}","description":"<p>Request:</p>\n<ul>\n<li><code>payment_method_id</code> is the id assigned when created.</li>\n</ul>\n<p>Response:</p>\n<p>HTTP 204 and an empty body</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payment_methods","{{payment_method_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"e6143963-cbf6-4bd2-b983-d2f8730b9551","name":"Delete a payment method","originalRequest":{"method":"DELETE","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payment_methods/{{payment_method_id}}"},"status":"No Content","code":204,"_postman_previewlanguage":"plain","header":[{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 20 Feb 2020 13:00:42 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 52e28d5e88c0c05ef6f40e101df14cab.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR50-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"zOpQGZtcn1kDbzDBU7pGtpfFRIsWwOBKjbcxyvG8GmP0sMF2olYwtQ==","enabled":true}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"73de0ff7-ada4-4527-b722-7b7d49c83880"}],"id":"562942d6-7397-4219-bb1b-bdc086edcce5","_postman_id":"562942d6-7397-4219-bb1b-bdc086edcce5","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Processors","item":[{"name":"List processors","id":"709eb37a-9801-4e49-acff-5731cb15e054","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/processors","description":"<p>This request returns a list of payment processors. Please note, not all payment processors will be available to your application, and you should filter the list for <code>visible: true</code>. Invisible payment processors are returned so you can render information for all processors used by your instances, even when the processor is not generally available. For example gateways disabled in the application configuration, legacy integrations, pre-release integrations, custom integrations, and integrations that are not generally available due to commercial, compatibility or other reasons. </p>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>our ID for the processor</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the name of the processor</td>\n</tr>\n<tr>\n<td><code>category</code></td>\n<td>the category ID for the processor - please note these can change frequently, as a processor is prompted from BETA to STD to RECOMMENDED (or back again!)</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>the date the record was created</td>\n</tr>\n<tr>\n<td><code>visible</code></td>\n<td>true / false if the processor is available for new connections</td>\n</tr>\n<tr>\n<td><code>logo_url</code></td>\n<td>a URL to a logo for this processor. The logo will typically be on a transparent background, intended to be rendered over a light background.</td>\n</tr>\n<tr>\n<td><code>instructions</code></td>\n<td>a short markdown snippet explaining how to configuring the processor, eg where to source certain fields from</td>\n</tr>\n<tr>\n<td><code>oauth</code></td>\n<td>true / false if the connection type requires an oauth type process - when TRUE we wrap this process with our own auth process so you can rely on a consistent approach to connectivity</td>\n</tr>\n<tr>\n<td><code>oauth_url</code></td>\n<td>a URL to forward the user to complete the OAUTH process. This will need to be completed in a browser and not an iFrame, the URL will contain <code>#SUCCESSURL#</code> and <code>#CANCELURL#</code> which you must replace with the URL you wish to use for successful connection and cancelation. You must URL encode these so they work in the URL. When the user is returned to the #SUCCESSURL#, a parameter called <code>?oauth_data=GUID</code> will be returned which can be used in \"POST /gateways\" to create the connection.</td>\n</tr>\n<tr>\n<td><code>onboarding_js</code></td>\n<td>the onboarding javascript (base64 encoded)</td>\n</tr>\n<tr>\n<td><code>website</code></td>\n<td>the company website</td>\n</tr>\n<tr>\n<td><code>logo_url</code></td>\n<td>a url to the processor logo</td>\n</tr>\n<tr>\n<td><code>countries</code></td>\n<td>the list of countries this processor can acquire merchants in, while every effort is made to ensure this is accurate, this is an informational field only and does not drive any behaviour.</td>\n</tr>\n<tr>\n<td><code>payment_method_types</code></td>\n<td>the types of payment supported by the integration with this processor</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>the date the record was last updated</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","processors"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"0df15ad7-8b77-4777-a8a9-c421930b2b1f","name":"Get processors","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/processors"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"2344","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Mon, 13 Jul 2020 15:53:33 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"fMrZOlJpeEGkB+MUP3KInQ==-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 2ef602bfa230d0b0e1ca0a28f22a91c9.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"jNDgyuWDPEuNfXTKRj6n7w40kkPLBK93umtkJ8tIgcO-BCGdqSMasg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"processors\": [\n        {\n            \"id\": \"SANDBOX\",\n            \"name\": \"Sandbox\",\n            \"category\": \"RECOMMENDED\",\n            \"visible\": true,\n            \"oauth\": false,\n            \"countries\": [\n                \"AF\",\n                \"AX\",\n                \"AL\",\n                \"DZ\",\n                \"AS\",\n                \"AD\",\n                \"AO\",\n                \"AI\",\n                \"AQ\",\n                \"AG\",\n                \"AR\",\n                \"AM\",\n                \"AW\",\n                \"AU\",\n                \"AT\",\n                \"AZ\",\n                \"BS\",\n                \"BH\",\n                \"BD\",\n                \"BB\",\n                \"BY\",\n                \"BE\",\n                \"BZ\",\n                \"BJ\",\n                \"BM\",\n                \"BT\",\n                \"BO\",\n                \"BQ\",\n                \"BA\",\n                \"BW\",\n                \"BV\",\n                \"BR\",\n                \"IO\",\n                \"BN\",\n                \"BG\",\n                \"BF\",\n                \"BI\",\n                \"CV\",\n                \"KH\",\n                \"CM\",\n                \"CA\",\n                \"KY\",\n                \"CF\",\n                \"TD\",\n                \"CL\",\n                \"CN\",\n                \"CX\",\n                \"CC\",\n                \"CO\",\n                \"KM\",\n                \"CG\",\n                \"CD\",\n                \"CK\",\n                \"CR\",\n                \"CI\",\n                \"HR\",\n                \"CU\",\n                \"CW\",\n                \"CY\",\n                \"CZ\",\n                \"DK\",\n                \"DJ\",\n                \"DM\",\n                \"DO\",\n                \"EC\",\n                \"EG\",\n                \"SV\",\n                \"GQ\",\n                \"ER\",\n                \"EE\",\n                \"SZ\",\n                \"ET\",\n                \"FK\",\n                \"FO\",\n                \"FJ\",\n                \"FI\",\n                \"FR\",\n                \"GF\",\n                \"PF\",\n                \"TF\",\n                \"GA\",\n                \"GM\",\n                \"GE\",\n                \"DE\",\n                \"GH\",\n                \"GI\",\n                \"GR\",\n                \"GL\",\n                \"GD\",\n                \"GP\",\n                \"GU\",\n                \"GT\",\n                \"GG\",\n                \"GN\",\n                \"GW\",\n                \"GY\",\n                \"HT\",\n                \"HM\",\n                \"VA\",\n                \"HN\",\n                \"HK\",\n                \"HU\",\n                \"IS\",\n                \"IN\",\n                \"ID\",\n                \"IR\",\n                \"IQ\",\n                \"IE\",\n                \"IM\",\n                \"IL\",\n                \"IT\",\n                \"JM\",\n                \"JP\",\n                \"JE\",\n                \"JO\",\n                \"KZ\",\n                \"KE\",\n                \"KI\",\n                \"KP\",\n                \"KR\",\n                \"KW\",\n                \"KG\",\n                \"LA\",\n                \"LV\",\n                \"LB\",\n                \"LS\",\n                \"LR\",\n                \"LY\",\n                \"LI\",\n                \"LT\",\n                \"LU\",\n                \"MO\",\n                \"MG\",\n                \"MW\",\n                \"MY\",\n                \"MV\",\n                \"ML\",\n                \"MT\",\n                \"MH\",\n                \"MQ\",\n                \"MR\",\n                \"MU\",\n                \"YT\",\n                \"MX\",\n                \"FM\",\n                \"MD\",\n                \"MC\",\n                \"MN\",\n                \"ME\",\n                \"MS\",\n                \"MA\",\n                \"MZ\",\n                \"MM\",\n                \"NA\",\n                \"NR\",\n                \"NP\",\n                \"NL\",\n                \"NC\",\n                \"NZ\",\n                \"NI\",\n                \"NE\",\n                \"NG\",\n                \"NU\",\n                \"NF\",\n                \"MK\",\n                \"MP\",\n                \"NO\",\n                \"OM\",\n                \"PK\",\n                \"PW\",\n                \"PS\",\n                \"PA\",\n                \"PG\",\n                \"PY\",\n                \"PE\",\n                \"PH\",\n                \"PN\",\n                \"PL\",\n                \"PT\",\n                \"PR\",\n                \"QA\",\n                \"RE\",\n                \"RO\",\n                \"RU\",\n                \"RW\",\n                \"BL\",\n                \"SH\",\n                \"KN\",\n                \"LC\",\n                \"MF\",\n                \"PM\",\n                \"VC\",\n                \"WS\",\n                \"SM\",\n                \"ST\",\n                \"SA\",\n                \"SN\",\n                \"RS\",\n                \"SC\",\n                \"SL\",\n                \"SG\",\n                \"SX\",\n                \"SK\",\n                \"SI\",\n                \"SB\",\n                \"SO\",\n                \"ZA\",\n                \"GS\",\n                \"SS\",\n                \"ES\",\n                \"LK\",\n                \"SD\",\n                \"SR\",\n                \"SJ\",\n                \"SE\",\n                \"CH\",\n                \"SY\",\n                \"TW\",\n                \"TJ\",\n                \"TZ\",\n                \"TH\",\n                \"TL\",\n                \"TG\",\n                \"TK\",\n                \"TO\",\n                \"TT\",\n                \"TN\",\n                \"TR\",\n                \"TM\",\n                \"TC\",\n                \"TV\",\n                \"UG\",\n                \"UA\",\n                \"AE\",\n                \"GB\",\n                \"US\",\n                \"UM\",\n                \"UY\",\n                \"UZ\",\n                \"VU\",\n                \"VE\",\n                \"VN\",\n                \"VG\",\n                \"VI\",\n                \"WF\",\n                \"EH\",\n                \"YE\",\n                \"ZM\",\n                \"ZW\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"ACH\",\n                \"SEPA\"\n            ],\n            \"priority\": 1\n        },\n        {\n            \"id\": \"STRIPE\",\n            \"name\": \"Stripe\",\n            \"category\": \"RECOMMENDED\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/stripe\",\n            \"oauth\": true,\n            \"oauth_url\": \"https://payments-1586338058.withbolt.com/c/api/processors/STRIPE/oauth?success=#SUCCESSURL#&cancel=#CANCELURL#\",\n            \"countries\": [\n                \"BR\",\n                \"CA\",\n                \"MX\",\n                \"US\",\n                \"HK\",\n                \"JP\",\n                \"SG\",\n                \"AT\",\n                \"BE\",\n                \"DK\",\n                \"FI\",\n                \"FR\",\n                \"DE\",\n                \"IE\",\n                \"IT\",\n                \"LU\",\n                \"NL\",\n                \"NO\",\n                \"PT\",\n                \"ES\",\n                \"SE\",\n                \"CH\",\n                \"GB\",\n                \"AU\",\n                \"NZ\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\"\n            ],\n            \"priority\": 2\n        },\n        {\n            \"id\": \"ADYEN\",\n            \"name\": \"Adyen\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/adyen\",\n            \"oauth\": false,\n            \"countries\": [\n                \"BR\",\n                \"CA\",\n                \"MX\",\n                \"US\",\n                \"CN\",\n                \"HK\",\n                \"IN\",\n                \"ID\",\n                \"JP\",\n                \"KR\",\n                \"MY\",\n                \"PH\",\n                \"SG\",\n                \"TH\",\n                \"TR\",\n                \"VN\",\n                \"AT\",\n                \"BE\",\n                \"CZ\",\n                \"DK\",\n                \"FI\",\n                \"FR\",\n                \"DE\",\n                \"IT\",\n                \"NL\",\n                \"NO\",\n                \"PL\",\n                \"PT\",\n                \"RU\",\n                \"ES\",\n                \"SE\",\n                \"CH\",\n                \"GB\",\n                \"AU\",\n                \"NZ\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"DISCOVER\",\n                \"JCB\"\n            ],\n            \"priority\": 3\n        },\n        {\n            \"id\": \"AUTHORIZE\",\n            \"name\": \"Authorize.NET\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/authorizenet\",\n            \"oauth\": true,\n            \"oauth_url\": \"https://payments-1586338058.withbolt.com/c/api/processors/AUTHORIZESB/oauth?success=#SUCCESSURL#&cancel=#CANCELURL#\",\n            \"countries\": [\n                \"CA\",\n                \"US\",\n                \"CY\",\n                \"TR\",\n                \"AD\",\n                \"AT\",\n                \"BE\",\n                \"BG\",\n                \"CZ\",\n                \"DK\",\n                \"FI\",\n                \"FR\",\n                \"DE\",\n                \"GI\",\n                \"GR\",\n                \"VA\",\n                \"HU\",\n                \"IE\",\n                \"IT\",\n                \"LI\",\n                \"LU\",\n                \"MT\",\n                \"MC\",\n                \"NL\",\n                \"NO\",\n                \"PL\",\n                \"PT\",\n                \"RO\",\n                \"SM\",\n                \"SK\",\n                \"SI\",\n                \"ES\",\n                \"SE\",\n                \"CH\",\n                \"GB\",\n                \"AU\",\n                \"NZ\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DISCOVER\",\n                \"JCB\",\n                \"ACH\",\n                \"PAYPAL\"\n            ],\n            \"priority\": 4\n        },\n        {\n            \"id\": \"BRAINTREE\",\n            \"name\": \"Braintree\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/braintree\",\n            \"oauth\": false,\n            \"countries\": [\n                \"CA\",\n                \"US\",\n                \"CY\",\n                \"HK\",\n                \"MY\",\n                \"SG\",\n                \"AD\",\n                \"AT\",\n                \"BE\",\n                \"BG\",\n                \"HR\",\n                \"CZ\",\n                \"DK\",\n                \"EE\",\n                \"FI\",\n                \"FR\",\n                \"DE\",\n                \"GI\",\n                \"GR\",\n                \"GG\",\n                \"HU\",\n                \"IS\",\n                \"IE\",\n                \"IM\",\n                \"IT\",\n                \"JE\",\n                \"LV\",\n                \"LI\",\n                \"LT\",\n                \"LU\",\n                \"MT\",\n                \"MC\",\n                \"NL\",\n                \"NO\",\n                \"PL\",\n                \"PT\",\n                \"RO\",\n                \"SM\",\n                \"SK\",\n                \"SI\",\n                \"ES\",\n                \"SE\",\n                \"CH\",\n                \"GB\",\n                \"AU\",\n                \"NZ\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DISCOVER\",\n                \"JCB\"\n            ],\n            \"priority\": 5\n        },\n        {\n            \"id\": \"GLOBALPAY\",\n            \"name\": \"Global Payments\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"oauth\": false,\n            \"countries\": [\n                \"CZ\",\n                \"FI\",\n                \"HR\",\n                \"DE\",\n                \"AT\",\n                \"SK\",\n                \"RO\",\n                \"NO\",\n                \"GI\",\n                \"CY\",\n                \"MT\",\n                \"ES\",\n                \"SI\",\n                \"CA\",\n                \"LU\",\n                \"BG\",\n                \"IE\",\n                \"HU\",\n                \"SG\",\n                \"EE\",\n                \"HK\",\n                \"BE\",\n                \"IT\",\n                \"PT\",\n                \"NL\",\n                \"SE\",\n                \"DK\",\n                \"GR\",\n                \"GB\",\n                \"LT\",\n                \"PL\",\n                \"AU\",\n                \"FR\",\n                \"CH\",\n                \"LV\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"DISCOVER\",\n                \"JCB\",\n                \"SEPA\"\n            ],\n            \"priority\": 6\n        },\n        {\n            \"id\": \"PAYPAL\",\n            \"name\": \"PayPal Business / Pro\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/paypal\",\n            \"oauth\": true,\n            \"oauth_url\": \"https://payments-1586338058.withbolt.com/c/api/processors/PAYPALSB/oauth?success=#SUCCESSURL#&cancel=#CANCELURL#\",\n            \"countries\": [\n                \"DZ\",\n                \"BW\",\n                \"EG\",\n                \"KE\",\n                \"LS\",\n                \"MW\",\n                \"MU\",\n                \"MA\",\n                \"MZ\",\n                \"RE\",\n                \"SN\",\n                \"SC\",\n                \"ZA\",\n                \"AG\",\n                \"AR\",\n                \"BS\",\n                \"BB\",\n                \"BZ\",\n                \"BM\",\n                \"BR\",\n                \"CA\",\n                \"KY\",\n                \"CL\",\n                \"CO\",\n                \"CR\",\n                \"DM\",\n                \"DO\",\n                \"EC\",\n                \"SV\",\n                \"GF\",\n                \"GL\",\n                \"GD\",\n                \"GP\",\n                \"GT\",\n                \"HN\",\n                \"JM\",\n                \"MQ\",\n                \"MX\",\n                \"NI\",\n                \"PA\",\n                \"PE\",\n                \"KN\",\n                \"LC\",\n                \"TT\",\n                \"TC\",\n                \"US\",\n                \"UY\",\n                \"VE\",\n                \"BH\",\n                \"CN\",\n                \"CY\",\n                \"GE\",\n                \"HK\",\n                \"IN\",\n                \"ID\",\n                \"IL\",\n                \"JP\",\n                \"JO\",\n                \"KZ\",\n                \"KR\",\n                \"KW\",\n                \"MY\",\n                \"OM\",\n                \"PH\",\n                \"QA\",\n                \"SA\",\n                \"SG\",\n                \"TW\",\n                \"TH\",\n                \"AE\",\n                \"VN\",\n                \"AL\",\n                \"AD\",\n                \"AT\",\n                \"BE\",\n                \"BA\",\n                \"BG\",\n                \"HR\",\n                \"CZ\",\n                \"DK\",\n                \"EE\",\n                \"FO\",\n                \"FI\",\n                \"DE\",\n                \"GI\",\n                \"GR\",\n                \"HU\",\n                \"IS\",\n                \"IE\",\n                \"IT\",\n                \"LV\",\n                \"LI\",\n                \"LT\",\n                \"LU\",\n                \"MT\",\n                \"MD\",\n                \"MC\",\n                \"NL\",\n                \"NO\",\n                \"PL\",\n                \"PT\",\n                \"RO\",\n                \"RU\",\n                \"SM\",\n                \"RS\",\n                \"SK\",\n                \"SI\",\n                \"ES\",\n                \"SE\",\n                \"CH\",\n                \"GB\",\n                \"AU\",\n                \"FJ\",\n                \"PF\",\n                \"NC\",\n                \"NZ\",\n                \"PW\"\n            ],\n            \"payment_method_types\": [\n                \"PAYPAL\",\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\"\n            ],\n            \"priority\": 7\n        },\n        {\n            \"id\": \"PAYPALFLOW\",\n            \"name\": \"PayPal Payflow Pro\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/paypal\",\n            \"oauth\": false,\n            \"countries\": [\n                \"AU\",\n                \"NZ\",\n                \"US\",\n                \"CA\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DISCOVER\",\n                \"JCB\"\n            ],\n            \"priority\": 8\n        },\n        {\n            \"id\": \"PAYSAFE\",\n            \"name\": \"PaySafe\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"oauth\": false,\n            \"countries\": [\n                \"CA\",\n                \"US\",\n                \"GB\",\n                \"AU\",\n                \"AT\",\n                \"BE\",\n                \"BG\",\n                \"HR\",\n                \"CY\",\n                \"CZ\",\n                \"DK\",\n                \"EE\",\n                \"FI\",\n                \"DE\",\n                \"GR\",\n                \"HU\",\n                \"IE\",\n                \"IT\",\n                \"LV\",\n                \"LT\",\n                \"LU\",\n                \"MT\",\n                \"NL\",\n                \"NO\",\n                \"PL\",\n                \"PT\",\n                \"RO\",\n                \"SK\",\n                \"SI\",\n                \"ES\",\n                \"SE\",\n                \"CH\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DISCOVER\"\n            ],\n            \"priority\": 9\n        },\n        {\n            \"id\": \"QUICKBOOKSP\",\n            \"name\": \"QuickBooks Payments\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"oauth\": true,\n            \"oauth_url\": \"https://payments-1586338058.withbolt.com/c/api/processors/QUICKBOOKSPSB/oauth?success=#SUCCESSURL#&cancel=#CANCELURL#\",\n            \"countries\": [\n                \"US\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"ACH\"\n            ],\n            \"priority\": 10\n        },\n        {\n            \"id\": \"SAGEPAY\",\n            \"name\": \"Sage Pay\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/sagepay\",\n            \"oauth\": false,\n            \"countries\": [\n                \"GB\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"JCB\"\n            ],\n            \"priority\": 11\n        },\n        {\n            \"id\": \"USAEPAY\",\n            \"name\": \"USAePay\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/usaepay\",\n            \"oauth\": false,\n            \"countries\": [\n                \"US\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"DISCOVER\"\n            ],\n            \"priority\": 12\n        },\n        {\n            \"id\": \"WORLDPAY\",\n            \"name\": \"WorldPay\",\n            \"category\": \"STD\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/worldpay\",\n            \"oauth\": false,\n            \"countries\": [\n                \"HK\",\n                \"GB\",\n                \"AU\",\n                \"AR\",\n                \"BE\",\n                \"BR\",\n                \"CA\",\n                \"CH\",\n                \"CN\",\n                \"CO\",\n                \"CR\",\n                \"CY\",\n                \"CZ\",\n                \"DE\",\n                \"ES\",\n                \"GR\",\n                \"HU\",\n                \"IE\",\n                \"IN\",\n                \"IT\",\n                \"JP\",\n                \"LI\",\n                \"LU\",\n                \"MC\",\n                \"MT\",\n                \"MY\",\n                \"MX\",\n                \"NL\",\n                \"NO\",\n                \"NZ\",\n                \"PA\",\n                \"PE\",\n                \"PL\",\n                \"PT\",\n                \"SE\",\n                \"SG\",\n                \"SI\",\n                \"SM\",\n                \"TR\",\n                \"UM\",\n                \"VA\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\"\n            ],\n            \"priority\": 13\n        },\n        {\n            \"id\": \"AZUL\",\n            \"name\": \"Azul\",\n            \"category\": \"BETA\",\n            \"visible\": true,\n            \"oauth\": false,\n            \"countries\": [\n                \"DO\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\"\n            ],\n            \"priority\": 14\n        },\n        {\n            \"id\": \"BSPAYONE\",\n            \"name\": \"BS PayOne\",\n            \"category\": \"RECOMMENDED\",\n            \"visible\": true,\n            \"oauth\": false,\n            \"countries\": [\n                \"AT\",\n                \"DE\",\n                \"CH\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"PAYPAL\",\n                \"SEPA\"\n            ],\n            \"priority\": 15\n        },\n        {\n            \"id\": \"CARDCONNECT\",\n            \"name\": \"CardConnect\",\n            \"category\": \"BETA\",\n            \"visible\": false,\n            \"oauth\": false,\n            \"countries\": [\n                \"US\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DISCOVER\",\n                \"ACH\"\n            ],\n            \"priority\": 16\n        },\n        {\n            \"id\": \"CHECKOUTCOM\",\n            \"name\": \"Checkout.com\",\n            \"category\": \"BETA\",\n            \"visible\": true,\n            \"oauth\": false,\n            \"countries\": [\n                \"EG\",\n                \"BR\",\n                \"US\",\n                \"BH\",\n                \"CN\",\n                \"CY\",\n                \"HK\",\n                \"JP\",\n                \"KW\",\n                \"MY\",\n                \"OM\",\n                \"QA\",\n                \"SA\",\n                \"SG\",\n                \"TR\",\n                \"AE\",\n                \"AT\",\n                \"BE\",\n                \"HR\",\n                \"CZ\",\n                \"DK\",\n                \"EE\",\n                \"FI\",\n                \"FR\",\n                \"DE\",\n                \"HU\",\n                \"IT\",\n                \"LV\",\n                \"LI\",\n                \"LT\",\n                \"LU\",\n                \"MT\",\n                \"NL\",\n                \"NO\",\n                \"PL\",\n                \"PT\",\n                \"RO\",\n                \"SK\",\n                \"SI\",\n                \"ES\",\n                \"SE\",\n                \"CH\",\n                \"GB\",\n                \"AU\",\n                \"NZ\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"DISCOVER\",\n                \"JCB\",\n                \"ACH\",\n                \"SEPA\"\n            ],\n            \"priority\": 17\n        },\n        {\n            \"id\": \"GOCARDLESS\",\n            \"name\": \"GoCardless\",\n            \"category\": \"BETA\",\n            \"visible\": true,\n            \"help\": \"https://paywithbolt.com/kb/gocardless/\",\n            \"oauth\": true,\n            \"oauth_url\": \"https://payments-1586338058.withbolt.com/c/api/processors/GOCARDLESSSB/oauth?success=#SUCCESSURL#&cancel=#CANCELURL#\",\n            \"countries\": [\n                \"CA\",\n                \"CY\",\n                \"AT\",\n                \"BE\",\n                \"BG\",\n                \"HR\",\n                \"CZ\",\n                \"DK\",\n                \"FI\",\n                \"FR\",\n                \"DE\",\n                \"HU\",\n                \"IE\",\n                \"IT\",\n                \"LU\",\n                \"MT\",\n                \"NL\",\n                \"NO\",\n                \"PL\",\n                \"PT\",\n                \"RO\",\n                \"SK\",\n                \"SI\",\n                \"ES\",\n                \"SE\",\n                \"CH\",\n                \"GB\",\n                \"AU\",\n                \"NZ\"\n            ],\n            \"payment_method_types\": [\n                \"AUTOGIRO\",\n                \"BACS\",\n                \"BECS\",\n                \"SEPA\"\n            ],\n            \"priority\": 18\n        },\n        {\n            \"id\": \"LIQPAY\",\n            \"name\": \"LiqPay\",\n            \"category\": \"BETA\",\n            \"visible\": true,\n            \"oauth\": false,\n            \"countries\": [\n                \"UA\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\"\n            ],\n            \"priority\": 19\n        },\n        {\n            \"id\": \"MOLLIE\",\n            \"name\": \"Mollie\",\n            \"category\": \"BETA\",\n            \"visible\": false,\n            \"oauth\": true,\n            \"oauth_url\": \"https://payments-1586338058.withbolt.com/c/api/processors/MOLLIESB/oauth?success=#SUCCESSURL#&cancel=#CANCELURL#\",\n            \"countries\": [\n                \"FI\",\n                \"AT\",\n                \"PT\",\n                \"BE\",\n                \"BG\",\n                \"ES\",\n                \"HR\",\n                \"CY\",\n                \"CZ\",\n                \"DK\",\n                \"EE\",\n                \"FI\",\n                \"FR\",\n                \"GF\",\n                \"DE\",\n                \"GI\",\n                \"GR\",\n                \"GP\",\n                \"GG\",\n                \"HU\",\n                \"IS\",\n                \"IE\",\n                \"IM\",\n                \"IT\",\n                \"JE\",\n                \"LV\",\n                \"LI\",\n                \"LT\",\n                \"LU\",\n                \"PT\",\n                \"MT\",\n                \"MQ\",\n                \"YT\",\n                \"NL\",\n                \"NO\",\n                \"PL\",\n                \"PT\",\n                \"RE\",\n                \"RO\",\n                \"BL\",\n                \"MF\",\n                \"PM\",\n                \"SK\",\n                \"SI\",\n                \"ES\",\n                \"SE\",\n                \"GB\",\n                \"CH\"\n            ],\n            \"payment_method_types\": [\n                \"BANCONTACT\",\n                \"IDEAL\",\n                \"KLARNA\",\n                \"SEPA\"\n            ],\n            \"priority\": 20\n        },\n        {\n            \"id\": \"MONERIS\",\n            \"name\": \"Moneris\",\n            \"category\": \"BETA\",\n            \"visible\": true,\n            \"oauth\": false,\n            \"countries\": [\n                \"CA\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"DISCOVER\",\n                \"JCB\"\n            ],\n            \"priority\": 21\n        },\n        {\n            \"id\": \"PAYPALC\",\n            \"name\": \"PayPal Commerce\",\n            \"category\": \"BETA\",\n            \"visible\": false,\n            \"oauth\": true,\n            \"oauth_url\": \"https://payments-1586338058.withbolt.com/c/api/processors/PAYPALCSB/oauth?success=#SUCCESSURL#&cancel=#CANCELURL#\",\n            \"countries\": [\n                \"DZ\",\n                \"BW\",\n                \"EG\",\n                \"KE\",\n                \"LS\",\n                \"MW\",\n                \"MU\",\n                \"MA\",\n                \"MZ\",\n                \"RE\",\n                \"SN\",\n                \"SC\",\n                \"ZA\",\n                \"AG\",\n                \"AR\",\n                \"BS\",\n                \"BB\",\n                \"BZ\",\n                \"BM\",\n                \"BR\",\n                \"CA\",\n                \"KY\",\n                \"CL\",\n                \"CO\",\n                \"CR\",\n                \"DM\",\n                \"DO\",\n                \"EC\",\n                \"SV\",\n                \"GF\",\n                \"GL\",\n                \"GD\",\n                \"GP\",\n                \"GT\",\n                \"HN\",\n                \"JM\",\n                \"MQ\",\n                \"MX\",\n                \"NI\",\n                \"PA\",\n                \"PE\",\n                \"KN\",\n                \"LC\",\n                \"TT\",\n                \"TC\",\n                \"US\",\n                \"UY\",\n                \"VE\",\n                \"BH\",\n                \"CN\",\n                \"CY\",\n                \"GE\",\n                \"HK\",\n                \"IN\",\n                \"ID\",\n                \"IL\",\n                \"JP\",\n                \"JO\",\n                \"KZ\",\n                \"KR\",\n                \"KW\",\n                \"MY\",\n                \"OM\",\n                \"PH\",\n                \"QA\",\n                \"SA\",\n                \"SG\",\n                \"TW\",\n                \"TH\",\n                \"AE\",\n                \"VN\",\n                \"AL\",\n                \"AD\",\n                \"AT\",\n                \"BE\",\n                \"BA\",\n                \"BG\",\n                \"HR\",\n                \"CZ\",\n                \"DK\",\n                \"EE\",\n                \"FO\",\n                \"FI\",\n                \"DE\",\n                \"GI\",\n                \"GR\",\n                \"HU\",\n                \"IS\",\n                \"IE\",\n                \"IT\",\n                \"LV\",\n                \"LI\",\n                \"LT\",\n                \"LU\",\n                \"MT\",\n                \"MD\",\n                \"MC\",\n                \"NL\",\n                \"NO\",\n                \"PL\",\n                \"PT\",\n                \"RO\",\n                \"RU\",\n                \"SM\",\n                \"RS\",\n                \"SK\",\n                \"SI\",\n                \"ES\",\n                \"SE\",\n                \"CH\",\n                \"GB\",\n                \"AU\",\n                \"FJ\",\n                \"PF\",\n                \"NC\",\n                \"NZ\",\n                \"PW\"\n            ],\n            \"payment_method_types\": [\n                \"PAYPAL\"\n            ],\n            \"priority\": 22\n        },\n        {\n            \"id\": \"SQUAREUP\",\n            \"name\": \"Square\",\n            \"category\": \"BETA\",\n            \"visible\": true,\n            \"oauth\": true,\n            \"oauth_url\": \"https://payments-1586338058.withbolt.com/c/api/processors/SQUAREUPSB/oauth?success=#SUCCESSURL#&cancel=#CANCELURL#\",\n            \"countries\": [\n                \"CA\",\n                \"US\",\n                \"GB\",\n                \"AU\",\n                \"JP\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\"\n            ],\n            \"priority\": 23\n        },\n        {\n            \"id\": \"TBKONECLICK\",\n            \"name\": \"Transbank\",\n            \"category\": \"BETA\",\n            \"visible\": true,\n            \"oauth\": false,\n            \"countries\": [\n                \"CL\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"DISCOVER\"\n            ],\n            \"priority\": 24\n        },\n        {\n            \"id\": \"BILLITNOW\",\n            \"name\": \"Bill It Now\",\n            \"category\": \"BETA\",\n            \"visible\": false,\n            \"oauth\": false,\n            \"countries\": [\n                \"US\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"ACH\"\n            ],\n            \"priority\": 25\n        },\n        {\n            \"id\": \"JUDO\",\n            \"name\": \"JudoPay\",\n            \"category\": \"BETA\",\n            \"visible\": false,\n            \"oauth\": false,\n            \"countries\": [\n                \"GB\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"DISCOVER\"\n            ],\n            \"priority\": 26\n        },\n        {\n            \"id\": \"PAYU\",\n            \"name\": \"PayU\",\n            \"category\": \"BETA\",\n            \"visible\": false,\n            \"oauth\": false,\n            \"countries\": [\n                \"AR\",\n                \"BR\",\n                \"CL\",\n                \"CO\",\n                \"CZ\",\n                \"HU\",\n                \"IN\",\n                \"KE\",\n                \"MX\",\n                \"NG\",\n                \"PE\",\n                \"PL\",\n                \"RO\",\n                \"RU\",\n                \"SK\",\n                \"ZA\",\n                \"TR\"\n            ],\n            \"payment_method_types\": [\n                \"VISA\",\n                \"MASTERCARD\",\n                \"AMEX\",\n                \"DINERS\",\n                \"DISCOVER\",\n                \"JCB\"\n            ],\n            \"priority\": 27\n        }\n    ],\n    \"meta\": {\n        \"total\": 27\n    }\n}"}],"_postman_id":"709eb37a-9801-4e49-acff-5731cb15e054"},{"name":"Get processor settings","id":"1f6d3ae2-564e-4b19-82dd-b070db55351f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/processors/{{processor_id}}/settings","description":"<p>Request: </p>\n<ul>\n<li><code>processor_id</code> is our ID for the processor</li>\n<li><code>expand</code> is not currently supported for instances</li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>settings</code></td>\n<td>(enterprise) the field definitions for the form fill when connecting a processor</td>\n</tr>\n<tr>\n<td><code>values</code></td>\n<td>(enterprise) the default values for the form fill when connecting a processor</td>\n</tr>\n</tbody>\n</table>\n</div><p>Note: <code>settings</code> and <code>values</code> are a proprietary format, and not for general use.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","processors","{{processor_id}}","settings"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"79439cd8-b90b-4546-b441-c17c73915670","name":"Get processor settings","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/processors/{{processor_id}}/settings"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"218","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Mon, 13 Jul 2020 17:25:06 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"1ff-d1e8741e-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 9020b755bdec9fbd562cc16c0a42d6f3.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"e2DlQvqY984-lAw5I0H6xKZKomglY_eWAnsCgP_CdKvznMFghLCh3w==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"settings\": {\n        \"fieldSet\": {\n            \"subFields\": [\n                {\n                    \"dataType\": \"STRING\",\n                    \"validationRules\": [\n                        {\n                            \"type\": \"MANDATORY\",\n                            \"errorMessage\": \"Required\"\n                        }\n                    ],\n                    \"id\": \"merchantId\",\n                    \"name\": \"Merchant ID\",\n                    \"type\": \"TEXT\"\n                },\n                {\n                    \"dataType\": \"STRING\",\n                    \"validationRules\": [\n                        {\n                            \"type\": \"MANDATORY\",\n                            \"errorMessage\": \"Required\"\n                        }\n                    ],\n                    \"id\": \"publicKey\",\n                    \"name\": \"Public Key\",\n                    \"type\": \"TEXT\"\n                },\n                {\n                    \"dataType\": \"STRING\",\n                    \"validationRules\": [\n                        {\n                            \"type\": \"MANDATORY\",\n                            \"errorMessage\": \"Required\"\n                        }\n                    ],\n                    \"id\": \"privateKey\",\n                    \"name\": \"Private Key\",\n                    \"type\": \"TEXT\"\n                }\n            ],\n            \"type\": \"FIELDSET\"\n        }\n    },\n    \"values\": {\n        \"sandbox\": \"TRUE\"\n    }\n}"}],"_postman_id":"1f6d3ae2-564e-4b19-82dd-b070db55351f"}],"id":"60f411ec-ef6b-4a68-b5e1-c67cf9229381","_postman_id":"60f411ec-ef6b-4a68-b5e1-c67cf9229381","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Refunds","item":[{"name":"Simple Refunds","item":[{"name":"Get a refund","id":"15d2742c-354e-464a-b6ae-beab9ffa0884","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/refunds/{{refund_id}}","description":"<p>Where you can <code>expand</code>:</p>\n<ul>\n<li><code>account</code></li>\n<li><code>created_session</code>    </li>\n<li><code>parts</code>    </li>\n<li><code>source_transaction</code></li>\n<li><code>updated_session</code></li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>The ID of the person this refund is for</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>The amount</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>When the refund was created / instructed</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>The currency of the refund (always the same as source transaction)</td>\n</tr>\n<tr>\n<td><code>gateway_message</code></td>\n<td>The message from the gateway (if pending or declined)</td>\n</tr>\n<tr>\n<td><code>gateway_status</code></td>\n<td>The status reported by the gateway</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>The unique id of the refund</td>\n</tr>\n<tr>\n<td><code>manual</code></td>\n<td><code>false</code> if the refund was instructed, or <code>false</code> if it was only recorded (in which case the onus is on the user to perform the refund via an offline method)</td>\n</tr>\n<tr>\n<td><code>parts</code></td>\n<td>an array of parts objects for which charge(s) the refund was applied to. To access the parts you must \"expand\" this field (see GET transaction for object structure)</td>\n</tr>\n<tr>\n<td><code>payment</code></td>\n<td>The original payment this refund relates to</td>\n</tr>\n<tr>\n<td><code>processed</code></td>\n<td>When the refund completed processing</td>\n</tr>\n<tr>\n<td><code>reason</code></td>\n<td>The reason for the refund</td>\n</tr>\n<tr>\n<td><code>offline</code></td>\n<td><code>true</code> if this is just a record to indicate a refund was performed offline</td>\n</tr>\n<tr>\n<td><code>reference</code></td>\n<td>A unique customer facing reference for the refund</td>\n</tr>\n<tr>\n<td><code>source_transaction</code></td>\n<td>The original transaction that is being refunded - note this may be a payment or a capture</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>The status of the refund</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>The date the record was last updated</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>The version of the record</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>SUCCESS</code></td>\n<td>The transaction was approved</td>\n</tr>\n<tr>\n<td><code>PENDING</code></td>\n<td>The transaction is still in progress, you will be sent a webhook when this refund is complete.</td>\n</tr>\n<tr>\n<td><code>DECLINED</code></td>\n<td>The transaction was declined, please see the <code>gateway_status</code> for further detail why</td>\n</tr>\n<tr>\n<td><code>INVALID_PAYMENT_METHOD</code></td>\n<td>The refund was attempted with an invalid payment method. For example, a payment method that does't support refunds, or a gateway thats been disconnected.</td>\n</tr>\n<tr>\n<td><code>UNRESOLVED</code></td>\n<td>The refund was sent to the gateway but we did not receive a conclusive approval or declines due (eg generally this is reflecting a gateway status meaning the same thing, or the gateway took longer than 45 seconds to refund).</td>\n</tr>\n<tr>\n<td><code>UNATTRIBUTED</code></td>\n<td>The transaction was successful but there was an internal issue recording the transaction. Generally these will update to <code>SUCCESS</code> within a few hours.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>gateway_status</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>APPROVED</code></td>\n<td>The refund was approved.</td>\n</tr>\n<tr>\n<td><code>PENDING</code></td>\n<td>The refund is still in progress, you will be sent a webhook when this refund is complete. Optionally you can poll the refund (no more than once per second).</td>\n</tr>\n<tr>\n<td><code>DECLINED</code></td>\n<td>The refund was declined</td>\n</tr>\n<tr>\n<td><code>DECLINED_ERROR</code></td>\n<td>The refund was declined due to a technical reason (eg invalid merchant credentials / integration issue).</td>\n</tr>\n<tr>\n<td><code>UNRESOLVED</code></td>\n<td>The refund was sent to the gateway but we did not receive a conclusive approval or decline</td>\n</tr>\n<tr>\n<td><code>MANUAL</code></td>\n<td>This status means the refund was not processed offline and not instructed by the gateway</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","refunds","{{refund_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"bd77c0bb-6c4a-4a3b-b11f-49daddcd68e9","name":"Get a refund","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/refunds/{{refund_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"215","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Thu, 11 Jun 2020 11:21:32 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"12e-b2c89f10-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 1134a22c328d83d656b1bf94245e1dec.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"mc1sOOkT2ca-Cc-JF52W-_o7lktDeUQOvfLPoKNq-65SA-MIXmXqiQ==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"refund\": {\n        \"amount\": \"100\",\n        \"created\": \"2020-06-11T11:20:29.000Z\",\n        \"gateway_status\": \"APPROVED\",\n        \"id\": \"ref_11842_10423\",\n        \"payment\": \"pay_11842_10422\",\n        \"processed\": \"2020-06-11T11:20:30.000Z\",\n        \"reason\": \"This was a test payment\",\n        \"reference\": \"BOLT-00010423\",\n        \"source_transaction\": \"tr_11842_10422\",\n        \"status\": \"SUCCESS\"\n    }\n}"}],"_postman_id":"15d2742c-354e-464a-b6ae-beab9ffa0884"},{"name":"Refund a payment","id":"af3ca5a7-6c9f-4f39-8e06-77079f408af2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"refund\": {\n\t\t\"amount\": \"1\",\n\t\t\"reason\": \"This was a test payment\"\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/payments/{{payment_id}}/refund","description":"<p>You can refund a payment in part of full, or simply mark a payment as refunded (if refunded offline). You can refund \"PAYMENT\" and \"CAPTURE\" type transactions, but not \"AUTH\" (you must void an AUTH that has not been captured).</p>\n<p>Note, support for multi-refund (eg I pay $100 and refund $20 followed by a second refund of $80) is not available on all gateways.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>(optional) The amount of the refund as a string eg \"10\", the amount should not have commas and use a <code>.</code> as a decimal seperator. If you leave this out the entire unrefunded amount of the transaction will be refunded.</td>\n</tr>\n<tr>\n<td><code>reason</code></td>\n<td>The reason for the refund (free text)</td>\n</tr>\n<tr>\n<td><code>manual</code></td>\n<td>(optional) Set to true if you do not want to process the refund via the gateway, but simply record that a refund was performed offline.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","payments","{{payment_id}}","refund"],"host":["app","shuttleglobal","com"],"query":[{"disabled":true,"key":"","value":""}],"variable":[]}},"response":[{"id":"e2c9343d-504a-4312-969c-2b87e20de666","name":"Refund a payment","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"refund\": {\n\t\t\"amount\": \"10\",\n\t\t\"reason\": \"This was a test payment\",\n\t\t\"manual\": false\n\t}\n}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/test1/payments/tr_2308_1449/refund","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","test1","payments","tr_2308_1449","refund"],"query":[{"key":"","value":"","type":"text","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 27 Sep 2019 15:31:07 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"X-Cache","value":"Error from cloudfront","enabled":true},{"key":"Via","value":"1.1 68f89d0537cd3c4fe98801aa39bb2b39.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR4","enabled":true},{"key":"X-Amz-Cf-Id","value":"ZSA_yHrBZ69fUPjBGGm7j7DtW6mgMfMDQRjubP-XFlW5misC00uvsw==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"refund\": {\n        \"id\": \"ref_2308_1503\",\n        \"payment\": \"pay_2308_1449\",\n        \"amount\": \"10\",\n        \"reason\": \"This was a test payment\",\n        \"status\": \"SUCCESS\",\n        \"manual\": false,\n        \"reference\": \"REF-00001503\",\n        \"created\": \"2019-09-27T16:22:28.000Z\",\n        \"processed\": \"2019-09-27T16:22:29.000Z\"\n    }\n}"}],"_postman_id":"af3ca5a7-6c9f-4f39-8e06-77079f408af2"},{"name":"Refund a capture","id":"575e8aae-7d74-4714-bbd0-eabb66d8255c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"refund\": {\n\t\t\"amount\": \"5\",\n\t\t\"reason\": \"This was a test payment\"\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/captures/{{capture_id}}/refund","description":"<p>You can refund a capture in part of full, or simply mark a payment as refunded (if refunded offline).</p>\n<p>Note, support for multi-refund (eg I pay $100 and refund $20 followed by a second refund of $80) is not available on all gateways.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>(optional) The amount of the refund as a string eg \"10\", the amount should not have commas and use a <code>.</code> as a decimal seperator. If you leave this out the entire unrefunded amount of the transaction will be refunded.</td>\n</tr>\n<tr>\n<td><code>reason</code></td>\n<td>The reason for the refund (free text)</td>\n</tr>\n<tr>\n<td><code>manual</code></td>\n<td>(optional) Set to true if you do not want to process the refund via the gateway, but simply record that a refund was performed offline.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","captures","{{capture_id}}","refund"],"host":["app","shuttleglobal","com"],"query":[{"disabled":true,"key":"","value":""}],"variable":[]}},"response":[{"id":"4ce53825-7515-41ca-9324-03fdcdbac65f","name":"Refund a capture (partial)","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"refund\": {\n\t\t\"amount\": \"5\",\n\t\t\"reason\": \"This was a test payment\"\n\t}\n}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/captures/{{capture_id}}/refund","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","captures","{{capture_id}}","refund"],"query":[{"key":"","type":"text","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"211","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 08 Apr 2020 09:38:58 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 a4b14ec1411057263166d6facf9b30b8.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR52-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"2kJbxKLhxS1uqcwmLOJiALkfYaMrqjg4gb0PQKpJSkOpZoOH1sJyuw==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"refund\": {\n        \"amount\": \"5\",\n        \"created\": \"2020-04-08T09:38:57.000Z\",\n        \"gateway_status\": \"APPROVED\",\n        \"id\": \"ref_11842_10007\",\n        \"payment\": \"pay_11842_10006\",\n        \"processed\": \"2020-04-08T09:38:58.000Z\",\n        \"reason\": \"This was a test payment\",\n        \"reference\": \"REF-00010007\",\n        \"source_transaction\": \"tr_11842_10006\",\n        \"status\": \"SUCCESS\"\n    }\n}"}],"_postman_id":"575e8aae-7d74-4714-bbd0-eabb66d8255c"}],"id":"ac9e6c36-f9ad-43dd-b397-cdb7b6c0735d","event":[{"listen":"prerequest","script":{"id":"521f598c-e4df-473c-9843-07a4d2ddf136","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"524f81aa-ac0a-4034-8919-fe59f42bed1a","type":"text/javascript","exec":[""]}}],"_postman_id":"ac9e6c36-f9ad-43dd-b397-cdb7b6c0735d","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Contract Refunds","item":[{"name":"Refund a contract","id":"57bab22e-935f-41da-998d-4338e456ca09","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"refund\": {\n\t\t\"amount\": \"15\",\n\t\t\"validate_only\": true\n\t}\n}"},"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/refund","description":"<p>You can refund a contract, which allows you to refund multiple transactions at once for recurring payments / subscriptions. </p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>(optional) The amount of the refund as a string eg \"10\", the amount should not have commas and use a <code>.</code> as a decimal seperator. If you leave this out the entire unrefunded amount (ie all payments) of the contract will be refunded.</td>\n</tr>\n<tr>\n<td><code>legal_entities</code></td>\n<td>(optional - enterprise) This field is an ALTERNATIVE to <code>amount</code>. For contracts splitting payments into multiple entities, this allows you to specifies which legal_entities are refunded.</td>\n</tr>\n<tr>\n<td><code>reason</code></td>\n<td>(optional) The reason for the refund (free text)</td>\n</tr>\n<tr>\n<td><code>manual</code></td>\n<td>(optional) Set to true if you do not want to process the refund via the gateway, but simply record that a refund was performed offline.</td>\n</tr>\n<tr>\n<td><code>validate_only</code></td>\n<td>(optional) <code>true</code> if you do not want to perform the refund, just check to see what would be refunded</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>legal_entities</code> is an array of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>code</code></td>\n<td>This code of the legal_entity.</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>(optional) The amount to refund, if omitted, all transactions for this entity will be refunded.</td>\n</tr>\n</tbody>\n</table>\n</div><p>The following error codes may be returned by this call:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Code</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>INVALID_AMOUNT</code></td>\n<td>There are not enough transactions that can be refunded to meet the instruction requested.</td>\n</tr>\n<tr>\n<td><code>NO_TRANSACTIONS_FOUND</code></td>\n<td>No transactions will be refunded for this instruction (eg refund an entire contract, but its already been refunded)</td>\n</tr>\n</tbody>\n</table>\n</div><p>The instruction returns the following fields (if <code>validate_only</code> not set):</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>status</code></td>\n<td><code>SUCCESS</code> if all refunds completed successfully, <code>PENDING</code> if any of the refunds is in progress, <code>DECLINED</code> if any of the refunds failed</td>\n</tr>\n<tr>\n<td><code>refunds</code></td>\n<td>A list of refunds taken.</td>\n</tr>\n</tbody>\n</table>\n</div><p>If <code>validate_only</code> is set, the following will be returned:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>refund_candidates</code></td>\n<td>A list of candidate refunds to be taken if instructed.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>refund_candidates</code> is an array containing: </p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>source_transaction</code></td>\n<td>The transaction to be refunded.</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>The amount to be refunded from this transaction.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","refund"],"host":["app","shuttleglobal","com"],"query":[{"disabled":true,"key":"","value":""}],"variable":[]}},"response":[{"id":"a216c63c-ac44-4d56-ae2c-8bea540c255b","name":"Refund all of a contract - validate","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"refund\": {\n\t\t\"validate_only\": true\n\t}\n}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/refund","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","refund"],"query":[{"key":"","type":"text","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"179","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 27 Nov 2020 15:16:06 GMT","enabled":true},{"key":"Server","value":"nginx/1.18.0","enabled":true},{"key":"x-powered-by","value":"Express","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 750c4cd5855cda8293959637bece163c.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"H2uGNrZTiGAf3JM6W3ODcFU9k80CFcCjOHtzoupHFE4RURJFN5eRgQ==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"refund_candidates\": [\n        {\n            \"source_transaction\": \"tr_11842_11072\",\n            \"amount\": 10\n        },\n        {\n            \"source_transaction\": \"tr_11842_11071\",\n            \"amount\": 10\n        },\n        {\n            \"source_transaction\": \"tr_11842_11070\",\n            \"amount\": 10\n        }\n    ]\n}"},{"id":"de645103-e9ae-48c4-a82d-fc9f93fa840a","name":"Refund part of a contract - validate","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"refund\": {\n\t\t\"amount\": \"15\",\n\t\t\"validate_only\": true\n\t}\n}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/refund","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","refund"],"query":[{"key":"","type":"text","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"126","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 27 Nov 2020 15:16:43 GMT","enabled":true},{"key":"Server","value":"nginx/1.18.0","enabled":true},{"key":"x-powered-by","value":"Express","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 750c4cd5855cda8293959637bece163c.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"XDdFygC24H5d-hkLLA7WyqDYl6gDqaz7JrZIkbDnGUkUXPim-igCPg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"refund_candidates\": [\n        {\n            \"source_transaction\": \"tr_11842_11072\",\n            \"amount\": 10\n        },\n        {\n            \"source_transaction\": \"tr_11842_11071\",\n            \"amount\": 5\n        }\n    ]\n}"},{"id":"463ec5ef-e598-415e-973e-a28a2f55a9aa","name":"Refund part of a contract","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"refund\": {\n\t\t\"amount\": \"15\"\n\t}\n}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/refund","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","refund"],"query":[{"key":"","type":"text","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"627","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 27 Nov 2020 15:17:23 GMT","enabled":true},{"key":"Server","value":"nginx/1.18.0","enabled":true},{"key":"x-powered-by","value":"Express","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 750c4cd5855cda8293959637bece163c.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"17xLEXQv_MVDQsV2R4gDS0SoF1RXsvvURZgiO8YpXENe1RVzWWhrPA==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"SUCCESS\",\n    \"refunds\": [\n        {\n            \"amount\": \"10\",\n            \"created\": \"2020-11-27T15:17:15.000Z\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"ref_11842_11073\",\n            \"payment\": \"pay_11842_11072\",\n            \"processed\": \"2020-11-27T15:17:18.000Z\",\n            \"reason\": \"No reason given\",\n            \"manual\": false,\n            \"reference\": \"BOLT-00011073\",\n            \"source_transaction\": \"tr_11842_11072\",\n            \"status\": \"SUCCESS\"\n        },\n        {\n            \"amount\": \"5\",\n            \"created\": \"2020-11-27T15:17:17.000Z\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"ref_11842_11074\",\n            \"payment\": \"pay_11842_11071\",\n            \"processed\": \"2020-11-27T15:17:19.000Z\",\n            \"reason\": \"No reason given\",\n            \"manual\": false,\n            \"reference\": \"BOLT-00011074\",\n            \"source_transaction\": \"tr_11842_11071\",\n            \"status\": \"SUCCESS\"\n        }\n    ]\n}"},{"id":"4057d804-e2d5-4e1f-8ef3-80723c14c85a","name":"Refund all of a contract","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"refund\": {\n\t}\n}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/refund","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","refund"],"query":[{"key":"","type":"text","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"627","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 27 Nov 2020 15:17:51 GMT","enabled":true},{"key":"Server","value":"nginx/1.18.0","enabled":true},{"key":"x-powered-by","value":"Express","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 750c4cd5855cda8293959637bece163c.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"CAIOHG0HVKpNmXLNtW5unZVfNMcNB3T3Qi63Bi4OPXk9kEiDabrj6Q==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"SUCCESS\",\n    \"refunds\": [\n        {\n            \"amount\": \"5\",\n            \"created\": \"2020-11-27T15:17:46.000Z\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"ref_11842_11075\",\n            \"payment\": \"pay_11842_11071\",\n            \"processed\": \"2020-11-27T15:17:47.000Z\",\n            \"reason\": \"No reason given\",\n            \"manual\": false,\n            \"reference\": \"BOLT-00011075\",\n            \"source_transaction\": \"tr_11842_11071\",\n            \"status\": \"SUCCESS\"\n        },\n        {\n            \"amount\": \"10\",\n            \"created\": \"2020-11-27T15:17:46.000Z\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"ref_11842_11076\",\n            \"payment\": \"pay_11842_11070\",\n            \"processed\": \"2020-11-27T15:17:48.000Z\",\n            \"reason\": \"No reason given\",\n            \"manual\": false,\n            \"reference\": \"BOLT-00011076\",\n            \"source_transaction\": \"tr_11842_11070\",\n            \"status\": \"SUCCESS\"\n        }\n    ]\n}"},{"id":"2f0a94a5-0c88-422c-816e-69ec244c0226","name":"Refund an already refunded contract - error","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n}"},"url":{"raw":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/contracts/{{contract_id}}/refund","protocol":"https","host":["app","shuttleglobal","com"],"path":["c","api","instances","{{instance_id}}","contracts","{{contract_id}}","refund"],"query":[{"key":"","type":"text","value":"","disabled":true}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"67","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 27 Nov 2020 15:19:28 GMT","enabled":true},{"key":"Server","value":"nginx/1.18.0","enabled":true},{"key":"x-powered-by","value":"Express","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Error from cloudfront","enabled":true},{"key":"Via","value":"1.1 750c4cd5855cda8293959637bece163c.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"rpLef5xI3vNi2L5ztvBmRP12qjAH_vhcOyctA8j5Sxh76-YGrR4a7g==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": \"NO_TRANSACTIONS_FOUND\",\n    \"message\": \"No transactions found.\"\n}"}],"_postman_id":"57bab22e-935f-41da-998d-4338e456ca09"}],"id":"ac6f9eab-64b8-4a19-8561-94909ac47e81","description":"<p>You can refund a contract, which allows you to refund multiple transactions at once for recurring payments / subscriptions. This will create a list of refunds from a single instruction.</p>\n","event":[{"listen":"prerequest","script":{"id":"c72b3852-e2d4-4263-a4a8-c3a789124c32","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"29471f56-6315-4b69-915a-863e970e3b7e","type":"text/javascript","exec":[""]}}],"_postman_id":"ac6f9eab-64b8-4a19-8561-94909ac47e81","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}}],"id":"ccb9bcfa-a003-4a75-b237-c83e7eeec4e9","event":[{"listen":"prerequest","script":{"id":"4af6c3b3-9321-45c2-81f8-143fcc6975de","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"5ebfd121-5cc1-40b3-9196-6e5b5483e6fd","type":"text/javascript","exec":[""]}}],"_postman_id":"ccb9bcfa-a003-4a75-b237-c83e7eeec4e9","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Transactions","item":[{"name":"List transactions","id":"a153ff8c-8508-43ee-b750-801ae10e53a8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/transactions","description":"<p>This request performs a simple search against <code>transaction</code> objects:</p>\n<ul>\n<li><code>criteria</code>: The search criteria (URL encoded).</li>\n<li><code>order</code>: The sort you would like to apply</li>\n<li><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object) </li>\n<li><code>limit</code>: The maximum records to return </li>\n<li><code>offset</code>: The offset from the first records to start returning records</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>: </p>\n<ul>\n<li>account</li>\n<li>action</li>\n<li>alt_key</li>\n<li>amount</li>\n<li>contract</li>\n<li>created</li>\n<li>currency</li>\n<li>gateway</li>\n<li>gateway_reference</li>\n<li>id</li>\n<li>initiated</li>\n<li>payment_method</li>\n<li>processed</li>\n<li>reference</li>\n<li>source</li>\n<li>source_transaction</li>\n<li>status</li>\n<li>updated</li>\n</ul>\n<p>Expand: </p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>transactions</code></td>\n<td>an array of <code>transaction</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","transactions"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"5e936f44-515e-4d42-97a6-b98d7aa0b582","name":"List transactions","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/transactions"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 01 May 2024 09:22:27 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-powered-by","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"kdWKmWvHXpJ9qVzPdGg8LA==\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 0fecf9be0bd0b4c1e5dedc1c0b50f3be.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"9O1biikfqVihZ4c_ZIu9cjwNeUV1V-xzCag8BljTaAHo-gBf56-EhQ==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"transactions\": [\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"PAYMENT\",\n            \"amount\": \"101\",\n            \"authorisation_code\": \"pi_1GVgNAFi2CnH4uN3cGJTt3Ke (TEST)\",\n            \"balance\": \"101\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10041\",\n            \"created\": \"2020-04-08T16:03:26.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"ch_1GVgNAFi2CnH4uN3kHbOsABc\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10041\",\n            \"initiated\": \"2020-04-08T16:03:26.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10041\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": false,\n            \"processed\": \"2020-04-08T16:03:29.000Z\",\n            \"reference\": \"BOLT-00010041\",\n            \"settle_currency\": \"GBP\",\n            \"settle_fee_amount\": \"3.13\",\n            \"settle_gross_amount\": \"101\",\n            \"settle_net_amount\": \"97.87\",\n            \"source\": \"MOTO\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:45.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"AUTH\",\n            \"amount\": \"101\",\n            \"authorisation_code\": \"pi_1GVgN3Fi2CnH4uN30dh7j7Of (TEST)\",\n            \"authorised\": \"101\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10040\",\n            \"created\": \"2020-04-08T16:03:17.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"ch_1GVgN4Fi2CnH4uN30X5m9hNj\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10040\",\n            \"initiated\": \"2020-04-08T16:03:17.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10040\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": false,\n            \"processed\": \"2020-04-08T16:03:22.000Z\",\n            \"reference\": \"BOLT-00010040\",\n            \"source\": \"MOTO\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:45.000Z\",\n            \"voided\": \"0\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"REFUND\",\n            \"amount\": \"-101\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10022\",\n            \"created\": \"2020-04-08T13:54:07.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_message\": \"Charge BOLT-00010034 has already been refunded.\",\n            \"gateway_status\": \"DECLINED\",\n            \"id\": \"tr_11842_10035\",\n            \"initiated\": \"2020-04-08T13:54:07.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10028\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:54:07.000Z\",\n            \"reason\": \"This was a test payment\",\n            \"reference\": \"BOLT-00010035\",\n            \"refund\": \"ref_11842_10035\",\n            \"source_transaction\": \"tr_11842_10034\",\n            \"status\": \"DECLINED\",\n            \"updated\": \"2021-10-07T20:37:45.000Z\",\n            \"v\": 11\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"CAPTURE\",\n            \"amount\": \"101\",\n            \"authorisation_code\": \"pi_1GVeJoFi2CnH4uN3jyjleudE (TEST)\",\n            \"balance\": \"101\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10022\",\n            \"created\": \"2020-04-08T13:52:49.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"ch_1GVeJoFi2CnH4uN3ptrzSYt2\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10034\",\n            \"initiated\": \"2020-04-08T13:52:49.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10027\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:52:51.000Z\",\n            \"reference\": \"BOLT-00010034\",\n            \"settle_currency\": \"GBP\",\n            \"settle_fee_amount\": \"3.13\",\n            \"settle_gross_amount\": \"101\",\n            \"settle_net_amount\": \"97.87\",\n            \"source\": \"RECURRING\",\n            \"source_transaction\": \"tr_11842_10032\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:45.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"CAPTURE\",\n            \"amount\": \"0.01\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10022\",\n            \"created\": \"2020-04-08T13:52:42.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_message\": \"Amount must be at least £0.30 gbp\",\n            \"gateway_status\": \"DECLINED\",\n            \"id\": \"tr_11842_10033\",\n            \"initiated\": \"2020-04-08T13:52:42.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:52:42.000Z\",\n            \"reference\": \"BOLT-00010033\",\n            \"source\": \"RECURRING\",\n            \"source_transaction\": \"tr_11842_10032\",\n            \"status\": \"DECLINED\",\n            \"updated\": \"2021-10-07T20:37:46.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"AUTH\",\n            \"amount\": \"101\",\n            \"authorisation_code\": \"pi_1GVeJoFi2CnH4uN3jyjleudE (TEST)\",\n            \"authorised\": \"0\",\n            \"balance\": \"0\",\n            \"captured\": \"101\",\n            \"captures\": [\n                \"ca_11842_10033\",\n                \"ca_11842_10034\"\n            ],\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10022\",\n            \"created\": \"2020-04-08T13:51:51.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"ch_1GVeJoFi2CnH4uN3ptrzSYt2\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10032\",\n            \"initiated\": \"2020-04-08T13:51:51.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10026\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": false,\n            \"processed\": \"2020-04-08T13:51:53.000Z\",\n            \"reference\": \"BOLT-00010032\",\n            \"source\": \"MOTO\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:46.000Z\",\n            \"voided\": \"0\",\n            \"v\": 15\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"REFUND\",\n            \"amount\": \"-1\",\n            \"authorisation_code\": \"re_1GVeGeFi2CnH4uN3CGNMWiYZ\",\n            \"balance\": \"-1\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10003\",\n            \"created\": \"2020-04-08T13:48:36.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"re_1GVeGeFi2CnH4uN3CGNMWiYZ\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10031\",\n            \"initiated\": \"2020-04-08T13:48:37.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10025\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:48:37.000Z\",\n            \"reason\": \"This was a test payment\",\n            \"reference\": \"BOLT-00010031\",\n            \"refund\": \"ref_11842_10031\",\n            \"refunded\": \"1\",\n            \"settle_currency\": \"GBP\",\n            \"settle_gross_amount\": \"1\",\n            \"settle_net_amount\": \"1\",\n            \"source_transaction\": \"tr_11842_10006\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:46.000Z\",\n            \"v\": 11\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"VOID\",\n            \"amount\": \"100\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10021\",\n            \"created\": \"2020-04-08T13:48:30.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_message\": \"You cannot cancel this PaymentIntent because it has a status of canceled. Only a PaymentIntent with one of the following statuses may be canceled: requires_payment_method, requires_capture, requires_confirmation, requires_action.\",\n            \"gateway_status\": \"DECLINED\",\n            \"id\": \"tr_11842_10030\",\n            \"initiated\": \"2020-04-08T13:48:30.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:48:31.000Z\",\n            \"reference\": \"BOLT-00010030\",\n            \"source\": \"RECURRING\",\n            \"source_transaction\": \"tr_11842_10023\",\n            \"status\": \"DECLINED\",\n            \"updated\": \"2021-10-07T20:37:46.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"REFUND\",\n            \"amount\": \"-1\",\n            \"authorisation_code\": \"re_1GVeGBFi2CnH4uN3WEJaoPFw\",\n            \"balance\": \"-1\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10003\",\n            \"created\": \"2020-04-08T13:48:07.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"re_1GVeGBFi2CnH4uN3WEJaoPFw\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10029\",\n            \"initiated\": \"2020-04-08T13:48:08.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10024\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:48:08.000Z\",\n            \"reason\": \"This was a test payment\",\n            \"reference\": \"BOLT-00010029\",\n            \"refund\": \"ref_11842_10029\",\n            \"refunded\": \"1\",\n            \"settle_currency\": \"GBP\",\n            \"settle_gross_amount\": \"1\",\n            \"settle_net_amount\": \"1\",\n            \"source_transaction\": \"tr_11842_10006\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:46.000Z\",\n            \"v\": 11\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"REFUND\",\n            \"amount\": \"-0.001\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10003\",\n            \"created\": \"2020-04-08T13:47:52.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_message\": \"This value must be greater than or equal to 1.\",\n            \"gateway_status\": \"DECLINED\",\n            \"id\": \"tr_11842_10028\",\n            \"initiated\": \"2020-04-08T13:47:52.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10023\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:47:52.000Z\",\n            \"reason\": \"This was a test payment\",\n            \"reference\": \"BOLT-00010028\",\n            \"refund\": \"ref_11842_10028\",\n            \"source_transaction\": \"tr_11842_10006\",\n            \"status\": \"DECLINED\",\n            \"updated\": \"2021-10-07T20:37:46.000Z\",\n            \"v\": 11\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"REFUND\",\n            \"amount\": \"-5\",\n            \"authorisation_code\": \"re_1GVeDUFi2CnH4uN3ST49Mr1o\",\n            \"balance\": \"-5\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10003\",\n            \"created\": \"2020-04-08T13:45:19.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"re_1GVeDUFi2CnH4uN3ST49Mr1o\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10027\",\n            \"initiated\": \"2020-04-08T13:45:21.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10022\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:45:21.000Z\",\n            \"reason\": \"This was a test payment\",\n            \"reference\": \"BOLT-00010027\",\n            \"refund\": \"ref_11842_10027\",\n            \"refunded\": \"5\",\n            \"settle_currency\": \"GBP\",\n            \"settle_gross_amount\": \"5\",\n            \"settle_net_amount\": \"5\",\n            \"source_transaction\": \"tr_11842_10006\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:46.000Z\",\n            \"v\": 11\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"VOID\",\n            \"amount\": \"100\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10021\",\n            \"created\": \"2020-04-08T13:40:17.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"id\": \"tr_11842_10026\",\n            \"initiated\": \"2020-04-08T13:40:17.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10021\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:40:18.000Z\",\n            \"reference\": \"BOLT-00010026\",\n            \"source\": \"RECURRING\",\n            \"source_transaction\": \"tr_11842_10023\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:46.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"VOID\",\n            \"amount\": \"80\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10004\",\n            \"created\": \"2020-04-08T13:39:17.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_message\": \"You cannot cancel this PaymentIntent because it has a status of succeeded. Only a PaymentIntent with one of the following statuses may be canceled: requires_payment_method, requires_capture, requires_confirmation, requires_action.\",\n            \"gateway_status\": \"DECLINED\",\n            \"id\": \"tr_11842_10025\",\n            \"initiated\": \"2020-04-08T13:39:17.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:39:18.000Z\",\n            \"reference\": \"BOLT-00010025\",\n            \"source\": \"RECURRING\",\n            \"source_transaction\": \"tr_11842_10008\",\n            \"status\": \"DECLINED\",\n            \"updated\": \"2021-10-07T20:37:46.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"VOID\",\n            \"amount\": \"80\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10004\",\n            \"created\": \"2020-04-08T13:38:44.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_message\": \"You cannot cancel this PaymentIntent because it has a status of succeeded. Only a PaymentIntent with one of the following statuses may be canceled: requires_payment_method, requires_capture, requires_confirmation, requires_action.\",\n            \"gateway_status\": \"DECLINED\",\n            \"id\": \"tr_11842_10024\",\n            \"initiated\": \"2020-04-08T13:38:44.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:38:44.000Z\",\n            \"reference\": \"BOLT-00010024\",\n            \"source\": \"RECURRING\",\n            \"source_transaction\": \"tr_11842_10008\",\n            \"status\": \"DECLINED\",\n            \"updated\": \"2021-10-07T20:37:47.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"AUTH\",\n            \"amount\": \"100\",\n            \"authorisation_code\": \"pi_1GVe6rFi2CnH4uN3Feo9f599 (TEST)\",\n            \"authorised\": \"0\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10021\",\n            \"created\": \"2020-04-08T13:38:29.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"ch_1GVe6sFi2CnH4uN3Y1efVDvC\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10023\",\n            \"initiated\": \"2020-04-08T13:38:29.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10020\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": false,\n            \"processed\": \"2020-04-08T13:38:30.000Z\",\n            \"reference\": \"BOLT-00010023\",\n            \"source\": \"MOTO\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:47.000Z\",\n            \"voided\": \"100\",\n            \"v\": 15\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"VOID\",\n            \"amount\": \"80\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10004\",\n            \"created\": \"2020-04-08T13:37:18.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_message\": \"You cannot cancel this PaymentIntent because it has a status of succeeded. Only a PaymentIntent with one of the following statuses may be canceled: requires_payment_method, requires_capture, requires_confirmation, requires_action.\",\n            \"gateway_status\": \"DECLINED\",\n            \"id\": \"tr_11842_10022\",\n            \"initiated\": \"2020-04-08T13:37:18.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:37:18.000Z\",\n            \"reference\": \"BOLT-00010022\",\n            \"source\": \"RECURRING\",\n            \"source_transaction\": \"tr_11842_10008\",\n            \"status\": \"DECLINED\",\n            \"updated\": \"2021-10-07T20:37:47.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"CAPTURE\",\n            \"amount\": \"0.01\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10004\",\n            \"created\": \"2020-04-08T13:36:00.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_message\": \"This PaymentIntent could not be captured because it has already been captured.\",\n            \"gateway_status\": \"DECLINED\",\n            \"id\": \"tr_11842_10021\",\n            \"initiated\": \"2020-04-08T13:36:00.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T13:36:01.000Z\",\n            \"reference\": \"BOLT-00010021\",\n            \"source\": \"RECURRING\",\n            \"source_transaction\": \"tr_11842_10008\",\n            \"status\": \"DECLINED\",\n            \"updated\": \"2021-10-07T20:37:47.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"AUTH\",\n            \"amount\": \"100\",\n            \"balance\": \"0\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10020\",\n            \"created\": \"2020-04-08T13:29:56.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_message\": \"Your card number is incorrect.\",\n            \"gateway_status\": \"DECLINED\",\n            \"id\": \"tr_11842_10020\",\n            \"initiated\": \"2020-04-08T13:29:56.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"payment_method\": \"pm_11842_10020\",\n            \"payment_method_used_token\": false,\n            \"processed\": \"2020-04-08T13:29:57.000Z\",\n            \"reference\": \"BOLT-00010020\",\n            \"source\": \"MOTO\",\n            \"status\": \"DECLINED\",\n            \"updated\": \"2021-10-07T20:37:47.000Z\",\n            \"voided\": \"0\",\n            \"v\": 11\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"CAPTURE\",\n            \"amount\": \"20\",\n            \"authorisation_code\": \"pi_1GVbisFi2CnH4uN3ez8zQXIm (TEST)\",\n            \"balance\": \"20\",\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10004\",\n            \"created\": \"2020-04-08T11:05:55.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"ch_1GVbisFi2CnH4uN38lXsCR1K\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10009\",\n            \"initiated\": \"2020-04-08T11:05:55.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10009\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": true,\n            \"processed\": \"2020-04-08T11:05:56.000Z\",\n            \"reference\": \"BOLT-00010009\",\n            \"settle_currency\": \"GBP\",\n            \"settle_fee_amount\": \"3.1\",\n            \"settle_gross_amount\": \"100\",\n            \"settle_net_amount\": \"96.9\",\n            \"source\": \"RECURRING\",\n            \"source_transaction\": \"tr_11842_10008\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:47.000Z\",\n            \"v\": 12\n        },\n        {\n            \"account\": \"acc_11842_10000\",\n            \"action\": \"AUTH\",\n            \"amount\": \"100\",\n            \"authorisation_code\": \"pi_1GVbisFi2CnH4uN3ez8zQXIm (TEST)\",\n            \"authorised\": \"80\",\n            \"balance\": \"0\",\n            \"captured\": \"20\",\n            \"captures\": [\n                \"ca_11842_10009\",\n                \"ca_11842_10021\"\n            ],\n            \"channel\": \"ch_11842_10001\",\n            \"contract\": \"co_11842_10004\",\n            \"created\": \"2020-04-08T11:05:33.000Z\",\n            \"currency\": \"GBP\",\n            \"designation\": \"des_11842_10000\",\n            \"division\": \"div_11842_1\",\n            \"gateway\": \"gw_11842_10000\",\n            \"gateway_reference\": \"ch_1GVbisFi2CnH4uN38lXsCR1K\",\n            \"gateway_status\": \"APPROVED\",\n            \"id\": \"tr_11842_10008\",\n            \"initiated\": \"2020-04-08T11:05:33.000Z\",\n            \"initiative\": \"in_11842_10000\",\n            \"legal_entity\": \"le_11842_10000\",\n            \"parts\": [\n                \"tp_11842_10008\"\n            ],\n            \"payment_method\": \"pm_11842_10000\",\n            \"payment_method_used_token\": false,\n            \"processed\": \"2020-04-08T11:05:35.000Z\",\n            \"reference\": \"BOLT-00010008\",\n            \"source\": \"MOTO\",\n            \"status\": \"SUCCESS\",\n            \"updated\": \"2021-10-07T20:37:47.000Z\",\n            \"voided\": \"0\",\n            \"v\": 18\n        }\n    ],\n    \"meta\": {\n        \"offset\": 0,\n        \"limit\": 20,\n        \"total\": 28\n    }\n}"}],"_postman_id":"a153ff8c-8508-43ee-b750-801ae10e53a8"},{"name":"Get a transaction","id":"115b94f2-6437-4c7a-aa47-c289251d208c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/transactions/{{transaction_id}}","description":"<p>Where you can <code>expand</code>:</p>\n<ul>\n<li><code>account</code></li>\n<li><code>captures</code></li>\n<li><code>contract</code></li>\n<li><code>created_session</code>    </li>\n<li><code>gateway</code></li>\n<li><code>parts</code></li>\n<li><code>payment_method</code></li>\n<li><code>refunds</code></li>\n<li><code>source_transaction</code></li>\n<li><code>updated_session</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>account</code></td>\n<td>the person the transaction was for</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>either <code>PAYMENT</code>, <code>REFUND</code>, <code>AUTH</code>, <code>CAPTURE</code>, <code>VOID</code></td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>the amount of the transaction</td>\n</tr>\n<tr>\n<td><code>authorisation_code</code></td>\n<td>the authorisation code returned from the gateway for the transaction</td>\n</tr>\n<tr>\n<td><code>authorised</code></td>\n<td>the amount authorised (and uncaptured) if an AUTH</td>\n</tr>\n<tr>\n<td><code>balance</code></td>\n<td>if the payment amount less any refunds</td>\n</tr>\n<tr>\n<td><code>browser_ip_address</code></td>\n<td>the browser's IP address</td>\n</tr>\n<tr>\n<td><code>browser_accept_header</code></td>\n<td>the browser's accept header</td>\n</tr>\n<tr>\n<td><code>browser_javascript</code></td>\n<td>if the browser has javascript enabled</td>\n</tr>\n<tr>\n<td><code>browser_locale</code></td>\n<td>the browser's locale</td>\n</tr>\n<tr>\n<td><code>browser_user_agent</code></td>\n<td>the browser's user agent</td>\n</tr>\n<tr>\n<td><code>browser_size</code></td>\n<td>the browser's screen dimension</td>\n</tr>\n<tr>\n<td><code>browser_java_enabled</code></td>\n<td>if the browser has java enabled</td>\n</tr>\n<tr>\n<td><code>browser_color_depth</code></td>\n<td>the browser's color depth</td>\n</tr>\n<tr>\n<td><code>browser_timezone</code></td>\n<td>the browser's timezone</td>\n</tr>\n<tr>\n<td><code>captures</code></td>\n<td>the ids of any related captures</td>\n</tr>\n<tr>\n<td><code>captured</code></td>\n<td>the amount of the authorisation that has been captured if an AUTH</td>\n</tr>\n<tr>\n<td><code>channel</code></td>\n<td>(enterprise) the channel the transaction was processed via</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this transaciton belongs to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the transaction was created / entered</td>\n</tr>\n<tr>\n<td><code>created_session</code></td>\n<td>the session the object was created by</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>the currency in ISO format</td>\n</tr>\n<tr>\n<td><code>designation</code></td>\n<td>(enterprise) the designation the transaction was processed via</td>\n</tr>\n<tr>\n<td><code>division</code></td>\n<td>(enterprise) the division from which the payment was instructed</td>\n</tr>\n<tr>\n<td><code>expires</code></td>\n<td>if action = <code>AUTH</code> the date the authorisation expires (where known)</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>the gateway the transaction was processed via</td>\n</tr>\n<tr>\n<td><code>gateway_message</code></td>\n<td>the status message returned by the gateway</td>\n</tr>\n<tr>\n<td><code>gateway_metadata</code></td>\n<td>any metadata returned by the gateway</td>\n</tr>\n<tr>\n<td><code>gateway_reference</code></td>\n<td>the gateway identifier for the transaction</td>\n</tr>\n<tr>\n<td><code>gateway_status</code></td>\n<td>the category or error message received from the gateway. Most gateways have hundreds of error messages, so we have categorised every one of these into the eight categories below, so you can build a sensible business process around them.</td>\n</tr>\n<tr>\n<td><code>gateway_view_transaction</code></td>\n<td>for gateways that support it a link to the the processor's dashboard for this transaction</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>the id of the transaction</td>\n</tr>\n<tr>\n<td><code>initiated</code></td>\n<td>(enterprise) when the transaction was instructed by the user (this may be days, weeks or years before entered to the system), this will only be populated when passed into the initial payment instruction and more than 2 minutes prior to <code>processed</code></td>\n</tr>\n<tr>\n<td><code>initiative</code></td>\n<td>(enterprise) the initiative the transaction was for</td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>(enterprise) the legal entity the transaction was processed via</td>\n</tr>\n<tr>\n<td><code>next_attempt</code></td>\n<td>the next payment attempt if a decline payment that was retried (vs abandoned)</td>\n</tr>\n<tr>\n<td><code>parts</code></td>\n<td>an array of parts objects for which charge(s) the transaction was applied to. To access the parts you must \"expand\" this field</td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>the payment_method / card used</td>\n</tr>\n<tr>\n<td><code>payment_method_used_token</code></td>\n<td>if a saved card used</td>\n</tr>\n<tr>\n<td><code>processed</code></td>\n<td>when the transaction was processed</td>\n</tr>\n<tr>\n<td><code>redirect_url</code></td>\n<td>The URL if 3DS is required</td>\n</tr>\n<tr>\n<td><code>reason</code></td>\n<td>if action == <code>REFUND</code> the reason for refund</td>\n</tr>\n<tr>\n<td><code>reference</code></td>\n<td>The transaction customer facing reference typically of the format BOLT-123445</td>\n</tr>\n<tr>\n<td><code>refunds</code></td>\n<td>the ids of any related refunds</td>\n</tr>\n<tr>\n<td><code>refund</code></td>\n<td>if action == <code>REFUND</code> a link to the refund object</td>\n</tr>\n<tr>\n<td><code>refunded</code></td>\n<td>the amount of the transaction that has been refunded</td>\n</tr>\n<tr>\n<td><code>settle_currency</code></td>\n<td>the currency the transaction was settled in if different than the transacted currency (supported by some gateways only)</td>\n</tr>\n<tr>\n<td><code>settle_fee_amount</code></td>\n<td>the amount of fees deducted for processing the transaction (supported by some gateways only)</td>\n</tr>\n<tr>\n<td><code>settle_gross_amount</code></td>\n<td>the amount paid in the settlement currency (supported by some gateways only)</td>\n</tr>\n<tr>\n<td><code>settle_net_amount</code></td>\n<td>the amount that was settled in the settlement currency less fees (supported by some gateways only)</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>the source for the transaction eg <code>ECOMMERCE</code>, <code>MOTO</code>, <code>RECURRING</code>, <code>POS</code></td>\n</tr>\n<tr>\n<td><code>source_transaction</code></td>\n<td>populated if a refund this will reference the transaction being refunded</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the transaction (see below)</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>when the transaction was last updated</td>\n</tr>\n<tr>\n<td><code>updated_session</code></td>\n<td>the session the object was updated by</td>\n</tr>\n<tr>\n<td><code>voided</code></td>\n<td>the amount of the authorisation that has been voided if an AUTH</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the object</td>\n</tr>\n<tr>\n<td><code>workflows</code></td>\n<td>any workflows that were applied to the payment</td>\n</tr>\n<tr>\n<td><code>workflow_status</code></td>\n<td>the current status of the workflow <code>OK</code> (allow to proceed), <code>STOP</code>, <code>SUSPEND</code> (holding in pending)</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>SUCCESS</code></td>\n<td>The transaction was approved</td>\n</tr>\n<tr>\n<td><code>PENDING</code></td>\n<td>The transaction is still in progress, you will be sent a webhook when this payment is copmlete. Optionally you can poll the transaction (no more than once per second). Some gateways like Adyen (card) do this as defaulty behaviour and the approval will take seconds (you may wish to poll for updates), other gateways like GoCardless (non card) take days to fully authorise a payment. If you enable any such gateways, ensure you support the webhook payment confirmation (PAYMENT.SUCCESS).</td>\n</tr>\n<tr>\n<td><code>DECLINED</code></td>\n<td>The transaction was declined, please see the <code>gateway_status</code> for further detail why</td>\n</tr>\n<tr>\n<td><code>REQAUTH</code></td>\n<td>The payment has started with the gateway however requires an authorisation step that has not completed (eg 3d secure). Our merchant portal will treat any transaction in this status for over an hour as a decline (abandoned), its advised you do the same.</td>\n</tr>\n<tr>\n<td><code>INVALID_PAYMENT_METHOD</code></td>\n<td>The payment was attempted with an invalid payment method. This is typically a recurring payment set up on gateway 1, and you have since disconnected gateway 1. In this scenario the transaction was not even attempted, however a transaction with this status created for audit purposes.</td>\n</tr>\n<tr>\n<td><code>UNRESOLVED</code></td>\n<td>The transaction was sent to the gateway but we did not recieve a conclusive approval or declines due (eg generally this is reflecting a gateway status meaning the same thing, or the gateway took longer than 45 seconds to authorise a payment), your call-to-action should be to contact support and NOT reattempt the transaction to prevent double processing. If you have any of these, you should advise the merchant to review their gateway account for the status of the payment. Please escalate with our support if you see several of these coming through.</td>\n</tr>\n<tr>\n<td><code>UNATTRIBUTED</code></td>\n<td>The transaction was successful but there was an internal issue recording the transaction. Generally these will update to <code>SUCCESS</code> within a few hours.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>gateway_status</code> is:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>APPROVED</code></td>\n<td>The transaction was approved.</td>\n</tr>\n<tr>\n<td><code>PENDING</code></td>\n<td>The transaction is still in progress, you will be sent a webhook when this payment is copmlete. Optionally you can poll the transaction (no more than once per second). Some gateways like Adyen (card) do this as defaulty behaviour and the approval will take seconds (you may wish to poll for updates), other gateways like GoCardless (non card) take days to fully authorise a payment. If you enable any such gateways, ensure you support the webhook payment confirmation (PAYMENT.SUCCESS).</td>\n</tr>\n<tr>\n<td><code>DECLINED</code></td>\n<td>The transaction was declined for a reason to do with user input, your call-to-action should be to check details and try again (our popover will do this for you)</td>\n</tr>\n<tr>\n<td><code>DECLINED_CALL_BANK</code></td>\n<td>The transaction was declined due to an issue with the account (eg insufficient funds, do not honour), your call-to-action should be to contact your bank</td>\n</tr>\n<tr>\n<td><code>DECLINED_BLOCKED</code></td>\n<td>The transaction was declined due to you card being stopped / blocked (eg stolen, reissued), your call-to-action should be to try a different card</td>\n</tr>\n<tr>\n<td><code>DECLINED_ERROR</code></td>\n<td>The transaction was declined due to a technical reason (eg invalid merchant credentials / integration issue), your call-to-action should be to contact support or try a different card. In this scenario the end user is not told the technical reason for the issue and you can access this by the developer/merchant portal. Generally this will be the merchant's credentials have changed, but very rarely we see input data the gateway does not like by throwing an error rather than validation reason.</td>\n</tr>\n<tr>\n<td><code>DECLINED_RETRY</code></td>\n<td>The transaction was declined due to a temporary reason (eg rate limit, connection issue), your call-to-action should be to retry with the same card after a few seconds.</td>\n</tr>\n<tr>\n<td><code>CANCELLED</code></td>\n<td>The transaction was PENDING, however has since been cancelled ie payment instruction withdrawn rather than declined.</td>\n</tr>\n<tr>\n<td><code>UNRESOLVED</code></td>\n<td>The transaction was sent to the gateway but we did not recieve a conclusive approval or declines due (eg generally this is reflecting a gateway status meaning the same thing, or the gateway took longer than 45 seconds to authorise a payment), your call-to-action should be to contact support and NOT reattempt the transaction to prevent double processing. If you have any of these, you should advise the merchant to review their gateway account for the status of the payment. Please escalate with our support if you see several of these coming through.</td>\n</tr>\n<tr>\n<td><code>MANUAL</code></td>\n<td>This status means the transaction was not processed by the gateway but entered manually.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>workflows</code> contains the <code>id</code>'s of any workflows executed, each containing the type of workflow hook:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>PRE_SUBMISSION</code></td>\n<td>The results of the <code>PRE_SUBMISSION</code> step for workflows supporting <code>PRE_SUBMISSION</code></td>\n</tr>\n<tr>\n<td><code>POST_SUBMISSION</code></td>\n<td>The results of the <code>POST_SUBMISSION</code> step for workflows supporting <code>POST_SUBMISSION</code></td>\n</tr>\n<tr>\n<td><code>POST_REFUND</code></td>\n<td>The results of the <code>POST_REFUND</code> step for workflows supporting <code>POST_REFUND</code></td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>parts</code> is an array of part:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>the unique id of part</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>the amount of currency this part represents</td>\n</tr>\n<tr>\n<td><code>charge</code></td>\n<td>the charge this amount was attributed to</td>\n</tr>\n<tr>\n<td><code>installment</code></td>\n<td>(enterprise only)</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where workflow <code>hook_type</code> contains:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>status</code></td>\n<td>If the workflow was executed successfully, <code>NOT_RUN</code>, <code>OK</code>, <code>ERROR</code></td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>The action that was returned by the workflow, one of <code>OK</code>, <code>STOP</code> or <code>SUSPEND</code> - please note, <code>SUSPEND</code> in pre-submissions may create 3DS issues, as such most workflows will only suspend <code>POST_SUBMISSION</code></td>\n</tr>\n<tr>\n<td><code>metadata</code></td>\n<td>Any data the workflow wishes to return</td>\n</tr>\n<tr>\n<td><code>default_action</code></td>\n<td>The action that will be performed if the workflow is unable to run, one of <code>OK</code>, <code>STOP</code></td>\n</tr>\n<tr>\n<td><code>processed</code></td>\n<td>the date time the workflow was run</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>the date time the workflow was last updated</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","transactions","{{transaction_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"d9f4bf6b-9ade-4d15-9400-970542efa5e5","name":"Get a transaction - approved","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/transactions/{{transaction_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 01 May 2024 09:20:13 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-powered-by","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"fV1W32yP9sARFnN7zNajnA==\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 0fecf9be0bd0b4c1e5dedc1c0b50f3be.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"siNHzfZf8SXyu-V48sPmZvlyTS58fmoNk6b4wBnEgDpwqOZ5H3hK9Q==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"transaction\": {\n        \"account\": \"acc_11842_10000\",\n        \"action\": \"PAYMENT\",\n        \"amount\": \"100\",\n        \"authorisation_code\": \"pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y (TEST)\",\n        \"balance\": \"98\",\n        \"channel\": \"ch_11842_10001\",\n        \"contract\": \"co_11842_10103\",\n        \"created\": \"2020-11-12T14:42:07.000Z\",\n        \"currency\": \"GBP\",\n        \"designation\": \"des_11842_10000\",\n        \"division\": \"div_11842_1\",\n        \"gateway\": \"gw_11842_10000\",\n        \"gateway_metadata\": {\n            \"balance_transaction\": {\n                \"amount\": 10000,\n                \"available_on\": 1605744000,\n                \"created\": 1605192129,\n                \"fee\": 310,\n                \"reporting_category\": \"charge\",\n                \"fee_details\": [\n                    {\n                        \"amount\": 310,\n                        \"description\": \"Stripe processing fees\",\n                        \"currency\": \"gbp\",\n                        \"type\": \"stripe_fee\"\n                    }\n                ],\n                \"description\": \"Invoice 1234\",\n                \"source\": \"ch_1Hmh01Fi2CnH4uN34DxzIxrY\",\n                \"type\": \"charge\",\n                \"currency\": \"gbp\",\n                \"id\": \"txn_1Hmh01Fi2CnH4uN3Xz6RTNgv\",\n                \"net\": 9690,\n                \"object\": \"balance_transaction\",\n                \"status\": \"pending\"\n            },\n            \"payment_intent\": {\n                \"metadata\": {\n                    \"paymentMethodCode\": \"00010040\",\n                    \"accountCode\": \"CRM-1\",\n                    \"accountEmail\": \"jane.doe@email.com\",\n                    \"gatewayKey\": \"11842_10000\",\n                    \"accountName\": \"Jane Doe\",\n                    \"transactionReference\": \"BOLT-00011059\",\n                    \"staffPresent\": \"true\",\n                    \"ipAddress\": \"212.161.80.4\",\n                    \"client\": \"11842\",\n                    \"altKey\": \"1234\",\n                    \"customerPresent\": \"false\",\n                    \"orderDescription\": \"Invoice 1234\"\n                },\n                \"livemode\": false,\n                \"amount_capturable\": 0,\n                \"description\": \"Invoice 1234\",\n                \"currency\": \"gbp\",\n                \"id\": \"pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y\",\n                \"client_secret\": \"pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y_secret_2AmVjvTDw3hh1SEnDaCPI7s8X\",\n                \"payment_method_options\": {\n                    \"card\": {\n                        \"request_three_d_secure\": \"automatic\"\n                    }\n                },\n                \"payment_method\": \"pm_1Hmh00Fi2CnH4uN3TB6yaX6l\",\n                \"capture_method\": \"automatic\",\n                \"amount\": 10000,\n                \"created\": 1605192129,\n                \"payment_method_types\": [\n                    \"card\"\n                ],\n                \"amount_received\": 10000,\n                \"setup_future_usage\": \"off_session\",\n                \"confirmation_method\": \"manual\",\n                \"charges\": {\n                    \"data\": [\n                        {\n                            \"balance_transaction\": \"txn_1Hmh01Fi2CnH4uN3Xz6RTNgv\",\n                            \"billing_details\": {\n                                \"address\": {\n                                    \"country\": \"AU\",\n                                    \"city\": \"Downtown\",\n                                    \"state\": \"Sydney\",\n                                    \"postal_code\": \"70000\",\n                                    \"line1\": \"123 Main Street\"\n                                },\n                                \"phone\": \"012391231234\",\n                                \"name\": \"Jane Doe\",\n                                \"email\": \"jane.doe@email.com\"\n                            },\n                            \"metadata\": {\n                                \"paymentMethodCode\": \"00010040\",\n                                \"accountCode\": \"CRM-1\",\n                                \"accountEmail\": \"jane.doe@email.com\",\n                                \"gatewayKey\": \"11842_10000\",\n                                \"accountName\": \"Jane Doe\",\n                                \"transactionReference\": \"BOLT-00011059\",\n                                \"staffPresent\": \"true\",\n                                \"ipAddress\": \"212.161.80.4\",\n                                \"client\": \"11842\",\n                                \"altKey\": \"1234\",\n                                \"customerPresent\": \"false\",\n                                \"orderDescription\": \"Invoice 1234\"\n                            },\n                            \"livemode\": false,\n                            \"description\": \"Invoice 1234\",\n                            \"fraud_details\": {},\n                            \"amount_refunded\": 0,\n                            \"refunds\": {\n                                \"data\": [],\n                                \"total_count\": 0,\n                                \"has_more\": false,\n                                \"url\": \"/v1/charges/ch_1Hmh01Fi2CnH4uN34DxzIxrY/refunds\",\n                                \"object\": \"list\"\n                            },\n                            \"receipt_url\": \"https://pay.stripe.com/receipts/acct_1DO9jQFi2CnH4uN3/ch_1Hmh01Fi2CnH4uN34DxzIxrY/rcpt_INRtfhHi5QhcpaRS8VPDj0mx6OSDv8c\",\n                            \"captured\": true,\n                            \"calculated_statement_descriptor\": \"TATERS LTD\",\n                            \"currency\": \"gbp\",\n                            \"refunded\": false,\n                            \"id\": \"ch_1Hmh01Fi2CnH4uN34DxzIxrY\",\n                            \"outcome\": {\n                                \"risk_level\": \"normal\",\n                                \"risk_score\": 26,\n                                \"seller_message\": \"Payment complete.\",\n                                \"network_status\": \"approved_by_network\",\n                                \"type\": \"authorized\"\n                            },\n                            \"payment_method\": \"pm_1Hmh00Fi2CnH4uN3TB6yaX6l\",\n                            \"amount\": 10000,\n                            \"disputed\": false,\n                            \"created\": 1605192129,\n                            \"payment_method_details\": {\n                                \"type\": \"card\",\n                                \"card\": {\n                                    \"country\": \"US\",\n                                    \"last4\": \"4242\",\n                                    \"funding\": \"credit\",\n                                    \"exp_month\": 12,\n                                    \"exp_year\": 2022,\n                                    \"moto\": true,\n                                    \"network\": \"visa\",\n                                    \"checks\": {\n                                        \"cvc_check\": \"pass\",\n                                        \"address_line1_check\": \"pass\",\n                                        \"address_postal_code_check\": \"pass\"\n                                    },\n                                    \"fingerprint\": \"ZDVftG8YX6erKyIj\",\n                                    \"brand\": \"visa\"\n                                }\n                            },\n                            \"amount_captured\": 10000,\n                            \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                            \"paid\": true,\n                            \"payment_intent\": \"pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y\",\n                            \"object\": \"charge\",\n                            \"customer\": \"cus_FnW1i69iOuxWBO\",\n                            \"status\": \"succeeded\"\n                        }\n                    ],\n                    \"total_count\": 1,\n                    \"has_more\": false,\n                    \"url\": \"/v1/charges?payment_intent=pi_1Hmh01Fi2CnH4uN3VpuW4Y2Y\",\n                    \"object\": \"list\"\n                },\n                \"application\": \"ca_Bg14uKJhEAbrsj48qyEjypL8Iu0Qun8x\",\n                \"object\": \"payment_intent\",\n                \"customer\": \"cus_FnW1i69iOuxWBO\",\n                \"status\": \"succeeded\"\n            }\n        },\n        \"gateway_reference\": \"ch_1Hmh01Fi2CnH4uN34DxzIxrY\",\n        \"gateway_status\": \"APPROVED\",\n        \"id\": \"tr_11842_11059\",\n        \"initiated\": \"2020-11-12T14:42:07.000Z\",\n        \"initiative\": \"in_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"parts\": [\n            \"tp_11842_11059\"\n        ],\n        \"payment_method\": \"pm_11842_10040\",\n        \"payment_method_used_token\": false,\n        \"processed\": \"2020-11-12T14:42:10.000Z\",\n        \"reference\": \"BOLT-00011059\",\n        \"refunded\": \"2\",\n        \"refunds\": [\n            \"ref_11842_11061\",\n            \"ref_11842_11060\"\n        ],\n        \"settle_currency\": \"GBP\",\n        \"settle_fee_amount\": \"3.1\",\n        \"settle_gross_amount\": \"100\",\n        \"settle_net_amount\": \"96.9\",\n        \"source\": \"MOTO\",\n        \"status\": \"SUCCESS\",\n        \"updated\": \"2021-10-07T20:10:11.000Z\",\n        \"v\": 14\n    }\n}"},{"id":"9a23b714-7fc8-4bac-9177-bd53b0bd3d8c","name":"Get a transaction - declined","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/transactions/{{transaction_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"300","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Date","value":"Fri, 18 Jan 2019 11:46:42 GMT","enabled":true},{"key":"ETag","value":"W/\"1c8-d5062c47\"","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 9b140cb214dc166129350e47b923d352.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Id","value":"e-iv_Qd589IX0KX3jPVZb6yx7WQ4BI9fSn2gQtbP1GDURHf6I_ZWLQ==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"transaction\": {\n        \"id\": \"tr_1000_31745\",\n        \"action\": \"PAYMENT\",\n        \"status\": \"DECLINED\",\n        \"gateway_status\": \"DECLINED_ERROR\",\n        \"gateway_message\": \"INVALID: 4020 : Information received from an Invalid IP address.\",\n        \"reference\": \"REF-00031745\",\n        \"amount\": \"1\",\n        \"balance\": \"0\",\n        \"currency\": \"AUD\",\n        \"initiative\": \"in_1000_1101\",\n        \"gateway\": \"gw_1000_1340\",\n        \"account\": \"acc_1000_4940\",\n        \"payment_method\": \"pm_1000_22901\",\n        \"created\": \"2019-01-10T10:47:58.000Z\",\n        \"processed\": \"2019-01-10T10:47:58.000Z\"\n    }\n}"},{"id":"d8aacfbb-1ac1-46a7-aa99-df3a1ed7be52","name":"Get a transaction - refund","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/transactions/{{transaction_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Content-Length","value":"960","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Wed, 01 May 2024 09:18:30 GMT","enabled":true},{"key":"Server","value":"nginx","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"Access-Control-Allow-Methods","value":"PUT, POST, GET, DELETE, OPTIONS","enabled":true},{"key":"x-powered-by","value":"Shuttle","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"3c0-32ff5369\"","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 0fecf9be0bd0b4c1e5dedc1c0b50f3be.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR62-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"spT_7S-wd0CERgSTmqIx2A5nV7-_cp_22kW6vVU_sGg3LlK4ANvGMQ==","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"transaction\": {\n        \"account\": \"acc_11842_10000\",\n        \"action\": \"REFUND\",\n        \"amount\": \"-100\",\n        \"authorisation_code\": \"re_1GsoSPFi2CnH4uN3VQ3snmij\",\n        \"balance\": \"-100\",\n        \"channel\": \"ch_11842_10001\",\n        \"contract\": \"co_11842_10082\",\n        \"created\": \"2020-06-11T11:20:29.000Z\",\n        \"currency\": \"GBP\",\n        \"designation\": \"des_11842_10000\",\n        \"division\": \"div_11842_1\",\n        \"gateway\": \"gw_11842_10000\",\n        \"gateway_reference\": \"re_1GsoSPFi2CnH4uN3VQ3snmij\",\n        \"gateway_status\": \"APPROVED\",\n        \"id\": \"tr_11842_10423\",\n        \"initiated\": \"2020-06-11T11:20:30.000Z\",\n        \"initiative\": \"in_11842_10000\",\n        \"legal_entity\": \"le_11842_10000\",\n        \"parts\": [\n            \"tp_11842_10423\"\n        ],\n        \"payment_method\": \"pm_11842_10040\",\n        \"payment_method_used_token\": true,\n        \"processed\": \"2020-06-11T11:20:30.000Z\",\n        \"reason\": \"This was a test payment\",\n        \"reference\": \"BOLT-00010423\",\n        \"refund\": \"ref_11842_10423\",\n        \"refunded\": \"100\",\n        \"settle_currency\": \"GBP\",\n        \"settle_gross_amount\": \"100\",\n        \"settle_net_amount\": \"100\",\n        \"source_transaction\": \"tr_11842_10422\",\n        \"status\": \"SUCCESS\",\n        \"updated\": \"2021-10-07T20:37:42.000Z\",\n        \"v\": 11\n    }\n}"}],"_postman_id":"115b94f2-6437-4c7a-aa47-c289251d208c"}],"id":"ecfe6b5b-8b05-40f5-b502-a06f5d4bb6c9","description":"<p>A transaction is created for each attempt to instruct a payment gateway to do a payment, authorisation, capture, void or refund. Please note, each of these activities have their own API, and the transaction list is a way to see the overall ledger.</p>\n","event":[{"listen":"prerequest","script":{"id":"c9d489fe-3777-4ef0-8cd2-bb4a9f88f496","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"f96d2cd8-cf5a-4258-91b6-92a6fae6a6d4","type":"text/javascript","exec":[""]}}],"_postman_id":"ecfe6b5b-8b05-40f5-b502-a06f5d4bb6c9","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Workflows","item":[{"name":"List workflows","id":"b85a892e-6514-4530-9104-9646dd3f13d2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/workflows","description":"<p>This request performs a simple search against <code>workflow</code> objects:</p>\n<ul>\n<li><code>criteria</code>: The search criteria (URL encoded).</li>\n<li><code>order</code>: The sort you would like to apply</li>\n<li><code>expand</code>: The fields to expand into full objects (see <code>GET</code> object) </li>\n<li><code>limit</code>: The maximum records to return </li>\n<li><code>offset</code>: The offset from the first records to start returning records</li>\n</ul>\n<p>Available fields for <code>criteria</code> and <code>order</code>: </p>\n<ul>\n<li>id</li>\n<li>code</li>\n<li>name</li>\n<li>created</li>\n<li>division</li>\n<li>status</li>\n<li>updated</li>\n</ul>\n<p>Expand: </p>\n<ul>\n<li>See <code>GET</code></li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>workflows</code></td>\n<td>an array of <code>workflow</code> objects (see <code>GET</code> for structure)</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>the meta data of the list returned, ie <code>limit</code>, <code>offset</code> and <code>total</code> records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","workflows"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"0eb39802-2915-40e6-ad80-3f8b7a59a235","name":"List gateways","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 20 Oct 2020 14:50:11 GMT","enabled":true},{"key":"Server","value":"nginx/1.18.0","enabled":true},{"key":"x-powered-by","value":"Express","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"q+3/b0DtyE9poE1YHOCWYQ==\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 716fd417a527ecd4f9d6cef2c9258583.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"IfwBCMdn3y07M8p166Aufwc7wJOrCtAqWkQdWpE-v4bf86Ag0fmcAg==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"gateways\": [\n        {\n            \"id\": \"gw_11842_10000\",\n            \"name\": \"STRIPE\",\n            \"code\": \"P010000\",\n            \"division\": \"div_11842_1\",\n            \"status\": \"ACTIVE\",\n            \"processor\": \"STRIPE\",\n            \"processor_name\": \"Stripe\",\n            \"processor_account_name\": \"Taters Ltd\",\n            \"gateway_group\": \"gw_11842_10000\",\n            \"created\": \"2020-04-08T09:28:14.000Z\",\n            \"updated\": \"2020-04-08T09:29:49.000Z\",\n            \"currencies\": [\n                \"AED\",\n                \"AFN\",\n                \"ALL\",\n                \"AMD\",\n                \"ANG\",\n                \"AOA\",\n                \"ARS\",\n                \"AUD\",\n                \"AWG\",\n                \"AZN\",\n                \"BAM\",\n                \"BBD\",\n                \"BDT\",\n                \"BGN\",\n                \"BIF\",\n                \"BMD\",\n                \"BND\",\n                \"BOB\",\n                \"BRL\",\n                \"BSD\",\n                \"BWP\",\n                \"BZD\",\n                \"CAD\",\n                \"CDF\",\n                \"CHF\",\n                \"CLP\",\n                \"CNY\",\n                \"COP\",\n                \"CRC\",\n                \"CVE\",\n                \"CZK\",\n                \"DJF\",\n                \"DKK\",\n                \"DOP\",\n                \"DZD\",\n                \"EGP\",\n                \"ETB\",\n                \"EUR\",\n                \"FJD\",\n                \"FKP\",\n                \"GBP\",\n                \"GEL\",\n                \"GIP\",\n                \"GMD\",\n                \"GNF\",\n                \"GTQ\",\n                \"GYD\",\n                \"HKD\",\n                \"HNL\",\n                \"HRK\",\n                \"HTG\",\n                \"HUF\",\n                \"IDR\",\n                \"ILS\",\n                \"INR\",\n                \"ISK\",\n                \"JMD\",\n                \"JPY\",\n                \"KES\",\n                \"KGS\",\n                \"KHR\",\n                \"KMF\",\n                \"KRW\",\n                \"KYD\",\n                \"KZT\",\n                \"LAK\",\n                \"LBP\",\n                \"LKR\",\n                \"LRD\",\n                \"LSL\",\n                \"MAD\",\n                \"MDL\",\n                \"MGA\",\n                \"MKD\",\n                \"MNT\",\n                \"MOP\",\n                \"MRO\",\n                \"MUR\",\n                \"MVR\",\n                \"MWK\",\n                \"MXN\",\n                \"MYR\",\n                \"MZN\",\n                \"NAD\",\n                \"NGN\",\n                \"NIO\",\n                \"NOK\",\n                \"NPR\",\n                \"NZD\",\n                \"PAB\",\n                \"PEN\",\n                \"PGK\",\n                \"PHP\",\n                \"PKR\",\n                \"PLN\",\n                \"PYG\",\n                \"QAR\",\n                \"RON\",\n                \"RSD\",\n                \"RUB\",\n                \"RWF\",\n                \"SAR\",\n                \"SBD\",\n                \"SCR\",\n                \"SEK\",\n                \"SGD\",\n                \"SHP\",\n                \"SLL\",\n                \"SOS\",\n                \"SRD\",\n                \"STD\",\n                \"SVC\",\n                \"SZL\",\n                \"THB\",\n                \"TJS\",\n                \"TOP\",\n                \"TRY\",\n                \"TTD\",\n                \"TWD\",\n                \"TZS\",\n                \"UAH\",\n                \"UGX\",\n                \"USD\",\n                \"UYU\",\n                \"UZS\",\n                \"VND\",\n                \"VUV\",\n                \"WST\",\n                \"XAF\",\n                \"XCD\",\n                \"XOF\",\n                \"XPF\",\n                \"YER\",\n                \"ZAR\",\n                \"ZMW\"\n            ],\n            \"payment_method_types\": {\n                \"VISA\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"MASTERCARD\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"AMEX\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"JCB\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"DISCOVER\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"DINERS\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                }\n            },\n            \"payment_method_types_moto\": {\n                \"VISA\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"MASTERCARD\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"AMEX\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"JCB\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"DISCOVER\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                },\n                \"DINERS\": {\n                    \"features\": [\n                        \"AUTHORISE\",\n                        \"AUTHORISE_AND_SAVE_TOKEN\",\n                        \"AUTHORISE_ON_SAVED_TOKEN\",\n                        \"PAYMENT\",\n                        \"COMPLETE_AUTHORISATION\",\n                        \"PAYMENT_AND_SAVE_TOKEN\",\n                        \"PAYMENT_ON_SAVED_TOKEN\",\n                        \"SAVE_CARD\",\n                        \"FULL_REFUND\",\n                        \"PARTIAL_REFUND\",\n                        \"MULTI_REFUND\",\n                        \"CAPTURE\",\n                        \"VOID\"\n                    ]\n                }\n            }\n        }\n    ],\n    \"meta\": {\n        \"total\": 1\n    }\n}"}],"_postman_id":"b85a892e-6514-4530-9104-9646dd3f13d2"},{"name":"Get a workflow","id":"f1cc8a46-fdd7-41f5-880d-724d7c0873f1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/workflows/{{workflow_id}}","description":"<p>Request:</p>\n<ul>\n<li><code>workflow_id</code> is our ID or your ID for the workflow (<code>id</code> or <code>code</code>)</li>\n</ul>\n<p>You can <code>expand</code> the following fields:</p>\n<ul>\n<li>(none)</li>\n</ul>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>bolton</code></td>\n<td>(internal use only)</td>\n</tr>\n<tr>\n<td><code>category</code></td>\n<td>The type of workflow this is, currently supported values are: <code>FRAUD</code></td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>your ID for the workflow (or autogenerated), this is the id displayed on the merchant portal</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>your ID for the workflow (or autogenerated), this is the id displayed on the merchant portal</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>the date / time the record was created was created</td>\n</tr>\n<tr>\n<td><code>division</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>features</code></td>\n<td>(enterprise)</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>our ID for the workflow</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>the name of the workflow installation, this is typically auto generated based on processor</td>\n</tr>\n<tr>\n<td><code>processor_account_name</code></td>\n<td>the name of the account connected to on the workflow processor</td>\n</tr>\n<tr>\n<td><code>processor_name</code></td>\n<td>the name of the workflow processor, this is a display field and may change</td>\n</tr>\n<tr>\n<td><code>processor</code></td>\n<td>the enum <code>id</code> of the processor</td>\n</tr>\n<tr>\n<td><code>status_reason</code></td>\n<td>further information as to why the workflow is in this status. This is rarely used however sometime set if a gateway disconnected due to an event (eg access revoked by the workflow)</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>the status of the workflow - see below</td>\n</tr>\n<tr>\n<td><code>updated</code></td>\n<td>the date / time the workflow was last updated</td>\n</tr>\n<tr>\n<td><code>v</code></td>\n<td>the version of the record</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>status</code> is one of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>CREATED</code></td>\n<td>the workflow is installed but not enabled on any payment methods (please note previously enabled workflows will not revert to this status)</td>\n</tr>\n<tr>\n<td><code>LINKED</code></td>\n<td>the workflow is active, has payment methods enabled but not yet been used</td>\n</tr>\n<tr>\n<td><code>ACTIVE</code></td>\n<td>the workflow is active and in use</td>\n</tr>\n<tr>\n<td><code>ARCHIVE</code></td>\n<td>the workflow has been \"disconnected\" and archived - no payments will be processed through it whilst ARCHIVED</td>\n</tr>\n<tr>\n<td><code>SETUP</code></td>\n<td>the gateway is in the process of being connected - in general ignore records in this status</td>\n</tr>\n<tr>\n<td><code>INACTIVE</code></td>\n<td>DEPRECATED (enterprise)</td>\n</tr>\n<tr>\n<td><code>RUNDOWN</code></td>\n<td>(enterprise)</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where each <code>features</code> contains a list of features that are available in the integration. This is for users building a bespoke checkout:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>HOOK_POST_SUBMISSION</code></td>\n<td>This workflow can alter a payment or payment flow before payment processing</td>\n</tr>\n<tr>\n<td><code>HOOK_POST_SUBMISSION</code></td>\n<td>This workflow can alter a payment or payment flow after payment processing</td>\n</tr>\n<tr>\n<td><code>JSWRAPPER</code></td>\n<td>This workflow requires PROCESSOR javascript to be injected at checkout</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","workflows","{{workflow_id}}"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"8ed470ff-1f62-4624-91a9-c71fdd68c39a","name":"Get a gateway","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8","enabled":true},{"key":"Transfer-Encoding","value":"chunked","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Tue, 20 Oct 2020 14:49:20 GMT","enabled":true},{"key":"Server","value":"nginx/1.18.0","enabled":true},{"key":"x-powered-by","value":"Express","enabled":true},{"key":"access-control-allow-origin","value":"*","enabled":true},{"key":"x-content-type-options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"kcjqxjWq+PzKpqJhxoUeGg==\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 716fd417a527ecd4f9d6cef2c9258583.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C1","enabled":true},{"key":"X-Amz-Cf-Id","value":"En2ZGNTMtOt_N5S32bdllytzZl-p8GYO48BQXBK2qPDXi_EH34vZ4w==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"gateway\": {\n        \"id\": \"gw_11842_10000\",\n        \"name\": \"STRIPE\",\n        \"code\": \"P010000\",\n        \"division\": \"div_11842_1\",\n        \"status\": \"ACTIVE\",\n        \"processor\": \"STRIPE\",\n        \"processor_name\": \"Stripe\",\n        \"processor_account_name\": \"Taters Ltd\",\n        \"gateway_group\": \"gw_11842_10000\",\n        \"created\": \"2020-04-08T09:28:14.000Z\",\n        \"updated\": \"2020-04-08T09:29:49.000Z\",\n        \"currencies\": [\n            \"AED\",\n            \"AFN\",\n            \"ALL\",\n            \"AMD\",\n            \"ANG\",\n            \"AOA\",\n            \"ARS\",\n            \"AUD\",\n            \"AWG\",\n            \"AZN\",\n            \"BAM\",\n            \"BBD\",\n            \"BDT\",\n            \"BGN\",\n            \"BIF\",\n            \"BMD\",\n            \"BND\",\n            \"BOB\",\n            \"BRL\",\n            \"BSD\",\n            \"BWP\",\n            \"BZD\",\n            \"CAD\",\n            \"CDF\",\n            \"CHF\",\n            \"CLP\",\n            \"CNY\",\n            \"COP\",\n            \"CRC\",\n            \"CVE\",\n            \"CZK\",\n            \"DJF\",\n            \"DKK\",\n            \"DOP\",\n            \"DZD\",\n            \"EGP\",\n            \"ETB\",\n            \"EUR\",\n            \"FJD\",\n            \"FKP\",\n            \"GBP\",\n            \"GEL\",\n            \"GIP\",\n            \"GMD\",\n            \"GNF\",\n            \"GTQ\",\n            \"GYD\",\n            \"HKD\",\n            \"HNL\",\n            \"HRK\",\n            \"HTG\",\n            \"HUF\",\n            \"IDR\",\n            \"ILS\",\n            \"INR\",\n            \"ISK\",\n            \"JMD\",\n            \"JPY\",\n            \"KES\",\n            \"KGS\",\n            \"KHR\",\n            \"KMF\",\n            \"KRW\",\n            \"KYD\",\n            \"KZT\",\n            \"LAK\",\n            \"LBP\",\n            \"LKR\",\n            \"LRD\",\n            \"LSL\",\n            \"MAD\",\n            \"MDL\",\n            \"MGA\",\n            \"MKD\",\n            \"MNT\",\n            \"MOP\",\n            \"MRO\",\n            \"MUR\",\n            \"MVR\",\n            \"MWK\",\n            \"MXN\",\n            \"MYR\",\n            \"MZN\",\n            \"NAD\",\n            \"NGN\",\n            \"NIO\",\n            \"NOK\",\n            \"NPR\",\n            \"NZD\",\n            \"PAB\",\n            \"PEN\",\n            \"PGK\",\n            \"PHP\",\n            \"PKR\",\n            \"PLN\",\n            \"PYG\",\n            \"QAR\",\n            \"RON\",\n            \"RSD\",\n            \"RUB\",\n            \"RWF\",\n            \"SAR\",\n            \"SBD\",\n            \"SCR\",\n            \"SEK\",\n            \"SGD\",\n            \"SHP\",\n            \"SLL\",\n            \"SOS\",\n            \"SRD\",\n            \"STD\",\n            \"SVC\",\n            \"SZL\",\n            \"THB\",\n            \"TJS\",\n            \"TOP\",\n            \"TRY\",\n            \"TTD\",\n            \"TWD\",\n            \"TZS\",\n            \"UAH\",\n            \"UGX\",\n            \"USD\",\n            \"UYU\",\n            \"UZS\",\n            \"VND\",\n            \"VUV\",\n            \"WST\",\n            \"XAF\",\n            \"XCD\",\n            \"XOF\",\n            \"XPF\",\n            \"YER\",\n            \"ZAR\",\n            \"ZMW\"\n        ],\n        \"payment_method_types\": {\n            \"VISA\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"MASTERCARD\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"AMEX\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"JCB\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DISCOVER\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DINERS\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            }\n        },\n        \"payment_method_types_moto\": {\n            \"VISA\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"MASTERCARD\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"AMEX\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"JCB\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DISCOVER\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            },\n            \"DINERS\": {\n                \"features\": [\n                    \"AUTHORISE\",\n                    \"AUTHORISE_AND_SAVE_TOKEN\",\n                    \"AUTHORISE_ON_SAVED_TOKEN\",\n                    \"PAYMENT\",\n                    \"COMPLETE_AUTHORISATION\",\n                    \"PAYMENT_AND_SAVE_TOKEN\",\n                    \"PAYMENT_ON_SAVED_TOKEN\",\n                    \"SAVE_CARD\",\n                    \"FULL_REFUND\",\n                    \"PARTIAL_REFUND\",\n                    \"MULTI_REFUND\",\n                    \"CAPTURE\",\n                    \"VOID\"\n                ]\n            }\n        }\n    }\n}"}],"_postman_id":"f1cc8a46-fdd7-41f5-880d-724d7c0873f1"},{"name":"Get a workflow connection status","id":"e1d77695-b2e3-42ff-963c-55b25764e9d4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/workflows/{{workflow_id}}/connection","description":"<p>This endpoint will attempt to reach the processor using the credentials configured on the workflow.</p>\n<p>Request: \n<code>workflow_id</code> is our ID or your ID for the workflow (<code>id</code> or <code>code</code>)</p>\n<p>Response:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>our ID for the workflow</td>\n</tr>\n<tr>\n<td><code>connection_status</code></td>\n<td>the status of the connection attempt, see below</td>\n</tr>\n<tr>\n<td><code>connection_status_date</code></td>\n<td>the date/time the connection was made, this should be \"now\" however in some circumstances may returned a  cached value - in which case this is the time the connection was made.</td>\n</tr>\n<tr>\n<td><code>connection_message</code></td>\n<td>if a connection could not be established, an error message</td>\n</tr>\n</tbody>\n</table>\n</div><p>Where <code>connection_status</code> is one of:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>OK</code></td>\n<td>a connection could be made to the gateway using the configured credentials</td>\n</tr>\n<tr>\n<td><code>FAILED</code></td>\n<td>a connection could NOT be made to the gateway using the configured credentials</td>\n</tr>\n<tr>\n<td><code>UNKNOWN</code></td>\n<td>the connection could not be tested</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","workflows","{{workflow_id}}","connection"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[{"id":"5aef95c9-cb62-4085-a20a-43c91480e2f8","name":"Get a gateway connection status","originalRequest":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/gateways/{{gateway_id}}/connection"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=utf-8","enabled":true},{"key":"Content-Length","value":"104","enabled":true},{"key":"Connection","value":"keep-alive","enabled":true},{"key":"Date","value":"Fri, 03 Jul 2020 15:56:22 GMT","enabled":true},{"key":"Server","value":"Apache","enabled":true},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubdomains;","enabled":true},{"key":"Access-Control-Allow-Headers","value":"Authorization, Host, User-Agent, Accept, X-Requested-With, Content-Type, Access-Control-Allow-Origin","enabled":true},{"key":"Access-Control-Allow-Origin","value":"*","enabled":true},{"key":"X-Content-Type-Options","value":"nosniff","enabled":true},{"key":"ETag","value":"W/\"73-ec2ade48-gzip\"","enabled":true},{"key":"Content-Encoding","value":"gzip","enabled":true},{"key":"Vary","value":"Accept-Encoding","enabled":true},{"key":"X-Cache","value":"Miss from cloudfront","enabled":true},{"key":"Via","value":"1.1 af82af67460d4533dad2305c32467799.cloudfront.net (CloudFront)","enabled":true},{"key":"X-Amz-Cf-Pop","value":"LHR61-C2","enabled":true},{"key":"X-Amz-Cf-Id","value":"WBQdN_qeP7vZP865m9QBYQ7MWXQqkwoFrbfevnVk0IVG-a1FvtWeag==","enabled":true}],"cookie":[],"responseTime":null,"body":"{\n    \"connection\": {\n        \"id\": \"gw_11842_10000\",\n        \"connection_status\": \"OK\",\n        \"connection_status_date\": \"2020-07-03T15:56:22.154Z\"\n    }\n}"}],"_postman_id":"e1d77695-b2e3-42ff-963c-55b25764e9d4"},{"name":"Get a workflow settings","id":"795c0fc2-6495-4c71-97e5-aa0d57af6624","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.shuttleglobal.com/c/api/instances/{{instance_id}}/workflows/{{workflow_id}}/settings","description":"<p>COMING SOON</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}},"urlObject":{"protocol":"https","path":["c","api","instances","{{instance_id}}","workflows","{{workflow_id}}","settings"],"host":["app","shuttleglobal","com"],"query":[],"variable":[]}},"response":[],"_postman_id":"795c0fc2-6495-4c71-97e5-aa0d57af6624"}],"id":"90e5c2b5-f70f-41f2-a691-81bb0b08c347","_postman_id":"90e5c2b5-f70f-41f2-a691-81bb0b08c347","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","name":"API","type":"folder"}}},{"name":"Error Codes","item":[],"id":"4fb80953-b426-47b4-85b7-0a4bb601b86d","description":"<p>The below table lists the various error codes you may receive from the API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>code</th>\n<th>comment</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>NOT_MODIFIED</td>\n<td>The instruction did not modify the object</td>\n</tr>\n<tr>\n<td>INVALID_REQUEST</td>\n<td>This request could not be understood</td>\n</tr>\n<tr>\n<td>VALIDATION_ERROR</td>\n<td>This request failed logic checks prior to performing the function</td>\n</tr>\n<tr>\n<td>INVALID_AMOUNT</td>\n<td>An invalid amount was requested</td>\n</tr>\n<tr>\n<td>NO_TRANSACTIONS_FOUND</td>\n<td>A transaction could not be found to perform this action against (eg contract refunds)</td>\n</tr>\n<tr>\n<td>UNAUTHORIZED</td>\n<td>Invalid security credentials were used</td>\n</tr>\n<tr>\n<td>INVALID_SESSION</td>\n<td>The API key is no longer valid</td>\n</tr>\n<tr>\n<td>NO_PERMISSION</td>\n<td>The API key used does not have the necessary permission to perform this function</td>\n</tr>\n<tr>\n<td>FORBIDDEN</td>\n<td>The API key used does not have the necessary permission to perform this function</td>\n</tr>\n<tr>\n<td>NOT_FOUND</td>\n<td>The requested object was not found</td>\n</tr>\n<tr>\n<td>NOT_IMPLEMENTED</td>\n<td>The endpoint / feature is not currently available (eg PUT or DELETE on certain objects)</td>\n</tr>\n<tr>\n<td>BOLT-1000</td>\n<td>(BOLT-1000) Generic BaseBoltCheckedException</td>\n</tr>\n<tr>\n<td>BOLT-1100</td>\n<td>(BOLT-1100) Internal Error: Generic ApiException encountered</td>\n</tr>\n<tr>\n<td>BOLT-1101</td>\n<td>(BOLT-1101) Failed to create your agreement</td>\n</tr>\n<tr>\n<td>BOLT-1102</td>\n<td>(BOLT-1102) Failed to retrieve your agreement, the agreement key must be invalid</td>\n</tr>\n<tr>\n<td>BOLT-1103</td>\n<td>(BOLT-1103) Failed to submit your agreement for payment processing</td>\n</tr>\n<tr>\n<td>BOLT-1104</td>\n<td>(BOLT-1104) Your username / password is incorrect</td>\n</tr>\n<tr>\n<td>BOLT-1105</td>\n<td>(BOLT-1105) You do not have permission to complete this request</td>\n</tr>\n<tr>\n<td>BOLT-1106</td>\n<td>(BOLT-1106) Internal Error: BoltOnException</td>\n</tr>\n<tr>\n<td>BOLT-1107</td>\n<td>(BOLT-1107) Internal Error: BmlPreParser experienced an error</td>\n</tr>\n<tr>\n<td>BOLT-1108</td>\n<td>(BOLT-1108) Internal Error: Invalid channel</td>\n</tr>\n<tr>\n<td>BOLT-1109</td>\n<td>(BOLT-1109) Internal Error: Failed to create charge</td>\n</tr>\n<tr>\n<td>BOLT-1110</td>\n<td>(BOLT-1110) Internal Error: Failed to retrieve the contract values</td>\n</tr>\n<tr>\n<td>BOLT-1111</td>\n<td>(BOLT-1111) Internal Error: Invalid contract</td>\n</tr>\n<tr>\n<td>BOLT-1112</td>\n<td>(BOLT-1112) Internal Error: Invalid currency data</td>\n</tr>\n<tr>\n<td>BOLT-1113</td>\n<td>(BOLT-1113) Internal Error: Failed to retrieve the descriptions</td>\n</tr>\n<tr>\n<td>BOLT-1114</td>\n<td>(BOLT-1114) Internal Error: Invalid configuration data</td>\n</tr>\n<tr>\n<td>BOLT-1115</td>\n<td>(BOLT-1115) Internal Error: Invalid legal entity</td>\n</tr>\n<tr>\n<td>BOLT-1116</td>\n<td>(BOLT-1116) Internal Error: Failed to post notification</td>\n</tr>\n<tr>\n<td>BOLT-1117</td>\n<td>(BOLT-1117) Internal Error: Invalid notification queue item</td>\n</tr>\n<tr>\n<td>BOLT-1118</td>\n<td>(BOLT-1118) Internal Error: Invalid signature from SNS</td>\n</tr>\n<tr>\n<td>BOLT-1119</td>\n<td>(BOLT-1119) Internal Error: Invalid session</td>\n</tr>\n<tr>\n<td>BOLT-1120</td>\n<td>(BOLT-1120) Sorry, your payment has failed. Please try using a different card</td>\n</tr>\n<tr>\n<td>BOLT-1121</td>\n<td>(BOLT-1121) Internal Error: Failed to create transaction</td>\n</tr>\n<tr>\n<td>BOLT-1122</td>\n<td>(BOLT-1122) Internal Error: Invalid domain</td>\n</tr>\n<tr>\n<td>BOLT-1123</td>\n<td>(BOLT-1123) Internal Error: CRM did not return an account object</td>\n</tr>\n<tr>\n<td>BOLT-1124</td>\n<td>(BOLT-1124) Your payment was taken successfully, but we encountered an error. Our staff have been notified and will deal with this shortly.</td>\n</tr>\n<tr>\n<td>BOLT-1125</td>\n<td>(BOLT-1125) Internal Error: Failed to save report part</td>\n</tr>\n<tr>\n<td>BOLT-1126</td>\n<td>(BOLT-1126) Internal Error: Failed to generate report questions</td>\n</tr>\n<tr>\n<td>BOLT-1127</td>\n<td>(BOLT-1127) Internal Error: Caught a service exception</td>\n</tr>\n<tr>\n<td>BOLT-1128</td>\n<td>(BOLT-1128) Internal Error: Failed to generate report format</td>\n</tr>\n<tr>\n<td>BOLT-1129</td>\n<td>(BOLT-1129) Internal Error: Failed to find receipt template to send</td>\n</tr>\n<tr>\n<td>BOLT-1130</td>\n<td>(BOLT-1130) Internal Error: Failed to find receiptable to issue receipt for</td>\n</tr>\n<tr>\n<td>BOLT-1131</td>\n<td>(BOLT-1131) Invalid account</td>\n</tr>\n<tr>\n<td>BOLT-1132</td>\n<td>Sorry, your card has been declined, please check your details and try again</td>\n</tr>\n<tr>\n<td>BOLT-1133</td>\n<td>Sorry, we could not contact the bank at this time, please try again (BOLT-1133)</td>\n</tr>\n<tr>\n<td>BOLT-1134</td>\n<td>Sorry, your payment has failed. Please check your details or try using a different card (BOLT-1134)</td>\n</tr>\n<tr>\n<td>BOLT-1135</td>\n<td>Sorry, your payment has failed. Please check your details or try using a different card (BOLT-1135)</td>\n</tr>\n<tr>\n<td>BOLT-1136</td>\n<td>Sorry, your payment has failed. Please check your details or try using a different card (BOLT-1136)</td>\n</tr>\n<tr>\n<td>BOLT-1137</td>\n<td>Sorry, your payment has failed. Please check your details or try using a different card (BOLT-1137)</td>\n</tr>\n<tr>\n<td>BOLT-1138</td>\n<td>Sorry, we could not contact the bank at this time, please try again (BOLT-1138)</td>\n</tr>\n<tr>\n<td>BOLT-1139</td>\n<td>(BOLT-1139) Invalid re-index request.</td>\n</tr>\n<tr>\n<td>BOLT-1140</td>\n<td>(BOLT-1140) Bad response from BoltOn.</td>\n</tr>\n<tr>\n<td>BOLT-1141</td>\n<td>Sorry, your card was not authorised (code BOLT-1141), please try another card.</td>\n</tr>\n<tr>\n<td>BOLT-1143</td>\n<td>Invalid transaction (BOLT-1143)</td>\n</tr>\n<tr>\n<td>BOLT-1144</td>\n<td>Invalid transaction status (BOLT-1144)</td>\n</tr>\n<tr>\n<td>BOLT-1145</td>\n<td>Caught unknown error (BOLT-1145)</td>\n</tr>\n<tr>\n<td>BOLT-1147</td>\n<td>Sorry, we are not able to refund this transaction as it is not fully processed in the bank yet, please try again after 24 hours (BOLT-1147)</td>\n</tr>\n<tr>\n<td>BOLT-1148</td>\n<td>Sorry, the transaction you are trying to refund is invalid (BOLT-1148)</td>\n</tr>\n<tr>\n<td>BOLT-1159</td>\n<td>Sorry, this contract has already been processed.</td>\n</tr>\n<tr>\n<td>BOLT-1160</td>\n<td>(BOLT-1160) Sorry, you are not from a country that is able to make this payment.</td>\n</tr>\n<tr>\n<td>BOLT-1167</td>\n<td>(BOLT-1167) Invalid payment method.</td>\n</tr>\n<tr>\n<td>BOLT-1168</td>\n<td>(BOLT-1168) Invalid amount.</td>\n</tr>\n<tr>\n<td>BOLT-1175</td>\n<td>You payment has been sent to the bank, but we are not able yet determine if it was successful. This will be followed up by our staff.</td>\n</tr>\n<tr>\n<td>BOLT-1176</td>\n<td>Sorry, but your payment was declined (#boltOnMessage#). Please correct your details and retry.</td>\n</tr>\n<tr>\n<td>BOLT-1177</td>\n<td>Sorry, we’re currently experiencing a temporary issue processing your payment (#boltOnMessage#), please try again.</td>\n</tr>\n<tr>\n<td>BOLT-1178</td>\n<td>Sorry, we’re currently unable to process your payment due to a technical issue, please try again later or try a different payment method.</td>\n</tr>\n<tr>\n<td>BOLT-1179</td>\n<td>Sorry, your details were correct, but the payment was declined by your bank (#boltOnMessage#). Please contact your bank to resolve this issue, or try a different payment method.</td>\n</tr>\n<tr>\n<td>BOLT-1180</td>\n<td>Sorry, your details were correct, but this card has been blocked (#boltOnMessage#). Please try a different payment method.</td>\n</tr>\n<tr>\n<td>BOLT-1181</td>\n<td>(BOLT-1181) Invalid currency.</td>\n</tr>\n<tr>\n<td>BOLT-1182</td>\n<td>Internal error BOLT-1182.</td>\n</tr>\n<tr>\n<td>BOLT-1183</td>\n<td>Internal error BOLT-1183.</td>\n</tr>\n<tr>\n<td>BOLT-1184</td>\n<td>Internal error BOLT-1184.</td>\n</tr>\n<tr>\n<td>BOLT-1185</td>\n<td>Internal error BOLT-1185.</td>\n</tr>\n<tr>\n<td>BOLT-1186</td>\n<td>(BOLT-1186) Anonymous is disabled.</td>\n</tr>\n<tr>\n<td>BOLT-1187</td>\n<td>(BOLT-1187) Registration is disabled.</td>\n</tr>\n<tr>\n<td>BOLT-1189</td>\n<td>Your card details are not available to the processor for this payment, please select another card or re-enter details.</td>\n</tr>\n<tr>\n<td>BOLT-1191</td>\n<td>Duplicate contract #contractId#</td>\n</tr>\n<tr>\n<td>BOLT-1192</td>\n<td>This payment method is not available.</td>\n</tr>\n<tr>\n<td>BOLT-1193</td>\n<td>Could not resolve card number to a supported card type.</td>\n</tr>\n<tr>\n<td>BOLT-1194</td>\n<td>Duplicate paymentMethod #paymentMethodId#</td>\n</tr>\n<tr>\n<td>BOLT-1195</td>\n<td>Invalid gateway</td>\n</tr>\n<tr>\n<td>BOLT-1196</td>\n<td>Tokenisation not supported by this gateway integration</td>\n</tr>\n<tr>\n<td>BOLT-1200</td>\n<td>Validation error</td>\n</tr>\n<tr>\n<td>BOLT-2000</td>\n<td>(BOLT-2000) Internal Error: Generic internal BoltOnException encountered</td>\n</tr>\n<tr>\n<td>BOLT-2001</td>\n<td>(BOLT-2001) Internal Error: BoltOn facade not available</td>\n</tr>\n<tr>\n<td>BOLT-2002</td>\n<td>(BOLT-2002) Internal Error: External BoltOnException encountered</td>\n</tr>\n<tr>\n<td>BOLT-2003</td>\n<td>(BOLT-2003) Internal Error: Bad response from BoltOn</td>\n</tr>\n<tr>\n<td>BOLT-2004</td>\n<td>(BOLT-2004) Internal Error: Currency not supported</td>\n</tr>\n<tr>\n<td>BOLT-2005</td>\n<td>(BOLT-2005) Internal Error: Invalid BoltOn</td>\n</tr>\n<tr>\n<td>BOLT-2006</td>\n<td>(BOLT-2006) Internal Error: BoltOn Timeout</td>\n</tr>\n<tr>\n<td>BOLT-3000</td>\n<td>(BOLT-3000) Generic BoltOnException encountered</td>\n</tr>\n<tr>\n<td>BOLT-3001</td>\n<td>(BOLT-3001) Internal Error: Failed to post notification</td>\n</tr>\n<tr>\n<td>BOLT-3002</td>\n<td>(BOLT-3002) Internal Error: No HTTP response received posting notification</td>\n</tr>\n<tr>\n<td>BOLT-3003</td>\n<td>(BOLT-3003) Internal Error: HTTP error posting notification</td>\n</tr>\n<tr>\n<td>BOLT-3004</td>\n<td>(BOLT-3004) Internal Error: Bad request received from Core</td>\n</tr>\n<tr>\n<td>BOLT-3005</td>\n<td>(BOLT-3005) Internal Error: Invalid BoltOn credentials</td>\n</tr>\n<tr>\n<td>BOLT-3006</td>\n<td>(BOLT-3006) Internal Error: ApiException returned from Core</td>\n</tr>\n<tr>\n<td>BOLT-3007</td>\n<td>(BOLT-3007) Internal Error: Failed to format currency via API</td>\n</tr>\n<tr>\n<td>BOLT-3008</td>\n<td>(BOLT-3008) Internal Error: Call into Core API failed</td>\n</tr>\n<tr>\n<td>BOLT-3009</td>\n<td>(BOLT-3009) Internal Error: User does not exist in the CRM</td>\n</tr>\n<tr>\n<td>BOLT-3010</td>\n<td>Looks like you''ve already got an account</td>\n</tr>\n<tr>\n<td>BOLT-3033</td>\n<td>This email is already registered for another account</td>\n</tr>\n<tr>\n<td>BOLT-3011</td>\n<td>Looks like we're having some problems, please try again in a few minutes (BOLT-3011)</td>\n</tr>\n<tr>\n<td>BOLT-3012</td>\n<td>(BOLT-3012) Internal Error: Generic Exception caught</td>\n</tr>\n<tr>\n<td>BOLT-3013</td>\n<td>(BOLT-3013) Internal Error: Bad (HTTP) CRM request</td>\n</tr>\n<tr>\n<td>BOLT-3014</td>\n<td>(BOLT-3014) Internal Error: Failed to post audit notification back into Core</td>\n</tr>\n<tr>\n<td>BOLT-3015</td>\n<td>Sorry, we could not register you, please check your details and try again. (BOLT-3015)</td>\n</tr>\n<tr>\n<td>BOLT-3016</td>\n<td>(BOLT-3016) Internal Error: CRM returned a bad response</td>\n</tr>\n<tr>\n<td>BOLT-3017</td>\n<td>(BOLT-3017) Internal Error: Call to Bolt On not implemented</td>\n</tr>\n<tr>\n<td>BOLT-3018</td>\n<td>(BOLT-3018) Internal Error: Failed to retrieve event information</td>\n</tr>\n<tr>\n<td>BOLT-3019</td>\n<td>(BOLT-3019) Internal Error: Failed to parse/decode event information</td>\n</tr>\n<tr>\n<td>BOLT-3020</td>\n<td>(BOLT-3020) Internal Error: Not all the information required by the BoltOn was sent</td>\n</tr>\n<tr>\n<td>BOLT-3021</td>\n<td>(BOLT-3021) Internal Error: Failed to retrieve output format config</td>\n</tr>\n<tr>\n<td>BOLT-3022</td>\n<td>(BOLT-3022) Username / password combination invalid</td>\n</tr>\n<tr>\n<td>BOLT-3023</td>\n<td>(BOLT-3023) CRM reporting invalid password</td>\n</tr>\n<tr>\n<td>BOLT-3024</td>\n<td>(BOLT-3024) Your session has expired within the CRM</td>\n</tr>\n<tr>\n<td>BOLT-3025</td>\n<td>(BOLT-3025) Your email is invalid</td>\n</tr>\n<tr>\n<td>BOLT-3026</td>\n<td>(BOLT-3026) Your \"password token\" is invalid witin the CRM</td>\n</tr>\n<tr>\n<td>BOLT-3027</td>\n<td>(BOLT-3027) Your account is currently locked out</td>\n</tr>\n<tr>\n<td>BOLT-7000</td>\n<td>(BOLT-7000) Generic ServiceException encountered</td>\n</tr>\n<tr>\n<td>BOLT-7001</td>\n<td>(BOLT-7001) Internal Error: BoltOnException encountered</td>\n</tr>\n<tr>\n<td>BOLT-7002</td>\n<td>(BOLT-7002) Internal Error: Invalid client</td>\n</tr>\n<tr>\n<td>BOLT-7003</td>\n<td>(BOLT-7003) Internal Error: Invalid session</td>\n</tr>\n<tr>\n<td>BOLT-7004</td>\n<td>(BOLT-7004) Internal Error: Failed to create contract</td>\n</tr>\n<tr>\n<td>BOLT-7005</td>\n<td>(BOLT-7005) Internal Error: Failed to create transaction</td>\n</tr>\n<tr>\n<td>BOLT-7006</td>\n<td>(BOLT-7006) Internal Error: Failed to create charge</td>\n</tr>\n<tr>\n<td>BOLT-7007</td>\n<td>(BOLT-7007) Internal Error: Invalid agreement</td>\n</tr>\n<tr>\n<td>BOLT-7008</td>\n<td>(BOLT-7008) Internal Error: Bad receipt id format</td>\n</tr>\n<tr>\n<td>BOLT-7009</td>\n<td>(BOLT-7009) Internal Error: No transaction available parsing receipt</td>\n</tr>\n<tr>\n<td>BOLT-7010</td>\n<td>(BOLT-7010) Internal Error: Failed to process transaction with gateway</td>\n</tr>\n<tr>\n<td>BOLT-7011</td>\n<td>(BOLT-7011) Internal Error: Your payment was taken successfully, but an error occurred. This has been referred to our staff for urgent resolution.</td>\n</tr>\n<tr>\n<td>BOLT-7012</td>\n<td>(BOLT-7012) Internal Error: Failed to create a request out to the BoltOn</td>\n</tr>\n<tr>\n<td>BOLT-7013</td>\n<td>(BOLT-7013) Internal Error: Failed to generate the report format</td>\n</tr>\n<tr>\n<td>BOLT-7014</td>\n<td>(BOLT-7014) Internal Error: Failed to encrypt the data</td>\n</tr>\n<tr>\n<td>BOLT-7015</td>\n<td>(BOLT-7015) Internal Error: Failed to decrypt some data</td>\n</tr>\n<tr>\n<td>BOLT-7016</td>\n<td>(BOLT-7016) Internal Error: Failed to extend your session</td>\n</tr>\n<tr>\n<td>BOLT-7017</td>\n<td>(BOLT-7017) Internal Error: Failed to audit your activity</td>\n</tr>\n<tr>\n<td>BOLT-7018</td>\n<td>(BOLT-7018) Internal Error: Failed to retrieve item from the cache</td>\n</tr>\n<tr>\n<td>BOLT-7019</td>\n<td>(BOLT-7019) Internal Error: Failed to add item to the cache</td>\n</tr>\n<tr>\n<td>BOLT-7020</td>\n<td>(BOLT-7020) Internal Error: The selected payment method does not exist</td>\n</tr>\n<tr>\n<td>BOLT-7021</td>\n<td>(BOLT-7021) Internal Error: Failed to parse a freemarker template: #message#</td>\n</tr>\n<tr>\n<td>BOLT-7022</td>\n<td>(BOLT-7022) Internal Error: Failed to send email</td>\n</tr>\n<tr>\n<td>BOLT-7023</td>\n<td>(BOLT-7023) Sorry, there was a problem saving the file.</td>\n</tr>\n<tr>\n<td>BOLT-7024</td>\n<td>(BOLT-7024) Sorry, there was a problem retrieving the file.</td>\n</tr>\n<tr>\n<td>BOLT-7025</td>\n<td>(BOLT-7025) Internal Error: Failed to clone the payment path</td>\n</tr>\n<tr>\n<td>BOLT-7026</td>\n<td>(BOLT-7026) Internal Error: Failed to process refund. Parent transaction is locked.</td>\n</tr>\n<tr>\n<td>BOLT-7027</td>\n<td>(BOLT-7027) Internal Error: Failed to process refund. Payment BoltOn failed.</td>\n</tr>\n<tr>\n<td>BOLT-7028</td>\n<td>(BOLT-7028) Internal Error: Failed to process refund. Validation failed unexpectedly.</td>\n</tr>\n<tr>\n<td>BOLT-7029</td>\n<td>(BOLT-7029) Internal Error: Failed to process refund. Transaction parts allocation failed.</td>\n</tr>\n<tr>\n<td>BOLT-7030</td>\n<td>(BOLT-7030) Internal Error: No Permission.</td>\n</tr>\n<tr>\n<td>BOLT-7063</td>\n<td>(BOLT-7063) Sorry, the email address has now been reassigned to a new user.</td>\n</tr>\n<tr>\n<td>BOLT-7066</td>\n<td>(BOLT-7066) An invalid response was received</td>\n</tr>\n<tr>\n<td>BOLT-7067</td>\n<td>(BOLT-7067) An HTTP error occured</td>\n</tr>\n<tr>\n<td>BOLT-7068</td>\n<td>(BOLT-7068) An error occured on Amazon Web Services</td>\n</tr>\n<tr>\n<td>BOLT-7078</td>\n<td>(BOLT-7078) Your user has no permission to save that data</td>\n</tr>\n<tr>\n<td>BOLT-7079</td>\n<td>(BOLT-7079) This content is restricted</td>\n</tr>\n<tr>\n<td>BOLT-7081</td>\n<td>(BOLT-7081) There is not currently anything you can pay towards.</td>\n</tr>\n<tr>\n<td>BOLT-7082</td>\n<td>(BOLT-7082) Object not found.</td>\n</tr>\n<tr>\n<td>BOLT-7084</td>\n<td>(BOLT-7084) Payment method not supported.</td>\n</tr>\n<tr>\n<td>BOLT-7085</td>\n<td>(BOLT-7085) There was an internal problem routing your transaction.</td>\n</tr>\n<tr>\n<td>BOLT-7185</td>\n<td>(BOLT-7185) There was an internal problem routing your transaction (archived gateway).</td>\n</tr>\n<tr>\n<td>BOLT-7094</td>\n<td>(BOLT-7094) Cannot authorise the transaction.</td>\n</tr>\n<tr>\n<td>BOLT-7097</td>\n<td>(BOLT-7097) 3D Secure error</td>\n</tr>\n<tr>\n<td>BOLT-7099</td>\n<td>(BOLT-7099) There is not currently anything you can pay towards.</td>\n</tr>\n<tr>\n<td>BOLT-7100</td>\n<td>(BOLT-7100) We encountered an issue (#errorType.HostedPaymentUrlError#).</td>\n</tr>\n<tr>\n<td>BOLT-7101</td>\n<td>(BOLT-7101) Could not load hosted create token url (#errorType.HostedCreateTokenUrlError#).</td>\n</tr>\n<tr>\n<td>BOLT-8000</td>\n<td>(BOLT-8000) Generic TaxServiceException encountered</td>\n</tr>\n<tr>\n<td>BOLT-8001</td>\n<td>(BOLT-8001) Internal Error: Failed to apply tax rules</td>\n</tr>\n<tr>\n<td>BOLT-9000</td>\n<td>(BOLT-9000) Generic ValidationException encountered</td>\n</tr>\n<tr>\n<td>BOLT-9002</td>\n<td>(BOLT-9002) Invalid refund request.</td>\n</tr>\n<tr>\n<td>BOLT-9003</td>\n<td>(BOLT-9003) Invalid refund amount.</td>\n</tr>\n<tr>\n<td>BOLT-9004</td>\n<td>(BOLT-9004) Invalid reason.</td>\n</tr>\n<tr>\n<td>BOLT-9005</td>\n<td>(BOLT-9005) Invalid transaction for refund.</td>\n</tr>\n<tr>\n<td>BOLT-9006</td>\n<td>(BOLT-9006) Refund unsupported by BoltOn.</td>\n</tr>\n<tr>\n<td>BOLT-9007</td>\n<td>(BOLT-9007) Duplicated transaction found in refund request.</td>\n</tr>\n<tr>\n<td>BOLT-9008</td>\n<td>(BOLT-9008) Could not find BoltOn in parent transaction.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"31e97960-4c8c-4aa9-8fce-473b880c2d10","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"3abd2142-0bab-4414-9c7c-e1dd1d6b7a8f","type":"text/javascript","exec":[""]}}],"_postman_id":"4fb80953-b426-47b4-85b7-0a4bb601b86d"}],"id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b","description":"<h3 id=\"base-url\">Base URL</h3>\n<p>The base URL for all endpoints, is:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>https://app.shuttleglobal.com/c/api/instances/{{instance_id}}\n\n</code></pre><p>Where <code>{{instance_id}}</code> is the unique identifier you used for the client / account during onboarding.</p>\n<p><em>Note: This API only accepts secure requests under</em> <em><strong>https</strong></em>__<em>.</em></p>\n<h3 id=\"authentication\">Authentication</h3>\n<p>There are two types of authentication,</p>\n<ul>\n<li><strong>Standard</strong>: Intended for server to server communication for shared hosting providers. Your server will be configured with a <code>secret_key</code> which will be passed on all requests in the authorisation header, as such:</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>Authorization: Basic ${base64(secret_key + \":\")}\n\n</code></pre><ul>\n<li><strong>Instance Authentication</strong>: Intended for applications that are installed in a client environment. In these scenarios it is not safe to place your applications' secret_key on the client's server, and you don't want to proxy every request via your own server. Your server will just need to be involved for a single call to create the <code>instance</code> on which you can create an instance specific <code>instance.secret_key</code>. You can then pass that on the API with the application's <code>shared_key</code>. Using this mechanism you will only be able to access APIs under <code>/api/instances/:instance/\\\\*</code></li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>Authorization: Basic ${base64(application.shared_key + \":\" + instance.secret_key)}\n\n</code></pre><h3 id=\"list-apis\">List APIs</h3>\n<p>List APIs allow you to pass a search criteria and order clause.</p>\n<p>Where <code>criteria</code>:</p>\n<ul>\n<li><p>Supports operators:</p>\n<ul>\n<li><p><code>!=</code>, <code>&gt;=</code>, <code>&gt;</code>, <code>&lt;</code>, <code>&lt;=</code></p>\n</li>\n<li><p><code>=</code>: exact match, separate multiple values with <code>;</code> for IN</p>\n</li>\n<li><p><code>~=</code>: partial match</p>\n</li>\n<li><p><code>&lt;&gt;</code>: between, separate values with <code>;</code> ie <code>&lt;&gt;min;max</code></p>\n</li>\n<li><p><code>!</code>: is null</p>\n</li>\n<li><p><code>!!</code>: is not null</p>\n</li>\n</ul>\n</li>\n<li><p>Separate multiple criteria with <code>,</code></p>\n</li>\n<li><p>Strings are case insensitive (some exceptions apply)</p>\n</li>\n<li><p>Booleans are Y/N (TIP: we recommend checking for <code>=Y</code> or <code>!=Y</code> as some objects treat false as null)</p>\n</li>\n<li><p>Example:</p>\n<ul>\n<li><p><code>status=ACTIVE;FAILING</code></p>\n</li>\n<li><p><code>status=ACTIVE;FAILING,email=dave@gmail.com</code></p>\n</li>\n<li><p><code>scheduler=Y</code></p>\n</li>\n</ul>\n</li>\n<li><p>URL escape the criteria:</p>\n<ul>\n<li><code>criteria=status=ACTIVE;FAILING,email=dave@gmail.com</code></li>\n</ul>\n</li>\n</ul>\n<p>Where <code>order</code>:</p>\n<ul>\n<li><p>Supports any field criteria supports</p>\n</li>\n<li><p>Defaults to <code>created:desc</code></p>\n</li>\n<li><p>Will order <code>asc</code> unless you specify <code>desc</code></p>\n</li>\n<li><p>Separate order field with <code>,</code></p>\n</li>\n<li><p>Example:</p>\n<ul>\n<li><p><code>order=updated</code></p>\n</li>\n<li><p><code>order=updated;desc</code></p>\n</li>\n<li><p><code>order=status,updated;desc</code></p>\n</li>\n</ul>\n</li>\n</ul>\n<h3 id=\"nested-object-expansion\">Nested Object Expansion</h3>\n<p>Many objects allow you to \"expand\" a referenced object on GET and LIST apis. The list of fields that can be expanded are on the docs GET object API and can be expanded passing expand and a csv list of field names eg:<br /><code>?expand=field1,field2</code>  </p>\n<p>You can also expand nested fields, using a dot syntax nest</p>\n<p><code>?expand=field1.subfield1</code>  </p>\n<p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>GET .../payment_gateways/pg_123_456\n{\n  payment_gateway: {\n    id: \"pg_123_456\", \n    ...\n    updated_session: \"ses_123_78634\"\n  }\n}\nGET .../payment_gateways/pg_123_456?expand=updated_session\n{\n  payment_gateway: {\n    id: \"pg_123_456\", \n    ...\n    updated_session: {\n      id: \"ses_123_78634\",\n      ...\n      \"user\": \"user_123_567\"\n    }\n  }\n}\nGET .../payment_gateways/pg_123_456?expand=updated_session.user\n{\n  payment_gateway: {\n    id: \"pg_123_456\", \n    ...\n    updated_session: {\n      id: \"ses_123_78634\",\n      ...\n      \"user\": { \n         id: \"user_123_567\",\n         ...\n       }\n    }\n  }\n}\n\n</code></pre>","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{session_key}}"},{"key":"password","value":"<password>"}]},"isInherited":false},"event":[{"listen":"prerequest","script":{"id":"b8d450a9-8a10-45db-b5e0-f9e69fd5c2ff","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"947096a7-b67d-4d0d-9d0c-80adbe8971d7","type":"text/javascript","exec":[""]}}],"_postman_id":"a258cf7f-84d5-416c-b434-a8aeafb5c32b"},{"name":"Webhooks","item":[{"name":"Security","item":[],"id":"b9f69de0-7097-44a7-ae4b-4e3949f673c6","description":"<p>All webhooks will come from one of the following IP addresses:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>52.51.86.26\n54.229.12.118\n54.76.31.104\n34.252.246.134\n</code></pre><p>Webhooks must be to a HTTPS target on port 443. </p>\n<p>Webhooks do not contain any sensitive information, if you wish to see the objects being referred to you must fetch them via the API using your API credentials.</p>\n","event":[{"listen":"prerequest","script":{"id":"f4f98e62-3cdf-4a4d-8440-2c52e81143b4","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"fe3514ed-ce32-4475-9b84-c29f53bc599c","type":"text/javascript","exec":[""]}}],"_postman_id":"b9f69de0-7097-44a7-ae4b-4e3949f673c6"},{"name":"Retry Policy ","item":[],"id":"11b62c0e-e5ed-4b20-8891-1f784750a5d0","description":"<p>A webhook that returns HTTP 200 will be considered successful.</p>\n<p>You can activate a webhook retry policy using the following syntax when defining your webhook URL in the developer portal. All retries / failovers are after 1 minute delay. </p>\n<ul>\n<li><code>|</code>: sets the number of attempts, eg <code>target|3</code> (attempt 3 times)</li>\n<li><code>&gt;</code>:  failover to a second URL, eg <code>targetA&gt;targetB</code> (attempt targetA, then attempt targetB)</li>\n<li><code>,</code>: send a webhook to multiple destinations eg <code>targetA,targetB</code> (sent to targetA AND targetB)</li>\n</ul>\n<p>Examples (where targetA=<code>https://postb.in/b/aaa</code>, and targetB=<code>https://postb.in/b/bbb</code>):</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Example</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>targetA</code></td>\n<td>send the webhook to targetA</td>\n</tr>\n<tr>\n<td><code>targetA|2</code></td>\n<td>send the webhook to targetA, if a HTTP 200 result not returned, try again 1 minute later</td>\n</tr>\n<tr>\n<td><code>targetA|120</code></td>\n<td>send the webhook to targetA every minute until successful for 2 hours</td>\n</tr>\n<tr>\n<td><code>targetA&gt;targetB</code></td>\n<td>send the webhook to targetA, if fail send to targetB after 1 minute</td>\n</tr>\n<tr>\n<td><code>targetA&gt;targetB&gt;targetC</code></td>\n<td>send the webhook to targetA, then targetB, then targetC (etc)</td>\n</tr>\n<tr>\n<td><code>targetA|60&gt;targetB|5</code></td>\n<td>send the webhook to targetA every minute for an hour then failover to targetB for 5 minutes</td>\n</tr>\n<tr>\n<td><code>targetA,targetB</code></td>\n<td>send the webhook to targetA and targetB</td>\n</tr>\n<tr>\n<td><code>targetA|60,targetB|60</code></td>\n<td>send the webhook to targetA for up to an hour and targetB for up to an hour</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>Note: Retries are DISABLED in the sandbox environment.</p>\n</blockquote>\n","event":[{"listen":"prerequest","script":{"id":"2d8d8c2a-5c07-476d-9966-63f0644a4f43","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"2aa41476-4980-42c3-8320-35bbdb1fe3d1","type":"text/javascript","exec":[""]}}],"_postman_id":"11b62c0e-e5ed-4b20-8891-1f784750a5d0"},{"name":"Deprecations","item":[],"id":"2d08c2d0-f195-4d62-8c2a-ff07a45a03cf","description":"<p>You should handle webhook deprecations. Some webhooks may be replaced over time, these will be marked as <code>deprecated</code> with a date. You should ignore all deprecated webhooks with a date prior to your integration date, and also log all deprecation notifications for your developers. In general deprecations will be maintained for a period of 12 months. </p>\n<p>For example:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT.SUCCESS\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"payment\": \"pay_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\",\n    \"deprecated\": \"2020-04-01T00:00:00.000Z\",\n    \"deprecated_comment\": \"This is for a capture and has been replaced by CAPTURE.SUCCESS\"\n}\n</code></pre>","event":[{"listen":"prerequest","script":{"id":"c95724f3-f851-4652-8996-f651b24ff34d","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"31ff3fb4-2988-45f9-9738-4476b8208216","type":"text/javascript","exec":[""]}}],"_postman_id":"2d08c2d0-f195-4d62-8c2a-ff07a45a03cf"},{"name":"ACCOUNT.CREATED","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"d6941772-fa0c-48a4-9a2c-464958ee4184","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"ACCOUNT.CREATED\",\n    \"account\": \"acc_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a new account is created, please note all payments are against an account, so will may receive this per payment instruction if you are not passing an account identifier through on the API (as will will create a unique account object per payment)</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>ACCOUNT.CREATED</code></td>\n</tr>\n<tr>\n<td><code>account</code></td>\n<td>the account this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"d6941772-fa0c-48a4-9a2c-464958ee4184"},{"name":"ACCOUNT.UPDATE","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"26154e69-ab23-4b7e-a74a-e2cdd97e7aaf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"ACCOUNT.UPDATE\",\n    \"account\": \"acc_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an existing account is updated.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>ACCOUNT.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>account</code></td>\n<td>the account this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"26154e69-ab23-4b7e-a74a-e2cdd97e7aaf"},{"name":"CAPTURE.SUCCESS","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"808ea9e2-bd2a-43d4-9107-879c52fb68fe","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CAPTURE.SUCCESS\",\n    \"capture\": \"ca_11842_10010\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an authorisation was captured successfully. This only applies to AUTH / CAPTURE scenarios, not where the AUTH and CAPTURE are at the same time.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CAPTURE.SUCCESS</code></td>\n</tr>\n<tr>\n<td><code>capture</code></td>\n<td>is the capture transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the authorisation transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"808ea9e2-bd2a-43d4-9107-879c52fb68fe"},{"name":"CAPTURE.FAILED","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"4cecef52-00e1-4745-8ab7-954d498f9c6a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CAPTURE.FAILED\",\n    \"capture\": \"ca_11842_10010\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a authorisation failed capture.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CAPTURE.FALED</code></td>\n</tr>\n<tr>\n<td><code>capture</code></td>\n<td>is the capture transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the authorisation transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"4cecef52-00e1-4745-8ab7-954d498f9c6a"},{"name":"CAPTURE.PENDING","event":[{"listen":"test","script":{"id":"fc6457d3-29a1-4221-855b-5252cc896aa6","exec":[""],"type":"text/javascript"}}],"id":"16f4c2f9-9911-46fc-b0d6-f73039f88e92","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CAPTURE.SUCCESS\",\n    \"capture\": \"ca_11842_10010\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an authorisation was instructed for capture but is still in progress, you will receive a <code>CAPTURE.SUCCESS</code> or <code>CAPTURE.FAILED</code> once the status of the capture is known.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CAPTURE.PENDING</code></td>\n</tr>\n<tr>\n<td><code>capture</code></td>\n<td>is the capture transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the authorisation transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"16f4c2f9-9911-46fc-b0d6-f73039f88e92"},{"name":"CAPTURE.UNRESOLVED","event":[{"listen":"test","script":{"id":"fc6457d3-29a1-4221-855b-5252cc896aa6","exec":[""],"type":"text/javascript"}}],"id":"5ec9db0e-a71e-4255-a76a-1b18605b8dad","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CAPTURE.SUCCESS\",\n    \"capture\": \"ca_11842_10010\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a capture is unresolved, this means it was sent to the gateway but its not clear if the capture was processed or not. Please note, Shuttle will try to automatically reconcile the transaction with the gateway immediately, then after 1 minute, and again after 15 minutes. In some cases however it will require the merchant to log into their gateway to see if the funds were received.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CAPTURE.UNRESOLVED</code></td>\n</tr>\n<tr>\n<td><code>capture</code></td>\n<td>is the capture transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the authorisation transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"5ec9db0e-a71e-4255-a76a-1b18605b8dad"},{"name":"CHARGE.CREATED","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"1152e561-dd9e-49cb-95b1-dbd9165a4b54","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CHARGE.CREATED\",\n    \"contract\": \"co_11842_10004\",\n    \"charge\": \"cg_11842_10042\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a recurring payment contract has a new charge raised.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CHARGE.CREATED</code></td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this charge belongs to</td>\n</tr>\n<tr>\n<td><code>charge</code></td>\n<td>the charge this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"1152e561-dd9e-49cb-95b1-dbd9165a4b54"},{"name":"CHARGE.UPDATE","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"4b278009-22ff-4c34-b7b2-9daedbc2cb11","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CHARGE.UPDATE\",\n    \"contract\": \"co_11842_10004\",\n    \"charge\": \"cg_11842_10042\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a recurring payment contract has a charge updated, eg the amount or due date.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CHARGE.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this charge belongs to</td>\n</tr>\n<tr>\n<td><code>charge</code></td>\n<td>the charge this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"4b278009-22ff-4c34-b7b2-9daedbc2cb11"},{"name":"CHARGE.WRITTENOFF","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"8da96580-766f-40e6-a25c-bcba8bb99805","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CHARGE.WRITTENOFF\",\n    \"contract\": \"co_11842_10004\",\n    \"charge\": \"cg_11842_10042\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent for a recurring payment contract, when the unpaid amount of a charge is voided.  If this is sent you will not receive a <code>CHARGE.COMPLETE</code>, as the charge will never be fully paid.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CHARGE.WRITTENOFF</code></td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this charge belongs to</td>\n</tr>\n<tr>\n<td><code>charge</code></td>\n<td>the charge this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"8da96580-766f-40e6-a25c-bcba8bb99805"},{"name":"CHARGE.COMPLETE","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"686bd631-2027-4c4c-b559-82f3eabb2e9b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CHARGE.COMPLETE\",\n    \"contract\": \"co_11842_10004\",\n    \"charge\": \"cg_11842_10042\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent for a recurring payment contract, when a charge is fully paid. This will not be sent if the charge is voided, you will receive a <code>CHARGE.WRITTENOFF</code>.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CHARGE.COMPLETE</code></td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this charge belongs to</td>\n</tr>\n<tr>\n<td><code>charge</code></td>\n<td>the charge this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"686bd631-2027-4c4c-b559-82f3eabb2e9b"},{"name":"CONTRACT.START","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"7608f65b-d18a-4c64-92cb-da639122669d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CONTRACT.START\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a recurring payment contract is activated successfully (by default, a contract with an initial payment will not start unless the initial payment successful)</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CONTRACT.START</code></td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"7608f65b-d18a-4c64-92cb-da639122669d"},{"name":"CONTRACT.UPDATE","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"a208f172-bc15-4355-86c1-0bfe87114283","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CONTRACT.UPDATE\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a recurring payment contract is update (eg <code>next_charge</code>, <code>payment_method</code>, <code>status</code>, <code>last_transaction</code>). Its worth noting we may fire two of these for each recurring payment, once to indicate a new charge is present (updating <code>next_charge</code>), and a second time when the new charge is paid (updating <code>last_transaction</code>).</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CONTRACT.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"a208f172-bc15-4355-86c1-0bfe87114283"},{"name":"CONTRACT.COMPLETE","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"cf4a5ff6-8798-4ea0-8a25-a8ec956549ae","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CONTRACT.COMPLETE\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a recurring payment contract status transitions to <code>COMPLETED</code>, <code>CANCELLED</code> or <code>FAILED</code>.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CONTRACT.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"cf4a5ff6-8798-4ea0-8a25-a8ec956549ae"},{"name":"CONTRACT.NOTE","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"4faa47b3-6722-416a-89bf-54c1ee57289e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CONTRACT.NOTE\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a recurring payment has a note (ie comment) added or updated.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CONTRACT.NOTE</code></td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"4faa47b3-6722-416a-89bf-54c1ee57289e"},{"name":"PAYMENT.SUCCESS","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"9760b8d0-a343-46b3-948f-796223b76331","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT.SUCCESS\",\n    \"payment\": \"pay_11842_10009\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when payment was completed successfully. This may be an AUTH or AUTH/CAPTURE.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT.SUCCESS</code></td>\n</tr>\n<tr>\n<td><code>payment</code></td>\n<td>is the payment this event refers to</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"9760b8d0-a343-46b3-948f-796223b76331"},{"name":"PAYMENT.FAILED","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"fa4898a3-8bb0-43b7-970b-32007457e087","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT.FAILED\",\n    \"payment\": \"pay_11842_10009\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a payment was declined.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT.FAILED</code></td>\n</tr>\n<tr>\n<td><code>payment</code></td>\n<td>is the payment this event refers to</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"fa4898a3-8bb0-43b7-970b-32007457e087"},{"name":"PAYMENT.PENDING","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"dea44db8-6df9-43f6-9d7a-cf87a9df5501","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT.PENDING\",\n    \"payment\": \"pay_11842_10009\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a payment has started processing, but the success status is not available yet (eg: for Direct Debit). You will receive a <code>PAYMENT.SUCCESS</code> or <code>PAYMENT.FAILED</code> webhook once completed.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT.SUCCESS</code></td>\n</tr>\n<tr>\n<td><code>payment</code></td>\n<td>is the payment this event refers to</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"dea44db8-6df9-43f6-9d7a-cf87a9df5501"},{"name":"PAYMENT.UNRESOLVED","event":[{"listen":"test","script":{"id":"d32e7160-e502-42e9-bd17-49a991d7a585","exec":[""],"type":"text/javascript"}}],"id":"cf5e1a0f-cfc2-4b0a-9b20-2f925314b409","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT.UPDATE\",\n    \"payment\": \"pay_11842_10009\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a payment is unresolved, this means it was sent to the gateway but its not clear if the transaction was processed or not. Please note, Shuttle will try to automatically reconcile the transaction with the gateway immediately, then after 1 minute, and again after 15 minutes. In some cases however it will require the merchant to log into their gateway to see if the funds were received.</p>\n<p>Once the transaction is resolved (automatically by Shuttle or manually by the user) you would then get a <code>PAYMENT.SUCCESS</code> or <code>PAYMENT.FAILED</code> webhook.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT.UNRESOLVED</code></td>\n</tr>\n<tr>\n<td><code>payment</code></td>\n<td>is the payment this event refers to</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"cf5e1a0f-cfc2-4b0a-9b20-2f925314b409"},{"name":"PAYMENT.UPDATE","event":[{"listen":"test","script":{"id":"d32e7160-e502-42e9-bd17-49a991d7a585","exec":[""],"type":"text/javascript"}}],"id":"92a6366a-5780-4686-ac72-0e113fa4ab37","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT.UPDATE\",\n    \"payment\": \"pay_11842_10009\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a payment is updated, for exampled refunded.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>payment</code></td>\n<td>is the payment this event refers to</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"92a6366a-5780-4686-ac72-0e113fa4ab37"},{"name":"PAYMENT_METHOD.SINGLEUSE","event":[{"listen":"test","script":{"id":"fae6adea-9510-476c-a70c-f46cd404a2aa","exec":[""],"type":"text/javascript","packages":{}}}],"id":"90b287b5-d87e-40a7-a3cf-17ad32e30109","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT_METHOD.SINGLEUSE\",\n    \"payment_method\": \"pm_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when payment method is created for SINGLEUSE.\nWe will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT_METHOD.SINGLEUSE</code></td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>is the payment method this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"90b287b5-d87e-40a7-a3cf-17ad32e30109"},{"name":"PAYMENT_METHOD.ACTIVE","event":[{"listen":"test","script":{"id":"fae6adea-9510-476c-a70c-f46cd404a2aa","exec":[""],"type":"text/javascript"}}],"id":"cea82e7b-f154-4bdd-a8b8-0f076163d591","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT_METHOD.ACTIVE\",\n    \"payment_method\": \"pm_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when payment method created (and saved for reuse) or transitions from PENDING to ACTIVE (saved for reuse).\nWe will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT_METHOD.ACTIVE</code></td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>is the payment method this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"cea82e7b-f154-4bdd-a8b8-0f076163d591"},{"name":"PAYMENT_METHOD.FAILED","event":[{"listen":"test","script":{"id":"fae6adea-9510-476c-a70c-f46cd404a2aa","exec":[""],"type":"text/javascript","packages":{}}}],"id":"06112a8e-e793-4548-8405-46d12af845ca","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT_METHOD.FAILED\",\n    \"payment_method\": \"pm_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when payment method transitions from PENDING to FAILED, or failed tokenisation.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT_METHOD.FAILED</code></td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>is the payment method this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"06112a8e-e793-4548-8405-46d12af845ca"},{"name":"PAYMENT_METHOD.PENDING","event":[{"listen":"test","script":{"id":"fae6adea-9510-476c-a70c-f46cd404a2aa","exec":[""],"type":"text/javascript"}}],"id":"580769b3-18c6-4110-87f9-32030eb15a21","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT_METHOD.PENDING\",\n    \"payment_method\": \"pm_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when payment method was created in a PENDING status (eg it is still being authorised).</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT_METHOD.PENDING</code></td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>is the payment method this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"580769b3-18c6-4110-87f9-32030eb15a21"},{"name":"PAYMENT_METHOD.UPDATE","event":[{"listen":"test","script":{"id":"76600c74-9d3b-4609-913b-c51a2dfa36b6","exec":[""],"type":"text/javascript"}}],"id":"5cfa2d93-8f88-4745-8da5-defb522d565b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT_METHOD.UPDATE\",\n    \"payment_method\": \"pm_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when payment method is updated. This will trigger each time the payment method is used, or updated with new details. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT_METHOD.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>is the payment method this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"5cfa2d93-8f88-4745-8da5-defb522d565b"},{"name":"PAYMENT_METHOD.ARCHIVE","event":[{"listen":"test","script":{"id":"2d083680-1739-4ae3-a3a3-81405b271db2","exec":[""],"type":"text/javascript"}}],"id":"8ee655dd-34d8-4e11-a4c4-9407c2397833","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"PAYMENT_METHOD.ARCHIVE\",\n    \"payment_method\": \"pm_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when tokenised payment method is \"deleted\". This is the transition from an ACTIVE to an INACTIVE status.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>PAYMENT_METHOD.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>is the payment method this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"8ee655dd-34d8-4e11-a4c4-9407c2397833"},{"name":"REFUND.SUCCESS","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"b081dca3-7a97-472c-807b-fcfc087d2609","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"REFUND.SUCCESS\",\n    \"refund\": \"ref_11842_10027\",\n    \"capture\": \"ca_11842_10010\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a refund was completed successfully.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>REFUND.SUCCESS</code></td>\n</tr>\n<tr>\n<td><code>refund</code></td>\n<td>is the refund transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>capture</code></td>\n<td>(optional) is the capture transaction this event refers to, if an AUTH / CAPTURE</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the payment (or initial authorisation) transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"b081dca3-7a97-472c-807b-fcfc087d2609"},{"name":"REFUND.FAILED","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"38ed0bbd-09cd-47c9-b557-58156043b8c0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"REFUND.FAILED\",\n    \"refund\": \"ref_11842_10027\",\n    \"capture\": \"ca_11842_10010\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a refund was declined. Examples include if the initial transaction was too long ago (varies gateway by gateway), or the refund has already been refunded via the gateway.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>REFUND.FAILED</code></td>\n</tr>\n<tr>\n<td><code>refund</code></td>\n<td>is the refund transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>capture</code></td>\n<td>(optional) is the capture transaction this event refers to, if an AUTH / CAPTURE</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the payment (or initial authorisation) transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"38ed0bbd-09cd-47c9-b557-58156043b8c0"},{"name":"REFUND.PENDING","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"487ed4bd-f95e-4b3f-8f1b-d66eba2a6d5c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"REFUND.PENDING\",\n    \"refund\": \"ref_11842_10027\",\n    \"capture\": \"ca_11842_10010\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a refund has started processing, but the success status is not available yet. You will receive a <code>REFUND.SUCCESS</code> or <code>REFUND.FAILED</code> webhook once completed.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>REFUND.PENDING</code></td>\n</tr>\n<tr>\n<td><code>refund</code></td>\n<td>is the refund transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>capture</code></td>\n<td>(optional) is the capture transaction this event refers to, if an AUTH / CAPTURE</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the payment (or initial authorisation) transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"487ed4bd-f95e-4b3f-8f1b-d66eba2a6d5c"},{"name":"REFUND.UNRESOLVED","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"4d45c8ed-89a9-4cf1-8874-b954ac98040c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"REFUND.PENDING\",\n    \"refund\": \"ref_11842_10027\",\n    \"capture\": \"ca_11842_10010\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a refund is unresolved, this means it was sent to the gateway but its not clear if the refund was processed or not. Please note, Shuttle will try to automatically reconcile the transaction with the gateway immediately, then after 1 minute, and again after 15 minutes. In some cases however it will require the merchant to log into their gateway to see if the funds were sent.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>REFUND.UNRESOLVED</code></td>\n</tr>\n<tr>\n<td><code>refund</code></td>\n<td>is the refund transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>capture</code></td>\n<td>(optional) is the capture transaction this event refers to, if an AUTH / CAPTURE</td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the payment (or initial authorisation) transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"4d45c8ed-89a9-4cf1-8874-b954ac98040c"},{"name":"VOID.SUCCESS","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"ceec8f1c-2997-438a-b429-6ca8da1070d9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"VOID.SUCCESS\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an authorisation was voided successfully.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>VOID.SUCCESS</code></td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the authorisation transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"ceec8f1c-2997-438a-b429-6ca8da1070d9"},{"name":"VOID.FAILED","event":[{"listen":"test","script":{"id":"9f9737fc-d697-423b-80e7-d084b163274d","exec":[""],"type":"text/javascript"}}],"id":"cac4b163-a375-4d83-9db6-6d02e056e5c0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"VOID.FAILED\",\n    \"transaction\": \"tr_11842_10009\",\n    \"contract\": \"co_11842_10004\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an authorisation failed voiding.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>VOID.FAILED</code></td>\n</tr>\n<tr>\n<td><code>transaction</code></td>\n<td>is the authorisation transaction this event refers to</td>\n</tr>\n<tr>\n<td><code>contract</code></td>\n<td>the contract this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"cac4b163-a375-4d83-9db6-6d02e056e5c0"},{"name":"CHANNEL.CREATED","event":[{"listen":"test","script":{"id":"d8794cad-4dd6-47e7-a3f4-7b909f23082d","exec":[""],"type":"text/javascript"}}],"id":"a2dc7e0f-98cb-4d3e-9563-816bdbc519ec","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CHANNEL.CREATED\",\n    \"channel\": \"ch_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a new channel is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CHANNEL.CREATED</code></td>\n</tr>\n<tr>\n<td><code>channel</code></td>\n<td>is the channel this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"a2dc7e0f-98cb-4d3e-9563-816bdbc519ec"},{"name":"CHANNEL.UPDATE","event":[{"listen":"test","script":{"id":"7b12cd89-e2e2-4870-9d21-f6b12a417d8f","exec":[""],"type":"text/javascript"}}],"id":"a6747a1d-c23e-49b5-98d4-038be2401343","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CHANNEL.UPDATE\",\n    \"channel\": \"ch_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an channel is updated. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CHANNEL.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>channel</code></td>\n<td>is the channel this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"a6747a1d-c23e-49b5-98d4-038be2401343"},{"name":"CHANNEL.ARCHIVE","event":[{"listen":"test","script":{"id":"b4fde1be-5194-453c-b1ad-c9a9b763a31f","exec":[""],"type":"text/javascript"}}],"id":"dace1e06-db05-4944-8f33-d7e77c3bc3ee","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"CHANNEL.ARCHIVE\",\n    \"channel\": \"ch_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an channel is archived. No further payments will be processed via an channel once archived. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>CHANNEL.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>channel</code></td>\n<td>is the channel this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"dace1e06-db05-4944-8f33-d7e77c3bc3ee"},{"name":"DESIGNATION.UPDATE","event":[{"listen":"test","script":{"id":"7b12cd89-e2e2-4870-9d21-f6b12a417d8f","exec":[""],"type":"text/javascript"}}],"id":"24dee02b-58a1-449e-9290-3d269e8a8b41","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"DESIGNATION.UPDATE\",\n    \"designation\": \"des_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an designation is updated. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>DESIGNATION.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>designation</code></td>\n<td>is the designation this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"24dee02b-58a1-449e-9290-3d269e8a8b41"},{"name":"DESIGNATION.ARCHIVE","event":[{"listen":"test","script":{"id":"b4fde1be-5194-453c-b1ad-c9a9b763a31f","exec":[""],"type":"text/javascript"}}],"id":"235002d0-88bd-4127-bacd-74394af2bfb6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"DESIGNATION.ARCHIVE\",\n    \"designation\": \"des_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an designation is archived. No further payments will be processed via an designation once archived. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>DESIGNATION.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>designation</code></td>\n<td>is the designation this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"235002d0-88bd-4127-bacd-74394af2bfb6"},{"name":"DESIGNATION.CREATED","event":[{"listen":"test","script":{"id":"d8794cad-4dd6-47e7-a3f4-7b909f23082d","exec":[""],"type":"text/javascript"}}],"id":"161499b1-50c9-49e4-a086-e2ce086c4f39","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"DESIGNATION.CREATED\",\n    \"designation\": \"des_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a new designation is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>DESIGNATION.CREATED</code></td>\n</tr>\n<tr>\n<td><code>designation</code></td>\n<td>is the designation this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"161499b1-50c9-49e4-a086-e2ce086c4f39"},{"name":"DESIGNATION_ROUTE.CREATED","event":[{"listen":"test","script":{"id":"d8794cad-4dd6-47e7-a3f4-7b909f23082d","exec":[""],"type":"text/javascript"}}],"id":"a9ebe975-5f4b-4ed1-9a43-a88c8e54b75f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"DESIGNATION_ROUTE.CREATED\",\n    \"designation_route\": \"dc_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a new designation route is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>DESIGNATION_ROUTE.CREATED</code></td>\n</tr>\n<tr>\n<td><code>designation_route</code></td>\n<td>is the designation route this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"a9ebe975-5f4b-4ed1-9a43-a88c8e54b75f"},{"name":"DESIGNATION_ROUTE.UPDATE","event":[{"listen":"test","script":{"id":"7b12cd89-e2e2-4870-9d21-f6b12a417d8f","exec":[""],"type":"text/javascript"}}],"id":"5d75e799-2324-4f3d-8f51-a5660a501025","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"DESIGNATION_ROUTE.UPDATE\",\n    \"designation_route\": \"dc_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an designation is updated. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>DESIGNATION_ROUTE.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>designation_route</code></td>\n<td>is the designation route this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"5d75e799-2324-4f3d-8f51-a5660a501025"},{"name":"DESIGNATION_ROUTE.ARCHIVE","event":[{"listen":"test","script":{"id":"b4fde1be-5194-453c-b1ad-c9a9b763a31f","exec":[""],"type":"text/javascript"}}],"id":"da3d1346-df6c-48ce-a76c-fbc376c98192","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"DESIGNATION_ROUTE.ARCHIVE\",\n    \"designation_route\": \"dc_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an designation is archived. No further payments will be processed via an designation once archived. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>DESIGNATION_ROUTE.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>designation_route</code></td>\n<td>is the designation route this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"da3d1346-df6c-48ce-a76c-fbc376c98192"},{"name":"GATEWAY.CREATED","event":[{"listen":"test","script":{"id":"d8794cad-4dd6-47e7-a3f4-7b909f23082d","exec":[""],"type":"text/javascript"}}],"id":"6122b253-a666-4727-b5ff-9abb766a6cde","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"GATEWAY.CREATED\",\n    \"gateway\": \"gw_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a new processor connection is made. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>GATEWAY.CREATED</code></td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>is the gateway this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"6122b253-a666-4727-b5ff-9abb766a6cde"},{"name":"GATEWAY.UPDATE","event":[{"listen":"test","script":{"id":"7b12cd89-e2e2-4870-9d21-f6b12a417d8f","exec":[""],"type":"text/javascript"}}],"id":"263f66ac-e368-4c2d-b2cf-cccabd07c241","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"GATEWAY.UPDATE\",\n    \"gateway\": \"gw_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a new processor connection is updated. </p>\n<p>Note: This <em>currently</em> will also fire every time an OAUTH access token is updated, which may be quite regularly. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>GATEWAY.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>is the gateway this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"263f66ac-e368-4c2d-b2cf-cccabd07c241"},{"name":"GATEWAY.ARCHIVE","event":[{"listen":"test","script":{"id":"b4fde1be-5194-453c-b1ad-c9a9b763a31f","exec":[""],"type":"text/javascript"}}],"id":"529ea0ff-9782-48aa-a081-d44a185bd135","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"GATEWAY.ARCHIVE\",\n    \"gateway\": \"gw_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a processor is disconnected. No further payments will be processed via a gateway once disconnected. </p>\n<p>Note: Not routing any payments to the GATEWAY is different from disconnecting it.</p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>GATEWAY.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>is the gateway this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"529ea0ff-9782-48aa-a081-d44a185bd135"},{"name":"INITIATIVE.CREATED","event":[{"listen":"test","script":{"id":"d8794cad-4dd6-47e7-a3f4-7b909f23082d","exec":[""],"type":"text/javascript"}}],"id":"c81452ee-c3dc-4b72-999c-b7899970cae5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"INITIATIVE.CREATED\",\n    \"initiative\": \"in_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a new initiative is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>INITIATIVE.CREATED</code></td>\n</tr>\n<tr>\n<td><code>initiative</code></td>\n<td>is the initiative this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"c81452ee-c3dc-4b72-999c-b7899970cae5"},{"name":"INITIATIVE.UPDATE","event":[{"listen":"test","script":{"id":"7b12cd89-e2e2-4870-9d21-f6b12a417d8f","exec":[""],"type":"text/javascript"}}],"id":"7f504765-712a-4d53-846a-3ed133d91b46","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"INITIATIVE.UPDATE\",\n    \"initiative\": \"in_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an initiative is updated. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>INITIATIVE.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>initiative</code></td>\n<td>is the initiative this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"7f504765-712a-4d53-846a-3ed133d91b46"},{"name":"INITIATIVE.ARCHIVE","event":[{"listen":"test","script":{"id":"b4fde1be-5194-453c-b1ad-c9a9b763a31f","exec":[""],"type":"text/javascript"}}],"id":"0952344e-f5be-42fc-a78e-8e89f513ad36","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"INITIATIVE.ARCHIVE\",\n    \"initiative\": \"in_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an initiative is archived. No further payments will be processed via an initiative once archived. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>INITIATIVE.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>initiative</code></td>\n<td>is the initiative this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"0952344e-f5be-42fc-a78e-8e89f513ad36"},{"name":"INSTANCE.CREATED","event":[{"listen":"test","script":{"id":"c97d5ce0-f8da-4385-8506-a8e0ed37143c","exec":[""],"type":"text/javascript"}}],"id":"d16793dc-db8c-4841-84e9-07ef9602f8da","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"INSTANCE.CREATED\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a new instance is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>INSTANCE.CREATED</code></td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"d16793dc-db8c-4841-84e9-07ef9602f8da"},{"name":"INSTANCE.UPDATE","event":[{"listen":"test","script":{"id":"2f0407b9-3938-404c-a332-ad903a677c68","exec":[""],"type":"text/javascript"}}],"id":"a0dc8a37-e7f0-43f4-9bd3-f40f2e6984ef","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"INSTANCE.UPDATE\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an instance is updated. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>INSTANCE.UPDATED</code></td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"a0dc8a37-e7f0-43f4-9bd3-f40f2e6984ef"},{"name":"INSTANCE.ARCHIVE","event":[{"listen":"test","script":{"id":"976da6e5-b852-4930-bdcd-5da5c42685eb","exec":[""],"type":"text/javascript"}}],"id":"328c2eb0-e00d-4603-b07d-c6de2dc79a69","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"INSTANCE.ARCHIVE\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when an instance is terminated. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>INSTANCE.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"328c2eb0-e00d-4603-b07d-c6de2dc79a69"},{"name":"LEGAL_ENTITY.CREATED","event":[{"listen":"test","script":{"id":"261833af-9d9f-460e-8ad9-78420ec4caa3","exec":[""],"type":"text/javascript"}}],"id":"43e91962-7f0b-4633-850c-90ab63001e4f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"LEGAL_ENTITY.CREATED\",\n    \"legal_entity\": \"le_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a legal entity is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>LEGAL_ENTITY.CREATED</code></td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>is the legal entity this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"43e91962-7f0b-4633-850c-90ab63001e4f"},{"name":"LEGAL_ENTITY.UPDATE","event":[{"listen":"test","script":{"id":"261833af-9d9f-460e-8ad9-78420ec4caa3","exec":[""],"type":"text/javascript"}}],"id":"a7350a5c-4b31-4487-a847-1a7e466a0c0f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"LEGAL_ENTITY.UPDATE\",\n    \"legal_entity\": \"le_11842_10009\",\n    \"created\": \"2020-04-08T11:07:56\"\n}"},"url":"/your_server","description":"<p>Sent when a legal entity is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>LEGAL_ENTITY.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>is the legal entity this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"a7350a5c-4b31-4487-a847-1a7e466a0c0f"},{"name":"LEGAL_ENTITY.ARCHIVE","event":[{"listen":"test","script":{"id":"1ac79f79-837d-40bc-a801-b0934b2f3846","exec":[""],"type":"text/javascript"}}],"id":"6f6967ca-cbf4-4e5c-a4ba-5c68b0d322a9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"LEGAL_ENTITY.ARCHIVE\",\n    \"legal_entity\": \"le_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a legal entity is archived. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>LEGAL_ENTITY.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>legal_entity</code></td>\n<td>is the legal entity this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"6f6967ca-cbf4-4e5c-a4ba-5c68b0d322a9"},{"name":"LEGAL_ENTITY_ROUTE.UPDATE","event":[{"listen":"test","script":{"id":"261833af-9d9f-460e-8ad9-78420ec4caa3","exec":[""],"type":"text/javascript"}}],"id":"76168b19-5c5d-434e-93b1-d43c99a142d6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"LEGAL_ENTITY_ROUTE.UPDATE\",\n    \"legal_entity_route\": \"lr_11842_10009\",\n    \"created\": \"2020-04-08T11:07:56\"\n}"},"url":"/your_server","description":"<p>Sent when a payment routing rule is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>LEGAL_ENTITY_ROUTE.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>legal_entity_route</code></td>\n<td>is the route this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"76168b19-5c5d-434e-93b1-d43c99a142d6"},{"name":"LEGAL_ENTITY_ROUTE.ARCHIVE","event":[{"listen":"test","script":{"id":"1ac79f79-837d-40bc-a801-b0934b2f3846","exec":[""],"type":"text/javascript"}}],"id":"d0ebad46-1303-497d-9c54-a754a89fa326","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"LEGAL_ENTITY_ROUTE.ARCHIVE\",\n    \"legal_entity_route\": \"lr_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a payment routing rule is replaced. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>LEGAL_ENTITY_ROUTE.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>legal_entity_route</code></td>\n<td>is the route this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"d0ebad46-1303-497d-9c54-a754a89fa326"},{"name":"LEGAL_ENTITY_ROUTE.CREATED","event":[{"listen":"test","script":{"id":"261833af-9d9f-460e-8ad9-78420ec4caa3","exec":[""],"type":"text/javascript"}}],"id":"66eae6f3-5e2d-4081-9457-07fc1cea0b4b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"LEGAL_ENTITY_ROUTE.CREATED\",\n    \"legal_entity_route\": \"lr_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a payment routing rule is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>LEGAL_ENTITY_ROUTE.CREATED</code></td>\n</tr>\n<tr>\n<td><code>legal_entity_route</code></td>\n<td>is the route this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"66eae6f3-5e2d-4081-9457-07fc1cea0b4b"},{"name":"TEAM.CREATED","event":[{"listen":"test","script":{"id":"261833af-9d9f-460e-8ad9-78420ec4caa3","exec":[""],"type":"text/javascript"}}],"id":"a719236d-d591-4dd1-86eb-6cd0f3e95c05","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"TEAM.CREATED\",\n    \"team\": \"team_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a payment routing rule is created. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>TEAM.CREATED</code></td>\n</tr>\n<tr>\n<td><code>team</code></td>\n<td>is the team this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"a719236d-d591-4dd1-86eb-6cd0f3e95c05"},{"name":"TEAM.UPDATE","event":[{"listen":"test","script":{"id":"261833af-9d9f-460e-8ad9-78420ec4caa3","exec":[""],"type":"text/javascript"}}],"id":"79548af7-6b1a-409a-942e-bd22932cac7a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"TEAM.UPDATE\",\n    \"team\": \"team_11842_10009\",\n    \"created\": \"2020-04-08T11:07:56\"\n}"},"url":"/your_server","description":"<p>Sent when a team is updated. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>TEAM.UPDATE</code></td>\n</tr>\n<tr>\n<td><code>team</code></td>\n<td>is the team this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"79548af7-6b1a-409a-942e-bd22932cac7a"},{"name":"TEAM.ARCHIVE","event":[{"listen":"test","script":{"id":"1ac79f79-837d-40bc-a801-b0934b2f3846","exec":[""],"type":"text/javascript"}}],"id":"e123d8ae-4a03-426a-840c-d97da832d589","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"11842_1586343957346_5258502bcde56ad8\",\n    \"application\": \"1186_6134\",\n    \"instance_key\": \"B73A-20E5\",\n    \"client\": \"11842\",\n    \"action\": \"TEAM.ARCHIVE\",\n    \"team\": \"team_11842_10009\",\n    \"created\": \"2020-04-08T11:05:56\"\n}"},"url":"/your_server","description":"<p>Sent when a team is archived. </p>\n<p>We will POST webhooks to your configured URL using the attached format, where:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>key</code></td>\n<td>a unique identifier for this message, you should support receiving the same webhook multiple times</td>\n</tr>\n<tr>\n<td><code>application</code></td>\n<td>is the ID of the application in the developer portal</td>\n</tr>\n<tr>\n<td><code>instance_key</code></td>\n<td>is the instance key passed when setting up the instance</td>\n</tr>\n<tr>\n<td><code>client</code></td>\n<td>our internal ID for the instance key</td>\n</tr>\n<tr>\n<td><code>action</code></td>\n<td>the value <code>TEAM.ARCHIVE</code></td>\n</tr>\n<tr>\n<td><code>team</code></td>\n<td>is the team this event refers to</td>\n</tr>\n<tr>\n<td><code>created</code></td>\n<td>when the webhook was initiated</td>\n</tr>\n</tbody>\n</table>\n</div><p>You endpoint should return HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n","urlObject":{"path":["your_server"],"query":[],"variable":[]}},"response":[],"_postman_id":"e123d8ae-4a03-426a-840c-d97da832d589"}],"id":"f0ac8b59-e151-4b0c-928c-d1eb0358657b","description":"<p>Webhooks are generated for many different events.</p>\n<p>We will POST webhooks to the URL configured in the developer portal.  Your endpoint should return a HTTP Status of <code>200</code> if the webhook has been received. A non <code>200</code> status code we be deemed as undelivered.</p>\n<p>Additional webhooks will be added over time, so take care to only filter for the events your care about.</p>\n<p>Upon receipt of a webhook, you should decide if you want to consume the webhook, and if so, fetch the associated object eg payment, transaction or contract via API and process accordingly. No sensitive data is passed in the webhook, just references to the data.</p>\n","event":[{"listen":"prerequest","script":{"id":"70429353-ea02-43d1-9669-caa634f53768","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"0ab26cd5-311d-4cba-91ca-16c6884844c0","type":"text/javascript","exec":[""]}}],"_postman_id":"f0ac8b59-e151-4b0c-928c-d1eb0358657b"},{"name":"Testing","item":[{"name":"Sandbox Gateway","item":[],"id":"38b4af18-cfc3-41d0-8423-96fdddd13cf1","description":"<p>When developing or testing, unless you are testing how a specific gateway behaves, we recommend you use our \"Sandbox Gateway\". This is the first gateway listed when connecting a gateway in SANDBOX, and requires no credentials.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Option</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Enable Cards</td>\n<td>When selected this gateway will allow credit / debit cards to be used at checkout.</td>\n</tr>\n<tr>\n<td>Enable ACH</td>\n<td>When selected this gateway will allow ACH (bank transfer) to be used at checkout, ACH is available for USD transactions only.</td>\n</tr>\n<tr>\n<td>Enable SEPA</td>\n<td>When selected this gateway will allow SEPA (bank transfer) to be used at checkout, SEPA is available for EURO transactions only.</td>\n</tr>\n<tr>\n<td>Enable Hosted</td>\n<td>When selected this gateway will emulate a hosted checkout process (a pay button which opens a popup window that contains a checkout via a third party) - for example GoCardless, Mollie or Paypal. In the emulator you select if the payment will be successful or declined.</td>\n</tr>\n<tr>\n<td>Developer Mode</td>\n<td>This provides a number of advanced options, if you are not in the process of developing the integration do not use this.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Developer Mode options:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Option</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Disable Save Card</td>\n<td>Used to emulate a payment processor that does not support saving cards.</td>\n</tr>\n<tr>\n<td>JS Wrapper</td>\n<td>Used to emulate a payment processor that needs to inject their own Javascript library in the checkout page.</td>\n</tr>\n<tr>\n<td>Pending</td>\n<td>Used to emulate a payment processor that does not authorise a payment immediately but returns a PENDING status. If selected you will be prompted to enter the number of seconds the transaction will remain in a PENDING status for.</td>\n</tr>\n<tr>\n<td>Require Account Name</td>\n<td>Used to emulate a payment processor that requires an account name to authorise a transaction.</td>\n</tr>\n<tr>\n<td>Require Email</td>\n<td>Used to emulate a payment processor that requires an email to authorise a transaction.</td>\n</tr>\n<tr>\n<td>Require Phone</td>\n<td>Used to emulate a payment processor that requires a phone number to authorise a transaction.</td>\n</tr>\n<tr>\n<td>Require CVC</td>\n<td>Used to emulate a payment processor that requires a CVC to authorise a transaction.</td>\n</tr>\n<tr>\n<td>Require AVS</td>\n<td>Used to emulate a payment processor that requires an address to authorise a transaction.</td>\n</tr>\n<tr>\n<td>Require 3DS Window</td>\n<td>Used to emulate a payment processor that requires 3D Secure to be hosted outside of an iFrame.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>If you are using our supplied checkout, most developer options are handled for you, however you should ensure that you handle a PENDING response from checkout, and catch the subsequent approval / decline webhook.</strong></p>\n<p><strong>Sandbox - Test Cards</strong></p>\n<p>Each of the below tests a unique scenario, it is recommended you test at least every single non Approved card in this list, or if building your own checkout, every single card in this list.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>PAN</th>\n<th>Expiry</th>\n<th>CVC</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>4242424242424242</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - VISA</td>\n</tr>\n<tr>\n<td><code>4000056655665556</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - VISA</td>\n</tr>\n<tr>\n<td><code>5555555555554444</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - Mastercard</td>\n</tr>\n<tr>\n<td><code>2223003122003222</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - Mastercard - \"2\" Range</td>\n</tr>\n<tr>\n<td><code>5200828282828210</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - Mastercard - \"52\" Range</td>\n</tr>\n<tr>\n<td><code>5105105105105100</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - Mastercard - \"51\" Range</td>\n</tr>\n<tr>\n<td><code>378282246310005</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - AMEX</td>\n</tr>\n<tr>\n<td><code>371449635398431</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - AMEX</td>\n</tr>\n<tr>\n<td><code>6011111111111117</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - Discover</td>\n</tr>\n<tr>\n<td><code>6011000990139424</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - Discover</td>\n</tr>\n<tr>\n<td><code>3056930009020004</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - Diners Club</td>\n</tr>\n<tr>\n<td><code>36227206271667</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - Diners Club - 14 Length</td>\n</tr>\n<tr>\n<td><code>3566002020360505</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - JCB</td>\n</tr>\n<tr>\n<td><code>6200000000000005</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - Union Pay</td>\n</tr>\n<tr>\n<td><code>4444333322221111</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>This card will be approved when keyed, but declined when used as a token - use to test a recurring payment failing</td>\n</tr>\n<tr>\n<td><code>4000000000000077</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Decline - Invalid CVC</td>\n</tr>\n<tr>\n<td><code>4000003720000278</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Decline (Call Bank) - Insufficient Funds</td>\n</tr>\n<tr>\n<td><code>4000000000000093</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Decline (Blocked) - Stolen</td>\n</tr>\n<tr>\n<td><code>4000000000000010</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Decline (Error) - Merchant account locked</td>\n</tr>\n<tr>\n<td><code>4000000000000028</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Decline (Retry) - Rate Limit Exceeded</td>\n</tr>\n<tr>\n<td><code>4000000000000036</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Unresolved - ie its not clear if the transaction went through or not</td>\n</tr>\n<tr>\n<td><code>4000000000000663</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - VISA - All refund attempts will be declined</td>\n</tr>\n<tr>\n<td><code>4012000077777777</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Approved - 30 seconds to authorise</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Sandbox - 3D Secure Test Cards</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>PAN</th>\n<th>Expiry</th>\n<th>CVC</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>4000000000003220</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Requires 3DS - Approved - VISA</td>\n</tr>\n<tr>\n<td><code>4000008400001629</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Requires 3DS - Approved - VISA</td>\n</tr>\n<tr>\n<td><code>4444333322221111</code></td>\n<td>Any</td>\n<td>Any</td>\n<td>Requires 3DS - This card will be approved when keyed, but declined when used as a token - use to test a recurring payment failing</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Sandbox - Test ACH Accounts</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Account Type</th>\n<th>Routing Number</th>\n<th>Account Number</th>\n<th>Name on Account</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Any</td>\n<td><code>110000000</code></td>\n<td><code>000123456789</code></td>\n<td>Any</td>\n<td>Approved</td>\n</tr>\n<tr>\n<td>Any</td>\n<td><code>110000000</code></td>\n<td><code>000111111116</code></td>\n<td>Any</td>\n<td>Decline - Failure Upon Use</td>\n</tr>\n<tr>\n<td>Any</td>\n<td><code>110000000</code></td>\n<td><code>000111111113</code></td>\n<td>Any</td>\n<td>Decline - Account Closed</td>\n</tr>\n<tr>\n<td>Any</td>\n<td><code>110000000</code></td>\n<td><code>000222222227</code></td>\n<td>Any</td>\n<td>Decline - Insufficient Funds</td>\n</tr>\n<tr>\n<td>Any</td>\n<td><code>110000000</code></td>\n<td><code>000333333335</code></td>\n<td>Any</td>\n<td>Decline - Debit Not Authorized</td>\n</tr>\n<tr>\n<td>Any</td>\n<td><code>110000000</code></td>\n<td><code>000444444440</code></td>\n<td>Any</td>\n<td>Decline - Invalid Currency</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Sandbox - Test SEPA Accounts</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>IBAN</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>GB82WEST12345698765432</code></td>\n<td>Approved</td>\n</tr>\n<tr>\n<td><code>GB55WEST12345698765433</code></td>\n<td>Approved</td>\n</tr>\n</tbody>\n</table>\n</div>","event":[{"listen":"prerequest","script":{"id":"9467bc29-1808-4336-8425-da6a171b6dcb","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"b54a124e-6ef9-471f-ae63-6d60cb7d636e","type":"text/javascript","exec":[""]}}],"_postman_id":"38b4af18-cfc3-41d0-8423-96fdddd13cf1","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"97c33494-30ff-4a6a-8c96-fe1e47c21b1e","id":"97c33494-30ff-4a6a-8c96-fe1e47c21b1e","name":"Testing","type":"folder"}}},{"name":"PayPal","item":[],"id":"0bfcbfbe-7d8d-44d0-82ae-e5c27d8bf15c","description":"<p>The PayPal sandbox works a little differently from other gateways - to test failure scenarios, a HTTP header needs to be passed to PayPal. This only applied to SANDBOX payments.</p>\n<p>You can do this by setting the customer name:</p>\n<ul>\n<li><code>first_name</code>: <code>PayPal-Mock-Response</code></li>\n<li><code>last_name</code>: <code>PAYER_CANNOT_PAY </code></li>\n</ul>\n<p>Where last name is the response you want to emulate.</p>\n<p>Please refer to the following documentation:</p>\n<ul>\n<li><a href=\"https://developer.paypal.com/tools/sandbox/negative-testing/request-headers/\">https://developer.paypal.com/tools/sandbox/negative-testing/request-headers/</a></li>\n<li><a href=\"https://developer.paypal.com/docs/api/payments/v2/\">https://developer.paypal.com/docs/api/payments/v2/</a></li>\n</ul>\n","_postman_id":"0bfcbfbe-7d8d-44d0-82ae-e5c27d8bf15c","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"97c33494-30ff-4a6a-8c96-fe1e47c21b1e","id":"97c33494-30ff-4a6a-8c96-fe1e47c21b1e","name":"Testing","type":"folder"}}},{"name":"Test Cards","item":[],"id":"00ae793b-e5e4-4a9a-b1d4-b592ef9df261","description":"<p>When testing payments, the test cards will depending on the gateway you're connected to. Test cards will only work in your application's sandbox, where you've also connected to a gateway's sandbox environment.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Gateway</th>\n<th>Test Cards</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Adyen</td>\n<td><a href=\"https://docs.adyen.com/development-resources/test-cards/test-card-numbers/\">https://docs.adyen.com/development-resources/test-cards/test-card-numbers/</a></td>\n</tr>\n<tr>\n<td>Authorize.net</td>\n<td><a href=\"https://developer.authorize.net/hello_world/testing_guide/\">https://developer.authorize.net/hello_world/testing_guide/</a></td>\n</tr>\n<tr>\n<td>Azul</td>\n<td>Provided by email</td>\n</tr>\n<tr>\n<td>Braintree</td>\n<td><a href=\"https://developers.braintreepayments.com/guides/credit-cards/testing-go-live/php\">https://developers.braintreepayments.com/guides/credit-cards/testing-go-live/php</a></td>\n</tr>\n<tr>\n<td>BSPayOne</td>\n<td><a href=\"https://docs.payone.com/display/public/PLATFORM/Platform+Home\">https://docs.payone.com/display/public/PLATFORM/Platform+Home</a></td>\n</tr>\n<tr>\n<td>Card Connect</td>\n<td><a href=\"https://support.cardconnect.com/securenet-migration#test-cards-for-uat-environment\">https://support.cardconnect.com/securenet-migration#test-cards-for-uat-environment</a></td>\n</tr>\n<tr>\n<td>Checkout.com</td>\n<td><a href=\"https://docs.checkout.com/docs/testing\">https://docs.checkout.com/docs/testing</a></td>\n</tr>\n<tr>\n<td>Global Payments</td>\n<td><a href=\"https://developer.realexpayments.com/#!/resources/test-card-numbers\">https://developer.realexpayments.com/#!/resources/test-card-numbers</a></td>\n</tr>\n<tr>\n<td>Judopay</td>\n<td>Behind developer login</td>\n</tr>\n<tr>\n<td>Moneris</td>\n<td><a href=\"https://developer.moneris.com/en/More/Testing/Testing%20a%20Solution\">https://developer.moneris.com/en/More/Testing/Testing%20a%20Solution</a></td>\n</tr>\n<tr>\n<td>MyGate</td>\n<td><a href=\"https://developers.wirecard.co.za/enterprise.php#testcards\">https://developers.wirecard.co.za/enterprise.php#testcards</a></td>\n</tr>\n<tr>\n<td>NAB</td>\n<td><a href=\"https://www.securepay.com.au/wp-content/uploads/2017/06/API_Card_Storage_and_Scheduled_Payments.pdf\">https://www.securepay.com.au/wp-content/uploads/2017/06/API_Card_Storage_and_Scheduled_Payments.pdf</a></td>\n</tr>\n<tr>\n<td>NMI</td>\n<td><a href=\"https://support.nmi.com/hc/en-gb/articles/115002375583-Test-Cards\">https://support.nmi.com/hc/en-gb/articles/115002375583-Test-Cards</a></td>\n</tr>\n<tr>\n<td>Paypal</td>\n<td><a href=\"https://developer.paypal.com/developer/creditCardGenerator/\">https://developer.paypal.com/developer/creditCardGenerator/</a></td>\n</tr>\n<tr>\n<td>Paypoint</td>\n<td><a href=\"http://docs.pay360.com/getting-started/test-card-numbers/\">http://docs.pay360.com/getting-started/test-card-numbers/</a></td>\n</tr>\n<tr>\n<td>PaySafe</td>\n<td><a href=\"https://developer.paysafe.com/en/rest-apis/cards/test-and-go-live/test-cards/\">https://developer.paysafe.com/en/rest-apis/cards/test-and-go-live/test-cards/</a></td>\n</tr>\n<tr>\n<td>PayU</td>\n<td><a href=\"http://developers.payu.com/en/overview.html#cards\">http://developers.payu.com/en/overview.html#cards</a></td>\n</tr>\n<tr>\n<td>QuickBooks Payments</td>\n<td><a href=\"http://help.noviams.com/en/articles/1505925-deep-dive-testing-quickbooks-payments-credit-card-transactions\">http://help.noviams.com/en/articles/1505925-deep-dive-testing-quickbooks-payments-credit-card-transactions</a></td>\n</tr>\n<tr>\n<td>Sagepay</td>\n<td><a href=\"https://www.sagepay.co.uk/support/12/36/test-card-details-for-your-test-transactions\">https://www.sagepay.co.uk/support/12/36/test-card-details-for-your-test-transactions</a></td>\n</tr>\n<tr>\n<td>Square</td>\n<td><a href=\"https://developer.squareup.com/docs/testing/test-values\">https://developer.squareup.com/docs/testing/test-values</a></td>\n</tr>\n<tr>\n<td>Stripe</td>\n<td><a href=\"https://stripe.com/docs/testing\">https://stripe.com/docs/testing</a></td>\n</tr>\n<tr>\n<td>Transbank</td>\n<td><a href=\"https://www.transbankdevelopers.cl/documentacion/como_empezar#ambientes\">https://www.transbankdevelopers.cl/documentacion/como_empezar#ambientes</a></td>\n</tr>\n<tr>\n<td>USAEpay</td>\n<td><a href=\"https://help.usaepay.info/developer/reference/testcards/\">https://help.usaepay.info/developer/reference/testcards/</a></td>\n</tr>\n<tr>\n<td>WePay</td>\n<td><a href=\"https://developer.wepay.com/docs/articles/testing\">https://developer.wepay.com/docs/articles/testing</a></td>\n</tr>\n<tr>\n<td>Worldpay</td>\n<td><a href=\"http://support.worldpay.com/support/kb/bg/testandgolive/tgl5103.html\">http://support.worldpay.com/support/kb/bg/testandgolive/tgl5103.html</a></td>\n</tr>\n</tbody>\n</table>\n</div>","event":[{"listen":"prerequest","script":{"id":"c86f4dea-01e2-4baa-9c6a-70f615363267","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"effc8443-2631-4992-a2f9-ec728530b1c7","type":"text/javascript","exec":[""]}}],"_postman_id":"00ae793b-e5e4-4a9a-b1d4-b592ef9df261","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"97c33494-30ff-4a6a-8c96-fe1e47c21b1e","id":"97c33494-30ff-4a6a-8c96-fe1e47c21b1e","name":"Testing","type":"folder"}}}],"id":"97c33494-30ff-4a6a-8c96-fe1e47c21b1e","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"c7e49777-0e68-48d1-9f95-e61455e4a164","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"ead418c5-c6d8-4aa3-a11f-28757cc459c9","type":"text/javascript","exec":[""]}}],"_postman_id":"97c33494-30ff-4a6a-8c96-fe1e47c21b1e","description":""},{"name":"Release Notes","item":[{"name":"20260417","item":[],"id":"bb18d997-e507-48b7-98c2-2f9b0ed68261","description":"<p><strong>New Features</strong></p>\n<ul>\n<li><p>Xendit — new gateway integration available for merchants in supported regions</p>\n</li>\n<li><p>FatZebra — new gateway integration</p>\n</li>\n<li><p>AndDone — new integration</p>\n</li>\n<li><p>Scheduled Charges — schedule customised multi-instalment payments with configurable amounts and dates per instalment</p>\n</li>\n<li><p>Payment Links API — new POST /payment_links endpoint for programmatic creation of links</p>\n</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Cybersource — automatic resolution of pending transactions; AVS mode selector and expanded metadata field mapping</p>\n</li>\n<li><p>Stripe — SEPA now supports target date scheduling and pending-until-settled status, keeping transactions in pending until the bank settles (matching the ACH behaviour)</p>\n</li>\n<li><p>Authorize.Net — CCD now available as a configurable ACH eCheck type (alongside PPD and WEB)</p>\n</li>\n<li><p>Interprose — payment plans now supported via schedule metadata</p>\n</li>\n<li><p>Apple Pay / Google Pay — temporary cards now work in sandbox gateway for end-to-end wallet testing</p>\n</li>\n<li><p>shuttle.js — 1.4.6 - embedded checkout now propagates allow=payment permission to sub-iframes via wildcard, unblocking nested embed scenarios</p>\n</li>\n<li><p>Password reset — session now remains authenticated immediately after reset</p>\n</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<p>Gateways:</p>\n<ul>\n<li><p>Stripe — ACH delayed failures now process correctly; transactions no longer remain locked in SUCCESS</p>\n</li>\n<li><p>PayPal — onboarding endpoint restored</p>\n</li>\n<li><p>QuickBooks Payments — ValidationFault resolved; delete-card error fixed; ACH now supported on CAD-only accounts; raw card details used in place of cardOnFile where available to improve<br />  authorization rates; fixed boltUtilsContext error in processPaymentMade</p>\n</li>\n<li><p>GoCardless — gateway message no longer cleared after an automatic retry; fixed IBP payments being routed to Stripe when multiple gateways are configured</p>\n</li>\n<li><p>Authorize.Net — ACH nameOnAccount no longer incorrectly populated with the account number</p>\n</li>\n<li><p>Authorize.Net — token expiry no longer causes a 20-second outage on the payment processor</p>\n</li>\n<li><p>Checkout.com — refunds outside the 1-year window now return a clear, user-friendly error instead of a generic failure</p>\n</li>\n<li><p>TrustPayments — fixed null-dereference in capture() when the transaction is not yet indexed</p>\n</li>\n<li><p>Sandbox gateway — pending tokenise handling fixed</p>\n</li>\n<li><p>Recurring token payments — now correctly respect the gateway ARCHIVE status and are blocked on archived gateways</p>\n</li>\n<li><p>update_transaction webhook — now correctly includes gateway_status in the payload</p>\n</li>\n<li><p>Generic — fixed token-delete error affecting multiple gateways</p>\n</li>\n</ul>\n<p>Platform &amp; reliability:</p>\n<ul>\n<li><p>Reporting — format-csv formatter now tolerates ipstack 500s during IP country lookup</p>\n</li>\n<li><p>Customised branding logo — Save button no longer disabled on some domain names</p>\n</li>\n<li><p>Gift Aid — claim items now include account data when created without an active claim</p>\n</li>\n<li><p>Apple Pay — well-known verification now checks both with and without the .txt extension for broader server compatibility</p>\n</li>\n</ul>\n","_postman_id":"bb18d997-e507-48b7-98c2-2f9b0ed68261","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"2d04c433-d737-49fe-b505-817ef4bd1f38","id":"2d04c433-d737-49fe-b505-817ef4bd1f38","name":"Release Notes","type":"folder"}}},{"name":"20260204","item":[],"id":"3d282952-60be-4d02-a7d7-0b878109d9dd","description":"<p><strong>New Features</strong></p>\n<ul>\n<li>Apple Pay - Now general availability (See <a href=\"https://docs.shuttleglobal.com/docs/apple-pay-google-pay\">https://docs.shuttleglobal.com/docs/apple-pay-google-pay</a>)</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li><p>GoCardless - Enhanced decline event tracking with detailed reason codes for better reconciliation</p>\n</li>\n<li><p>GoCardless - Improved refund metadata for clearer transaction history</p>\n</li>\n<li><p>GoCardless - Fixed language parameter handling for international customers</p>\n</li>\n<li><p>Stripe - Added support for extended card authorization (7 → 30 days)</p>\n</li>\n<li><p>Stripe - Improved settlement tracking for auth+capture transactions with currency and fee data</p>\n</li>\n<li><p>Authorize.net - Added connect via API Keys (rather than login)</p>\n</li>\n<li><p>NMI - Now supports passing cardholder name</p>\n</li>\n<li><p>Checkout - Updated security headers and CSP context for new / updated gateways</p>\n</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Various bug fixes and performance improvements</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"3d282952-60be-4d02-a7d7-0b878109d9dd"},{"name":"20250904","item":[],"id":"dc643ecf-f8e4-4b2f-b7db-bcbde12fffba","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Auth.NET - You can now refund ACH payments (where supported by Auth.NET)</p>\n</li>\n<li><p>Auth.NET - You can now determine the payment type for scheduled payments (PPD or WEB)</p>\n</li>\n<li><p>Auth.NET - Now supports API Key connectivity (contact support if you need this)</p>\n</li>\n<li><p>Customer portal change payment method now supports all payment methods checkout supports</p>\n</li>\n<li><p>Stripe - account issues preventing payment are now presented in gateway-setup</p>\n</li>\n<li><p>PayTomorrow - improved rendering or credit messages</p>\n</li>\n<li><p>Improved web security at checkout</p>\n</li>\n<li><p>Improved express checkout rendering, speed and page build</p>\n</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li><p>Various bug fixes</p>\n</li>\n<li><p>Recurring payments <code>retry_count</code> now reset to 0 on pending transactions</p>\n</li>\n<li><p>Fixed an issue causing incomplete translation files appearing on some new instances</p>\n</li>\n<li><p>Fixed an issue in report generation when report names contain a comma</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"dc643ecf-f8e4-4b2f-b7db-bcbde12fffba"},{"name":"20250506","item":[],"id":"9d98f334-da10-4a5f-acb9-7962f83f631f","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li><p>GoCardless - Added Canada support for PAD</p>\n</li>\n<li><p>api - you can now fetch an archived instance and see its been archived</p>\n</li>\n<li><p>improved security measures around MFA tokens</p>\n</li>\n<li><p>improved security measures passwords - password age, preventing reuse</p>\n</li>\n<li><p>positioning change for native ApplePay / GooglePay / Click to Pay</p>\n</li>\n<li><p>PAYMENT.AUDIT webhooks now contain payment, transaction references</p>\n</li>\n<li><p>Stripe - changed idempotency to better support multiple Shuttle accounts connected to the same Stripe account</p>\n</li>\n<li><p>Stripe - cleaned up some text around ACH</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"9d98f334-da10-4a5f-acb9-7962f83f631f"},{"name":"20250424","item":[],"id":"54f79358-9dae-40d5-8e11-b61d8ac1e406","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li><p>PayPal - simplified some language</p>\n</li>\n<li><p>PayPal - expose more connectivity errors on the config tool</p>\n</li>\n<li><p>Braintree - redact credentials on edit</p>\n</li>\n<li><p>General - updated various depenancies with security updates</p>\n</li>\n<li><p>General - standardise the technology of file uploads</p>\n</li>\n<li><p>Stats - added tracking of tokenisation requests</p>\n</li>\n<li><p>Checkout - updated recaptcha to enterprise</p>\n</li>\n<li><p>api - added webhooks attach / detach endpoints for an instance</p>\n</li>\n<li><p>api - added the abiliuty to upload all file types as notes</p>\n</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li><p>Auth.NET - added support for renewing access tokens in scheduled jobs</p>\n</li>\n<li><p>Adyen - added support for authorisation only</p>\n</li>\n<li><p>(Enterprise) Fixed initiative ordering</p>\n</li>\n<li><p>(Enterprise) Added ability for amending giftaid claim dates</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"54f79358-9dae-40d5-8e11-b61d8ac1e406"},{"name":"20250318","item":[],"id":"4f9c4e31-3388-4965-a04c-5cf8e1ecbac2","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Worldpay: Error 91 (upstream connectivity error) now maps to DECLINE_RETRY</p>\n</li>\n<li><p>GoCardless - Support for Success+</p>\n</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li><p>Sandbox gateway - fixed \"require CVC\" being applied to ACH</p>\n</li>\n<li><p>Fixed resending a team invite displaying an error</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"4f9c4e31-3388-4965-a04c-5cf8e1ecbac2"},{"name":"20250304","item":[],"id":"a0648846-1587-42fe-b53c-612037cd6f44","description":"<p><strong>New Features</strong></p>\n<ul>\n<li><p>Single use payment links - ability to create single use payment links that can be shared with customers, via parameters or natural language (private release)</p>\n</li>\n<li><p>OAUTH server - ability to allow merchants connect to a Shuttle account via OAUTH2 (private release)</p>\n</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Many merchant portal improvements including</p>\n<ul>\n<li><p>Login &amp; MFA improvements</p>\n</li>\n<li><p>Simpler UX components are easier to use</p>\n</li>\n<li><p>Simpler menuing system</p>\n</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"a0648846-1587-42fe-b53c-612037cd6f44"},{"name":"20250203","item":[],"id":"3fd1d73a-6692-45fa-8b83-36b7b0ac0673","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Improved checkout perrformance degredation for customer's with 100s of saved cards.</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li><p>Fixed an issue bringing a contract out of unresolved</p>\n</li>\n<li><p>Fixed an issue with GET charge returning a 500 error if requested while the transaction was still being processed</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"3fd1d73a-6692-45fa-8b83-36b7b0ac0673"},{"name":"20250128","item":[],"id":"b1091094-1b93-44c5-bce6-0f37a9381a3b","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Stripe: ACH now support manual verification process for banks that dont support open banking</p>\n</li>\n<li><p>GoCardless: Improved rate limit handling, new transactions will not be submitted to Gocardless when GoCardless srate limiter is above 80% utilisation</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"b1091094-1b93-44c5-bce6-0f37a9381a3b"},{"name":"20250124","item":[],"id":"a2adb2b4-9d9a-4e98-9577-29d6ed96fc67","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Square: Added support for Square ACH changes due 29/1</li>\n</ul>\n<p><strong>Bugs</strong></p>\n<ul>\n<li><p>FreedomPay: Now passing cardPresent N</p>\n</li>\n<li><p>Cybersource: Trim long orderReferences</p>\n</li>\n<li><p>Sandbox: Fixed an issue with tokenisation and 3DS</p>\n</li>\n<li><p>Checkout fixed an infrequent issue resulting in a max call stack exceeded</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"a2adb2b4-9d9a-4e98-9577-29d6ed96fc67"},{"name":"20250114","item":[],"id":"6e06709c-dfb6-4b09-acb6-25f1d644f377","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Checkout: Added internal support for component versioning</li>\n</ul>\n<p><strong>Bugs</strong></p>\n<ul>\n<li><p>Square: Fixed an issue affecting checkout presenting on some acounts</p>\n</li>\n<li><p>GMO: Updated memberId to now be account_key</p>\n</li>\n<li><p>Cybersource: Fixed a display issue when configuring single currency accounts</p>\n</li>\n<li><p>FreedomPay: Fixed a display issue when configuring single currency accounts</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"6e06709c-dfb6-4b09-acb6-25f1d644f377"},{"name":"20241210","item":[],"id":"74280cd4-2857-4bf7-85a9-d81ed05776a1","description":"<p><strong>New features</strong></p>\n<ul>\n<li>Cybersource: Added support for Cybersource and resellers (including NAB)</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Shuttle.js: v1.4.1 security update to protect against possible XSS in browser messaging</p>\n</li>\n<li><p>Checkout: Added better support for connectivity issues during payment submission, payment will be automatically retried, and handle if both instructions reach the server .</p>\n</li>\n<li><p>GoCardlesss: now submits payments to GoCardless asynchronously when close to being rate limited. Specifically, if less than 100 requests remaining (of 1000/min request limit) payments will not be submitted immediately.</p>\n</li>\n</ul>\n<p><strong>Bugs</strong></p>\n<ul>\n<li><p>Opayo: fixed an issue with some users getting the error \"Merchant session key or card identifier invalid\" using a tokenised card</p>\n</li>\n<li><p>Fixed an issue with 4dp currencies being rounded to 2dp when making a settlement payment on an overdue contract</p>\n</li>\n<li><p>Fixed an issues where an instruction for card tokenise + scheduled payment not passing currency to the gateway during tokenise step, which affected some processors with a multi-mid configuration</p>\n</li>\n<li><p>Fixed and issue where the authorisation url would not be passed to a gateway on a 3DS retry</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"74280cd4-2857-4bf7-85a9-d81ed05776a1"},{"name":"2024118","item":[],"id":"ffff518e-2f79-42fd-8718-731b21380d6f","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Adyen - Added finer granularity in connection error reasons</p>\n</li>\n<li><p>API - Improved the performance of the payment_method API when requestion a large number of payment_methods</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"ffff518e-2f79-42fd-8718-731b21380d6f"},{"name":"20241105","item":[],"id":"a40ccce6-76cf-43b0-ac8c-4e201a004f51","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Released shuttle-1.4.0.js which supports large baskets. Previously basket size was limited by the URL (~ 2kb)</p>\n</li>\n<li><p>You can now expand <code>created_session</code>, and <code>updated_session</code> in objects for details on who made a change</p>\n</li>\n<li><p>Updating a contact amount now creates an audit record</p>\n</li>\n<li><p>Removed county field for US addresses</p>\n</li>\n<li><p>Updated internal routing logic to allow passing a gateway_id in a payment instruction to override the available routes when using a saved card.</p>\n</li>\n<li><p>You can now expand nested fields, eg <code>?expand=updated_session.user</code> to expand the updated_session, and the user within it</p>\n</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Quickbooks Payments - Fixed an issue where a DECLINE may be report if QuickBooks return a 500 error. This will now return UNRESOLVED.</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"a40ccce6-76cf-43b0-ac8c-4e201a004f51"},{"name":"20241023","item":[],"id":"ec317475-2d81-4049-8ff3-7cd87bd6c99d","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Authorize.net - better handling of response code 4 (pending)</p>\n</li>\n<li><p>Authorize.net - optimised handling of when Auth.net is unavailable</p>\n</li>\n<li><p>Authorize.net - added a clearer explanation when trying to capture an expired Auth</p>\n</li>\n<li><p>Authorize.net - request metadata is now stored for payment declines</p>\n</li>\n<li><p>Authorize.net - request metadata has been extended for payments, to include customer profile creation</p>\n</li>\n<li><p>Authorize.net - added invoiceNumber to refund, to enable refunds for customers that have configured it as a mandatory field</p>\n</li>\n<li><p>Quickbooks Payments - request metadata has been extended for payments, to include charges and cards</p>\n</li>\n<li><p>Quickbooks Payments - \"A temporary issue prevented this request from being processed.\" now maps to DECLINE_RETRY, rather than UNRESOLVED</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"ec317475-2d81-4049-8ff3-7cd87bd6c99d"},{"name":"20241010","item":[],"id":"f5aada0b-0920-4a7c-a2c0-7e985cf08672","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li><p>Stripe - Declined transactions now have gateway_metadata containing the API calls used</p>\n</li>\n<li><p>Stripe - ACH &amp; Multibanco now use the Payment Intents API due to Stripe deprecating payment sources API</p>\n</li>\n<li><p>Dev Portal - Improved the ability to privately deploy gateways on an application by application and instance by instance basis</p>\n</li>\n<li><p>Auth.NET - Now has a more informative error message for refunds after the permitted 180 days</p>\n</li>\n<li><p>Auth.NET - Updated the webhook validation process due to it not working on some accounts</p>\n</li>\n<li><p>NMI - Updated the webhook validation process due to it not working on some accounts</p>\n</li>\n<li><p>FreedomPay - Various improvements</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"f5aada0b-0920-4a7c-a2c0-7e985cf08672"},{"name":"20240814","item":[],"id":"685a8790-bb48-4cdb-bdf7-00fdb5729954","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Auth.NET (legacy integration using access tokens) - added a feature for card billing address to be passed on refunds, allowing customers that have set this as mandatory to do refunds</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Stripe - fixed an issue with Stripe tokens shared across multiple accounts sometimes not attaching to a customer correctly</li>\n<li>Kount - fixed an issue where placeholder redacted card PAN and expiry date could be passed into Kount during pre-authorisation checks when using gateways that do not provide this information prior to authorisation. </li>\n<li>PayPal - fixed an issue where placeholder redacted card PAN and expiry date could be displayed on a declined transaction if the transaction was blocked pre-authorisation by Kount</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"685a8790-bb48-4cdb-bdf7-00fdb5729954"},{"name":"20240722","item":[],"id":"a798d374-c057-4534-922b-9e06efb612dd","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Added support for L3 hotel data (hotel_data) in addition to L3 line_item data</li>\n<li>Now support customising the width of checkout with \"desktop-width\" theme variable</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Checkout - back button not working when amount not passed</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"a798d374-c057-4534-922b-9e06efb612dd"},{"name":"20240711","item":[],"id":"0e98cf91-bff0-4387-abb7-31f6612952a7","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>PayPal Commerce - now supports MOTO payments, ensuring 3DS is not presented with a staff member is entering a transaction.</li>\n<li>Square - now displays a connection warning if the connected Square account is not payments enabled (eg in KYC) so that the merchant can rectify before making available to customers.</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>PayU - selecting \"Back\" when PayU checkout is presented in a browser popup window now correctly dismisses the browser popup window.</li>\n<li>Square - fixed an issue with Square ACH returning paymentMethod.tokenise is not a function for some users</li>\n<li>Transbank - added support for customer names with non latin characters in them.</li>\n<li>Checkout.com - fixed an issue where the reference on a capture did not include the original AUTH reference, to make reconciliation easier</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"0e98cf91-bff0-4387-abb7-31f6612952a7"},{"name":"20240701","item":[],"id":"6758214d-6f8f-4168-a6ee-03a1ab228ceb","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>NMI - Following NMI's recent 3DS upgrade with Cardinal Commerce, added additional fields for 3DS to address \"A message element required as defined in Table A.1 is missing from the message. deviceChannel\" decline</li>\n<li>Quickbooks - Improved the error handling of Quickbooks Payments when the company is in an invalid status for payments</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Checkout.com - reviewed decline statuses to include Expired and Retry Scheduled</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"6758214d-6f8f-4168-a6ee-03a1ab228ceb"},{"name":"20240628","item":[],"id":"44295a71-fdb1-4c04-afb0-06ccf5152a20","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Stripe - now supports shipping address, if you pass this to Shuttle it will be passed to Stripe. This allow for improved fraud detection.</li>\n<li>Stripe - now maps transactions that are rejected due to  invalid parameters to DECLINE_ERROR, allowing improved alerting</li>\n<li>Stripe - now only warns if an account is restricted from taking live payments on the configuration tool in the LIVE environment and not in SANDBOX. This simplifies the user experience when using a Stripe test account.</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Braintree - fixed an issue affecting some Braintree payments not correctly binding hosted card fields</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"44295a71-fdb1-4c04-afb0-06ccf5152a20"},{"name":"20240617","item":[],"id":"7e5591ff-e46d-42f9-9ba7-4938c145071a","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Stripe - Stripe now presents a connection warning if the account is restricted from taking payments</li>\n<li>Various security upgrades</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Kount - Fixed an issue where Kount configuration may not be applied for saved cards</li>\n<li>Moneris - Updated Moneris order_id generation to allow multiple payments on the same order</li>\n<li>LiqPay - Remaps OTP failures to generic decline rather than technical error</li>\n<li>Authorize.net - Updated the warnings during the webhook setup process to provide finer granularity information about where the process is up to</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"7e5591ff-e46d-42f9-9ba7-4938c145071a"},{"name":"20240610","item":[],"id":"eae775d3-7c4d-4384-9de0-3494a5dfe904","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Developer Portal - The portal we provide SaaS and payment partners has had a significant technical upgrade. The main purpose of this was applying latest security patches, however several new features have been introduced:<ul>\n<li>Filtering accounts by when created and when last transaction</li>\n<li>Filtering accounts by those connected to a service provider / which provider</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"eae775d3-7c4d-4384-9de0-3494a5dfe904"},{"name":"20240605","item":[],"id":"935681bf-68ec-4dd8-92c3-3b45db6a8b29","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Stripe - Refunds now stores the API request response and balance transaction response in the gateway_metadata. This allow you to see exactly what Stripe responded with without needing to open Stripe.</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Stripe - Fixed an issue with some gateway initiated refunds, captures and chargebacks where the minor unit (eg cents) was not being reflected in the refund data in Shuttle</li>\n<li>Stripe - Fixed an issue where some saved payment methods were not correctly attaching to a customer record</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"935681bf-68ec-4dd8-92c3-3b45db6a8b29"},{"name":"20240530","item":[],"id":"0e79a398-1fe9-426b-bb78-1380beea1dfb","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Checkout.com - added support for Apple Pay certificate rotation, including the ability to retrieve a CSR from checkout.com</li>\n<li>Authorize.NET - updated Authorise.net's handling of expired authorisations, and returned a more informative error message instead of Authorise.Net's transaction not found</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Trust Payments - fixed an issue showing some transaction as stuck in pending, all pending transactions have been re-synced with Trust Payments and updated to reflect their true status</li>\n<li>Transbank - we now append a GUID to username when tokenising cards. Transbank replace previous saved cards for the user name when a new card is tokenised, causing errors for the user when trying to use a previously saved card.</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"0e79a398-1fe9-426b-bb78-1380beea1dfb"},{"name":"20240524","item":[],"id":"27ced757-7226-4d2d-8df5-e0e5eec1b967","description":"<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Fixed an intermittent issue invaliding cached content when toggling different payment methods on / off</li>\n<li>Kount: Fixed an issue were it occasionally was not run for some merchants</li>\n<li>PayPal Commerce: Fixed an issue in tokenisation on ACP where a next button would present before card details could be entered.</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"27ced757-7226-4d2d-8df5-e0e5eec1b967"},{"name":"20240514","item":[],"id":"6880cc07-0c33-4693-b651-592f8d185a4e","description":"<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>NMI: Fixed an issue validating webhook signatures containing certain characters</li>\n<li>Stripe: Fixed an issue handing 3DS in some scenarios for a future payment</li>\n<li>Stripe: Updated declines related to authentication issues to be DECLINE_ERROR rather than DECLINE, so they appear in error reports.</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"6880cc07-0c33-4693-b651-592f8d185a4e"},{"name":"20240509","item":[],"id":"b4979ef9-8a46-4f1d-ae23-e4089de64d3e","description":"<p><strong>New Features</strong></p>\n<ul>\n<li>All objects now tracking the <code>created_session</code> and <code>updated_session</code>, ie who created them and updated them, this was not previously tracked and will only be populated from 9 May 2024 onwards. The API docs will be updated in due course.</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li>Additional PAYMENT_METHOD webhooks: PAYMENT_METHOD.ACTIVE, PAYMENT_METHOD.SINGLEUSE, PAYMENT_METHOD.FAILED</li>\n<li>Configuration tool now shows if the merchant has processed payments to help understand if the configuration is ready to be customer facing</li>\n<li>Configuration tool now links to instructions for connecting to a gateway</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Trust Payments: Now performs auth/capture when processing a \"PAYMENT\" to workaround TrustPayments capturing payments on the UX and risk these getting lost being sent to the backend</li>\n<li>Checkout.com: Fixed an issue where payments that were disconnected from Shuttle, and  only recognised due to a webhook update were not being recorded in a way that could be refunded. For example, an authorisation that the user closed the browser during 3DS secure.</li>\n<li>PayPal Commerce: Fixed an issue returning some PayPal error messages </li>\n<li>Fixed an issue with reusing custom domains</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"b4979ef9-8a46-4f1d-ae23-e4089de64d3e"},{"name":"20240502","item":[],"id":"da86b4ad-7c46-429e-992d-0a1dbde2d6d7","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Transaction Parts - You can now see how a transaction is attributed against outstanding charges on a recurring payment</li>\n<li>PayPal - Improved the performance of card vaulting for advanced card payments</li>\n<li>Card Connect - Improved the configuration experience when entering site url</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Square - Fixed ACH presentation field order</li>\n<li>Square - Fixed an intermittent issue with some payment methods not being registered   as available correctly</li>\n<li>Checkout.com - Fixed an issue displaying a 404 error for some declined transactions</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"da86b4ad-7c46-429e-992d-0a1dbde2d6d7"},{"name":"20240416","item":[],"id":"cb8df738-c3d5-4488-b085-2f4053ad21b7","description":"<p><strong>New Features</strong></p>\n<ul>\n<li>Affirm - New Buy Now Pay Later provider supported (US / CA)</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li>Checkout.com - now support card updater for saved cards</li>\n<li>PayPal - added a UX message when a PayPal popup automatically closes due to a PayPal issue providing some context as to why it closed</li>\n<li>Card holder name now stored in the payment method object when populated</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Checkout.com - improved the handling of capture declines during a 3DS transactions, previously this was being reported as success</li>\n<li>Fixed an issue with charge number not always being set on recurring payments' charges</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"cb8df738-c3d5-4488-b085-2f4053ad21b7"},{"name":"20240307","item":[],"id":"87fe88a4-629e-41d2-8aca-7cc323fab1ed","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Auth.net - API responses are now stored on the transaction metadata</li>\n<li>Auth.net - further improvements to the overhauled the webhook setup logic </li>\n<li>Auth.net - now supports tokenisation when AVS disabled</li>\n<li>Card Connect - passwords now redacted during edit</li>\n<li>Checkout.com - completed support for the Checkout.com NAS platform</li>\n<li>General performance improvements</li>\n<li>GMO - MemberId now populated by crm_key rather than account.id</li>\n<li>LiqPay - updated error code classifications for an improved user experience</li>\n<li>Opayo - upgraded to support the Opayo 2024 API changes</li>\n<li>PayTomorrow - add support for approving payment in the PayTomorrow UX</li>\n<li>QuickBooks Payments - improved support for concurrent access token creation on the same account</li>\n<li>Sandbox - Added support for PENDING payments on express checkout</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>AUTH Transactions that are declined will show an authorised amount of 0 rather than the whole amount</li>\n<li>Bill it Now - updated date fields to be passed in EST timezone</li>\n<li>Bill it Now - user_id now populated by client_id, rather than account.id</li>\n<li>Checkout - fixed an issue when a partially formed billing address passed on the API would cause it to be prompted for entry prior to card input</li>\n<li>Checkout - fixed an issue where a corrupt base64 string being passed would make the check appear to \"hang\" rather than display an appropriate error message</li>\n<li>Checkout - fixed an issue where selectToken would occasionally display invalid amount</li>\n<li>PayTomorrow - now will no longer display if the user has no email</li>\n<li>Square - fixed some issues relating to ACH payments</li>\n<li>Stripe - fixed an rare issue with 3DS</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"87fe88a4-629e-41d2-8aca-7cc323fab1ed"},{"name":"20240304","item":[],"id":"6982908d-f686-4b9e-8109-22420608c4bc","description":"<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>PayPal Commerce - fixed a rare BILLING_AGREEMENT_NOT_FOUND error</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"6982908d-f686-4b9e-8109-22420608c4bc"},{"name":"20240219","item":[],"id":"bb20643e-6415-44e3-b246-cc914e90c08f","description":"<p><strong>New Features</strong></p>\n<ul>\n<li>API - Added the contract <code>future_charges</code> API which returns future occurrences of a recurring contract</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li>Checkout.com - support for the new NAS platform</li>\n<li>CardConnect - added redaction of API keys after save</li>\n<li>Opayo - updated the legacy v2 / v3 integration (connections prior to July 2021) to use the new Opayo URLs</li>\n<li>Updating an instance now updates all connected payment processors to ensure any changes are available for new checkouts within a few seconds of save</li>\n<li>Various performance improvements</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>PayTomorrow - dates are not passed to PayTomorrow in EST timezone</li>\n<li>Square - fixed an issue if authentication fails when loading square locations</li>\n<li>Adyen - fixed an issue preventing refund of an AUTH / CAPTURE payment</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"bb20643e-6415-44e3-b246-cc914e90c08f"},{"name":"20240202","item":[],"id":"7aca6ad3-5ae4-4fe5-952b-4bedb6e92cf2","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Updated the colour of links to \"instructions\" in the gateway setup to make them more legible</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Fixed an issue where saved cards that require CVC, could lose their <code>requiresCVC</code> flag on a UNRESOLVED transaction</li>\n<li>Authorize.NET simplified the webhook configuration instructions</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"7aca6ad3-5ae4-4fe5-952b-4bedb6e92cf2"},{"name":"20240116","item":[],"id":"7167cfe4-4005-4889-8fed-5acdab2315d9","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>New webhooks available to reflect configuration updates (these objects are relevant to enterprise only) LEGAL_ENTITY.CREATED, LEGAL_ENTITY.UPDATE, LEGAL_ENTITY.ARCHIVE, DESIGNATION_ROUTE.CREATED, DESIGNATION_ROUTE.UPDATE, DESIGNATION_ROUTE.ARCHIVE</li>\n<li>Stripe will now reprocess a 3DS escalated transaction</li>\n<li>Shuttle now support transition PENDING transactions to UNRESOLVED</li>\n<li>Payment methods API now supports additional options</li>\n<li>Cancelling a contract with an outstanding balance now creates an audit record (CONTRACT.UPDATE)</li>\n<li>Tags are now searchable</li>\n<li>You can now update metadata and tags on the gateways API</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"7167cfe4-4005-4889-8fed-5acdab2315d9"},{"name":"20240109","item":[],"id":"838426c7-a79d-44e9-856a-f8a3b762f0c4","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Onboarding (gateway-setup) now displays how many payment methods are vaulted on a gateway to inform the user against disconnecting a payment provider which is still very much in use</li>\n<li>Read only users can now access a merchant's gateway configuration screen to help them respond to merchant queries without needing write access</li>\n<li>New webhooks available to reflect configuration updates (these objects are relevant to enterprise only) TEAM.CREATED, TEAM.UPDATE, TEAM.ARCHIVE, CHANNEL.CREATED, CHANNEL.UPDATE, CHANNEL.ARCHIVE, INITIATIVE.CREATED, INITIATIVE.UPDATE, INITIATIVE.ARCHIVE, DESIGNATION.CREATED, DESIGNATION.UPDATE, DESIGNATION.ARCHIVE</li>\n<li>Capability API now supports an optional currency parameter to filter capabilities to those available for a transaction in a specific currency (eg ACH is only available in USD)</li>\n<li>Various optimisations and performance improvements</li>\n<li>Authorise.NET - added improved support for webhooks including tracking gateway initiated refunds, captures and voids. Validating webhooks with a signature key and more informative setup process</li>\n<li>The instances API can now be used to list ARCHIVED instances (for minimum 90 days)</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Fixed an issue preventing inviting a user to your team that was previously archived</li>\n<li>Fixed an issue that required some \"criteria\" to be double URL encoded </li>\n<li>Stripe - fixed an issue that left some ACH payments in PENDING status</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"838426c7-a79d-44e9-856a-f8a3b762f0c4"},{"name":"20231205","item":[],"id":"afe1305e-babc-47ba-b1d4-f913e2fd2ade","description":"<p><strong>New Features</strong></p>\n<ul>\n<li>New payment method count API allows you to see how many cards you have saved on each gateway (<a href=\"https://api.shuttleglobal.com/#7ed820ae-109c-4834-80ba-e02b348cd01f\">https://api.shuttleglobal.com/#7ed820ae-109c-4834-80ba-e02b348cd01f</a>)</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li>Changed the way client-specific domains are generated</li>\n<li>Updated the URLs used for webhook endpoints to Shuttle branded URLs</li>\n<li>legal_entities will now return no country value rather than XX when not configured</li>\n<li>Reports (enterprise only) are now limited to 100,000 transactions</li>\n<li>Express Checkout + Credit messages - Now return a promise with <code>{is_available: BOOL}</code> if content was rendered to allow you to adjust your page layout</li>\n<li>Auth.NET - now support merchants who have set up an AVS requirement on refunds</li>\n<li>Auth.NET - now displays a warning when webhooks could not be successfully registered with Auth.NET</li>\n<li>GMO now supports footer text</li>\n<li>Kount - pre-fills configuration to make onboarding simpler</li>\n<li>Mollie - added recognition that Mollie captures payment during the hosted process</li>\n<li>PaySafe - API password is now redacted when editing the configuration</li>\n<li>PayPal - now supports VOID webhooks</li>\n<li>PAYU - Shuttle now passed in UDF1 to assist PayU support</li>\n<li>Sandbox - Updated Express Checkout to display a more realistic user-journey</li>\n<li>Square - Provides an more informative error message if you're trying to pass them RAW PAN data</li>\n<li>Square - when completing OAUTH, Shuttle now used the default location </li>\n<li>Trust Payments - soft declines are now auto retried with 3DS </li>\n<li>gateway-setup (onboarding module) various minor UX improvements</li>\n<li>You can now manually resolve a pending payment as approved or declined</li>\n<li>Performance improvement loading gateways, legal_entities, legal_entity_routes</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Fixed an issue with the \"Next\" button not following theme CSS</li>\n<li>Fixed an issue pasting card PAN in IOS 16</li>\n<li>Fixed an issue with a hosted payment processes not handling access token cycling</li>\n<li>Fixed a presentation issue with Delete card modal</li>\n<li>Checkout.com - Fixed an issue where customer funds remained blocked if a user abandons 3DS, a void is automatically issued after 15 minutes</li>\n<li>GMO - sanitisation of Japanese characters being passed into account name</li>\n<li>NMI - fixed a loss in network connection being treated as a DECLINE rather than UNRESOLVED</li>\n<li>PayPal - better handling for how PayPal SDK is loaded when multiple Shuttle components on the same page to void Zoid issues</li>\n<li>PayTomorrow - Price Estimator now longer shown using defaults, and must be configured by the merchant</li>\n<li>Stripe - fixed an issue with ACH not working in some circumstances</li>\n<li>Trust Payments - Fixed handling for CIT transactions using saved cards to run through the client side SDK</li>\n<li>Fixed an issue where manually resolving a transaction would trigger two webhooks\nuser tags, metadata</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"afe1305e-babc-47ba-b1d4-f913e2fd2ade"},{"name":"20231115","item":[],"id":"1348a26e-c4f2-4488-a564-8581d565ed6f","description":"<p><strong>New Features</strong></p>\n<ul>\n<li>Merchant portal is now mobile optimised</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li>You can now manually resolve a pending payment</li>\n<li>Some API performance improvements</li>\n<li><code>instance</code> now supports <code>metadata</code>, <code>features</code>, <code>report_users</code>, <code>receipt_users</code></li>\n<li><code>application</code> now supports <code>features</code></li>\n<li><code>legal_entity</code> now supports <code>website</code>, <code>support_url</code>, <code>privacy_policy</code>, <code>tcs</code></li>\n<li><code>account</code> now supports <code>timezone</code>, <code>company</code></li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Fixed split payments on global payment occasionally having an error</li>\n<li>Fixed an issue with a theme not always affecting the primary button correctly</li>\n<li>Fixed an issue with multibanco not rendering correctly in some checkouts</li>\n<li>You are now limited to 10 refunds, 10 captures and 10 voids per transaction</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"1348a26e-c4f2-4488-a564-8581d565ed6f"},{"name":"20231010","item":[],"id":"cad94927-8a95-4264-af60-f13a033dc3b3","description":"<p><strong>New Features</strong></p>\n<ul>\n<li>Onboarding now supports \"processor\" field, allowing the use of Shuttle for just a single gateway connection per instance (eg if you were running an app store of payment gateways, some of which were fulfilled by Shuttle)</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li>Passing payment_method_type to checkout also filters saved payment methods</li>\n<li>Auth.NET better handling of access key rotation issues</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Shuttle.js no longer references missing map</li>\n<li>Auth.NET better handling of error messages, including one that would cause a DECLINE to show as UNRESOLVED</li>\n<li>Auth.NET fix an issue with some refunds being rejected due to XML Schema issues</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"cad94927-8a95-4264-af60-f13a033dc3b3"},{"name":"20230809","item":[],"id":"e519bd9a-1992-4fde-a4ce-5bc0b1aea094","description":"<p><strong>New Features</strong></p>\n<ul>\n<li>Onboarding tools now allow connecting to Shuttle Marketplace</li>\n<li>Stripe - Upgraded to Stripe's new ACH platform that uses open banking</li>\n<li>Stripe - Allow tokenising Apple Pay / Google Pay</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li>Refunds / captures on a disconnected gateway now return a more informative error message</li>\n<li>Checkout - you can now present the logo in a new \"offset\" position</li>\n<li>API - Added submit contract API, this allows submitting 3DS data for users building their own checkout</li>\n<li>API - Instances API <code>/c/api/instances/{id}/*</code> now supports the use of <code>client</code> (eg <code>cl_1234</code>)  as well as <code>instance_key</code></li>\n<li>API - Account now support's <code>company</code> field</li>\n<li>API - Improved the performance of returning transactions with many refunds / captures</li>\n<li>API - Add new /checkout_monitor endpoint to allow monitoring transactions</li>\n<li>Stripe - pending URLs with embedded HTML links now use markdown for easier parsing</li>\n<li>Paypal PayFlowPro - now passes <code>alt_key</code> to field CUSTOM</li>\n<li>Adyen - now configures webhooks to receive updates from pending actions</li>\n<li>PayTomorrow - now allows configuring Prime APR</li>\n<li>Checkout.com - add support for new NAS platform</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Fixed an issue with PUT contract that generated a new contract returning the old contract rather than new contract</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"e519bd9a-1992-4fde-a4ce-5bc0b1aea094"},{"name":"20230630","item":[],"id":"6bdccc92-ca7c-4b57-89ea-1a5115c4ab6c","description":"<p><strong>New Features</strong></p>\n<ul>\n<li>Payment gateway communication errors (unresolved payments) now automatically try to resolve themselves without manual intervention</li>\n<li>Checkout now supports tokenising Apple Pay / * Google Pay for supported gateways (eg Stripe)</li>\n</ul>\n<p><strong>Improvements</strong></p>\n<ul>\n<li>We will no longer attempt to send captures / voids / refunds to disconnected gateways</li>\n<li>Instances now support merchant_name field, for Apple Pay / Google Pay</li>\n<li>Stripe - ACH now uses Stripe's new hosted open banking</li>\n<li>instance.tcs_accepted, now supports a true boolean</li>\n<li>Improved 3DS rendering</li>\n</ul>\n<p><strong>Bugs</strong></p>\n<ul>\n<li>PayPal - Fixed and issue with MOTO hosted field payments</li>\n<li>PayPal - Payment and Save Card will now return successful payment even if the card cannot be vaulted</li>\n<li>Square - Updated decline message wording</li>\n<li>Checkout - fixed an issue auto dismissing a popup when skipping receipt page</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"6bdccc92-ca7c-4b57-89ea-1a5115c4ab6c"},{"name":"20230510","item":[],"id":"8153551c-5290-4760-8a19-99778d5ee741","description":"<p><strong>Improvements</strong></p>\n<ul>\n<li>Hosted payments now return to a default page if no success_url passed</li>\n<li>Checkout - better error handling from gateway javascript libraries</li>\n<li>Initiatives can now be filtered by status</li>\n<li>Capabilities endpoint now supports flagging which payment methods have third party fraud detection</li>\n<li>Updated platforms using the legacy onSuccessPost to support throttling and retries</li>\n<li>Contract start_date now supports up to 4 years in the future </li>\n<li>Added fields to legal_entity, company_type_name, charity_number, vat_number</li>\n<li>Fortis, updated connectivity error message</li>\n<li>GMO enabled error message translation</li>\n</ul>\n<p><strong>Bug Fixes</strong></p>\n<ul>\n<li>Checkout - fixed an issue where an ACH decline would revert to card form</li>\n<li>Checkout - fixed some styling issues</li>\n<li>Updated post payment_url to support all the parameters Shuttle.js supports</li>\n<li>PayPal tokenisation now uses a PayPal button</li>\n<li>Moneris fixed the order id format</li>\n<li>Mollie now correctly records payment on success when checkout has been closed</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"93ad542e-253f-4b57-a38d-192dc9e19083","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8a41ac64-8077-48f2-9429-658883c4093d","type":"text/javascript","exec":[""]}}],"_postman_id":"8153551c-5290-4760-8a19-99778d5ee741"}],"id":"2d04c433-d737-49fe-b505-817ef4bd1f38","description":"<p><em>This section lists recent platform changes - please note, not all changes are relevent to all users</em>   </p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"892e850d-8dd8-4548-907c-5619dcb17cc7","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"17b0e941-b43b-4bbb-b041-eb2b06975685","type":"text/javascript","exec":[""]}}],"_postman_id":"2d04c433-d737-49fe-b505-817ef4bd1f38"}],"event":[{"listen":"prerequest","script":{"id":"0523a6bd-cbb1-4c3c-a9ab-40fe99484872","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"1f71278b-4a51-4a48-8131-f151ea79f30c","type":"text/javascript","exec":[""]}}]}